01
Создайте API key
Откройте Dashboard > API Keys и подготовьте серверный ключ. Браузерный клиент должен обращаться к вашему backend, а не раскрывать ключ.
Предпросмотр документации
Это руководство показывает планируемый поток Veo 4 API: создание видеозадачи, проверка статуса, получение webhook-событий и расчет кредитов до публичного запуска.
Поток интеграции
Используйте этот поток для подготовки backend-интеграции. Храните ключ на сервере, отправляйте задачи асинхронно и сохраняйте URL результата после завершения.
01
Откройте Dashboard > API Keys и подготовьте серверный ключ. Браузерный клиент должен обращаться к вашему backend, а не раскрывать ключ.
02
Отправьте text-to-video или image-to-video запрос с prompt, mode, aspect ratio, quality и необязательным webhook URL.
03
Опросите task endpoint по task_id, пока задача не станет succeeded или failed. Webhooks уменьшают polling в production.
04
После успеха сохраните video_url и thumbnail_url в CMS, редактор, pipeline автоматизации или запись проекта пользователя.
Предварительный контракт
Примеры ниже конкретны, чтобы команды могли проектировать клиентов заранее. До объявления запуска считайте их черновым контрактом.
Вызывайте по HTTPS с сервера. К запуску могут появиться versioned domain или региональные endpoints.
https://veo4api.net/api/video/veo4Каждый запрос использует Bearer token. Храните API keys в server secrets, не в публичном frontend bundle.
Authorization: Bearer YOUR_API_KEYhttps://veo4api.net/api/video/veo4/generateМожет изменитьсяСоздает новую асинхронную видеозадачу Veo 4. Ответ сразу возвращает task_id, а рендеринг продолжается в фоне.
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
prompt | string | Да | Естественное описание клипа: объект, движение камеры, стиль и ограничения. |
image_urls | string[] | Нет | Публично доступные исходные изображения для image-to-video. Текущий proxy принимает image_urls и совместимые alias для URL изображений. |
aspect_ratio | string | Нет | Планируемые значения: 16:9, 9:16 и 1:1. |
extend_task_id | string | Нет | Необязательный task_id существующего завершенного видео для workflow продления. |
seeds | number | Нет | Необязательный числовой seed для более повторяемого результата. Текущий диапазон: 10000-99999. |
watermark | string | Нет | Необязательная метка watermark, передаваемая в backend генерации видео. |
enableTranslation | boolean | Нет | Необязательный boolean для управления переводом prompt перед генерацией. По умолчанию true. |
public | boolean | Нет | Необязательный boolean, показывающий, может ли результат появиться в публичных showcase-разделах. |
curl -X POST "https://veo4api.net/api/video/veo4/generate" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A cinematic dolly shot of a glass greenhouse during sunrise",
"aspect_ratio": "16:9",
"watermark": "veo4api",
"enableTranslation": true
}'const response = await fetch("https://veo4api.net/api/video/veo4/generate", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
prompt: "Animate this product photo into a smooth studio orbit shot",
image_urls: ["https://cdn.example.com/input/product.png"],
aspect_ratio: "1:1",
seeds: 12345,
public: false
})
});
const data = await response.json();
console.log(data.task_id);{
"task_id": "veo4_task_01j9example",
"status": "queued",
"model": "veo-4",
"credits_estimated": 180,
"created_at": "2026-05-17T08:00:00Z"
}{
"task_id": "veo4_task_01j9example",
"status": "succeeded",
"progress": 100,
"video_url": "https://cdn.veo4api.net/results/veo4_task_01j9example.mp4",
"thumbnail_url": "https://cdn.veo4api.net/results/veo4_task_01j9example.jpg",
"completed_at": "2026-05-17T08:03:42Z"
}
// Poll the task with:
// GET https://veo4api.net/api/video/veo4/status?task_id={task_id}Асинхронная доставка
Webhook delivery планируется для публичного API contract. Пока он не включен, опрашивайте status endpoint и подготовьте backend к будущему полю webhook_url.
Детали подписи webhook еще не финальны. Запланируйте проверку будущего signature header, храните task_id и безопасно игнорируйте дубликаты.
{
"event": "video.succeeded",
"task_id": "veo4_task_01j9example",
"status": "succeeded",
"model": "veo-4",
"video_url": "https://cdn.veo4api.net/results/veo4_task_01j9example.mp4",
"credits_charged": 180,
"created_at": "2026-05-17T08:00:00Z",
"completed_at": "2026-05-17T08:03:42Z"
}Надежность
Стройте клиенты вокруг явных состояний и retryable failures. Генерация асинхронна, поэтому 200 означает только принятие задачи.
| Состояние | Значение |
|---|---|
queued | Запрос принят и ожидает мощности. |
processing | Модель рендерит или выполняет пост-обработку видео. |
succeeded | Видео готово, URL результата доступны. |
failed | Генерация не удалась. Покажите ошибку и предложите изменить prompt или повторить. |
canceled | Задача отменена до завершения. |
| Код | Рекомендуемая обработка |
|---|---|
400 | Проверьте prompt length, image_urls, aspect_ratio, seeds и public visibility перед retry. |
401 | API key отсутствует, истек или недействителен. Попросите создать новый ключ. |
402 | Недостаточно кредитов. Отправьте пользователя в billing или снизьте quality. |
409 | Конфликт task request. Если платформа возвращает conflict, получите существующую задачу вместо создания новой. |
429 | Rate limit. Используйте exponential backoff и не опрашивайте слишком часто. |
500 | Временная ошибка платформы или модели. Повторите позже и сохраните исходную запись задачи. |
Планирование кредитов
Текущие pricing labels используют эти числа для емкости Veo 4. Это не финальное billing commitment до запуска.
Стандартная видеозадача
180
Оценка кредитов за стандартную генерацию Veo 4 video.
HD видеозадача
240
Оценка кредитов за HD генерацию Veo 4 video.
Используйте эти значения только для планирования. Реальные лимиты, quality tiers и billing могут измениться.