Skip to main content
POST

Авторизация

string
обязательно
Все эндпоинты API требуют аутентификации по Bearer TokenПолучение API Key:Перейдите на страницу управления API Key, чтобы получить ваш API KeyДобавьте в заголовок запроса:

Маршрутизация режимов

happyhorse-1.0 — единая точка входа для Text-to-Video / Image-to-Video / Reference-Image-to-Video / Video Edit. Бэкенд автоматически определяет режим на основе входных параметров. Все режимы тарифицируются по одному правилу (только разрешение × секунды): Приоритет маршрутизации (от высокого к низкому): video_url > first_frame_image > image_urls > только prompt. Правила взаимоисключения: три медиа-поля (first_frame_image / image_urls / video_url) попарно взаимоисключающие. Единственная допустимая комбинация — video_url + image_urls (режим EDIT + опорные изображения). Передача двух взаимоисключающих полей вернёт 400 mixed_media_not_allowed.

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

string
обязательно
Имя модели генерации видео, фиксированное значение happyhorse-1.0
boolean
по умолчанию:"false"
Выполнять ли проверку содержимого перед отправкой задачи генерации видео.
  • true: проверить промпты и входные изображения с помощью omni-moderation-latest
  • false или параметр не указан: не отправлять запрос на проверку, без дополнительных затрат и задержки (по умолчанию)
string
Описание содержания видео, до 2500 символов; не может содержать специальных токенов
  • Режимы T2V / R2V / EDIT: обязательный
  • Режим I2V: опциональный, но рекомендуется для управления движением камеры и действиями
Пример: "A little girl walking down the road, cinematic feel"
string
Изображение первого кадра, активирует режим I2V (Image-to-Video). Поддерживает URL или base64 (data:image/<mime>;base64,<payload>, шлюз автоматически загружает его в OSS)Взаимоисключающее с image_urls / video_url
Требования к изображению первого кадра:
  • Формат: JPEG / JPG / PNG / BMP / WEBP
  • Короткая сторона: ≥ 300 px
  • Соотношение сторон: от 1:2.5 до 2.5:1
  • Размер файла: ≤ 10 МБ
array<string>
Массив изображений:
  • Режим R2V (передаётся только image_urls): 1–9 изображений, используются как опоры по субъекту/стилю для генерации новой сцены
  • Режим EDIT (передаётся вместе с video_url): 0–5 изображений, используются как стилевая опора
Поддерживает URL или base64Взаимоисключающее с first_frame_image; может комбинироваться с video_url
Требования к опорным изображениям:
  • Формат: JPEG / JPG / PNG / BMP / WEBP
  • Короткая сторона: рекомендуется ≥ 720p
  • Соотношение сторон: короткая / длинная ≥ 0.4
  • Размер файла: ≤ 10 МБ
  • Количество: R2V должно быть 1–9; EDIT до 5
string
URL исходного видео, активирует режим EDIT (Video Edit). Base64 не поддерживается — укажите прямую ссылку HTTP/HTTPSВзаимоисключающее с first_frame_image; может комбинироваться с image_urls (≤ 5)
Требования к исходному видео:
  • Длительность: 3–60 секунд (более 15 с автоматически обрезается восходящим сервисом от 0 до 15 с)
  • Разрешение: минимум 480p, короткая сторона ≥ 360
  • Соотношение сторон: от 1:8 до 8:1
  • Формат: MP4 / MOV (рекомендуется H.264)
  • Частота кадров: > 8 fps
  • Размер файла: ≤ 100 МБ
В режиме EDIT длительность сгенерированного видео совпадает с длительностью исходного видео (ограничивается обрезанными 15с, если исходник длиннее). Параметр duration здесь не действует. Чтобы управлять длительностью, обрежьте исходное видео до целевой длины перед загрузкой.
string
по умолчанию:"auto"
Настройка аудио, действует только в режиме EDIT (должно быть передано video_url)Варианты:
  • auto — автоматическая генерация аудио (по умолчанию)
  • origin — сохранить аудиодорожку исходного видео
Передача этого поля вне режима EDIT вернёт 400 audio_setting_only_for_edit
string
по умолчанию:"1080P"
Разрешение видео (влияет на тарификацию)Варианты:
  • 720P — стандартное
  • 1080P — высокая чёткость (по умолчанию)
integer
по умолчанию:"5"
Длительность видео в секундах (влияет на тарификацию)Поддерживаемый диапазон: любое целое число от 3 до 15По умолчанию: 5
Не действует в режиме EDIT (когда передан video_url): длительность сгенерированного видео совпадает с длительностью исходного видео (тарификация по обрезанным 15 с, если исходник длиннее). Чтобы управлять длительностью вывода, сначала обрежьте исходное видео.
string
по умолчанию:"16:9"
Соотношение сторонПоддерживаемые форматы:
  • 16:9 — широкоэкранный пейзаж (по умолчанию)
  • 9:16 — портретный
  • 1:1 — квадрат
  • 4:3 — пейзаж
  • 3:4 — портрет
Игнорируется в режимах I2V / EDIT — соотношение сторон вывода автоматически определяется входным медиа (изображение первого кадра / исходное видео)
boolean
по умолчанию:"false"
Добавлять ли водяной знак к сгенерированному видео
  • true: добавить водяной знак
  • false: не добавлять (по умолчанию)
integer
Случайное зерно для управления случайностью генерируемого содержимогоДиапазон значений: [0, 2147483647]. Если опущено, используется случайное зерно.
  • Для идентичных запросов модель генерирует разные результаты при разных значениях seed (например, при пропуске seed)
  • Для идентичных запросов модель генерирует похожие результаты при одинаковом значении seed, но точное совпадение не гарантируется

Ответ

integer
Код статуса ответа, 200 при успехе
array
Массив данных ответа

Сценарии использования

Сценарий 1: Текст в видео T2V (простейший запрос)

Сценарий 2: Текст в видео T2V (полный набор параметров)

Сценарий 3: Изображение в видео I2V (first_frame_image)

Сценарий 4: Опорное изображение в видео R2V (несколько опорных изображений)

Сценарий 5: Video Edit EDIT (сохранение оригинального аудио + стилевая опора)

Сценарий 6: 720P для экономии

Руководство по выбору режима

Советы по использованию

  1. Логика единой точки входа: входные поля определяют режим. Учтите, что три медиа-поля (first_frame_image / image_urls / video_url) попарно взаимоисключающие
  2. size действует только в T2V/R2V: в режимах I2V / EDIT size игнорируется — соотношение сторон вывода определяется входным медиа
  3. Длительность: 5–10 секунд — оптимальный диапазон. Слишком короткое видео приводит к рваному движению; слишком длинное значительно увеличивает время обработки на восходящем сервисе
  4. Качество изображения первого кадра: чёткое, хорошо скомпонованное, субъект в центре — значительно улучшает результат I2V
  5. Написание промпта: описывайте движение / камеру / атмосферу (например, «slow push-in, cinematic, warm tones») для лучших результатов, чем при чисто статичных описаниях сцены
  6. Входное видео EDIT: длиннее 15 секунд будет автоматически обрезано восходящим сервисом от 0 до 15с. Если нужны другие фрагменты, сначала нарежьте видео самостоятельно
Запрос результатов задачиГенерация видео — асинхронная задача, которая при отправке возвращает task_id. Используйте эндпоинт Получение статуса задачи для запроса прогресса и результатов генерации.