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

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

Подробное подключение Task API для HappyHorse 1.1 Reference-to-Video

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

Эндпоинт

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

Как прикрепить изображение

В запрос модели файл не отправляется напрямую. Сначала загрузите файл в MashaGPT storage, получите публичный URL и передайте его в параметр 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.png"

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

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

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

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

ПараметрТипОписание
duration
integerOutput video duration in seconds. Диапазон 3–15. По умолчанию — 5.
resolution
stringДопустимые значения: 720p, 1080p. Output video resolution. По умолчанию — 1080p.
prompt*
stringText prompt describing the video. Refer to images as [Image 1], [Image 2], and so on. Пример — [Image 1] walks through a neon-lit city.
referenceImageUrls*
string[]One to nine reference image URLs. Пример — ["https://example.com/character.jpg"].
aspectRatio
stringДопустимые значения: 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9. Output video aspect ratio. По умолчанию — 16:9.

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

Запрос
curl -X POST https://api.mashagpt.ru/v1/tasks/happyhorse-1-1-reference-to-video \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "duration": 5,
  "resolution": "1080p",
  "prompt": "[Image 1] walks through a neon-lit city",
  "referenceImageUrls": [
    "https://example.com/character.jpg"
  ],
  "aspectRatio": "16:9"
}'
Ответ
{
  "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