Генерация видео MiniMax H3 (асинхронно): вывод 1080P, нативное аудио всегда включено; длительность — любое целое число от 5 до 15 секунд, шесть соотношений сторон; для режима «изображение в видео» укажите image. Возвращает job id (HTTP 202); опрашивайте GET /v1/videos/jobs/{id} до status=succeeded, результат — в data[0].url. Оплата посекундная, при ошибке — полный возврат.
Попробовать в песочнице →Аутентификация
Authorization: Bearer YOUR_API_KEY Content-Type: application/json
Чтобы начать, создайте API-ключ в консоли.
Тело запроса
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| model | string | Да | Model ID, here minimax-h3. |
| prompt | string | Да | Text prompt describing the video, camera and motion. Max 2000 bytes (UTF-8; a Chinese character counts as 3). With multiple reference images you can address them as @Image1 / @Image2 in the prompt, e.g. "the character from @Image1 in the scene from @Image2"; without tokens the model decides on its own. |
| duration | integer | Нет | Length in seconds, any integer 5-15 (default 5); alias seconds. Billed per second. |
| resolution | string | Нет | Resolution: 1080P (default 1080P; each tier has its own rate, see the model page). |
| size | string | Нет | Aspect ratio: 16:9 / 9:16 / 21:9 / 4:3 / 1:1 / 3:4 (16:9 default); alias aspect_ratio. |
| audio | boolean | Нет | Эта модель всегда генерирует нативное аудио; параметр игнорируется (false отклоняется). |
| image | string | Нет | Изображение в видео: укажите референсное изображение (по умолчанию используется как первый кадр) — публичный URL, data: URI или base64; не указывайте для режима текст в видео. |
| images | array | Нет | Multiple reference images, up to 5 for this model. Each item may be a public URL, a data: URI, or base64. Exceeding the cap is rejected, never truncated. Alias: reference_images. |
| image_role | string | Нет | Как используются референсные изображения: first_frame (по умолчанию; второе изображение становится последним кадром) или reference (референсы объекта/стиля — используйте при нескольких изображениях). При передаче reference_images по умолчанию применяется reference. |
| audio_reference | string / array | Нет | Public http(s) URL(s) for reference audio, up to 3. Must accompany a reference image or video; alias audio_references (do not send both). |
Пример запроса
# 1) submit -> 202 {"id":"img_...","status":"queued"}
curl https://nezhagate.com/v1/videos/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "minimax-h3", "prompt": "a cat surfing a wave at sunset", "duration": 5, "resolution": "1080P", "size": "16:9"}'
# image-to-video: also pass "image": "https://example.com/first-frame.png"
# 2) poll every ~5s until status=succeeded, then read data[0].url
curl https://nezhagate.com/v1/videos/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'Ответ
{
"id": "img_3f9a...c2",
"object": "video.generation.job",
"status": "queued",
"model": "minimax-h3"
}Асинхронная видеозадача (отправка → опрос)
Отправка запроса сразу возвращает HTTP 202 и id задачи; опрашивайте, пока status не станет succeeded, и считайте data[0].url (ссылку на mp4). Допустимые значения duration, resolution и size — в таблице параметров выше; для варианта «изображение в видео» добавьте параметр image.
curl https://nezhagate.com/v1/videos/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "minimax-h3", "prompt": "кот занимается сёрфингом на закате", "size": "16:9"}'{ "id": "img_3f9a...c2", "object": "video.generation.job", "status": "queued", "model": "minimax-h3" }curl https://nezhagate.com/v1/videos/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'
{
"id": "img_3f9a...c2",
"object": "video.generation.job",
"status": "succeeded",
"model": "minimax-h3",
"data": [{ "url": "https://img.nezhagate.com/i/9f86d081a8....mp4" }]
}🕑 data[0].url — это ссылка на наш хостинг изображений; она хранится 60 дней, а затем автоматически удаляется. Чтобы продолжать использовать изображение, скачайте его и сохраните в своём хранилище или CDN.
Тарификация посекундная ($0.036/s x duration); резерв в точности равен итоговому списанию, а неудачный или прерванный по тайм-ауту рендер автоматически возвращается в полном объёме.
Коды ошибок
Каждое тело ошибки содержит error.message / error.type / error.code / error.param — ветвите логику по code; полный список — в руководстве по интеграции.
| HTTP | code | Описание |
|---|---|---|
| 401 | invalid_api_key | API-ключ отсутствует или недействителен |
| 402 | insufficient_quota | Недостаточно средств на балансе или превышена квота ключа |
| 400 | invalid_request | Неподдерживаемая модель или параметр |
| 429 | rate_limit_exceeded | Лимит запросов у провайдера |
| 502 | upstream_error | Все маршруты к провайдерам не сработали |