# Wan 3.0 API on MLMux

> Alibaba Wan 3.0 for video from text, a first frame, first and last frames, or image, video, and audio references, with optional audio.

- Model page: https://www.mlmux.com/alibaba/wan-3.0
- API model ID: `alibaba/wan-3.0`
- Provider: Alibaba
- Generation modes: Text to video, Image to video, First & last frame, Multimodal reference
- Endpoint: `POST https://api.mlmux.com/v1/videos/generations`
- Reference images: up to 10
- Resolutions: 480p, 720p, 1080p
- Aspect ratios: 16:9, 9:16, 1:1, 4:3, 3:4
- Duration: 2 to 15 seconds
- Audio: can generate audio together with the video

## Pricing

Pay as you go in credits; 1 credit = 1 US dollar, with no subscription. `official-cheap` is the default route.

- 480p: $0.046 on `official`, $0.042 on `official-cheap` per second of output video
- 720p: $0.092 on `official`, $0.083 on `official-cheap` per second of output video
- 1080p: $0.185 on `official`, $0.166 on `official-cheap` per second of output video
- Reference videos are billed by their length too: the charge covers the output seconds plus the reference video's seconds, at the same rate.

## Request

Send your API key as `Authorization: Bearer $MLMUX_API_KEY`. Create keys at https://www.mlmux.com/console/api-keys.

```bash
curl https://api.mlmux.com/v1/videos/generations \
  -H "Authorization: Bearer $MLMUX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "alibaba/wan-3.0",
  "route_mode": "official-cheap",
  "prompt": "A red fox walks through fresh snow at sunrise, slow tracking shot, cinematic light",
  "mode": "text_to_video",
  "ratio": "adaptive",
  "resolution": "720p",
  "duration": 5,
  "generate_audio": true
}'

# The response is a task. Poll it until "status" is "succeeded", then read "video".
curl https://api.mlmux.com/v1/videos/generations/TASK_ID \
  -H "Authorization: Bearer $MLMUX_API_KEY"
```

```python
import os
import time
import requests

headers = {"Authorization": f"Bearer {os.environ['MLMUX_API_KEY']}"}
response = requests.post(
    "https://api.mlmux.com/v1/videos/generations",
    headers=headers,
    json={
      "model": "alibaba/wan-3.0",
      "route_mode": "official-cheap",
      "prompt": "A red fox walks through fresh snow at sunrise, slow tracking shot, cinematic light",
      "mode": "text_to_video",
      "ratio": "adaptive",
      "resolution": "720p",
      "duration": 5,
      "generate_audio": True
    },
    timeout=300,
)
response.raise_for_status()
task = response.json()

while task["status"] not in ("succeeded", "failed", "expired", "canceled"):
    time.sleep(5)
    task = requests.get("https://api.mlmux.com" + task["poll_url"], headers=headers, timeout=30).json()

print(task["status"], task.get("video"))
```

The response is a task. Poll its `poll_url` every few seconds until `status` is `succeeded`, then read the video URL, or receive a webhook when it finishes.

## Frequently asked questions

### What is Wan 3.0?

Wan 3.0 is a video generation model from Alibaba. On MLMux you can run it in the browser or call it through one API. Alibaba Wan 3.0 for video from text, a first frame, first and last frames, or image, video, and audio references, with optional audio.

### How do I use the Wan 3.0 API?

Create an API key in the MLMux Console, then send a POST request to https://api.mlmux.com/v1/videos/generations with the key in the Authorization header and model set to alibaba/wan-3.0. The request returns a task: poll it, or receive a webhook when the video is ready.

### What can Wan 3.0 do?

Generation modes: Text to video, Image to video, First & last frame, and Multimodal reference. Clips run 2 to 15 seconds at 480p, 720p, or 1080p, in aspect ratios such as 16:9, 9:16, 1:1, 4:3, and 3:4, with up to 10 reference images. Wan 3.0 can also generate audio together with the video.

### How much does Wan 3.0 cost?

MLMux is pay as you go, with no subscription or monthly fee, and 1 credit equals 1 US dollar. One second of 720p Wan 3.0 video costs $0.083 on the default official-cheap route and $0.092 on the official route. Rates for every resolution are listed in the pricing section of this page.

### Can I try Wan 3.0 without writing code?

Yes. Sign in and use the playground at the top of this page to run Wan 3.0 with the same settings as the API. The playground's code views show the matching request for your settings, and the quick start below has copy-paste examples in cURL, Python, and JavaScript.

## More

- Video API guide: https://www.mlmux.com/docs/videos
- Pricing for every model: https://www.mlmux.com/pricing
- All models: https://www.mlmux.com/llms.txt
