Создать видео
POST /v1/videos: поставить задачу генерации видео.
/v1/videosСоздаёт задачу генерации видео и сразу возвращает её со статусом queued. Генерация асинхронная и обычно занимает до пары минут: проверяйте статус через Получить видео, затем скачайте файл через Скачать видео. Форма запросов совместима с OpenAI Videos API, поэтому подходят методы client.videos.* из OpenAI SDK.
Заголовки
| Заголовок | Значение |
|---|---|
Authorization | Bearer <ключ>. Обязателен. Вместо него принимается x-api-key: <ключ> |
Content-Type | application/json или multipart/form-data (так шлёт OpenAI SDK) |
X-Morphogen-Space | spc_…: пространство расхода. Необязательный |
Тело запроса
modelstringобязательныйМодель видео из GET /v1/models: например grok-imagine-video, wan-3.0, seedance-2.0-mini или kling-3.0.
promptstringобязательныйОписание ролика.
secondsstring | integerДлительность в секундах. Допустимые значения зависят от модели. Вместо seconds принимается duration.
sizestringРазмер кадра, например 854x480. Вместо него можно передать resolution и aspect_ratio.
resolutionstringРазрешение, например 480p, 720p или 1080p, если модель его поддерживает.
aspect_ratiostringСоотношение сторон, например 16:9.
generate_audiobooleanГенерировать звук. Если не указать, звук включается у моделей, которые его умеют, и тогда цена выше.
seedintegerЗерно для воспроизводимости, если модель его принимает.
frame_imagesarrayОпорные кадры для моделей, которые принимают их на входе.
input_referencesarrayСсылки на исходные изображения. Передача файлом в input_reference не поддерживается.
Перед запуском на счёте резервируется сумма: секунды умножаются на цену за секунду для выбранного разрешения. Если генерация закончилась ошибкой или вы отменили задачу в очереди, деньги не списываются. Списывается только завершённая задача.
Пример запроса
curl https://api.morphogen.ru/v1/videos \
-H "Authorization: Bearer $MORPHOGEN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine-video",
"prompt": "бумажный кораблик на озере на закате",
"seconds": "4",
"size": "854x480"
}'Пример ответа
{
"id": "video_7f3a91c2",
"object": "video",
"model": "grok-imagine-video",
"status": "queued",
"seconds": "4",
"size": "854x480",
"created_at": 1760104212
}Сохраните id: по нему проверяется статус и скачивается файл.
Ошибки
unsupported_video_parameterДлительность, разрешение или соотношение сторон не из списка модели, либо передан файл в input_reference.missing_modelВ теле нет model.missing_promptВ теле нет prompt.invalid_secondsДлительность не разобрана.invalid_jsonТело запроса не разобрано.model_category_mismatchМодель не из категории видео.invalid_api_keyКлюч не найден, отключён или истёк.insufficient_fundsНа балансе не хватает денег на резерв.key_limit_exceededИсчерпан дневной или месячный лимит ключа.rate_limit_exceededПревышен лимит запросов в минуту.Остальные коды: Ошибки. Руководство: Картинки и видео.