统一 AI 视频生成 API 开发者中心

面向开发者的统一 AI 视频生成 API

通过同一个 Bearer API Key 与 https://api.uniroute.app/v1/media 标准接口,调用四条文生视频(Text-to-Video)路由:Seedance 2.5(bytedance/seedance-2-5)、Kling 3.0(kling-3.0/video)、Wan 2.5(wan/2-5-text-to-video)与 Wan 2.7(wan/2-7-text-to-video)。可通过鉴权目录接口查询 input_fields,先获取当前报价字符串 data.quoted_usd,携带持久化 Idempotency-Key 与 max_cost_usd 创建任务,确认计费状态后下载签名产物链接。

计费与结算边界:默认零售报价与最终结算金额说明:本页展示的价格为公开目录快照中的当前默认零售整单报价(option_quote_usd),并非保证的最终结算扣费。实际调用时请先通过 POST /v1/media/quote 获取当前鉴权报价 data.quoted_usd 并作为 max_cost_usd 传入;任务创建时的预留(reservation)并非最终扣费,仅当 data.status === "success" 且 data.billing.state === "charged" 时,以 data.billing.charged_usd 作为最终权威结算金额。
AI 视频生成 API 示意图:一个 Key 通过 API 卡片连接山湖、橘猫和茶壶视频画面

示意图:API 工作流概念展示,非模型实测输出

四条文生视频路由与当前默认零售整单报价

以下数值直接读取自经校验的公开媒体价格目录快照(option_quote_usd),代表当前默认零售整单美元报价字符串(绝不按秒乘法计算)。当前 Key 实际可用的 input_fields 与规格以鉴权接口 GET https://api.uniroute.app/v1/media/catalog 返回为准。

默认零售报价快照时间:
快照校验哈希: sha256:ca535a03789f9121…
ByteDance

Seedance 2.5

默认零售整单报价 (480p:5)
$0.875 USD

文生视频 · 分辨率:480p、720p、1080p · 时长:5s、10s

字节跳动 Seedance 2.5(bytedance/seedance-2-5)为文生视频路由,是本页四条路由中唯一同时提供 480p、720p 与 1080p 三档分辨率(各支持 5 秒与 10 秒)的模型。

接口 model 值: bytedance/seedance-2-5分辨率 / 档位: 480p, 720p, 1080p支持时长: 5s, 10s
支持规格键与当前默认零售整单报价
480p:5$0.875
480p:10$1.75
720p:5$1.96875
720p:10$3.9375
1080p:5$4.9375
1080p:10$9.875

支持规格键值:480p:5、480p:10、720p:5、720p:10、1080p:5、1080p:10。

  • 接口 model 值:bytedance/seedance-2-5(文生视频路由)
  • 本页四条路由中唯一提供 480p:5 与 480p:10 规格的模型
  • 覆盖 480p、720p、1080p × 5s、10s 共 6 个规格键
Kuaishou

Kling 3.0

默认零售整单报价 (std:5)
$0.4375 USD

文生视频 · 档位:720p (std)、1080p (pro) · 时长:5s、10s

快手 Kling 3.0(kling-3.0/video)为文生视频路由,按模式档位编码输出规格:标准档(std,对应 720p)与专业档(pro,对应 1080p),均支持 5 秒与 10 秒时长。

接口 model 值: kling-3.0/video分辨率 / 档位: 720p (std), 1080p (pro)支持时长: 5s, 10s
支持规格键与当前默认零售整单报价
std:5$0.4375
std:10$0.875
pro:5$0.5625
pro:10$1.125

支持规格键值:std:5、std:10(720p 标准档)以及 pro:5、pro:10(1080p 专业档)。

  • 接口 model 值:kling-3.0/video(文生视频路由)
  • 采用档位加时长编码(std:5、std:10、pro:5、pro:10)
  • std 对应 720p,pro 对应 1080p,各支持 5s 与 10s
Alibaba

Wan 2.5

