视频生成-Wan3.0
更新时间:2026-10-30 17:55:47
Wan 3.0 视频生成接口文档
本文档说明 token-gateway 中 Wan 3.0 视频生成接口的调用方式。接口兼容阿里云百炼 Wan 3.0 异步任务协议,统一支持文生视频、首帧/首尾帧生视频、参考生视频、视频编辑及视频延长等场景。
1. 接口概览
| 方法 | 路径 | 用途 |
|---|---|---|
POST | https://router.253.com/wan3/api/v1/services/aigc/video-generation/video-synthesis | 创建视频任务 |
GET | https://router.253.com/wan3/api/v1/tasks/{task_id} | 查询任务状态 |
2. 鉴权
所有接口都需要网关 Token 鉴权。
Authorization: Bearer {API_KEY} Content-Type: application/json
3. 创建视频任务
请求:POST https://router.253.com/wan3/api/v1/services/aigc/video-generation/video-synthesis
3.1 支持的模型
| 模型 | 说明 |
|---|---|
wan3.0-video | 标准版。 |
wan3.0-video-prime | 高速版,能力与标准版对齐,端到端速度更快。 |
3.2 请求体
| 字段 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
model | string | 是 | 模型名称,取值见上表。 |
input | object | 是 | 输入信息,必须是 JSON 对象。 |
input.prompt | string | 条件必填 | 视频描述。与 input.media 至少填写一项;支持中英文,最多 20,000 个字符,超出部分由上游截断。 |
input.media | array | 条件必填 | 媒体素材数组。与 input.prompt 至少填写一项。 |
input.media[].type | string | 是 | 素材类型,见“媒体素材类型”。 |
input.media[].url | string | 是 | 公网 HTTP/HTTPS URL、阿里临时 OSS URL;图像还支持 Base64 Data URL。 |
parameters | object | 否 | 生成参数。未传时使用模型默认值。 |
3.3 parameters生成参数
| 字段 | 类型 | 默认值 | 取值与说明 |
|---|---|---|---|
parameters.resolution | string | 1080P | 480P、720P、1080P。 |
parameters.ratio | string | adaptive | adaptive、21:9、16:9、4:3、1:1、3:4、9:16。 |
parameters.duration | integer | 5 | 输出时长,单位为秒。可填 2 至 30 的整数,或填 -1 启用智能时长。有参考视频时,输入视频总时长与输出视频时长之和不得超过 30 秒。 |
parameters.audio | boolean | true | 是否生成音轨。开关声音价格相同。 |
parameters.seed | integer | -1 | 随机种子,取值为 -1 或 0 至 2147483647。相同 seed 不保证结果完全一致。 |
parameters.prompt_extend | boolean | true | 是否启用提示词智能改写。传入 file 或 link 时必须为 true。 |
parameters.watermark | boolean | false | 是否添加水印。 |
3.4 媒体素材类型
| type | 用途 | 主要限制 |
|---|---|---|
first_frame | 首帧图像 | 最多 1 张,严格作为视频第一帧。 |
last_frame | 尾帧图像 | 最多 1 张,严格作为视频最后一帧;需与首帧配合使用。 |
reference_image | 参考图像 | 最多 10 张。 |
reference_video | 参考视频 | 最多 5 段,单段 1 至 15 秒,总时长不超过 15 秒。 |
reference_audio | 参考音频 | 最多 5 段,单段 1 至 15 秒,总时长不超过 15 秒。 |
file | 参考文件 | 最多 1 个,不可与 link 同时输入。 |
link | 公开网页 | 最多 1 个,不可与 file 同时输入;网页必须无需登录即可访问。 |
**图像限制:**JPEG、JPG、PNG(不支持透明通道)、BMP、WEBP;单边 240 至 8000 像素;长宽比不超过 8:1;单文件不超过 20 MB。
**视频限制:**MP4、MOV;帧率不低于 16 fps;单边 240 至 4096 像素;长宽比不超过 8:1;单文件不超过 100 MB。
**音频限制:**WAV、MP3;单文件不超过 15 MB。
3.5 素材组合规则
-
文生视频只传
prompt,不传media。 -
first_frame/last_frame与reference_image/reference_video/reference_audio/file/link互斥。 -
file与link二选一,但都可以与参考图片、参考视频、参考音频组合。 -
reference_image、reference_video、reference_audio可以自由组合。 -
在提示词中可使用“图 1”“视频 1”“音频 1”等表述引用
media中同类型素材,图片、视频、音频分别独立计数。
3.6 示例:文生视频
curl -X POST "https://router.253.com/wan3/api/v1/services/aigc/video-generation/video-synthesis" \ -H "Authorization: Bearer {TOKEN}" \ -H "Content-Type: application/json" \ -d '{ "model": "wan3.0-video", "input": { "prompt": "一只金毛犬在阳光明媚的海滩上奔跑,海浪在背景中翻涌,电影感光影" }, "parameters": { "resolution": "1080P", "ratio": "16:9", "duration": 5, "audio": true, "prompt_extend": true, "watermark": false } }'
3.7 示例:首帧/首尾帧生视频
{ "model": "wan3.0-video", "input": { "prompt": "一个年轻女孩从微笑逐渐变为大笑,镜头缓缓推进,背景光线从冷色调渐变为暖色调。", "media": [ { "type": "first_frame", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png" }, { "type": "last_frame", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg" } ] }, "parameters": { "resolution": "1080P", "ratio": "adaptive", "duration": 5, "audio": true } }
只使用首帧时,删除 last_frame 项即可。首帧/首尾帧模式不能同时传入参考图片、参考视频、参考音频、文件或网页素材。
3.8 示例:多模态参考生视频
{ "model": "wan3.0-video", "input": { "prompt": "视频1抱着图3,在图4的椅子上弹奏一支舒缓的乡村民谣,并说道:\"今天的阳光真好。\"图1手中拿着图2,路过视频1,把手中的图2放到视频1旁边的桌子上,并说道:\"真好听,能不能再唱一遍\"。", "media": [ { "type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg" }, { "type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4" }, { "type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png" }, { "type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png" }, { "type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png" } ] }, "parameters": { "resolution": "480P", "ratio": "adaptive", "duration": 5, "prompt_extend": true } }
3.9 创建成功响应
{ "output": { "task_status": "PENDING", "task_id": "task_xxxxxxxxxxxxxxxxxxxxxxxx" }, "request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx" }
响应中的 task_id 是网关公开任务 ID,不是上游真实任务 ID。后续查询必须原样使用该 ID。
4. 查询任务
请求:GET https://router.253.com/wan3/api/v1/tasks/{task_id}
curl -X GET "https://router.253.com/wan3/api/v1/tasks/{task_id}" \ -H "Authorization: Bearer {TOKEN}"
4.1 任务状态
| 状态 | 含义 | 客户端处理建议 |
|---|---|---|
PENDING | 任务排队中 | 继续轮询。 |
RUNNING | 任务处理中 | 继续轮询。 |
SUCCEEDED | 任务成功 | 读取并保存 video_url。 |
FAILED | 任务失败 | 读取 code 和 message。 |
CANCELED | 任务已取消 | 停止轮询。 |
UNKNOWN | 任务不存在或状态未知 | 检查任务 ID,或确认任务是否已超过上游查询有效期。 |
4.2 成功响应
{ "request_id": "78c9b768-0285-996c-b682-xxxxxx", "output": { "task_id": "task_xxxxxxxxxxxxxxxxxxxxxxxx", "task_status": "SUCCEEDED", "submit_time": "2026-10-28 10:01:35.452", "scheduled_time": "2026-10-28 10:01:35.507", "end_time": "2026-10-28 10:03:33.838", "orig_prompt": "一只金毛犬在阳光明媚的海滩上奔跑", "video_url": "https://example.com/generated-video.mp4" }, "usage": { "video_count": 1, "duration": 5, "input_video_duration": 0, "output_video_duration": 5, "fps": 30, "SR": 1080, "ratio": "16:9" } }
| 字段 | 说明 |
|---|---|
output.task_id | 网关公开任务 ID。 |
output.task_status | 任务状态。 |
output.video_url | 成功后返回的视频地址,格式为 MP4(H.264)。 |
output.orig_prompt | 原始提示词。 |
usage.duration | 计费时长;有参考视频时为输入视频与输出视频时长之和。 |
usage.input_video_duration | 输入参考视频总时长。 |
usage.output_video_duration | 输出视频时长。 |
usage.fps | 输出帧率,通常为 30 fps。 |
usage.SR | 输出分辨率档位的像素值。 |
request_id | 请求追踪 ID,排查问题时请保留。 |
上游生成结果 URL 通常只保留 24 小时。客户端应在任务成功后立即下载并转存至长期存储。
4.3 失败响应
{ "request_id": "e5e57877-c0fc-47ed-8fad-xxxxxx", "output": { "task_id": "task_xxxxxxxxxxxxxxxxxxxxxxxx", "task_status": "FAILED", "code": "InvalidParameter", "message": "The two modes are mutually exclusive. Do not pass reference_xx and first_frame/last_frame at the same time." } }
5. 错误处理
创建任务或查询任务发生 HTTP 错误时,网关返回与阿里官方格式兼容的错误对象:
{ "code": "invalid_request", "message": "parameters.duration must be -1 or between 2 and 30", "request_id": "" }
| HTTP 状态码 | 常见原因 | 处理建议 |
|---|---|---|
400 | 请求体格式错误、缺少 model/input、duration 或 seed 越界、素材组合无效。 | 检查 code 与 message,修正参数后重新提交。 |
401 | 令牌缺失或无效。 | 检查 Authorization: Bearer {TOKEN}。 |
429 | 当前分组上游负载饱和或触发限流。 | 采用指数退避后重试,不要立即高频重复创建任务。 |
500 | 渠道、价格配置或上游响应异常。 | 保留 request_id、请求时间和任务 ID,联系管理员排查。 |
这篇文档对您有帮助吗?




