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

# Doubao Seedance 2.5

> Doubao Seedance 2.5 video generation through MixRoute, with text-to-video and image-to-video examples.

Doubao Seedance 2.5 is a ByteDance video generation model available through MixRoute.

Use the exact model ID `doubao-seedance-2-5-260628` with the video generation endpoint. The `260628` suffix is part of the request model ID.

## Key capabilities

* Text-to-video - Generate a video from a text prompt
* Image-to-video - Animate a first-frame or reference image
* Asynchronous workflow - Submit a task, then poll for its result
* Output controls - Configure duration, resolution, aspect ratio, and watermark options through `metadata`

## Output specifications

| Property     | Value                                                                       |
| ------------ | --------------------------------------------------------------------------- |
| Resolution   | 480p, 720p, 1080p                                                           |
| Aspect ratio | Set with `metadata.ratio`                                                   |
| Duration     | Set with `metadata.duration`; accepted values depend on the generation mode |
| Result       | MP4 video URL returned by the completed task                                |
| Workflow     | Asynchronous task                                                           |

<Note>
  The current MixRoute route accepts 480p, 720p, and 1080p for this model. Do not reuse the Seedance 2.0-only `4k` setting with Seedance 2.5.
</Note>

## Workflow

```text theme={null}
1. POST /v1/video/generations -> task_id
2. GET /v1/video/generations/{task_id} -> status
3. When the task succeeds -> read the video URL
```

## Examples

### Text-to-video

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.mixroute.ai/v1/video/generations" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "doubao-seedance-2-5-260628",
        "prompt": "A cinematic tracking shot of a train crossing a snowy valley at sunrise",
        "asset": false,
        "metadata": {
          "duration": 4,
          "resolution": "720p",
          "ratio": "16:9",
          "generate_audio": false,
          "watermark": false
        }
      }'
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    import requests

    response = requests.post(
        "https://api.mixroute.ai/v1/video/generations",
        headers={"Authorization": "Bearer YOUR_API_KEY"},
        json={
            "model": "doubao-seedance-2-5-260628",
            "prompt": "A cinematic tracking shot of a train crossing a snowy valley at sunrise",
            "asset": False,
            "metadata": {
                "duration": 4,
                "resolution": "720p",
                "ratio": "16:9",
                "generate_audio": False,
                "watermark": False,
            },
        },
        timeout=60,
    )

    print(response.json())
    ```
  </Tab>
</Tabs>

### Image-to-video

```bash theme={null}
curl "https://api.mixroute.ai/v1/video/generations" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2-5-260628",
    "prompt": "The camera slowly pushes in while morning light moves across the scene",
    "asset": true,
    "metadata": {
      "content": [
        {
          "type": "text",
          "text": "The camera slowly pushes in while morning light moves across the scene"
        },
        {
          "type": "image_url",
          "image_url": {
            "url": "https://example.com/first-frame.png"
          },
          "role": "first_frame"
        }
      ],
      "duration": 4,
      "resolution": "720p",
      "ratio": "16:9",
      "generate_audio": false,
      "watermark": false
    }
  }'
```

## Parameters

| Parameter                 | Type    | Required | Description                                                                           |
| ------------------------- | ------- | -------- | ------------------------------------------------------------------------------------- |
| `model`                   | string  | Yes      | Must be `doubao-seedance-2-5-260628`.                                                 |
| `prompt`                  | string  | Yes      | Video generation instruction.                                                         |
| `asset`                   | boolean | Yes      | Set to `false` for text-only input and `true` when `metadata.content` contains media. |
| `metadata`                | object  | Yes      | Contains Seedance generation controls and reference content.                          |
| `metadata.content`        | array   | No       | Text and image input items for image-to-video requests.                               |
| `metadata.duration`       | integer | No       | Requested video duration in seconds.                                                  |
| `metadata.resolution`     | string  | No       | `480p`, `720p`, or `1080p`.                                                           |
| `metadata.ratio`          | string  | No       | Output aspect ratio, such as `16:9`, `9:16`, or `1:1`.                                |
| `metadata.generate_audio` | boolean | No       | Requests synchronized audio when enabled for the selected generation mode.            |
| `metadata.watermark`      | boolean | No       | Adds the AI-generated watermark when enabled.                                         |

### Input modes

| Mode           | Inputs                                    |
| -------------- | ----------------------------------------- |
| Text-to-video  | `prompt`                                  |
| Image-to-video | `prompt` + `metadata.content[].image_url` |
