Overview
Wan 2.7 Video is an Alibaba video model for text-to-video, image-to-video, reference-guided generation, and video editing. Use this page when you are ready to call the API after trying the model in the APIXO playground.Public input contract
- Public media input fields are
image_urls,video_urls, andaudio_urls. - Use
audio_urlsfor audio input. - For
reference-to-video,audio_urlsaligns by slot order: firstimage_urls, thenvideo_urls. - For
reference-to-video, use empty string""inaudio_urlsto skip a specific reference slot without shifting later audio bindings.
Endpoint and authentication
Base URL:
All requests require your APIXO API key:
Copy-paste async quickstart
This minimal request submits a text-to-video task and returns ataskId.
taskId; you need it to poll for the final result.
Poll for result
resultJson after state becomes success:
Request body
Text-to-video
Image-to-video (first and optional last frame)
Reference-to-video
Video-edit
Parameters
string
default:"async"
required
Result delivery mode. Use
async for polling with statusTask, or callback for webhook delivery.string
Required when
request_type is callback. Must be a public HTTPS URL that can receive the final task payload. See Webhooks.object
required
Wan 2.7 Video input parameters.
Response format
Submit task response
POST /generateTask/wan-2-7-video returns a task ID when the task is accepted:
integer
API status code.
200 means the task was accepted.string
Human-readable status message.
string
Unique task identifier used with the status endpoint.
Status response fields
string
Unique task identifier.
string
Current task state:
pending, processing, success, or failed.string
JSON string containing generated video URLs in
resultUrls. Present when state is success.string
Machine-readable failure code. Present when
state is failed.string
Human-readable failure message. Present when
state is failed.integer
Task creation timestamp in Unix milliseconds.
integer
Task completion timestamp in Unix milliseconds. Present after completion.
integer
Processing duration in milliseconds. Present after completion when upstream timing is available.
Webhook callback mode
Use callback mode when your backend should receive the final result automatically instead of polling.Billing
Wan 2.7 Video is billed per second. Unit price depends on bothmode and resolution.
Billing formulas:
For
video-edit, billing is based on both input and output duration:
- Input video duration must be between 2 and 10 seconds (inclusive).
- Billable input duration is capped at
10seconds. - If
duration = 0, thenbillableSeconds = cappedInputDuration * 2. - If
duration = 2-10, thenbillableSeconds = cappedInputDuration + duration. - Maximum billable seconds for
video-editis20.
Latency and polling
Wan 2.7 Video tasks are asynchronous. The backend does not provide a fixed public latency SLA; actual latency varies by mode, resolution, duration, prompt complexity, media fetch speed, and provider queue load.
Rate limits and concurrency can vary by account, API key, and route. If you receive
429, slow down requests and retry with backoff. For account-level details, see System APIs.
Errors and troubleshooting
HTTP errors
Task failure codes
failCode is route-dependent and may come from mapped upstream failures. Common values include:
Parameter troubleshooting
modemust be one oftext-to-video,image-to-video,reference-to-video,video-edit.promptis required fortext-to-video,reference-to-video, andvideo-edit.ratiois not allowed inimage-to-video.image-to-videorequiresimage_urlsorvideo_urls.- If
image-to-videoincludesvideo_urls,audio_urlsis not allowed. reference-to-videorequires at least one reference item acrossimage_urlsandvideo_urls, with total count<= 5.- If
reference-to-videoincludesaudio_urls, it binds by slot order:image_urlsfirst, thenvideo_urls. - If
reference-to-videoneeds to skip a reference slot while keeping later audio aligned, pass empty string""in that slot. - If
reference-to-videoincludesaudio_urls, its length cannot exceedimage_urls + video_urls. video-editrequires exactly onevideo_urlsitem.video-editrequires a non-emptyprompt.video-editinput clip duration must be2-10seconds.