API VERSION 2026-09-15
Seedance API 文档
对接一次,底层供应商可以由 CreativeFly Token Platform 路由切换,客户侧请求契约保持稳定。
Staging Base URL
https://staging-api.creativefly.ai快速开始
所有生成任务均为异步任务。创建任务后会返回 task_id,请按 poll_after_seconds 建议间隔查询结果。
身份验证
在每个请求的 Authorization Header 中发送 API Key。请只在服务端保存 Key,不要放入网页、移动端或公开仓库。
Authorization: Bearer $CTP_API_KEY创建视频
POST
/v1/video/generations必须携带唯一的 Idempotency-Key。网络重试时复用同一个 Key,可避免重复创建任务和重复预占 Credit。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | seedance-2.0、seedance-2.0-fast 或 seedance-2.5 |
prompt | string | 是 | 生成提示词,1–12000 字符 |
duration | integer | 否 | 视频时长(秒);当前测试 SKU 为 5 |
ratio | string | 否 | 画面比例,默认 16:9 |
resolution | string | 否 | 480p、720p 或 1080p;默认 720p |
output_count | integer | 否 | 输出数量,1–8;默认 1 |
generate_audio | boolean | 否 | 是否生成音频 |
watermark | boolean | 否 | 是否添加水印 |
output_format | string | 否 | mp4 或 mov |
curl -X POST https://staging-api.creativefly.ai/v1/video/generations \
-H "Authorization: Bearer $CTP_API_KEY" \
-H "Idempotency-Key: order-20260916-001" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.5",
"prompt": "一杯冰咖啡放在晨光中的木桌上,商业广告质感",
"duration": 5,
"ratio": "16:9",
"resolution": "720p",
"output_count": 1,
"generate_audio": false,
"watermark": false,
"output_format": "mp4"
}'成功响应 · 202
{
"id": "9516dad2-55c9-4a19-bcee-5234bfb83fdd",
"task_id": "9516dad2-55c9-4a19-bcee-5234bfb83fdd",
"object": "video_generation",
"status": "queued",
"poll_after_seconds": 10
}查询与取消任务
GET
/v1/video/generations/{task_id}curl https://staging-api.creativefly.ai/v1/video/generations/{task_id} \
-H "Authorization: Bearer $CTP_API_KEY"POST
/v1/video/generations/{task_id}/cancel取消排队中或处理中的任务。未结算的预占 Credit 会自动释放。
账户与 Credit
GET
/v1/credits返回可用、付费、试用和预占 Credit。API Wallet 与 CreativeFly.AI 的个人/企业 Credit 相互独立。
{
"object": "credit_balance",
"available": 3,
"paid_available": 0,
"promotional_available": 3,
"reserved": 0
}GET
/v1/account查看客户代码、每日输出额度和并发额度。也可以在客户控制台中可视化查看。
错误处理
错误响应统一包含 request_id、错误码、信息和是否建议重试。不要盲目重试 4xx 请求;仅在 retryable: true 时使用退避策略。
{
"request_id": "...",
"error": {
"code": "INSUFFICIENT_API_CREDITS",
"message": "Insufficient API Credits",
"retryable": false
}
}