Seedance生视频API
更新时间 2026-09-06 17:31:08
最近更新时间: 2026-09-06 17:31:08
本文介绍火山方舟 Seedance生视频模型调用API。
模型简介
Doubao‑Seedance‑1.x‑pro 系列是火山方舟豆包视频生成模型,支持文生视频、图生视频‑首帧、图生视频‑首尾帧能力。
Doubao‑Seedance‑1.5‑pro:支持 draft 样片预览模式;支持返回视频尾帧;支持在线 / 离线两种推理服务等级;支持 heic/heif 图片格式输入。
Doubao‑Seedance‑1.0‑pro:基础版本,支持文生视频、首帧图生视频、首尾帧图生视频;不支持自动音频生成、draft 样片模式。
调用流程
接口采用异步任务模式,分两步执行:
step1:调用创建任务接口,成功返回任务id
step2:调用查询任务接口查询对应任务id,直到status值为succeeded,获取生成视频url
创建任务接口详情
http调用
请求方式:POST
请求路径:https://ai.ctaigw.cn/v1/contents/generations/tasks
请求头
| 参数 | 必填 | 说明 |
|---|---|---|
| Content‑Type | 是 | 固定application/json |
| Authorization | 是 | Bearer ${YOUR_APP_KEY} |
请求参数
| 参数 | 类型 | 必选 | 说明 |
|---|---|---|---|
| model | string | 是 | 使用模型名称或模型id |
| content | object[] | 是 | 输入给模型生成视频的信息,支持文本、图片、音频、视频、样片任务 ID 等多种类型的元素。 支持以下几种组合: - 纯文本 - 文本(可选)+ 图片 - 文本(可选)+ 视频 - 文本+ 音频 - 文本(可选)+ 图片 + 音频 - 文本(可选)+ 图片 + 视频 - 文本(可选)+ 视频 + 音频 - 文本(可选)+ 图片 + 视频 + 音频 - 样片任务 ID:样片指使用 Seedance 模型成功生成的样片视频,模型可基于样片生成高质量正式视频 备注:不同类型的值不同,详见如下 |
| resolution | string | 否 | 分辨率:480p/720p/1080p; 1.5pro 默认 720p; 1.0pro 默认 1080p |
| ratio | string | 否 | 宽高比:16:9/4:3/1:1/3:4/9:16/21:9/adaptive自适应; 1.0pro 文生视频默认 16:9,图生视频默认 adaptive |
| duration | integer | 否 | 视频时长,单位秒;与 frames 二选一,frames 优先级更高; 1.5pro 支持‑1 自动选择时长 |
| frames | integer | 否 | 视频帧数,仅 1.0‑pro 支持; 取值[29,289],满足25+4n;生成小数秒视频 |
| generate_audio | boolean | 否 | 仅 1.5‑pro 有效;true 自动生成音频; 1.0pro 该参数会被忽略,强制无声 |
| seed | integer | 否 | 随机种子,‑1代表随机; 取值‑1 ~ 2147483647;相同 seed 生成相似结果,不保证完全一致 |
| camera_fixed | boolean | 否 | 是否固定摄像头。 - true:固定摄像头。平台会在用户提示词中追加固定摄像头,实际效果不保证。 - false:不固定摄像头。 参考图场景不支持。 |
| watermark | boolean | 否 | 生成视频是否包含水印。 - true:生成视频右下角会展示 AI 生成 水印。 - false:生成视频不含水印。 |
| return_last_frame | boolean | 否 | 默认 false;true 任务成功后返回视频尾帧 png 图片,可用于接续生成连续视频 |
| draft | boolean | 否 | 仅 1.5pro 支持;true 开启样片模式,仅 480p,低成本预览效果 |
| service_tier | string | 否 | default在线推理; 1.x 系列支持 |
| callback_url | string | 否 | 回调地址; 任务状态变更会 POST 回调,结构同查询任务接口返回 |
| execution_expires_after | integer | 否 | 任务超时时间,单位秒; |
| priority | integer | 否 | 队列优先级,0‑9; 数值越大优先级越高;flex 离线模式无效 |
| safety_identifier | string | 否 | 终端用户唯一标识,用于风控,不超过 64 字符,建议哈希后传入 |
content为文本的场景
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content[].type | string | 是 | 内容类型,文本场景固定取值为 text |
| content[].text | string | 是 | 文本提示词,描述期望生成的视频内容 |
content为图片的场景
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content[].type | string | 是 | 内容类型,图片场景固定取值为image_url |
| image_url | object | 是 | 图片对象 |
| image_url.url | string | 是 | 图片 URL、图片 Base64 编码、素材 ID |
| role | string | 是 | 图生视频场景的role取值:需要传入 1 个 image_url 对象,role 为 first_frame 或不填 图生视频-首尾帧景的role取值:需要传入 2个 image_url 对象,且role为必填 - 首帧图片对应的 role 为 first_frame - 尾帧图片对应的 role 为 last_frame |
content为样片信息的场景
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content[].type | string | 是 | 输入内容的类型,此处固定为 draft_task |
| content[].draft_task | object | 是 | 样片任务id |
| content[].draft_task.id | id | 是 | 传入上一次 draft 模式生成返回的任务 id; 仅 Seedance1.5pro 支持 |
响应参数
| 参数 | 类型 | 说明 |
|---|---|---|
| id | string | 任务 ID draft=true 返回样片任务 ID;需要调用查询任务接口轮询获取结果 |
查询任务接口详情
http调用
请求方式:GET
请求路径:https://ai.ctaigw.cn/v1/contents/generations/tasks/
Path 路径参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | string | 是 | 创建异步任务接口返回的任务 ID |
请求头
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| Authorization | string | 是 | 身份认证,格式:Bearer ${YOUR_APP_KEY} |
响应参数
| 参数 | 类型 | 描述 |
|---|---|---|
| id | string | 任务 ID |
| model | string | 模型名称或模型id |
| status | string | 任务状态 - queued:排队中。 - running:任务运行中。 - cancelled:取消任务,取消状态 24h 自动删除(只支持 queued 状态的任务被取消)。 - succeeded:任务成功。 - failed:任务失败。 |
| content | object | 输出内容对象 |
| video_url | string | 生成视频 URL,24 小时有效期 |
| last_frame_url | string | 尾帧图像 URL; 创建任务时传 return_last_frame:true 才返回 |
| created_at | integer | 任务创建 Unix 时间戳,单位秒 |
| updated_at | integer | 任务状态更新 Unix 时间戳,单位秒 |
| draft | boolean | 是否为 Draft 草稿视频; true= 草稿视频,false= 正式视频; 仅 1.5‑pro /1.5‑pro‑noaudio 支持 |
| draft_task_id | string | Draft 草稿任务 ID; 基于草稿生成正式视频时返回 |
| duration | integer | 视频时长,单位秒; 和 frames 互斥,未指定 frames 时返回 |
| frames | integer | 视频总帧数; 和 duration 互斥,创建任务指定 frames 时返回 |
| framespersecond | integer | 视频帧率 |
| generate_audio | boolean | 是否生成同步音频 true 视频带音频(仅 Doubao‑Seedance‑1.5‑pro) false 无声视频(1.0‑pro 固定返回 false) |
| ratio | string | 视频宽高比 |
| resolution | string | 视频分辨率 |
| safety_identifier | string | 终端用户标识,创建任务传入则原样返回 |
| seed | integer | 随机种子 |
| service_tier | string | 实际执行任务的服务等级 |
| execution_expires_after | integer | 任务超时阈值(秒),超时未完成自动置为 expired 失败 |
| usage | object | Token 用量,用于计费对账 |
| usage.completion_tokens | integer | 生成消耗 token 数,计费依据 |
| usage.total_tokens | integer | 总 token,视频模型输入 token 为 0,等于 completion_tokens |
| usage.tool_usage | object | 工具调用用量;1.x 版本模型不返回 |
请求/响应示例
创建任务请求示例
请求头
POST https://ai.ctaigw.cn/v1/contents/generations/tasks
Authorization: Bearer ${YOUR_APP_KEY}
Content-Type: application/json文生视频请求示例
{
"model": "doubao-seedance-1-5-pro",
"content": [
{
"type": "text",
"text": "春日森林,小鹿在林间漫步,柔和阳光穿过树叶,画面唯美治愈"
}
],
"resolution": "720p",
"ratio": "16:9",
"duration": 6
}图生视频-首帧请求示例
{
"model": "doubao-seedance-1-5-pro",
"content": [
{
"type": "text",
"text": "海面泛起层层浪花,海浪缓缓涌动"
},
{
"type": "image_url",
"image_url": {
"url": "https://aaaa.ctyun.cn/001.jpg"
},
"role": "first_frame"
}
],
"resolution": "720p",
"ratio": "16:9",
"duration": 5,
"seed": 100,
"return_last_frame": true
}正常响应
{
"id": "cgt-2026******-****"
}异常响应
{
"error": {
"type:": "Invalid_request",
"code": "missing_parameter",
"message": "Missing required parameters"
}
}查询任务请求示例
请求
curl -X GET https://ai.ctaigw.cn/v1/contents/generations/tasks/{id} \
--header "Authorization: Bearer ${YOUR_APP_KEY}"正常响应
{
"id": "task‑xxxxxx",
"model": "Doubao‑Seedance‑1.5‑pro",
"status": "succeeded",
"content": {
"video_url": "https://aaaa.ctyun.cn/001.mp4",
"last_frame_url": "https://aaaa.ctyun.cn/001.jpg"
},
"created_at": 1785678900,
"updated_at": 1785679820,
"draft": false,
"duration": 5,
"framespersecond": 24,
"generate_audio": true,
"ratio": "16:9",
"resolution": "1280*720",
"seed": 12345,
"execution_expires_after": 3600,
"usage": {
"completion_tokens": 8500,
"total_tokens": 8500
}
}