Перейти к основному содержанию
POST
/
v1
/
videos
/
generations
curl --request POST \
  --url https://toapis.com/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "MiniMax-Hailuo-02",
    "prompt": "Ночной город, мерцающие неоновые огни, поток транспорта",
    "duration": 6,
    "resolution": "1080P"
  }'
{
  "id": "vid_01K8SGYNNNVBQTXNR4MM964S7K",
  "object": "generation.task",
  "model": "MiniMax-Hailuo-02",
  "status": "queued",
  "progress": 0,
  "created_at": 1768380224,
  "metadata": {}
}
  • Асинхронный режим, возвращает ID задачи
  • Поддерживаемая модель: MiniMax-Hailuo-02
  • Три режима генерации: текст-в-видео, изображение-в-видео, генерация по первому и последнему кадру
  • Разрешения 512P / 768P / 1080P, длительность 6 и 10 секунд
Используйте публично доступные URL изображений. Не передавайте base64 данные в image_urls или metadata; для локальных изображений сначала используйте API загрузки изображений для получения URL.

Аутентификация

Authorization
string
обязательно
Все эндпоинты требуют аутентификации Bearer Token.
Authorization: Bearer YOUR_API_KEY

Параметры запроса

model
string
обязательно
Название модели, фиксированное значение MiniMax-Hailuo-02.
prompt
string
Описание содержимого видео, максимум 2000 символов.
  • В режиме текст-в-видео — обязательно
  • В режиме изображение-в-видео и генерации по кадрам — необязательно (можно описать желаемое движение)
Поддерживается 15 типов команд камеры (например [推进], [拉远], [左摇,上升]), см. таблицу ниже.Пример: "Кот бежит к камере, улыбается и моргает"
duration
integer
по умолчанию:"6"
Длительность видео (секунды).Доступные значения: 6 или 10
При разрешении 1080P поддерживается только длительность 6 секунд.
resolution
string
по умолчанию:"768P"
Разрешение видео.Доступные значения:
  • 512P - стандартное разрешение (для изображение-в-видео)
  • 768P - HD (по умолчанию)
  • 1080P - Full HD (только 6 секунд)
image_urls
string[]
Массив URL изображений первого кадра.
  • Не передавать: текст-в-видео
  • 1 изображение: изображение-в-видео, изображение используется как первый кадр
Требования к изображению:
  • Формат: JPG, JPEG, PNG, WebP
  • Размер: до 20MB
  • Разрешение: короткая сторона > 300px, соотношение сторон от 2:5 до 5:2
Пример: ["https://example.com/first-frame.jpg"]
metadata
object
Расширенные параметры.

Три режима генерации

Режимimage_urlsmetadata.last_frame_imageОписание
Текст-в-видеоНе передаватьНе передаватьГенерация видео по текстовому описанию
Изображение-в-видео✅ 1 изображениеНе передаватьГенерация видео с первым кадром
По первому и последнему кадру✅ 1 изображение (первый кадр)✅ Передать (последний кадр)Переходное видео от первого к последнему кадру

Комбинации разрешения и длительности

РазрешениеПоддерживаемая длительностьТекст-в-видеоИзображение-в-видеоПо кадрам
512P6 с, 10 с
768P6 с, 10 с
1080P6 с

Команды камеры

В prompt используйте синтаксис [команда] для управления камерой:
КатегорияКоманды
Панорама[左移] [右移]
Поворот[左摇] [右摇]
Наезд/отъезд[推进] [拉远]
Подъём/спуск[上升] [下降]
Наклон[上摇] [下摇]
Зум[变焦推近] [变焦拉远]
Прочее[晃动] [跟随] [固定]
Правила использования:
  • Комбинация: несколько команд в одних [] действуют одновременно, например [左摇,上升], рекомендуется не более 3
  • Последовательность: команды в разных позициях промпта действуют по порядку, например "...[推进], затем...[拉远]"

Ответ

id
string
ID задачи для запроса статуса.
object
string
Тип объекта, всегда generation.task.
model
string
Использованная модель.
status
string
Статус задачи: queued, in_progress, completed или failed.
created_at
integer
Временная метка создания задачи.

Примеры

Текст-в-видео

{
  "model": "MiniMax-Hailuo-02",
  "prompt": "Ночной город, мерцающие неоновые огни, поток транспорта [推进]",
  "duration": 6,
  "resolution": "1080P"
}

Изображение-в-видео

{
  "model": "MiniMax-Hailuo-02",
  "prompt": "Человек медленно поворачивается, улыбается",
  "image_urls": ["https://example.com/portrait.jpg"],
  "duration": 6,
  "resolution": "768P"
}

Генерация по первому и последнему кадру

{
  "model": "MiniMax-Hailuo-02",
  "prompt": "Девочка постепенно взрослеет",
  "image_urls": ["https://example.com/child.jpg"],
  "duration": 6,
  "resolution": "1080P",
  "metadata": {
    "last_frame_image": "https://example.com/adult.jpg"
  }
}

Управление камерой

{
  "model": "MiniMax-Hailuo-02",
  "prompt": "Человек берёт книгу [上升], затем начинает читать [固定]",
  "duration": 6,
  "resolution": "768P"
}

10-секундное видео + быстрая предобработка

{
  "model": "MiniMax-Hailuo-02",
  "prompt": "Волны бьются о берег на закате, золотистый свет на воде",
  "duration": 10,
  "resolution": "768P",
  "metadata": {
    "prompt_optimizer": true,
    "fast_pretreatment": true
  }
}
Генерация видео — асинхронная задача. После отправки используйте Получить статус задачи для запроса прогресса и результатов.
curl --request POST \
  --url https://toapis.com/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "MiniMax-Hailuo-02",
    "prompt": "Ночной город, мерцающие неоновые огни, поток транспорта",
    "duration": 6,
    "resolution": "1080P"
  }'
{
  "id": "vid_01K8SGYNNNVBQTXNR4MM964S7K",
  "object": "generation.task",
  "model": "MiniMax-Hailuo-02",
  "status": "queued",
  "progress": 0,
  "created_at": 1768380224,
  "metadata": {}
}