MorphogenДокументация
API

Создать видео

POST /v1/videos: поставить задачу генерации видео.

POST/v1/videos

Создаёт задачу генерации видео и сразу возвращает её со статусом queued. Генерация асинхронная и обычно занимает до пары минут: проверяйте статус через Получить видео, затем скачайте файл через Скачать видео. Форма запросов совместима с OpenAI Videos API, поэтому подходят методы client.videos.* из OpenAI SDK.

Заголовки

ЗаголовокЗначение
AuthorizationBearer <ключ>. Обязателен. Вместо него принимается x-api-key: <ключ>
Content-Typeapplication/json или multipart/form-data (так шлёт OpenAI SDK)
X-Morphogen-Spacespc_…: пространство расхода. Необязательный

Тело запроса

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: по нему проверяется статус и скачивается файл.

Ошибки

400unsupported_video_parameterДлительность, разрешение или соотношение сторон не из списка модели, либо передан файл в input_reference.
400missing_modelВ теле нет model.
400missing_promptВ теле нет prompt.
400invalid_secondsДлительность не разобрана.
400invalid_jsonТело запроса не разобрано.
400model_category_mismatchМодель не из категории видео.
401invalid_api_keyКлюч не найден, отключён или истёк.
402insufficient_fundsНа балансе не хватает денег на резерв.
402key_limit_exceededИсчерпан дневной или месячный лимит ключа.
429rate_limit_exceededПревышен лимит запросов в минуту.

Остальные коды: Ошибки. Руководство: Картинки и видео.

На этой странице