Skip to content

Wan 2.6 - 视频转视频 ​

本页由 ModelFold 文档站根据上游官方 OpenAPI 文档同步生成。接口路径、参数、示例与官方保持一致;品牌与 API 域名已替换为 ModelFold。

接口 ​

POST /jobs/createTask

完整 URL: https://ai.modelfold.online/v1/jobs/createTask

鉴权:所有请求都需要 Authorization: Bearer <API_KEY> 请求头。

概述 ​

根据参考视频中的主体生成新视频,画面内容由提示词决定。输出带生成的音频。

文件上传要求 ​

在使用此 API 之前,您需要上传视频文件:

第 1 步 · 上传视频

使用文件上传 API 上传您的源视频。

第 2 步 · 获取文件 URL

上传完成后,您将获得可在 video_urls 参数中使用的文件 URL。

WARNING

  • 支持格式:MP4、QuickTime、Matroska
  • 最大文件大小:10MB
  • 每个请求最多3个视频 URL
  • 视频内容应适当并遵循使用指南

使用示例 ​

TIP

  • 使用描述性提示指定您希望视频如何变化
  • 尝试不同的提示样式以达到期望结果

查询任务状态 ​

提交任务后,使用统一的查询端点检查进度并检索结果:

TIP

对于生产使用,我们建议使用 callBackUrl 参数接收生成完成时的自动通知,而不是轮询状态端点。

相关资源 ​

请求参数 ​

请求体 (application/json) ​

参数类型必填说明
modelstring是用于生成的模型名称。必填字段。
- 此端点必须为 wan/2-6-video-to-video 默认值:"wan/2-6-video-to-video"。 可选值:wan/2-6-video-to-video。 示例:wan/2-6-video-to-video。
callBackUrlstring否接收生成任务完成更新的 URL。生产环境可选但推荐使用。
- 系统会在生成完成时向此 URL 发送 POST 请求,包含任务状态和结果
- 回调包含生成的内容 URL 和任务信息
- 您的回调端点应接受包含 JSON 有效负载的 POST 请求
- 或者使用 Get Task Details 端点轮询任务状态
- 为确保回调安全性,请参阅 Webhook 校验指南 了解签名验证实现方法 示例:https://your-domain.com/api/callback。
inputobject否生成任务的输入参数
  input.promptstring是视频生成的文本提示。同时支持中文和英文,最少2个字符,最多5,000个字符。(最大长度:5000个字符) 示例:The video drinks milk tea while doing some improvised dance moves to the music.。
  input.video_urlsarray&lt;string&gt;是参考视频 URL。(上传后的文件 URL,而不是文件内容;接受类型:video/mp4, video/quicktime, video/x-matroska;最大大小:10.0MB)
  input.durationstring否生成视频的持续时间(秒) 默认值:"5"。 可选值:5 / 10。 示例:5。
  input.resolutionstring否输出分辨率:720p 或 1080p。请显式传入。 可选值:720p / 1080p。 示例:1080p。
  input.multi_shotsboolean否多镜头参数。用于控制AI视频生成时的镜头构图风格,决定生成的视频是单个连续镜头,还是多个带有转场的镜头。 默认值:false。 示例:false。
  input.nsfw_checkerboolean否默认 false。为 false 时不额外进行内容过滤,结果由模型直接返回。

请求示例 ​

bash
curl -X POST "https://ai.modelfold.online/v1/jobs/createTask" \
  -H "Authorization: Bearer $MODELFOLD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "wan/2-6-video-to-video",
  "callBackUrl": "https://your-domain.com/api/callback",
  "input": {
    "prompt": "The video drinks milk tea while doing some improvised dance moves to the music.",
    "video_urls": [
      "https://static.aiquickdraw.com/tools/example/1765957777782_cNJpvhRx.mp4"
    ],
    "duration": "5",
    "resolution": "1080p",
    "multi_shots": false
  }
}'
json
{
  "model": "wan/2-6-video-to-video",
  "callBackUrl": "https://your-domain.com/api/callback",
  "input": {
    "prompt": "The video drinks milk tea while doing some improvised dance moves to the music.",
    "video_urls": [
      "https://static.aiquickdraw.com/tools/example/1765957777782_cNJpvhRx.mp4"
    ],
    "duration": "5",
    "resolution": "1080p",
    "multi_shots": false
  }
}

响应 ​