默认零售整单报价 (720p:5)
$0.375 USD

文生视频 · 分辨率:720p、1080p · 时长:5s、10s

阿里 Wan 2.5(wan/2-5-text-to-video)为文生视频路由,支持 720p 与 1080p 分辨率以及 5 秒与 10 秒时长,使用 分辨率:秒数 规格键。

接口 model 值: wan/2-5-text-to-video分辨率 / 档位: 720p, 1080p支持时长: 5s, 10s
支持规格键与当前默认零售整单报价
720p:5$0.375
720p:10$0.75
1080p:5$0.625
1080p:10$1.25

支持规格键值:720p:5、720p:10、1080p:5、1080p:10。

  • 接口 model 值:wan/2-5-text-to-video(文生视频路由)
  • 支持 4 个分辨率×时长规格:720p:5、720p:10、1080p:5、1080p:10
  • 可在上方卡片直接查看各规格与 Wan 2.7 的当前默认零售整单报价差异
Alibaba

Wan 2.7

默认零售整单报价 (720p:5)
$0.5 USD

文生视频 · 分辨率:720p、1080p · 时长:5s、10s

阿里 Wan 2.7(wan/2-7-text-to-video)为文生视频路由,与 Wan 2.5 共享相同的 720p/1080p 及 5s/10s 四个规格键结构,在实时目录中按各规格独立报价。

接口 model 值: wan/2-7-text-to-video分辨率 / 档位: 720p, 1080p支持时长: 5s, 10s
支持规格键与当前默认零售整单报价
720p:5$0.5
720p:10$1
1080p:5$0.75
1080p:10$1.5

支持规格键值:720p:5、720p:10、1080p:5、1080p:10。

  • 接口 model 值:wan/2-7-text-to-video(文生视频路由)
  • 与 Wan 2.5 共享相同的四个规格键(720p:5、720p:10、1080p:5、1080p:10)
  • 各规格当前默认零售整单报价请直接参考上方实时目录快照(option_quote_usd)

四条文生视频路由参数与默认零售报价横向对比

仅根据接口 model 标识符、规格键编码方式(分辨率编码或 std/pro 档位编码)、时长(5s 或 10s)以及当前默认零售整单报价进行路由选择。

模型名称接口 model 值分辨率 / 档位支持时长代表规格默认报价支持规格键与当前默认零售报价
Seedance 2.5
ByteDance
bytedance/seedance-2-5480p, 720p, 1080p5s, 10s$0.875 (480p:5)
480p:5:$0.875480p:10:$1.75720p:5:$1.96875720p:10:$3.93751080p:5:$4.93751080p:10:$9.875
Kling 3.0
Kuaishou
kling-3.0/video720p (std), 1080p (pro)5s, 10s$0.4375 (std:5)
std:5:$0.4375std:10:$0.875pro:5:$0.5625pro:10:$1.125
Wan 2.5
Alibaba
wan/2-5-text-to-video720p, 1080p5s, 10s$0.375 (720p:5)
720p:5:$0.375720p:10:$0.751080p:5:$0.6251080p:10:$1.25
Wan 2.7
Alibaba
wan/2-7-text-to-video720p, 1080p5s, 10s$0.5 (720p:5)
720p:5:$0.5720p:10:$11080p:5:$0.751080p:10:$1.5

外部 Media 视频 API 流程(目录查询 → 询价 → 创建任务 → 状态轮询 → 下载)

所有程序化请求均发往 https://api.uniroute.app/v1/media 并使用 Bearer API Key 鉴权。以下为精简契约示例,完整字段与错误恢复规范请查阅 Media API 官方文档。

01POSThttps://api.uniroute.app/v1/media/quote

查询鉴权目录 input_fields 并获取当前报价 data.quoted_usd

可先调用鉴权 GET /v1/media/catalog 查看当前 Key 可用的模型、options 与 input_fields 定义;随后向 POST /v1/media/quote 传入 model 与 option,读取精确十进制字符串 data.quoted_usd。

