≡ 全部文档

模型 API / 视频生成

视频生成

更新时间:2026-09-19

接口说明

根据文本提示词(或首帧图像)异步生成视频。视频生成耗时较长,采用「提交任务 → 轮询结果」两步式:先 POST 提交任务拿到 task_id,再按 task_id 轮询直到状态变为 completed。

POST/video/generations

请求参数

参数类型必需说明
modelstring必需视频模型 ID,如 doubao-seedance-2-0-260128、doubao-seedance-1-0-pro-250528
promptstring必需视频描述词,中英文均可
imagestring可选首帧图像 URL 或 Base64,用于图生视频;不传则为文生视频
durationinteger可选视频时长(秒),如 5;传 -1 表示由模型智能决定时长。具体取值范围依模型而定
resolutionstring可选输出分辨率:480p / 720p / 1080p / 4k,不传则用模型默认档
ratiostring可选画面宽高比:16:9 / 9:16 / 1:1 / 3:4 / 4:3 / 21:9 / adaptive(默认 adaptive,按提示词自动选)
generate_audioboolean可选是否生成同步音频(人声 / 音效 / 背景音乐),默认 true
contentarray可选多模态输入数组,元素为 { type: text | image_url | video_url | audio_url }。用它可传视频 / 音频参考;仅文生视频时用 prompt 即可
seed / watermark / camera_fixed-可选其余官方生成参数原样透传,字段名与豆包官方一致

提交任务

提交成功后返回任务对象,status 初始为 queued,请记录 id(即 task_id)用于后续查询。

curl -X POST "https://www.wangyidaai.com/v1/video/generations" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-2-0-260128",
"prompt": "一只银色的狼在月光下的雪原上奔跑,电影级镜头",
"duration": 5,
"resolution": "1080p",
"ratio": "16:9",
"generate_audio": true
}'
JSON
{
"id": "video_7xN3f2k...",
"task_id": "video_7xN3f2k...",
"object": "video",
"model": "doubao-seedance-2-0-260128",
"status": "queued",
"progress": 0,
"created_at": 1708502400
}

查询结果

GET/video/generations/{task_id}

用提交时拿到的 task_id 轮询任务状态。status 会经历 queued → in_progress → completed(或 failed)。建议每 5~10 秒轮询一次;成功后视频地址在 metadata.url 中。

curl "https://www.wangyidaai.com/v1/video/generations/video_7xN3f2k..." \
-H "Authorization: Bearer YOUR_API_KEY"
JSON
{
"id": "video_7xN3f2k...",
"task_id": "video_7xN3f2k...",
"object": "video",
"model": "doubao-seedance-2-0-260128",
"status": "completed",
"progress": 100,
"created_at": 1708502400,
"completed_at": 1708502460,
"metadata": {
"url": "https://cdn.wangyidaai.com/videos/abc123.mp4"
}
}

OpenAI 兼容端点

除上面的 /video/generations 外,平台还提供一组与 OpenAI Videos API 同形的端点:提交、查询、取视频文件、二次生成。两组端点共用同一套模型、渠道与计费,区别只在响应结构 —— 这一组统一返回 OpenAI 的 video 对象(object 恒为 video),可直接复用 OpenAI SDK 的数据结构。

  • POST /videos — 提交生成任务
  • GET /videos/{id} — 查询任务状态与结果
  • GET /videos/{id}/content — 下载视频文件
  • POST /videos/{id}/remix — 基于已有任务二次生成
任务 ID 在两组端点之间通用:POST /videos 拿到的 id 也能用 GET /video/generations/{id} 查。但两者响应结构不同,同一条链路请固定用同一组,不要混用。

提交任务(/videos)

POST/videos

请求体支持 application/json、multipart/form-data、application/x-www-form-urlencoded 三种编码。下表以外的字段原样透传给上游模型,因此厂商专有参数照官方文档写即可。

参数类型必需说明
modelstring必需视频模型 ID,如 sora-2、sora-2-pro、doubao-seedance-2-0-260128
promptstring必需视频描述词,中英文均可;为空或只有空白字符返回 400
secondsstring可选视频时长(秒),字符串形式如 "4";也可用整型字段 duration。取值 1~3600,超出返回 400 invalid_seconds
sizestring可选输出分辨率,如 720x1280。sora-2 只接受 720x1280 / 1280x720;sora-2-pro 另支持 1792x1024 / 1024x1792
input_referencestring可选首帧参考图 URL 或 Base64,传了即为图生视频;兼容 image(单图)与 images(多图)两种写法
metadataobject可选厂商自定义参数,原样透传
时长是计费乘数,请按实际需要传。sora-2 系模型不传 size / seconds 时按 720x1280、4 秒计费;size 不在允许集合内直接返回 400,不会回落到默认档。
curl -X POST "https://www.wangyidaai.com/v1/videos" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "sora-2",
"prompt": "一只银色的狼在月光下的雪原上奔跑,电影级镜头",
"seconds": "4",
"size": "1280x720"
}'
JSON
{
"id": "video_7xN3f2k...",
"task_id": "video_7xN3f2k...",
"object": "video",
"model": "sora-2",
"status": "queued",
"progress": 0,
"created_at": 1708502400
}

查询任务(/videos)

GET/videos/{id}

status 依次经历 queued → in_progress → completed(或 failed);刚入库尚未派发的任务会短暂返回 unknown。建议每 5~10 秒轮询一次,失败时 error.message 给出原因。任务按 API Key 所属账号隔离,查别人的任务或 id 不存在都返回 400 task_not_exist。

与 OpenAI 一致,Sora 系模型的查询响应里没有视频地址,completed 之后请直接调 /videos/{id}/content 取文件。其余视频模型(如 doubao-seedance)走这组端点时会额外带 metadata.url,指向平台代理链接,两种取法都可用。
curl "https://www.wangyidaai.com/v1/videos/video_7xN3f2k..." \
-H "Authorization: Bearer YOUR_API_KEY"
JSON
{
"id": "video_7xN3f2k...",
"task_id": "video_7xN3f2k...",
"object": "video",
"model": "sora-2",
"status": "completed",
"progress": 100,
"created_at": 1708502400,
"completed_at": 1708502460,
"seconds": "4",
"size": "1280x720"
}

下载视频文件

GET/videos/{id}/content

直接返回视频二进制流,由平台回源代理,上游真实地址与其签名不会暴露给客户端。响应带 Cache-Control: public, max-age=86400,可直接作为 <video> 的 src。任务尚未完成时返回 400。

cURL
curl "https://www.wangyidaai.com/v1/videos/video_7xN3f2k.../content" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -o output.mp4

二次生成 remix

POST/videos/{id}/remix

在一个已提交过的任务基础上换提示词重新生成。请求体只需 prompt,模型、分辨率、时长沿用原任务,渠道也锁定为原任务所用的那条,保证风格连续。

remix 仅 Sora 系模型支持,对其他视频模型调用会返回 400 remix_not_supported(不会扣费)。它会新建一个独立任务并按原任务的时长 / 分辨率单独计费,不是免费重试。原任务不存在、不属于当前账号,或其渠道已停用时同样返回 400。
cURL
curl -X POST "https://www.wangyidaai.com/v1/videos/video_7xN3f2k.../remix" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "同一只狼,改成黄昏逆光,镜头缓慢推近"
  }'
JSON
{
"id": "video_9pQ8h1m...",
"task_id": "video_9pQ8h1m...",
"object": "video",
"model": "sora-2",
"status": "queued",
"progress": 0,
"created_at": 1708502500,
"remixed_from_video_id": "video_7xN3f2k..."
}

没有找到想看的内容?联系我们 →