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

# seedance-2.5-ext — генерация видео

> Генерация видео моделью seedance-2.5-ext — поддержка референс-изображений, референс-видео и референс-аудио

<Note>
  **Для пользователей из материкового Китая:** используйте `https://toapis.cn` в качестве эндпоинта (Base URL). Замените `https://toapis.com` на `https://toapis.cn` во всех примерах этого документа.
</Note>

`seedance-2.5-ext` — промо-модель семейства Seedance 2.5, поддерживающая генерацию видео по тексту и мультимодальные референсы:

* Текст-в-видео и генерация по референс-изображениям
* Комбинированная генерация с референс-видео и референс-аудио (редактирование видео, продление и режим первого/последнего кадра не поддерживаются)
* API асинхронный: при отправке возвращается `generation.task`, результат получается через [эндпоинт статуса видео-задачи](../../tasks/video-status).

Запросы автоматически маршрутизируются на оптимальный апстрим: запросы только с текстом или изображениями идут в экономичный апстрим, а запросы с референс-видео, референс-аудио или более чем 10 референс-изображениями — в полнофункциональный апстрим.

## Аутентификация

<ParamField header="Authorization" type="string" required>
  Аутентификация по Bearer Token:

  ```text theme={null}
  Authorization: Bearer YOUR_API_KEY
  ```
</ParamField>

## Параметры запроса

<ParamField body="model" type="string" default="seedance-2.5-ext" required>
  Публичное имя модели ToAPIs. Всегда указывайте `seedance-2.5-ext`.
</ParamField>

<ParamField body="prompt" type="string">
  Опишите сцену, движение камеры, действия объекта, стиль и звуковую атмосферу. При ссылке на материалы используйте теги вида «изображение 1», «видео 1», «аудио 1» в порядке массива.
</ParamField>

<ParamField body="seconds" type="integer">
  Длительность видео в секундах, от `10` до `30`. Также принимается совместимое поле `duration`; не передавайте оба одновременно.

  <Warning>
    Значение `15` секунд не поддерживается, если запрос содержит референс-видео, референс-аудио или более 10 референс-изображений. На текстовые запросы и запросы с не более чем 10 изображениями это не влияет.
  </Warning>
</ParamField>

<ParamField body="size" type="string">
  Соотношение сторон выходного видео. Поддерживаются: `16:9`, `9:16`, `4:3`, `3:4`, `1:1`. Также принимается совместимое поле `aspect_ratio`.
</ParamField>

<ParamField body="resolution" type="string" default="720p">
  Разрешение выходного видео. Фиксированное значение `720p`.
</ParamField>

<ParamField body="reference_image" type="string">
  Публичный URL одного референс-изображения. Для нескольких изображений используйте `reference_images`.
</ParamField>

<ParamField body="reference_images" type="string[]">
  Массив URL референс-изображений, максимум `30`. Также можно использовать `image_with_roles` с `role` = `reference_image`.
</ParamField>

<ParamField body="video_with_roles" type="object[]">
  Массив референс-видео, максимум `10`. Каждый элемент:

  * `url`: публично доступный URL видео
  * `role`: фиксированное значение `reference_video`
</ParamField>

<ParamField body="audio_with_roles" type="object[]">
  Массив референс-аудио, максимум `10`. Каждый элемент:

  * `url`: публично доступный URL аудио
  * `role`: фиксированное значение `reference_audio`

  Аудио не может быть единственным входом — запрос должен содержать хотя бы одно референс-изображение или референс-видео.
</ParamField>

<ParamField body="callback_url" type="string">
  URL обратного вызова ToAPIs по завершении задачи. См. [Task Webhooks](/docs/ru/api-reference/webhooks/task-webhooks).
</ParamField>

<ParamField body="client_business_id" type="string">
  Номер заказа или ID бизнес-задачи на стороне клиента. Сохраняется с задачей; также доступен запрос `GET /v1/videos/generations/{client_business_id}`.
</ParamField>

<ParamField body="trace_id" type="string">
  Пользовательский ID для трассировки запроса.
</ParamField>

## Правила комбинации материалов

| Содержимое запроса | Поддержка | Примечание |
| - | -: | - |
| Только промпт | Да | Текст-в-видео |
| До 10 референс-изображений | Да | Экономичный апстрим |
| 11–30 референс-изображений | Да | 15 секунд не поддерживается |
| Референс-видео / референс-аудио | Да | 15 секунд не поддерживается; аудио требует изображение или видео |
| Первый / последний кадр | Нет | Режим кадров не поддерживается |
| Редактирование / продление видео | Нет | Используйте `seedance-2-5` |

## Примеры запросов

### Текст-в-видео

```bash theme={null}
curl --request POST \
  --url https://toapis.com/v1/videos/generations \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "seedance-2.5-ext",
    "prompt": "Кинематографичный крупный план продукта, камера медленно приближается, естественные комнатные звуки.",
    "seconds": 10,
    "size": "16:9",
    "resolution": "720p"
  }'
```

### Генерация по референс-изображению

```bash theme={null}
curl --request POST \
  --url https://toapis.com/v1/videos/generations \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "seedance-2.5-ext",
    "prompt": "Персонаж с изображения 1 выходит на дождливую ночную улицу, камера следует за ним.",
    "seconds": 12,
    "size": "9:16",
    "reference_images": [
      "https://example.com/character.png"
    ]
  }'
```

### Комбинированные видео- и аудио-референсы

```bash theme={null}
curl --request POST \
  --url https://toapis.com/v1/videos/generations \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "seedance-2.5-ext",
    "prompt": "Используйте персонажа с изображения 1, движение камеры из видео 1 и ритм аудио 1.",
    "seconds": 14,
    "size": "16:9",
    "reference_images": [
      "https://example.com/character.png"
    ],
    "video_with_roles": [
      {"url": "https://example.com/motion.mp4", "role": "reference_video"}
    ],
    "audio_with_roles": [
      {"url": "https://example.com/rhythm.mp3", "role": "reference_audio"}
    ]
  }'
```

## Ответ

<ResponseField name="id" type="string">ID задачи для запросов статуса.</ResponseField>
<ResponseField name="client_business_id" type="string">Возвращается, если был передан в запросе.</ResponseField>
<ResponseField name="object" type="string">Всегда `generation.task`.</ResponseField>
<ResponseField name="model" type="string">Модель, использованная в запросе.</ResponseField>
<ResponseField name="status" type="string">`queued`, `in_progress`, `completed` или `failed`.</ResponseField>
<ResponseField name="progress" type="integer">Прогресс задачи от `0` до `100`.</ResponseField>
<ResponseField name="created_at" type="integer">Метка времени создания.</ResponseField>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "tsk_vid_xxx",
    "object": "generation.task",
    "model": "seedance-2.5-ext",
    "status": "in_progress",
    "progress": 10,
    "created_at": 1781577600
  }
  ```
</ResponseExample>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.