Wan 2.7 - Video Edit
This page is generated from the upstream official OpenAPI documentation. Endpoints, parameters and examples match the official docs; brand and API domain are replaced with ModelFold.
Endpoint
POST /jobs/createTask
Full URL: https://ai.modelfold.online/v1/jobs/createTask
Authentication: every request must include the
Authorization: Bearer <API_KEY>header.
Create Task
Use this endpoint to create a new video editing generation task.
- Get Task Details — After submission, use the unified query endpoint to check task progress and retrieve results
TIP
For production use, we recommend providing the callBackUrl parameter so your service can receive completion notifications instead of polling for task status.
Related Resources
- Model Marketplace — Explore all available models and capabilities
- Common API — Check account credits and usage
Request Parameters
Body (application/json)
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | Yes | The model name used for generation. This field is required. This endpoint must use the wan/2-7-videoedit model. Default:"wan/2-7-videoedit"。 Allowed values:wan/2-7-videoedit。 示例:wan/2-7-videoedit。 |
callBackUrl | string | No | Callback URL for task completion notifications. Optional parameter. If provided, the system will send a POST request to this URL when the task completes, whether it succeeds or fails. If omitted, no callback notification will be sent. 示例:https://your-domain.com/api/callback。 |
input | object | Yes | Input parameters for the video editing task. |
input.prompt | string | No | Optional text prompt describing the expected elements and visual features in the generated video. Supports Chinese and English. Maximum length: 5000 characters. 示例:Change the character's outfit and add the hat shown in the reference image.。 |
input.negative_prompt | string | No | Optional negative prompt describing content that should not appear in the video. Supports Chinese and English. Maximum length: 500 characters. 示例:low resolution, errors, worst quality, low quality, malformed, extra fingers, bad proportions。 |
input.video_url | string | Yes | URL of the source video to edit. Required. Only one video is supported. - Formats: mp4, mov- Duration: 2 to 10 seconds- Resolution: width and height range [240,4096] pixels- Aspect ratio: 1:8 to 8:1- File size: up to 100MB- Supports public http/https URLs or temporary oss URLs 示例:https://example.com/demo/video.mp4。 |
input.reference_image | string | No | Optional reference image URL for character, clothing, or style guidance. - Formats: JPEG, JPG, PNG (no alpha channel), WEBP- Resolution: width and height range [240,8000] pixels- Aspect ratio: 1:8 to 8:1- Supports public http/https URLs or temporary oss URLs 示例:https://example.com/demo/reference.png。 |
input.resolution | string | No | Output video resolution tier. 1080p costs more than 720p. Default value: 1080p.- 720p: 720p- 1080p: 1080p Default:"1080p"。 Allowed values:720p / 1080p。 示例:1080p。 |
input.aspect_ratio | string | No | Output video aspect ratio. - If omitted: the output uses an aspect ratio close to the input video - If provided: the output uses the specified aspect ratio - Available values: 16:9, 9:16, 1:1, 4:3, 3:4 Allowed values:16:9 / 9:16 / 1:1 / 4:3 / 3:4。 示例:16:9。 |
input.duration | integer | No | Output video duration in seconds. - Default 0 means using the full input video duration without truncation- If a value is provided, the output is clipped from second 0 to the specified length- Valid values are 0 or any integer in [2,10] Default:0。 示例:0。 |
input.audio_setting | string | No | Video audio setting. - auto: default, the model decides whether to regenerate audio based on the prompt- origin: force keeping the original input video audio Default:"auto"。 Allowed values:auto / origin。 示例:auto。 |
input.prompt_extend | boolean | No | Whether to enable prompt rewriting. When enabled, the model expands the input prompt. This usually works better for short prompts but increases processing time. Default:true。 示例:true。 |
input.watermark | boolean | No | Whether to add a watermark. The watermark is placed in the lower-right corner of the video with the fixed text "AI generated". Default:false。 示例:false。 |
input.seed | integer | No | Random seed. Range: 0-2147483647. If omitted, the system generates one automatically. 示例:0。 |
input.nsfw_checker | boolean | No | Defaults to false. When false, no additional content filtering is applied and results are returned directly by the model. |
Request Example
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-7-videoedit",
"callBackUrl": "https://your-domain.com/api/callback",
"input": {
"prompt": "Change the character'\''s outfit and add the hat shown in the reference image.",
"negative_prompt": "low resolution, errors, worst quality, low quality, malformed, extra fingers, bad proportions",
"video_url": "https://example.com/demo/video.mp4",
"reference_image": "https://example.com/demo/reference.png",
"resolution": "1080p",
"aspect_ratio": "16:9",
"duration": 0,
"audio_setting": "auto",
"prompt_extend": true,
"watermark": false,
"seed": 0
}
}'{
"model": "wan/2-7-videoedit",
"callBackUrl": "https://your-domain.com/api/callback",
"input": {
"prompt": "Change the character's outfit and add the hat shown in the reference image.",
"negative_prompt": "low resolution, errors, worst quality, low quality, malformed, extra fingers, bad proportions",
"video_url": "https://example.com/demo/video.mp4",
"reference_image": "https://example.com/demo/reference.png",
"resolution": "1080p",
"aspect_ratio": "16:9",
"duration": 0,
"audio_setting": "auto",
"prompt_extend": true,
"watermark": false,
"seed": 0
}
}Response
200 — Request successful
{
"code": 200,
"msg": "success",
"data": {
"taskId": "task_wan_1765180586443"
}
}Callback
videoTaskCompleted
Callback URL: {request.body#/callBackUrl} (the callBackUrl in the request body).
The system sends this callback when the wan/2-7-videoedit task succeeds or fails.
Callback body parameters
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
code | integer | 是 | Unified callback code: 200 for success, 501 for failure. Allowed values:200 / 501。 示例:200。 |
msg | string | 是 | Unified callback message. Allowed values:Playground task completed successfully. / Playground task failed.。 示例:Playground task completed successfully.。 |
data | object | 是 | — |
data.taskId | string | 是 | The unique task identifier. |
data.model | string | 是 | The model used for the task. Allowed values:wan/2-7-videoedit。 示例:wan/2-7-videoedit。 |
data.state | string | 是 | Terminal task state. Allowed values:success / fail。 示例:success。 |
data.param | string | 是 | JSON string containing the submitted task parameters. |
data.resultJson | string | 否 | JSON string containing resultUrls, firstFrameUrl, lastFrameUrl, or resultObject when successful. Present only when state is success. |
data.failCode | string | 否 | Failure code, a numeric string such as "400" or "500". Present only when state is fail. |
data.failMsg | string | 否 | Failure reason. Present only when state is fail. |
data.costTime | integer | 否 | Processing time in seconds. Present on both success and failure callbacks. |
data.completeTime | integer | 否 | Task completion timestamp. |
data.createTime | integer | 否 | Task creation timestamp. |
data.updateTime | integer | 否 | Use completeTime as the completion time; updateTime may equal createTime. |
data.creditsConsumed | number | 否 | Credits consumed by the task; 0 for failed tasks. |
Task completed successfully
{
"code": 200,
"msg": "Playground task completed successfully.",
"data": {
"taskId": "task_example_video_webhook_001",
"model": "wan/2-7-videoedit",
"state": "success",
"param": "{\"input\":\"{\\\"prompt\\\":\\\"Change the character's outfit and add the hat shown in the reference image.\\\",\\\"negative_prompt\\\":\\\"low resolution, errors, worst quality, low quality, malformed, extra fingers, bad proportions\\\",\\\"video_url\\\":\\\"https://example.com/input-video.mp4\\\",\\\"reference_image\\\":\\\"https://example.com/input-image.jpg\\\",\\\"resolution\\\":\\\"1080p\\\",\\\"aspect_ratio\\\":\\\"16:9\\\",\\\"duration\\\":0,\\\"audio_setting\\\":\\\"auto\\\",\\\"prompt_extend\\\":true,\\\"watermark\\\":false,\\\"seed\\\":0}\",\"callBackUrl\":\"https://example.com/callback\",\"model\":\"wan/2-7-videoedit\"}",
"resultJson": "{\"resultUrls\":[\"https://example.com/generated-video.mp4\"]}",
"costTime": 12,
"completeTime": 1234567890,
"createTime": 1234560000,
"updateTime": 1234567890,
"creditsConsumed": 1.23
}
}Task failed
{
"code": 501,
"msg": "Playground task failed.",
"data": {
"taskId": "task_example_video_webhook_001",
"model": "wan/2-7-videoedit",
"state": "fail",
"param": "{\"input\":\"{\\\"prompt\\\":\\\"Change the character's outfit and add the hat shown in the reference image.\\\",\\\"negative_prompt\\\":\\\"low resolution, errors, worst quality, low quality, malformed, extra fingers, bad proportions\\\",\\\"video_url\\\":\\\"https://example.com/input-video.mp4\\\",\\\"reference_image\\\":\\\"https://example.com/input-image.jpg\\\",\\\"resolution\\\":\\\"1080p\\\",\\\"aspect_ratio\\\":\\\"16:9\\\",\\\"duration\\\":0,\\\"audio_setting\\\":\\\"auto\\\",\\\"prompt_extend\\\":true,\\\"watermark\\\":false,\\\"seed\\\":0}\",\"callBackUrl\":\"https://example.com/callback\",\"model\":\"wan/2-7-videoedit\"}",
"failCode": "400",
"failMsg": "<error detail>",
"costTime": 12,
"creditsConsumed": 0
}
}