# 可选:查看当前 Key 的可用模型、options 与 input_fields
curl -sS https://api.uniroute.app/v1/media/catalog \
  -H "Authorization: Bearer $UNIROUTE_API_KEY"

# 在创建任务前获取当前鉴权整单报价并保存精确字符串 data.quoted_usd
CURRENT_QUOTED_USD="$(curl -sS -X POST https://api.uniroute.app/v1/media/quote \
  -H "Authorization: Bearer $UNIROUTE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"bytedance/seedance-2-5","option":"480p:5"}' | jq -r '.data.quoted_usd')"
02POSThttps://api.uniroute.app/v1/media/tasks

持久化保存 Idempotency-Key 并携带 max_cost_usd 创建任务

发起请求前先持久化保存请求参数与唯一 Idempotency-Key。传入 media_type: "video"、model、option、prompt,并将 max_cost_usd 设为当前 data.quoted_usd 字符串。HTTP 202 返回后立即保存 data.task_id。

# 发送 POST 前先持久化保存 SAVED_IDEMPOTENCY_KEY 与请求内容
curl -sS -X POST https://api.uniroute.app/v1/media/tasks \
  -H "Authorization: Bearer $UNIROUTE_API_KEY" \
  -H "Idempotency-Key: $SAVED_IDEMPOTENCY_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"media_type\": \"video\",
    \"model\": \"bytedance/seedance-2-5\",
    \"option\": \"480p:5\",
    \"prompt\": \"黄昏雨后的街道,红色有轨电车平稳驶过,横移跟拍镜头\",
    \"max_cost_usd\": \"$CURRENT_QUOTED_USD\"
  }"
# HTTP 202 -> 立即持久化保存 data.task_id
03GEThttps://api.uniroute.app/v1/media/tasks/{task_id}

有界重试轮询直至 status 为 success 且 billing.state 为 charged

使用有界重试请求 GET /v1/media/tasks/{task_id} 并校验响应状态。仅当 data.status === "success" 且 data.billing.state === "charged" 时任务才算完成结算,最终权威扣费金额为 data.billing.charged_usd。

curl -sS "https://api.uniroute.app/v1/media/tasks/$SAVED_TASK_ID" \
  -H "Authorization: Bearer $UNIROUTE_API_KEY"
# 必须同时满足以下两个条件才代表成功并完成结算:
#   data.status === "success" && data.billing.state === "charged"
# 最终权威结算金额:data.billing.charged_usd
04GETdata.urls[].url(签名 HTTPS 下载链接)

不带 Authorization 请求头下载视频产物

对 data.urls[].url 中的每个地址发起独立的 HTTPS GET 下载请求,切勿附带 UniRoute 的 Authorization: Bearer 请求头。

# 对 data.urls[].url 发起独立 HTTPS 请求,不携带 Bearer 请求头
curl -fL "$SIGNED_OUTPUT_URL" -o video.mp4

持久化状态保存与未知 POST 结果对账规范

发起 POST /v1/media/tasks 前请先持久化保存请求参数与唯一 Idempotency-Key,并在收到 HTTP 202 响应后立即持久化保存返回的 data.task_id。若 POST 请求因网络超时或连接中断导致结果未知:已知 task_id 时仅调用 GET /v1/media/tasks/{task_id} 查询该已有任务;若未收到 task_id,请先检查同一 API Key 的任务历史或联系支持核实(平台不存在按 Idempotency-Key 查询任务的端点),切勿盲目新建任务。

