统一视频生成 API

视频模型 API

使用 OpenAI 兼容的异步接口调用视频模型。任务创建后通过轮询接口获取最终视频地址。

POST /v1/videosGET /v1/videos/{task_id}Bearer Token

认证与地址

在 Tokencookie 控制台创建 API 密钥。请求必须使用 Authorization: Bearer 认证。

Base URL: https://www.tokencookie.com
Authorization: Bearer YOUR_TK_API_KEY
Content-Type: application/json

模型列表

模型名必须使用下表中的 Tokencookie 模型名。模型分辨率固定,省略 resolution 时系统会自动补齐。

模型固定分辨率
sd-2.0-g1-480p480p
sd-2.0-g1-720p720p
sd-2.0-g1-1080p1080p
sd-2.5-g1-480p480p
sd-2.5-g1-720p720p
sd-2.5-g1-1080p1080p

请求字段

字段类型必填说明
modelstring是使用模型列表中的名称。
promptstring是视频生成提示词,不能为空。
durationinteger否视频时长(秒),默认 4。Seedance2.0支持4-15秒,Seedance2.5支持4-30秒。
ratiostring否默认 16:9;支持 21:9、16:9、9:16、1:1、3:4、4:3。
aspect_ratiostring否ratio 的兼容字段;优先使用 ratio。
sizestring否如 1920x1080,仅在未传比例字段时推导比例。
resolutionstring否必须与所选模型固定分辨率一致。
first_imagestring否首帧图片公网 HTTP(S) URL。
last_imagestring否尾帧图片公网 HTTP(S) URL。
reference_imagesstring[]否参考图片 URL 数组。
reference_videosstring[]否参考视频 URL 数组。
reference_audiosstring[]否参考音频 URL 数组。

创建任务

文生视频

{
  "model":"sd-2.0-g1-720p",
  "prompt":"城市夜景中的霓虹灯倒映在雨后街道,镜头缓慢推进。",
  "duration":5,
  "ratio":"16:9",
  "resolution":"720p"
 }
          

带参考素材

{
  "model": "sd-2.5-g1-1080p",
  "prompt": "保持人物外观一致,让人物从室内走向窗边。",
  "duration": 8,
  "ratio": "9:16",
  "first_image": "https://example.com/first.png",
  "reference_images": ["https://example.com/character.png"],
  "resolution": "1080p"
}

创建成功

{"id":"task_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","status":"queued"}

保存返回的 id,随后用于查询任务结果。

查询与结果

GET https://www.tokencookie.com/v1/videos/TASK_ID
Authorization: Bearer YOUR_TK_API_KEY

建议每隔 10-20 秒查询一次,直到状态为 completed 或 failed。

处理中

{"id":"TASK_ID","status":"processing","progress":48}

生成成功

{
  "id": "TASK_ID",
  "status": "completed",
  "progress": 100,
  "video_url": "https://tccdn.shenzhengyun.cn/video/2026/09/25/task_px_xxx.mp4",
  "result_url": "https://tccdn.shenzhengyun.cn/video/2026/09/25/task_px_xxx.mp4"
}

错误处理

参数校验错误

{
    "error":{
        "message":"resolution must be 720p for sd-2.0-g1-720p",
        "code":"invalid_request"
    }
}

生成失败

{
  "id": "TASK_ID",
  "status": "failed",
  "progress": 0,
  "error": {"message":"上游返回的具体失败原因","code":"上游错误码"}
}