К обзору модели

API-документация

Подробное подключение Task API для HappyHorse 1.0 Video Edit

API-документация

Эндпоинт

Базовый URLhttps://api.mashagpt.ru/v1
Эндпоинт
POST
/v1/tasks/happyhorse-video-edit
Авторизация
x-api-key: YOUR_API_KEY
илиAuthorization: Bearer YOUR_API_KEY

Как прикрепить видео

В запрос модели файл не отправляется напрямую. Сначала загрузите файл в MashaGPT storage, получите публичный URL и передайте его в параметр videoUrl, referenceImageUrls.

Не передавайте в JSON blob:, file://, data:, base64 или сырые байты. Storage принимает multipart/form-data с одним полем file. Подробный контракт: /v1/storage/upload.

1. Загрузить файл
curl -X POST "https://api.mashagpt.ru/v1/storage/upload" \
  -H "x-api-key: YOUR_API_KEY" \
  -F "file=@./reference.mp4"

Ответ вернет URL вида https://static.mashagpt.ru/...

2. Передать URL в модель
curl -X POST "https://api.mashagpt.ru/v1/tasks/happyhorse-video-edit" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "videoUrl": "https://static.mashagpt.ru/dl/mashagpt/reference.mp4",
  "prompt": "Опишите желаемый результат"
}'

Если файл уже доступен по публичному URL, его можно передать сразу. Загрузка через MashaGPT storage надежнее для файлов с компьютера.

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

ПараметрТипОписание
videoUrl*
stringSource video URL (MP4 or MOV, 3-60 seconds, max 100MB). Пример — https://example.com/source.mp4.
prompt*
stringEditing instructions. Пример — Turn the scene into a rainy night.
referenceImageUrls
string[]Up to five reference image URLs.
resolution
stringДопустимые значения: 720p, 1080p. Output video resolution. По умолчанию — 1080p.
audioSetting
stringДопустимые значения: auto, origin. Audio behavior: auto lets the model decide; origin keeps source audio. По умолчанию — auto.
seed
integerRandom seed for reproducible generation. Omit to let the provider choose one. Диапазон 0–2147483647.

Пример запроса и ответа

Запрос
curl -X POST https://api.mashagpt.ru/v1/tasks/happyhorse-video-edit \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "videoUrl": "https://example.com/source.mp4",
  "prompt": "Turn the scene into a rainy night",
  "resolution": "1080p",
  "audioSetting": "auto"
}'
Ответ
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "550e8400-e29b-41d4-a716-446655440000",
    "state": "queued"
  }
}

Асинхронная обработка

Модель работает асинхронно. После запроса вы получите taskId задачи для отслеживания статуса.

GET
/v1/tasks/{id}статус задачи
Проверка статуса задачи:
curl -X GET "https://api.mashagpt.ru/v1/tasks/{task_id}" \
  -H "x-api-key: YOUR_API_KEY"

Жизненный цикл задачи:

queuedprocessingcompleted|failed