报价、预留、最终结算与 Key 额度 / 账户余额边界说明

  • 公开默认零售报价 vs. 鉴权实时报价:本页展示的 option_quote_usd 为当前公开默认零售整单报价;实际任务创建前请调用 POST /v1/media/quote 获取当前鉴权 data.quoted_usd 字符串并传入 max_cost_usd。
  • 资金预留(Reservation)vs. 最终权威结算:创建任务时的资金预留并非最终结算收费;仅当 data.status === "success" 且 data.billing.state === "charged" 时,data.billing.charged_usd 才是最终权威结算金额。各计费状态转化详见 /docs/media-billing-errors。
  • 文生视频(Text-to-Video)范围与 input_fields:本页所列四条路由均为文生视频路由(接收 prompt 与 option);请通过鉴权 GET /v1/media/catalog 检索当前 Key 对应的权威 input_fields 与可用规格。
  • 统一 API Key 额度与账户 USD 余额:统一 API Key 默认使用自动通道选择,并可配置独立的 Key 消费限额(allowance),该限额与账户 USD 钱包余额分别独立校验。

视频生成场景模板与提示词指南

浏览与 UniRoute 视频模型配套的结构化提示词模板与分镜预设。

Media API 官方文档、提示词指南与计费链接

查阅 Media API 快速上手、视频接口参考、鉴权与幂等规范、计费错误恢复说明及提示词指南。

常见问题(FAQ)— AI 视频生成 API

关于默认零售报价与最终结算金额、规格键编码、input_fields 及幂等任务对账的常见解答。

本页展示的价格是最终结算收费,还是当前默认零售报价?

本页展示的价格是公开媒体目录快照中的当前默认零售整单报价(option_quote_usd),并非保证的最终结算扣费金额。实际发起任务前,请调用 POST https://api.uniroute.app/v1/media/quote 获取当前鉴权报价字符串 data.quoted_usd,并在 POST /v1/media/tasks 中作为 max_cost_usd 传入。创建任务时的预留并非最终收费;仅当 data.status === "success" 且 data.billing.state === "charged" 时,data.billing.charged_usd 才是权威的最终结算金额。

Seedance 2.5、Kling 3.0、Wan 2.5 与 Wan 2.7 的输入范围与 option 参数有什么区别?

本页涵盖的四条路由均为文生视频(Text-to-Video)路由。bytedance/seedance-2-5 支持 480p:5、480p:10、720p:5、720p:10、1080p:5、1080p:10 共 6 个分辨率×时长规格。kling-3.0/video 使用档位×时长编码:std:5、std:10(720p 标准档)与 pro:5、pro:10(1080p 专业档)。wan/2-5-text-to-video 与 wan/2-7-text-to-video 均接受 720p:5、720p:10、1080p:5、1080p:10 四个规格键。具体到你的 API Key 实际支持的 input_fields 与规格,请以鉴权接口 GET https://api.uniroute.app/v1/media/catalog 返回为准。

如何判断视频任务已完成结算,以及如何安全下载输出文件?

请使用有界重试调用 GET https://api.uniroute.app/v1/media/tasks/{task_id}。仅当 data.status === "success" 且 data.billing.state === "charged" 时才表示任务生成并完成计费结算。随后对 data.urls[].url 中的签名链接发起独立的 HTTPS GET 请求下载视频,切勿携带 Authorization: Bearer 请求头。

API Key 消费限额、账户 USD 钱包余额以及未知 POST 超时如何协同处理?

统一 API Key 默认使用自动通道选择,其配置的 Key 消费限额(allowance)与账户 USD 钱包余额相互独立,创建任务时两者均需具备足够可用额度。发起 POST /v1/media/tasks 前必须先持久化保存请求参数与唯一 Idempotency-Key,并在收到 HTTP 202 响应后立即持久化保存返回的 data.task_id。若 POST 响应超时或结果未知:已知 task_id 时仅调用 GET /v1/media/tasks/{task_id} 查询该已有任务;若未收到 task_id,请先检查同一 API Key 的任务历史或联系支持核实(不存在按 Idempotency-Key 查询任务的端点),严禁盲目新建任务。完整计费状态与错误恢复说明见 /docs/media-billing-errors。

立即接入统一 AI 视频生成 API

在控制台创建统一 API Key,阅读 Media API 快速上手文档,并通过 https://api.uniroute.app/v1/media 发起带报价保护的视频生成任务。