Wan 2.5 API
Alibaba Wan 2.5 — text-to-video and image-to-video up to 1080p with synchronized audio, plus video-extend, image-edit and text-to-image in the same family, with Fast variants of the video endpoints.
This Wan 2.5 API guide covers the live endpoints on WaveSpeedAI: text-to-video, image-to-video and video-extend with Fast variants, image-edit and text-to-image. Playground, examples, pricing and API samples below all use the live Wan 2.5 endpoints.
Overview
About the Wan 2.5 API
What Wan 2.5 does, how it fits in the Alibaba model lineup, and why teams reach for it.
Wan 2.5 is a video generation model from Alibaba, available through the WaveSpeedAI REST API. Alibaba Wan 2.5 — text-to-video and image-to-video up to 1080p with synchronized audio, plus video-extend, image-edit and text-to-image in the same family, with Fast variants of the video endpoints.
This Wan 2.5 API guide covers the live endpoints on WaveSpeedAI: text-to-video, image-to-video and video-extend with Fast variants, image-edit and text-to-image. Playground, examples, pricing and API samples below all use the live Wan 2.5 endpoints.
The Wan 2.5 family on WaveSpeedAI ships 8 REST endpoints covering Image-To-Image, Text-To-Image, Video-Extend, Text-To-Video, Image-To-Video workflows. Each variant carries its own pricing, parameter knobs, and example outputs — pick the one that matches your input modality and production constraints, or call several from the same API key to compose multi-step pipelines.
Run Wan 2.5 through the same API key, billing account, and rate-limit envelope you use for the other 1,000+ AI models on WaveSpeedAI. No separate vendor setup, no per-provider SDKs, no per-vendor rate-limit envelopes — one integration covers everything from text-to-image and text-to-video through audio synthesis, 3D generation, upscaling, and editing.
Specs
Wan 2.5 API capabilities and release status
The model-specific details developers search for before choosing an API: availability, expected output length, reference support, and the current live fallback.
Availability
Live now
Wan 2.5 endpoints are live in the WaveSpeedAI catalog: text-to-video, image-to-video and video-extend (each with a Fast variant), image-edit and text-to-image, all on the same REST prediction flow.
Resolutions
480p, 720p, 1080p
Video output is available at 480p, 720p and 1080p depending on the endpoint; text-to-video offers landscape and portrait sizes at each.
Duration
3 to 10 seconds
Text-to-video generates 5 or 10 second clips; image-to-video Fast and video-extend generate 3 to 10 seconds.
Audio
Synchronized audio
The video endpoints generate audio synchronized with the picture, and an optional audio file (WAV or MP3, at least 3 seconds, up to 15 MB) can guide the generation.
Fast variants
Text, image and extend
Wan 2.5 Fast is available for text-to-video, image-to-video and video-extend, positioned for faster and more affordable generation.
Image tools
Edit and text-to-image
image-edit takes up to two input images with a prompt, and text-to-image generates stills in the same family as the video endpoints.
Endpoints
All Wan 2.5 API endpoints
8 Wan 2.5 endpoints available now on WaveSpeedAI — pick the variant that matches your workflow.
/filters:quality(82)/media/images/20260408104220_jymu91ex.webp)
Wan 2.5 Image Edit
Refine existing visuals with WAN 2.5 image-edit using prompt-driven adjustments and stylistic upgrades for photos and graphics. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408104211_97h9m7p7.webp)
Wan 2.5 Text To Image
WAN 2.5 Text-to-Image turns text prompts into AI-generated images with the WAN 2.5 model for on-demand image creation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408104203_64hpvi1b.webp)
Wan 2.5 Video Extend Fast
WAN 2.5 Fast is an AI-powered video extender that turns short clips into longer videos while preserving audio tracks for seamless extensions. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408104158_jzbs7q2h.webp)
Wan 2.5 Video Extend
WAN 2.5 Video-Extend turns short clips into longer videos with preserved or generated synchronized audio for continuity. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408104214_334vajy7.webp)
Wan 2.5 Text To Video
WAN 2.5 makes 480p-1080p text/image-to-video with synced audio and is faster, more affordable than Google Veo3. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408104222_y5iz96kb.webp)
Wan 2.5 Text To Video Fast
WAN 2.5 Fast creates synchronized-audio videos from text or images in 720p, faster and more affordable than Google Veo3. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408104205_99s4gqxu.webp)
Wan 2.5 Image To Video Fast
WAN 2.5 Fast converts text or images into synchronized-audio videos in 480p, 720p, or 1080p, offering faster, more affordable generation compared to Google Veo3. REST API, no coldstarts, affordable pricing.
/filters:quality(82)/media/images/20260408104159_4c1hr4ym.webp)
Wan 2.5 Image To Video
WAN 2.5 converts text or images into videos (480p/720p/1080p) with synced audio, faster and more affordable than Google Veo3. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Examples
See Wan 2.5 in action
Real outputs generated by the Wan 2.5 API. Hover any video to preview, click to open the full-size viewer.
How to
How to use the Wan 2.5 API
Four steps from signup to a finished generation. Full Python, Node.js, and cURL examples are in the API section below.
- 01
Get an API key
Sign up for a WaveSpeedAI account and copy your API key from the dashboard. New accounts come with free starter credits — enough to run the playground a few dozen times before billing kicks in.
- 02
Submit a prediction
POST your input as JSON to https://api.wavespeed.ai/api/v3/alibaba/wan-2.5/text-to-video. The endpoint returns a prediction id immediately — generations are async so you don't hold an open connection during inference.
- 03
Poll for completion
GET https://api.wavespeed.ai/api/v3/predictions/{request_id}/result. Return outputs on completed; stop with an error on failed, cancelled, timeout, or deleted; continue polling for every other status.
- 04
Read the output URL
Once status is "completed", read the URL from data.outputs[0]. The URL points to your generated media on the WaveSpeedAI CDN — image, video, audio, or 3D file depending on the Wan 2.5 variant you called.
Use cases
What you can build with Wan 2.5
Common workflows developers and creators use the Wan 2.5 API for.
Text-to-video with synchronized audio
alibaba/wan-2.5/text-to-video turns a prompt into a 5 or 10 second clip at up to 1080p with audio generated together with the picture.
Image-to-video from a still
alibaba/wan-2.5/image-to-video and the Fast variant animate a reference image with a prompt, at 720p or 1080p and 3 to 10 seconds on the Fast endpoint.
Extend a clip
alibaba/wan-2.5/video-extend continues an existing video with preserved or generated synchronized audio, at 480p, 720p or 1080p, and the Fast variant does the same at a lower cost.
Guide a clip with your own audio
Pass an audio file to the video endpoints to shape the generation, for example a voice line or a beat the motion should follow.
Edit images in the same family
alibaba/wan-2.5/image-edit applies prompt-driven edits to one or two images, so stills and clips come from one model family.
Stills with text-to-image
alibaba/wan-2.5/text-to-image generates images from a prompt, with the size set in pixels up to 2880.
Tips
Tips for prompting Wan 2.5
Practical advice for getting better outputs from Wan 2.5 — drawn from the patterns that work across video models in production pipelines.
- 01
Prototype on Fast, deliver on the standard endpoint
Use the Fast variants to test prompts and motion, then run the standard endpoint for the final clip.
- 02
Choose the size for the platform
Text-to-video offers landscape and portrait sizes at 480p, 720p and 1080p, so pick the size for where the clip will play before you generate.
- 03
Use audio to steer timing
A short WAV or MP3 of at least 3 seconds can guide the generation, which helps when the motion should follow a voice line or a beat.
- 04
Extend in small steps
With video-extend, continue a clip a few seconds at a time and describe what happens next, so each step keeps the scene and the audio continuous.
Pricing
Wan 2.5 API pricing
Pricing is per-output. The final charge scales with the parameters you set in each variant's playground (resolution, duration, output count, references).
| Endpoint | Type | Starting price |
|---|---|---|
| alibaba/ | image-to-image | $0.035 |
| alibaba/ | text-to-image | $0.03 |
| alibaba/ | video-extend | $0.068 |
| alibaba/ | video-extend | $0.10 |
| alibaba/ | text-to-video | $0.10 |
| alibaba/ | text-to-video | $0.068 |
| alibaba/ | image-to-video | $0.068 |
| alibaba/ | image-to-video | $0.10 |
API
Call the Wan 2.5 API
Sign up for an API key at wavespeed.ai/accesskey, then submit a prediction via REST. The playground generates ready-to-paste samples for any combination of inputs.
POSThttps://api.wavespeed.ai/api/v3/alibaba/wan-2.5/text-to-video
# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
-X POST "https://api.wavespeed.ai/api/v3/alibaba/wan-2.5/text-to-video" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $WAVESPEED_API_KEY" \
-d '{
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "1280*720",
"duration": 5,
"enable_prompt_expansion": false
}')
TASK=$(printf '%s' "$SUBMIT_RESPONSE" | jq 'if has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "$TASK" | jq -r '.id')
if [ -z "$PREDICTION_ID" ] || [ "$PREDICTION_ID" = "null" ]; then
printf 'Submission response did not contain a prediction id
' >&2
exit 1
fi
RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/$PREDICTION_ID/result"
# 2. Poll until the prediction finishes.
while true; do
RESPONSE=$(curl --silent --show-error --fail-with-body "$RESULT_URL" \
-H "Authorization: Bearer $WAVESPEED_API_KEY")
RESULT=$(printf '%s' "$RESPONSE" | jq 'if has("data") then .data else . end')
STATUS=$(printf '%s' "$RESULT" | jq -r '.status')
case "$STATUS" in
completed) printf '%s\n' "$RESULT" | jq '.outputs'; break ;;
failed|cancelled|timeout|deleted) printf '%s\n' "$RESULT" | jq . >&2; exit 1 ;;
*) sleep 2 ;;
esac
doneconst submitUrl = "https://api.wavespeed.ai/api/v3/alibaba/wan-2.5/text-to-video";
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');
async function requestJson(url, options = {}) {
const response = await fetch(url, options);
if (!response.ok) throw new Error(await response.text());
return response.json();
}
// 1. Submit the prediction.
const body = await requestJson(submitUrl, {
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "1280*720",
"duration": 5,
"enable_prompt_expansion": false
}),
});
const task = body.data ?? body;
const resultUrl = `https://api.wavespeed.ai/api/v3/predictions/${task.id}/result`;
// 2. Poll until the prediction finishes.
while (true) {
const resultBody = await requestJson(resultUrl, {
headers: { "Authorization": `Bearer ${apiKey}` },
});
const result = resultBody.data ?? resultBody;
if (result.status === "completed") {
console.log(result.outputs);
break;
}
if (["failed", "cancelled", "timeout", "deleted"].includes(result.status)) throw new Error(JSON.stringify(result));
await new Promise(resolve => setTimeout(resolve, 2000));
}import json
import os
import time
from urllib.request import Request, urlopen
api_key = os.environ["WAVESPEED_API_KEY"]
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
payload = {
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "1280*720",
"duration": 5,
"enable_prompt_expansion": False
}
def request_json(url, data=None):
request = Request(url, data=data, headers=headers, method="POST" if data else "GET")
with urlopen(request) as response:
return json.load(response)
# 1. Submit the prediction.
body = request_json("https://api.wavespeed.ai/api/v3/alibaba/wan-2.5/text-to-video", json.dumps(payload).encode())
task = body.get("data", body)
result_url = f"https://api.wavespeed.ai/api/v3/predictions/{task['id']}/result"
# 2. Poll until the prediction finishes.
while True:
result_body = request_json(result_url)
result = result_body.get("data", result_body)
status = result.get("status")
if status == "completed":
print(result.get("outputs", []))
break
if status in {"failed", "cancelled", "timeout", "deleted"}:
raise RuntimeError(result)
time.sleep(2)Compare
Wan 2.5 vs alternatives
When to pick Wan 2.5 over similar models on WaveSpeedAI.
Wan 2.5 vs Wan 2.7
Wan 2.7 is the newer generation with reference-to-video, video-edit and 1080p output across more endpoints. Wan 2.5 stays an option with Fast variants and synchronized audio.
Wan 2.5 vs Veo 3.1
The catalog frames Wan 2.5 as faster and more affordable than Google Veo 3, with audio-guided generation and video-extend. Veo 3.1 offers Standard, Fast and Lite tiers at 1080p.
Wan 2.5 vs Kling 2.6
Kling 2.6 adds motion control and a create-voice endpoint. Wan 2.5 covers 480p to 1080p with synchronized audio, video-extend, image-edit and text-to-image in one family.
FAQ
Wan 2.5 API — Frequently asked questions
Pricing, license, integration — common questions about running Wan 2.5 on WaveSpeedAI.
What resolutions does Wan 2.5 support?
Video endpoints output 480p, 720p and 1080p depending on the endpoint. Text-to-video also offers portrait sizes, and image-to-video Fast outputs 720p or 1080p.
Does Wan 2.5 generate audio?
Yes. The video endpoints produce audio synchronized with the picture, and you can send an optional audio file to guide the result.
What is Wan 2.5 Fast?
Fast variants of text-to-video, image-to-video and video-extend, positioned for faster and more affordable generation than the standard variants.
Can I extend an existing video with Wan 2.5?
Yes. The video-extend endpoint continues a short clip into a longer one, with preserved or generated synchronized audio, and has a Fast variant.
What is the Wan 2.5 API?
Wan 2.5 is a Alibaba video generation model exposed as a REST API on WaveSpeedAI. Alibaba Wan 2.5 — text-to-video and image-to-video up to 1080p with synchronized audio, plus video-extend, image-edit and text-to-image in the same family, with Fast variants of the video endpoints. You can call it programmatically or try it from the playground linked above.
How do I call the Wan 2.5 API?
Sign up for a WaveSpeedAI account, copy your API key from /accesskey, then POST to https://api.wavespeed.ai/api/v3/alibaba/wan-2.5/text-to-video with your input as JSON. The endpoint returns a prediction id. Poll the result endpoint starting around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. Production-oriented Python / Node.js / cURL examples are above.
How much does the Wan 2.5 API cost?
Wan 2.5 starts at $0.03 per run. The exact cost scales with the parameters you set (resolution, duration, output count, references). The live cost preview next to the Generate button in the playground shows the exact price for your current input.
Which Wan 2.5 variants are available?
WaveSpeedAI hosts 8 live Wan 2.5 endpoints: alibaba/wan-2.5/image-edit, alibaba/wan-2.5/text-to-image, alibaba/wan-2.5/video-extend-fast, alibaba/wan-2.5/video-extend, alibaba/wan-2.5/text-to-video, alibaba/wan-2.5/text-to-video-fast, alibaba/wan-2.5/image-to-video-fast, alibaba/wan-2.5/image-to-video. Each variant has its own playground page and pricing.
Can I use Wan 2.5 outputs commercially?
Commercial usage rights follow the Alibaba model license. Most Alibaba models permit commercial output use; see each model's playground page for the specific license summary, and WaveSpeedAI's Terms of Service for platform-level conditions.
Why use Wan 2.5 on WaveSpeedAI instead of going direct?
One API key + one billing account across Wan 2.5 AND 1,000+ other AI models from other providers. No per-vendor SDK setup, no separate rate-limit envelopes, no rewrite-per-vendor integration code. Pricing is typically at parity with or below Alibaba's direct API.
Provider
About Alibaba
The team behind Wan 2.5 and the broader Alibaba model lineup on WaveSpeedAI.
Alibaba's Tongyi Lab produces the Wan family of video models and the Qwen family of LLMs. Wan is notable for being released with open weights, broad variant coverage (text-to-video, image-to-video, reference-to-video, video-edit, video-extend, image-edit, text-to-image), and consistent strength on motion stability and prompt adherence across multilingual prompts.
Start building with Wan 2.5 on WaveSpeedAI
Free starter credits on signup. One API key across 1,000+ AI models from Alibaba and every other provider.