> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crazyrouter.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Wan Video

> Wan video family overview. Wan text-to-video uses /v1/video/generations; image-to-video, first-last-frame, and subject-reference workflows use the /alibailian/api/v1/* compatibility contract

> Дата обновления: 2026-06-07

# Wan Video

The Wan family currently uses different public contracts by capability:

* Text-to-video (`wan2.5-t2v-preview`, `wan2.2-t2v-plus`): submit with `POST /v1/video/generations` and query with `GET /v1/video/generations/{task_id}`.
* Image-to-video, first-last-frame, and subject-reference video: submit with the Ali Bailian-compatible `POST /alibailian/api/v1/services/aigc/video-generation/video-synthesis` path and query with `GET /alibailian/api/v1/tasks/{task_id}`.

<Warning>
  Do not submit `wan2.2-t2v-plus` to `/alibailian/api/v1/services/aigc/video-generation/video-synthesis`. Production rejects that model on the Ali-compatible path with `invalid_request` and tells clients to use `/v1/video/generations`.
</Warning>

For Ali-shaped workflows, see the full request and task-query schema in [Ali Bailian Video API](/ru/video/alibailian). This page closes the first batch of public `Wan` models, capabilities, billing truth, and recommended protocol.

## First-Batch Models

| Model                | Customer-facing capability | Official billing truth | Current state |
| -------------------- | -------------------------- | ---------------------- | ------------- |
| `wan2.5-t2v-preview` | text-to-video              | per second             | verified      |
| `wan2.5-i2v-preview` | image-to-video             | per second             | verified      |
| `wan2.2-t2v-plus`    | text-to-video              | per second             | verified      |
| `wan2.2-i2v-plus`    | image-to-video             | per second             | verified      |
| `wan2.2-i2v-flash`   | image-to-video             | per second             | verified      |
| `wan2.2-kf2v-flash`  | first-last-frame video     | per second             | Beta          |
| `wan2.2-s2v`         | subject-reference video    | per second             | Beta          |

<Note>
  `wan2.2-kf2v-flash` and `wan2.2-s2v` are already aligned in code and billing capability buckets, but their live artifact closure is still in progress, so they remain Beta.
</Note>

## Capabilities And Official Prices

| Model                | Capability bucket       | Resolution            | Official price                |
| -------------------- | ----------------------- | --------------------- | ----------------------------- |
| `wan2.5-t2v-preview` | text-to-video           | `480P / 720P / 1080P` | `¥0.30 / ¥0.60 / ¥1.00 / sec` |
| `wan2.5-i2v-preview` | image-to-video          | `480P / 720P / 1080P` | `¥0.30 / ¥0.60 / ¥1.00 / sec` |
| `wan2.2-t2v-plus`    | text-to-video           | `480P / 1080P`        | `¥0.14 / ¥0.70 / sec`         |
| `wan2.2-i2v-plus`    | image-to-video          | `480P / 1080P`        | `¥0.14 / ¥0.70 / sec`         |
| `wan2.2-i2v-flash`   | image-to-video          | `480P / 720P / 1080P` | `¥0.10 / ¥0.20 / ¥0.48 / sec` |
| `wan2.2-kf2v-flash`  | first-last-frame video  | `480P / 720P / 1080P` | `¥0.10 / ¥0.20 / ¥0.48 / sec` |
| `wan2.2-s2v`         | subject-reference video | `480P / 720P`         | `¥0.50 / ¥0.90 / sec`         |

## Protocol Conventions

### 1. Text-to-video

* Recommended submit path: `POST /v1/video/generations`
* Recommended query path: `GET /v1/video/generations/{task_id}`
* Key fields: `model`, `prompt`, `seconds`, `size`
* Typical models: `wan2.5-t2v-preview`, `wan2.2-t2v-plus`

### 2. Image-to-video

* Key field: `input.img_url`
* Typical models: `wan2.5-i2v-preview`, `wan2.2-i2v-plus`, `wan2.2-i2v-flash`

### 3. First-last-frame video

* Key fields: `input.first_frame_url`, `input.last_frame_url`
* Typical model: `wan2.2-kf2v-flash`

### 4. Subject-reference video

* Key field: `input.image_url`
* Typical model: `wan2.2-s2v`

## Request Examples

### Text-to-video: Wan 2.5

```bash cURL theme={null}
curl -X POST https://api.crazyrouter.com/v1/video/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "wan2.5-t2v-preview",
    "prompt": "A cinematic seaside sunset with a slow camera push-in",
    "seconds": "5",
    "size": "1280*720"
  }'
```

### Text-to-video: Wan 2.2 T2V Plus

```bash cURL theme={null}
curl -X POST https://api.crazyrouter.com/v1/video/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "wan2.2-t2v-plus",
    "prompt": "A calm cinematic shot of clouds over mountains",
    "seconds": "5",
    "size": "480P"
  }'
```

### Image-to-video

```bash cURL theme={null}
curl -X POST https://api.crazyrouter.com/alibailian/api/v1/services/aigc/video-generation/video-synthesis \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "wan2.5-i2v-preview",
    "input": {
      "prompt": "Make the subject turn toward the camera",
      "img_url": "https://example.com/first-frame.png"
    },
    "parameters": {
      "resolution": "720P",
      "duration": 5,
      "prompt_extend": true,
      "audio": true
    }
  }'
```

### First-last-frame video

```json theme={null}
{
  "model": "wan2.2-kf2v-flash",
  "input": {
    "prompt": "A smooth transition from day to night",
    "first_frame_url": "https://example.com/frame-start.png",
    "last_frame_url": "https://example.com/frame-end.png"
  },
  "parameters": {
    "resolution": "720P",
    "duration": 5
  }
}
```

### Subject-reference video

```json theme={null}
{
  "model": "wan2.2-s2v",
  "input": {
    "prompt": "Animate the reference portrait with light natural speaking motion",
    "image_url": "https://example.com/portrait.png",
    "audio_url": "https://example.com/voice.mp3"
  },
  "parameters": {
    "resolution": "720P",
    "duration": 5
  }
}
```

## Task Retrieval

Wan remains an async task family. Query with the matching route for the submit contract.

Text-to-video:

```http theme={null}
GET /v1/video/generations/{task_id}
```

Ali-compatible image-to-video, first-last-frame, and subject-reference workflows:

```http theme={null}
GET /alibailian/api/v1/tasks/{task_id}
```

When `output.task_status` reaches success, use `output.video_url` as the final video result.

## Scope Notes

* The current recommended customer-facing contract for Wan text-to-video is `/v1/video/generations`, not the Ali Bailian-compatible submit path.
* The Ali Bailian-compatible path is primarily for image-to-video, first-last-frame, subject-reference, and other Ali-shaped migration workflows.
* Crazyrouter can internally route to official, ApiPass, Kie, or other third-party providers, but those providers do not define customer protocols.
* Beta rows can still be shown publicly now; after launch, use production task logs to close live evidence and then remove the Beta label.
