Skip to content
RU

Wan 3.0

Wan 3.0 (alibaba/wan-3.0) is a video generation model from Alibaba for text-to-video, frame-to-video, and reference-guided generation. It produces 480p, 720p, or 1080p video with durations from 1 to 15 seconds. The fast mode with the same geometry is Wan 3.0 Prime (alibaba/wan-3.0-prime): the same model delivered faster. Generation is asynchronous: POST /v1/videos returns a job, then you poll the status and download the mp4.

Field Description
model alibaba/wan-3.0 (or the short wan-3.0) or alibaba/wan-3.0-prime
prompt Scene description, required; up to 5000 characters
seconds Any integer from 1 to 15; defaults to 5
size A WxH size from the table below; defaults to 1280x720
input_reference Image-to-video: one image as the starting frame, {"image_url": "data:image/...;base64,..."}
input_references Reference-to-video: 1 to 10 images in an array, also data: URLs only
input_video Video reference: {"video_url": "https://..."} or a data: URL — motion is carried over to the character in your images; up to 3 clips in the dashboard and bot, one in the API
input_audio Audio reference: {"audio_url": "https://..."} or a data: URL, up to 3 tracks — free of charge
seed Reproducibility seed: an integer 0…2147483647. The same prompt with the same seed produces the same clip; without it the upstream picks a random one

Six allowed sizes — two aspect ratios in three resolutions:

Aspect 480p 720p 1080p
16:9 852x480 1280x720 1920x1080
9:16 480x852 720x1280 1080x1920

A value outside the list returns 400 with the allowed options — check the sizes field in the catalog if in doubt.

import requests
job = requests.post(
"https://api.mixen.ai/v1/videos",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"model": "alibaba/wan-3.0",
"prompt": "A metro train emerges from a tunnel onto a bridge as the city wakes up, long camera glide",
"seconds": "12",
"size": "1280x720",
},
).json()
print(job["id"], job["status"])

The clip starts on the given frame and ends on another given image — the end frame is available in the dashboard and bot (a second photo); the API does not have a separate field for it yet:

import base64
import requests
with open("start.jpg", "rb") as f:
img = "data:image/jpeg;base64," + base64.b64encode(f.read()).decode()
job = requests.post(
"https://api.mixen.ai/v1/videos",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"model": "alibaba/wan-3.0",
"prompt": "The camera glides along a street from dawn to evening lights",
"seconds": "8",
"size": "1280x720",
"input_reference": {"image_url": img},
},
).json()
print(job["id"], job["status"])

From one to ten images — the model assembles the scene while keeping the characters and style of the references:

{
"model": "alibaba/wan-3.0",
"prompt": "The hero from the first frame walks through the alley from the second one, neon signs",
"seconds": "6",
"size": "1280x720",
"input_references": [
"data:image/png;base64,iVBORw0...",
"data:image/png;base64,iVBORw0..."
]
}

Then as usual: GET /v1/videos/{id} every 5–10 seconds until completed, then GET /v1/videos/{id}/content for the mp4. For the full cycle see the video guide.

Billed per second, the rate depends on the resolution. Wan 3.0: 480p — 5.43 ₽ per second, 720p — 10.86 ₽, 1080p — 21.73 ₽. Wan 3.0 Prime: 480p — 7.37 ₽, 720p — 15.19 ₽, 1080p — 30.46 ₽. Audio references are free; a video reference is billed the same per-second rate for the clip’s own seconds. Current prices — the catalog.

  • A continuous 1–15 second duration — both short cuts and medium shots with one model.
  • Two frame formats — landscape and vertical, three resolutions up to 1080p.
  • The first → last frame transition is supported (dashboard and bot).
  • Three kinds of references: up to 10 images, up to 3 clips and up to 3 audio tracks (audio is free).
  • Prime is the fast mode: the same parameters at a higher rate when the clip is needed sooner.
  • The 1:1, 4:3 and 3:4 formats are not supported; neither are clips longer than 15 seconds.

All models — in the catalog. The general video workflow — the video guide.