Claude Opus 5.5 уже доступна в SeedRouter
SeedRouter Docs

Veo 3.1

Генерируйте ролики Veo 3.1 через единый API задач: три модели с оплатой за 8-секундный ролик и две с посекундной оплатой, с кадрами, звуком и выводом в GIF.

View Markdown

Veo 3.1 — модель генерации видео от Google. SeedRouter предлагает её под пятью ID моделей на одной конечной точке: три с оплатой за ролик, где каждый ролик длится 8 секунд, и две с посекундной оплатой и дополнительными настройками (длительность, звук, seed, негативный промпт, первый и последний кадр). Отправьте запрос, сохраните возвращённый идентификатор задачи и получите готовое видео из задачи. Изображения передаются как URL.

ID моделей

ID моделиОплатаДлительностьИзображенияЗвук
veo-3.1-fastза ролик8 секунддо 3, режим кадров или референсовбез переключателя
veo-3.1-qualityза ролик8 секунддо 3, режим кадровбез переключателя
veo-3.1-liteза ролик8 секунднет (текст в видео)без переключателя
veo-3.1-fast-officialза секунду4, 6 или 8 секундпервый и последний кадрgenerate_audio
veo-3.1-quality-officialза секунду4, 6 или 8 секундпервый и последний кадрgenerate_audio

Актуальные цены — на странице модели.

Краткий пример

curl https://api.seedrouter.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "veo-3.1-fast",
    "prompt": "A red paper boat drifts across a calm pond at sunrise, soft mist on the water, slow push-in on a 35mm lens, no text, no logos.",
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }'

Конечная точка

POST https://api.seedrouter.ai/v1/videos/generations
ЗаголовокЗначение
AuthorizationBearer YOUR_API_KEY
Content-Typeapplication/json

В ответе приходит задача ({"id": "task_...", "status": "processing"}), а не готовое видео. Результат получайте опросом GET /v1/tasks/{task_id}. Храните API-ключи в серверном коде.

Параметры: модели с оплатой за ролик

veo-3.1-fast, veo-3.1-quality и veo-3.1-lite.

ПолеТипПо умолчаниюПримечания
modelstringобязательноОдин из трёх ID выше.
promptstringобязательноОписывает сцену.
durationinteger8Принимается только 8.
aspect_ratioenum16:9 или 9:16.
resolutionenum720p720p, 1080p или 4k (в любом регистре). У veo-3.1-lite нет 4k.
enable_gifbooleanfalseВернуть ролик как анимированный GIF вместо MP4. Только 720p.
nsfw_checkbooleanfalseПроверить промпт и изображения на небезопасный контент перед генерацией.
image_urlsarrayТолько Fast и Quality. До 3 публичных URL изображений.
generation_typeenumпо числу изображенийТолько Fast и Quality. frame или reference; Quality принимает только frame.

Параметры: модели с посекундной оплатой

veo-3.1-fast-official и veo-3.1-quality-official.

ПолеТипПо умолчаниюПримечания
modelstringобязательноОдин из двух ID выше.
promptstringобязательноОписывает сцену.
negative_promptstringЧего не должно быть в ролике.
durationinteger84, 6 или 8 секунд.
aspect_ratioenum16:916:9 или 9:16.
resolutionenum720p720p, 1080p или 4k (в любом регистре).
first_frame_imagestringПубличный URL изображения. Ролик начинается с него.
last_frame_imagestringПубличный URL изображения. Требует first_frame_image.
seedintegerслучайныйОт 0 до 4294967295.
generate_audiobooleanfalseДобавить звуковую дорожку. Тарифицируется по более высокому посекундному тарифу.
person_generationenumallow_adultallow_adult или disallow.
resize_modeenumpadpad или crop. Требует first_frame_image.
enhance_promptbooleantrueПринимается только true; в остальных случаях не передавайте поле.
nsfw_checkbooleanfalseПроверить промпт и изображения на небезопасный контент перед генерацией.

Схема строгая: неизвестные поля отклоняются, а не игнорируются, и каждая модель принимает только свои поля. Колбэки недоступны; вместо этого опрашивайте задачу.

Режимы изображений

В veo-3.1-fast и veo-3.1-quality поле generation_type определяет, как используются image_urls:

generation_typeИзображенияДействие
frame1 или 2Первое изображение — первый кадр, второе — последний кадр.
referenceдо 3Изображения служат референсами для объекта и стиля. Только Fast.
не указан2 или 3Два изображения используют режим кадров, три — режим референсов.

veo-3.1-quality не поддерживает режим референсов, поэтому отклоняет generation_type: "reference", а также три изображения без generation_type. veo-3.1-lite не принимает изображений.

В моделях с посекундной оплатой задайте first_frame_image и при необходимости last_frame_image. resize_mode определяет, будет ли изображение другой формы дополнено полями или обрезано.

Медиавходы

Изображения передаются как публичные URL по HTTP(S):

{ "image_urls": ["https://example.com/first.jpg", "https://example.com/last.jpg"] }

В моделях с оплатой за ролик каждое изображение должно быть в формате JPEG, PNG или WebP и весить не более 10 МБ; файл, нарушающий эти правила, приводит к сбою задачи без списания. Данные в base64 не принимаются: загрузите файл в собственное хранилище и передайте его URL.

Факторы стоимости

Актуальные тарифы смотрите в разделе цен модели.

per-clip models:    cost = price of one clip at the output resolution        (720p and 1080p cost the same)
per-second models:  cost = duration × rate for the resolution and audio setting

Сумма фиксируется при приёме запроса, поэтому зарезервированная сумма равна списанной. Итоговые списания смотрите в истории использования своей учётной записи. Неуспешные задачи не тарифицируются.

Схема вывода

При отправке возвращается задача:

{"id": "task_...", "model": "veo-3.1-fast", "status": "processing", "created_at": 1789689600}

Получение задачи

GET https://api.seedrouter.ai/v1/tasks/{task_id}

Опрашивайте каждые 10–20 секунд, пока status не станет completed или failed. Сетевой тайм-аут во время опроса не означает, что генерация завершилась сбоем: сохраните идентификатор задачи и продолжите проверку. Не создавайте другую задачу, чтобы узнать ход выполнения.

Выполненная задача

{
  "id": "task_...",
  "model": "veo-3.1-fast",
  "status": "completed",
  "created_at": 1789689600,
  "finished_at": 1789689720,
  "output": {
    "video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4"
  }
}

video_url — это MP4 или GIF, если в запросе задан enable_gif. Ссылка ведёт в хранилище SeedRouter.

Что вернули наши тестовые запуски (по одному запуску, 2026-10-04):

ЗапросФайл
veo-3.1-fast, 9:16, режим кадровMP4, H.264, 720 × 1280, 24 fps, 8 с, со стереодорожкой AAC
veo-3.1-fast-official, 16:9, 720p, 4 с, без generate_audioMP4, H.264, 1280 × 720, 24 fps, 4 с, без звуковой дорожки
veo-3.1-lite, enable_gifGIF, 480 × 270, 16 fps, 8 с

У моделей с оплатой за ролик нет переключателя звука; модели с посекундной оплатой добавляют звуковую дорожку только с generate_audio.

Ошибки

Запросы, отклонённые до создания задачи, возвращают HTTP-ошибку вместе с объектом error и не тарифицируются. Задача, которая завершилась сбоем уже после приёма, при запросе возвращает HTTP 200 с status: "failed" и объектом error.

Коды, HTTP-статусы и рекомендации по повторным попыткам приведены в общем каталоге ошибок.

{
  "id": "task_...",
  "model": "veo-3.1-fast",
  "status": "failed",
  "error": {
    "code": 60001,
    "message": "The request was rejected by the content policy. Please revise the prompt or input images."
  }
}

Если тайм-аут произошёл при самой отправке, сначала проверьте свои задачи и только потом отправляйте повторно: первый запрос мог быть уже принят.

Советы

  • Начинайте с veo-3.1-lite или veo-3.1-fast в 720p, чтобы опробовать промпт, а для финального рендера переходите на Quality или 4k.
  • Называйте камеру и свет: объектив и движение камеры меняют план сильнее, чем прилагательные.
  • Добавьте no text, no logos, чтобы в кадре не появлялись выдуманные надписи и знаки.
  • Если план должен начинаться и заканчиваться заданными изображениями, используйте режим кадров с двумя изображениями или модели с посекундной оплатой с first_frame_image и last_frame_image.
  • Зафиксируйте seed в моделях с посекундной оплатой и меняйте по одной фразе за раз, чтобы дорабатывать план.

Связанные материалы