Gemini Omni 1.2 Flash — 参数、计费与幂等
渠道 335 的 JSON 请求、任务续写、状态查询、实际费用和网关幂等边界。
Gemini Omni 1.2 Flash
核验日期:2026-11-07。本文只描述 APIMaster 的 gemini-omni-1.2-flash 网关接口,不代表 Google 原生 Interactions API 的全部能力。1.1 的 Official/Ext 参数表不适用于 1.2。
完整英文文档 · OpenAPI 3.1 JSON · 实时模型卡
接口与权限
| 用途 | 方法和路径 |
|---|---|
| 创建 | POST https://apimaster.ai/v1/videos,兼容 /videos/generations |
| 查询生成任务 | GET https://apimaster.ai/v1/videos/{task_id} |
| 下载结果 | GET https://apimaster.ai/v1/videos/{task_id}/content |
| 按原幂等键查提交记录 | GET https://apimaster.ai/v1/video-submissions/by-key |
| 当前 API Key 的近期消费记录 | GET https://apimaster.ai/api/log/token |
使用 Authorization: Bearer YOUR_API_KEY;创建请求只接受 Content-Type: application/json。当前在售渠道为 335,不需要把渠道编号拼进模型 ID。API Key 的模型、分组权限及余额必须满足要求;当前没有另行公开的客户白名单。没有单独的 1.2 Ext 路由。模型出现在 /v1/models 中不代表全部 Google 能力均已开放。
完整字段
所有模式都必须提供 model 和非空白 prompt,未知顶层字段会被拒绝。
| 字段 | 类型 | 说明 |
|---|---|---|
model |
string | 固定为 gemini-omni-1.2-flash。 |
prompt |
string | 每种模式都必填;生成的对白、音乐、音效可写在提示词里。 |
duration |
integer | 默认 10;普通文生、图生、参考图生成 3–15 秒;首尾帧插值与续写新增部分 3–10 秒;编辑时忽略。 |
seconds |
integer / integer string | 兼容别名,新客户端只发 duration;两者同时存在时 duration 优先。 |
resolution |
string | 360p、720p(默认)、1080p、4k,不区分大小写;2160p 转成 4k;1080p/4k 为上采样输出。 |
aspect_ratio |
string | 16:9(默认)或 9:16;其他字符串目前转成 16:9,请仅发这两个值。 |
ratio、size |
string | 宽高比的历史别名,不是分辨率;优先级为 aspect_ratio → ratio → size,建议只提供一个。 |
image_urls |
string[] | 公网 HTTP(S) 图片直链;单图默认作为起始画面,多图作为参考。 |
first_frame_image |
string | 首帧图片直链。 |
last_frame_image |
string | 尾帧图片直链,必须同时提供首帧;首尾比例应一致并匹配输出比例。 |
image_with_roles |
object[] | 首尾帧的另一种写法;每项必须有 url 和非空 role,first_frame/last_frame 为首尾帧,其他角色为参考图。尾帧必须有首帧。 |
video_urls |
string[] | 最多一个不超过 15 秒的公网输入视频;默认编辑。 |
omni_reference_task_type |
string | auto(默认)、edit、extend、reference、text_to_video、image_to_video、reference_to_video。有视频或父任务时,必须显式 extend 才会续写,否则编辑。 |
extend_from_task_id |
string | 当前账户自己已成功的同模型公共 task_... ID;与 video_urls 互斥,必须仍能使用原渠道和原上游账户。不是 Google interaction ID。 |
所有图片与首尾帧合计最多 10 张。image_with_roles 与直接首尾帧字段二选一。供应商建议角色参考最多两个角色、每个角色三张图,这不是网关十张总数上限的替代规则。
输入必须为公网可直接下载的 HTTP(S) URL,不支持 Base64、Data URL 或 multipart。已验证 PNG/JPEG 图片和 MP4 视频。网关时长探测支持 MP4/MOV 兼容媒体,最多读取 100 MiB;这是探测读取边界,不代表上游保证接受所有 100 MiB 文件或所有编码。目前没有已公布的该渠道单图字节上限或完整上游编码/文件大小合同,请优先用小体积 PNG/JPEG、MP4 素材,不能直接套用 Google 原生接口的素材限制。
不支持独立音频参考、audio_urls、Google interaction/conversation 状态、metadata、generation_type、system_prompt、temperature、negative_prompt、seed、fps、n。负面要求和生成音效要求写进 prompt。生成视频中的音频计入视频输出价格。可以基于已完成公共任务连续编辑或续写;这不是原生 Google 多轮会话,每一轮仍受输入视频不超过 15 秒的限制。
不执行生成的 JSON 示例
以下只是请求体,不会执行。将示例素材 URL 和任务 ID 换成自己的;每个新操作使用不同幂等键,同一个操作重试时保持原键和原请求体。
文生视频
{
"model": "gemini-omni-1.2-flash",
"prompt": "A blue glass sphere rolls slowly across a plain gray table.",
"duration": 3,
"resolution": "360p",
"aspect_ratio": "16:9"
}
单图或多图参考
{
"model": "gemini-omni-1.2-flash",
"prompt": "Animate these geometric references while preserving their shapes and colors.",
"duration": 3,
"resolution": "360p",
"aspect_ratio": "16:9",
"image_urls": [
"https://example.com/reference-a.png",
"https://example.com/reference-b.png"
],
"omni_reference_task_type": "reference"
}
直接首尾帧
{
"model": "gemini-omni-1.2-flash",
"prompt": "Make a smooth transition from the first view to the last view.",
"duration": 3,
"resolution": "360p",
"aspect_ratio": "16:9",
"first_frame_image": "https://example.com/first.png",
"last_frame_image": "https://example.com/last.png"
}
带角色的首尾帧
{
"model": "gemini-omni-1.2-flash",
"prompt": "A blue glass sphere rolls slowly across a plain gray table.",
"duration": 3,
"resolution": "360p",
"aspect_ratio": "16:9",
"image_with_roles": [
{
"url": "https://example.com/first.png",
"role": "first_frame"
},
{
"url": "https://example.com/last.png",
"role": "last_frame"
}
]
}
编辑视频 URL(不传 duration)
{
"model": "gemini-omni-1.2-flash",
"prompt": "Change the lighting to sunset while preserving the scene.",
"video_urls": [
"https://example.com/input.mp4"
],
"resolution": "720p",
"omni_reference_task_type": "edit"
}
续写视频 URL
{
"model": "gemini-omni-1.2-flash",
"prompt": "Continue the camera movement for three more seconds.",
"duration": 3,
"resolution": "360p",
"aspect_ratio": "16:9",
"video_urls": [
"https://example.com/input.mp4"
],
"omni_reference_task_type": "extend"
}
续写已完成公共任务
{
"model": "gemini-omni-1.2-flash",
"prompt": "Continue the previous scene with a gentle camera pan.",
"duration": 3,
"resolution": "360p",
"aspect_ratio": "16:9",
"extend_from_task_id": "task_YOUR_COMPLETED_TASK",
"omni_reference_task_type": "extend"
}
编辑已完成公共任务
{
"model": "gemini-omni-1.2-flash",
"prompt": "Keep the scene but turn the blue sphere yellow.",
"extend_from_task_id": "task_YOUR_COMPLETED_TASK",
"omni_reference_task_type": "edit",
"resolution": "720p"
}
多轮续写时,等待子任务成功后,把它的公共任务 ID 作为下一轮父任务。累计视频超过 15 秒后,不能再按当前视频输入限制继续引用。音频输入不支持,因此没有可用的音频参考请求示例。
提交、轮询、下载与失败
首个成功提交 HTTP 200:
{"id":"task_REDACTED_EXAMPLE","task_id":"task_REDACTED_EXAMPLE","object":"video","model":"gemini-omni-1.2-flash","status":"queued"}
每 5–10 秒轮询一次,直到 completed 或 failed。中间状态为 queued、in_progress;客户端还应容忍过渡/未知状态 unknown。查询和下载都不是生成请求。
当前适配器的完成响应结构(任务标识与时间已替换):
{"id":"task_REDACTED_COMPLETED_EXAMPLE","task_id":"task_REDACTED_COMPLETED_EXAMPLE","object":"video","model":"gemini-omni-1.2-flash","status":"completed","progress":100,"created_at":1793966808,"url":"https://apimaster.ai/v1/videos/task_REDACTED_COMPLETED_EXAMPLE/content","metadata":{"url":"https://apimaster.ai/v1/videos/task_REDACTED_COMPLETED_EXAMPLE/content"}}
下载 url 或 metadata.url 时继续带 API Key;它们是平台鉴权代理,不是上游公开下载链接。生成失败的轮询响应通常仍为 HTTP 200:
{"id":"task_REDACTED_FAILED_EXAMPLE","task_id":"task_REDACTED_FAILED_EXAMPLE","object":"video","model":"gemini-omni-1.2-flash","status":"failed","progress":100,"created_at":1793966808,"error":{"code":"generation_failed","message":"The generation request failed."}}
具体错误信息经过脱敏且会变化。提交参数、鉴权、余额、路由等错误使用 HTTP 4xx/5xx。POST 超时或 5xx 不等于上游未受理。
实际用量、最终费用与退款
轮询响应目前不保证提供 usage、模态细分或美元总额。 没有 Omni 专属 invoice 接口,不能把 /v1/videos/{task_id}/billing 当作该模型的最终账单协议。
API 集成可用同一个 Bearer Key 请求 GET https://apimaster.ai/api/log/token,读取该 Key 的有限条近期日志。它不是可分页的长期账单导出。账户整体及历史记录使用登录后的消费日志 GET /api/log/self,后者需要账户认证,不能用模型 API Key 替代。
将日志行的 other 字符串解析成 JSON,按 other.task_id 匹配公共任务 ID。成功结算后,other.final_amount_usd 是包含冻结路由与用户价格规则的最终对客金额。有实际用量时,日志包括 prompt_tokens、completion_tokens,以及可能存在的 other.input_tokens、other.text_output_tokens、other.video_output_tokens、other.token_usage_source、other.retail_token_prices、other.group_ratio。
历史验收的一个 3 秒 360p 任务使用输入 39、文本输出 0、视频输出 5793 tokens,最终对客金额为 $0.064286。这是应用当时倍率并按额度精度取整后的历史样例,不是新请求的固定报价。
2026-11-07 核验的渠道 335 用户倍率前价格为输入 $1.32、文本输出 $7.92、视频输出(含生成音频)$10.56 / 百万 tokens;以实时模型卡为准。概念公式为三种实际 tokens 分别乘冻结单价后相加,再应用相应账户价格规则与额度取整。输入用量是聚合值,不保证进一步拆成文字、图片、视频输入。
提交先预扣估算,生成完成后按实际用量与冻结单价结算,可能补扣或退款。确认生成失败会退回生成预扣;受理不明或网络超时不代表已经确认失败或立即退款。额度换算为 500,000 quota = USD 1,不能把单条初始预扣当最终费用,也不能把同一任务的最终金额与补退款流水重复相加。
续写的视频输出 tokens 对应新增片段,输入原视频另计输入用量;返回文件包含原片和新增部分,不能按合成文件总时长重新估算输出费。已验证 3 秒原片续写 3 秒,结果约 6 秒,视频输出只对应新增约 3 秒。
上游可能不返回所有用量分项。当前解析器在缺少文本输出明细时,将上游输出总量按视频输出处理;有有效 input/output 用量时优先使用实际 tokens。缺用量但有权威费用回执时,可以按费用回执结算,不虚构 tokens;此时 token_usage_source 可为 provider_cost_receipt,模态计数可能缺失。两者都缺失时继续等待核账,不拿时长预估充当最终费用。因此不能承诺每笔最终任务都有完整模态计数,也没有固定结算耗时 SLA。
网关幂等与超时恢复
创建请求可带 Idempotency-Key:8–128 个可见 ASCII 字符,不含空白,没有对应请求体字段。键按账户隔离,一个键代表一个新生成意图。JSON 对象键顺序不影响指纹;参数值、数组顺序、省略/显式默认值、分组或指定路由的变化会导致冲突。
- 首次请求只执行一次原始上游提交,并持久保存提交记录。
- 相同账户、相同键、相同请求重放返回 HTTP 202 和原记录,带
Idempotency-Replayed: true;不新增生成、预扣或任务。 - 同键不同请求返回 409
idempotency_conflict。 - 客户端连接断开后,已取得执行权的提交/持久化会在受限执行窗口内继续,不用重新生成来“恢复”。
使用原键和 Bearer Key 请求 GET /v1/video-submissions/by-key。它只读平台回执,不调用生成器、不主动按键搜索上游、不移动资金。同账户的有效 Key 可读取记录,其他账户不能读取。
示意响应:
{"code":200,"data":{"submission_id":"REDACTED_SUBMISSION_ID","task_id":"task_REDACTED_EXAMPLE","model":"gemini-omni-1.2-flash","status":"accepted","task_ready":true,"same_key_replay_safe":true,"new_submission_safe":false,"next_action":"query_task"}}
实际响应还包含时间、请求/支持引用、错误、恢复和保留期字段。以下是“提交状态”,不是生成状态:
| 状态 | 处理 |
|---|---|
pending、submitting |
继续查询原记录,不创建替代任务。 |
accepted 且 task_ready=true |
按返回的公共任务 ID 轮询生成状态。 |
accepted 且 task_ready=false |
已记录上游受理,本地任务/账务仍待恢复;保留原键,未解决时联系支持。 |
acceptance_unknown |
禁止自动重发;保留键及支持引用并联系支持。退款本身也不证明重复生成安全。 |
not_accepted |
修正已确认的错误,仅在记录与资金状态允许时换新键;原键仍只重放原结果。 |
记录至少保留 30 天,不会自动把旧键变为新请求。按键查询 404 的 retry_safe=false,不证明进行中的原请求未被受理,也不覆盖启用前或未带客户端键的请求。不带客户端键重复 POST 是独立新操作,不能通过客户端原键恢复。
这项能力是网关防重复提交,不是 Google/APIMart 原生幂等或超时后自动发现上游任务的承诺。受理不明时绝不自动重发。已受理、已完成资金确认但本地任务记录未落盘的原操作,可以根据持久证据恢复,恢复不重新生成或扣费。
Quote 与其他边界
POST /v1/videos/quote 不支持 gemini-omni-1.2-flash,当前模型校验只支持 Seedance。不能把它作为 Omni 的免费估价接口,也没有该模型“不创建任务且不调用生成器”的受支持 quote 协议。
上游内容审核和地区限制仍适用;供应商文档列出了 EEA、瑞士、英国对上传视频编辑/续写的限制。这里列出的是网关已开放能力,不代表上游模型的全部能力。
供应商 1.2 生成文档。APIMaster 公共任务 ID、响应结构、消费日志和网关幂等以本页为准。
