Seedance 异步视频 API
Seedance 使用统一的异步视频任务接口。创建任务后,生成会在后台继续执行;你可以轮询任务状态,也可以通过账号级 Webhook 接收成功或失败通知。
本章节只介绍新的 POST /v1/video/tasks 异步接口。原有视频接口及其文档保持不变。
选择模型
分辨率由所选模型固定。请求中不要传 output.resolution,也不要通过 provider_options 覆盖分辨率。
视频提示词最多 1200 个 Unicode 字符。output.generate_audio 控制成片音轨,省略时默认启用。
当前公开的 Seedance 2.5 模型为:
| 模型 ID | 分辨率 | 输出时长 | 参考模式 |
|---|---|---|---|
leonardo-seedance-2.5-480p | 480p | 4–30 秒 | frame、media |
leonardo-seedance-2.5-720p | 720p | 4–30 秒 | frame、media |
Seedance 2.0 / Fast 的 media 模式最多支持 4 张图片、3 个视频和 1 个参考音频。 Seedance 2.5 的 frame 模式支持 1–2 张首尾帧图;media 模式的当前上限为 30 张图片、 10 个视频和 10 个参考音频。参考音频必须同时提供至少一张图片或一个视频。 参考音频与生成成片音轨是两项独立能力。
模型以实际列表为准
Seedance 2.5 可能按账号或发布批次开放。调用前请以控制台模型广场或 GET /v1/models 返回结果为准;接口没有返回的模型不要自行拼接调用。
查询当前 Token 可用的 Seedance 模型:
curl -sS "$SUPERTOKEN_BASE_URL/v1/models" \
-H "Authorization: Bearer $SUPERTOKEN_KEY" |
jq '.data[] | select(.id | contains("seedance"))'不同模型 ID 范围的参考素材限制见 参数与错误。
文档导航
| 页面 | 内容 |
|---|---|
| 异步任务 | 上传参考素材,创建任务,查询、轮询和下载视频 |
| Webhook | 配置回调、验证来源、事件去重和失败重试 |
| 参数与错误 | 完整字段、取值范围、响应对象和常见错误 |
端点速览
| 能力 | 方法与路径 | 使用的密钥 |
|---|---|---|
| 创建任务 | POST /v1/video/tasks | 模型 API Token,sk-... |
| 创建媒体直传会话 | POST /v1/media/uploads | 资源 API Key,ak_... |
| 确认媒体直传结果 | POST /v1/media/uploads/complete | 资源 API Key,ak_... |
| 查询任务 | GET /v1/video/tasks/{task_id} | 资源 API Key,ak_... |
| 列出任务 | GET /v1/video/tasks | 资源 API Key,ak_... |
| 批量查询 | POST /v1/video/tasks/query | 资源 API Key,ak_... |
| 访问视频结果 | 使用 result.videos[].url | 按 url_auth 决定是否携带 ak_... |
| 完成通知 | 账号级 Webhook | 接收端校验 Webhook Key,wk-... |
开始之前
后续示例统一使用这些环境变量:
export SUPERTOKEN_BASE_URL="https://api.supertoken.cc"
export SUPERTOKEN_KEY="YOUR_MODEL_API_TOKEN"
export RESOURCE_API_KEY="YOUR_RESOURCE_API_KEY"
export VIDEO_MODEL="adobe-seedance-2.0-480p"模型 API Token 在控制台的 Token 管理中创建;资源 API Key 和 Webhook Key 在“资源管理中心”中创建。本地参考文件先通过媒体直传接口获得上传地址,文件会直接 PUT 到对象存储,文件内容不会经过 SuperToken。
成功任务会在 result.videos[] 中返回结果 URL。url_auth: "none" 时浏览器可直接打开或下载;值为 resource_api_key 时需要携带资源 API Key。客户端必须以响应字段为准。
不要混用密钥
创建任务使用 sk-...;查询任务和访问受保护的视频资源使用 ak_...;wk-... 只用于接收端验证 Webhook,不能调用 API。
最小示例
下面创建一个 4 秒、16:9 的 480p 文生视频任务:
curl -i -sS "$SUPERTOKEN_BASE_URL/v1/video/tasks" \
-H "Authorization: Bearer $SUPERTOKEN_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: video-order-20260730-001" \
-d '{
"model": "'"$VIDEO_MODEL"'",
"operation": "generation",
"input": {
"prompt": "电影感产品视频,玻璃香水瓶在黑色石材上缓慢旋转"
},
"output": {
"duration": 4,
"aspect_ratio": "16:9",
"generate_audio": true
}
}'旧参数不再兼容
不要再传 provider_options.*.generate_audio 或 provider_options.*.reference_mode。它们会返回 400 invalid_provider_options;请分别使用 output.generate_audio 和 input.reference_mode。
接口返回 202 Accepted 和任务对象。保存响应中的 id,然后按 Retry-After 建议的间隔查询;也可以配置 Webhook 等待完成通知。