200 — 请求成功 ​

参数类型必填说明
codeinteger是请求状态码。请求失败时 HTTP 状态仍为 200,请始终以本字段判断:200 表示成功,其他值均表示失败,原因见 msg。常见值:401 API key 无效或缺失;402 积分不足;429 超出频率限制;422 或 500 请求未能处理(请先查看 msg、检查参数,再决定是否重试)。 可选值:200 / 401 / 402 / 404 / 422 / 429 / 433 / 455 / 500 / 501 / 505。 示例:200。
msgstring是响应消息,失败时的错误描述
dataobject是—
  data.taskIdstring是可以使用任务 ID 与“获取任务详细信息”端点一起查询任务状态。
json
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "task_wan_1765967743009"
  }
}

回调 ​

videoTaskCompleted ​

回调地址:{request.body#/callBackUrl}(即请求体里的 callBackUrl)。

当 wan/2-6-video-to-video 任务成功或失败时,系统会发送此回调。

回调体参数

参数类型必填说明
codeinteger是统一回调状态码:成功为 200,失败为 501。 可选值:200 / 501。 示例:200。
msgstring是统一回调消息。 可选值:Playground task completed successfully. / Playground task failed.。 示例:Playground task completed successfully.。
dataobject是—
  data.taskIdstring是任务唯一标识符。
  data.modelstring是任务使用的模型。 可选值:wan/2-6-video-to-video。 示例:wan/2-6-video-to-video。
  data.statestring是任务最终状态。 可选值:success / fail。 示例:success。
  data.paramstring是包含已提交任务参数的 JSON 字符串。
  data.resultJsonstring否任务成功时,包含 resultUrls、firstFrameUrl、lastFrameUrl 或 resultObject 的 JSON 字符串。仅在 state 为 success 时出现。
  data.failCodestring否失败码,数字字符串,如 "400"、"500"。仅在 state 为 fail 时出现。
  data.failMsgstring否失败原因,仅在 state 为 fail 时出现。
  data.costTimeinteger否处理耗时(秒),成功和失败回调都会返回。
  data.completeTimeinteger否任务完成时间戳。
  data.createTimeinteger否任务创建时间戳。
  data.updateTimeinteger否完成时间请以 completeTime 为准;updateTime 可能与 createTime 相同。
  data.creditsConsumednumber否本任务消耗的积分;失败任务为 0。

任务成功完成

json
{
  "code": 200,
  "msg": "Playground task completed successfully.",
  "data": {
    "taskId": "task_example_video_webhook_001",
    "model": "wan/2-6-video-to-video",
    "state": "success",
    "param": "{\"input\":\"{\\\"prompt\\\":\\\"The video drinks milk tea while doing some improvised dance moves to the music.\\\",\\\"video_urls\\\":[\\\"https://example.com/input-video.mp4\\\"],\\\"duration\\\":\\\"5\\\",\\\"resolution\\\":\\\"1080p\\\",\\\"multi_shots\\\":false,\\\"nsfw_checker\\\":false}\",\"callBackUrl\":\"https://example.com/callback\",\"model\":\"wan/2-6-video-to-video\"}",
    "resultJson": "{\"resultUrls\":[\"https://example.com/generated-video.mp4\"]}",
    "costTime": 12,
    "completeTime": 1234567890,
    "createTime": 1234560000,
    "updateTime": 1234567890,
    "creditsConsumed": 1.23
  }
}

任务失败

json
{
  "code": 501,
  "msg": "Playground task failed.",
  "data": {
    "taskId": "task_example_video_webhook_001",
    "model": "wan/2-6-video-to-video",
    "state": "fail",
    "param": "{\"input\":\"{\\\"prompt\\\":\\\"The video drinks milk tea while doing some improvised dance moves to the music.\\\",\\\"video_urls\\\":[\\\"https://example.com/input-video.mp4\\\"],\\\"duration\\\":\\\"5\\\",\\\"resolution\\\":\\\"1080p\\\",\\\"multi_shots\\\":false,\\\"nsfw_checker\\\":false}\",\"callBackUrl\":\"https://example.com/callback\",\"model\":\"wan/2-6-video-to-video\"}",
    "failCode": "400",
    "failMsg": "<error detail>",
    "costTime": 12,
    "creditsConsumed": 0
  }
}

ModelFold — 一个 API,接入所有主流 AI 模型。