import requests, time headers = {"Authorization": "Bearer " + AIMLAPI_KEY} job = requests.post( "https://api.aimlapi.com/v2/video/generations", headers=headers, json={ "model": "alibaba/wan2.6-t2v", "prompt": "A serene timelapse of clouds over a mountain range" }, ).json() gid = job["id"] while True: res = requests.get(f"https://api.aimlapi.com/v2/video/generations?generation_id={gid}", headers=headers).json() if res.get("status") in ("completed", "error"): break time.sleep(5) print(res["video"]["url"])
const headers = { Authorization: `Bearer ${process.env.AIMLAPI_KEY}`, "Content-Type": "application/json", }; const job = await (await fetch("https://api.aimlapi.com/v2/video/generations", { method: "POST", headers, body: JSON.stringify({ "model": "alibaba/wan2.6-t2v", "prompt": "A serene timelapse of clouds over a mountain range" }), })).json(); let res; do { await new Promise((r) => setTimeout(r, 5000)); res = await (await fetch(`https://api.aimlapi.com/v2/video/generations?generation_id=${job.id}`, { headers })).json(); } while (!["completed", "error"].includes(res.status)); console.log(res.video.url);
# submit the generation — the response contains the job "id" curl -X POST https://api.aimlapi.com/v2/video/generations \ -H "Authorization: Bearer $AIMLAPI_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"alibaba/wan2.6-t2v","prompt":"A serene timelapse of clouds over a mountain range"}' # then poll until status is "completed" — video.url holds the result curl "https://api.aimlapi.com/v2/video/generations?generation_id={id}" -H "Authorization: Bearer $AIMLAPI_KEY"
OpenAI-compatible — swap the base URL and it works with your existing SDK.
| Type | Price |
|---|---|
| Output | |
| Benchmark | Score | What it measures | Source | Retrieved |
|---|---|---|---|---|
| Text-to-Video Arena | 1191 (Elo) | Human preference Elo from blind pairwise comparisons of generated videos, measured independently by Artificial Analysis | Source | July 16, 2026 |
| Model | Input | Output | Context | Best for |
|---|---|---|---|---|
Wan 2.6 Text to Video This page | Video generation | |||
| Video generation | ||||
| Video generation | ||||
| Video generation | ||||
| Cinematic video + native audio |
Wan 2.6 Text to Video takes text as input and returns video.
Wan 2.6 Text to Video became available on December 18, 2025.
Wan 2.6 Text to Video is priced at $0.13 / sec (variable).
Wan 2.6 Text to Video is billed per generation — a fixed charge per output rather than by prompt length.
Wan 2.6 Text to Video was built by Alibaba Cloud.
Use alibaba/wan2.6-t2v as the model id on AI/ML API.
Yes. Wan 2.6 Text to Video is served through AI/ML API, so the same key and endpoint format used for other models applies.
Yes. It generates videos from text descriptions using motion modeling to represent movement and action.