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

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

Подробное подключение Task API для TikTok-Style Captions

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

Эндпоинт

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

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

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

Не передавайте в 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/tiktok-captions" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "video": "https://static.mashagpt.ru/dl/mashagpt/reference.mp4"
}'

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

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

ПараметрТипОписание
video*
stringURL of the video to add captions to. Пример — https://example.com/video.mp4.
subsPosition
stringДопустимые значения: bottom75, bottom50, center, top, top25. Subtitle position on the video. По умолчанию — bottom75.
color
stringCaption text color (CSS color name or hex). По умолчанию — white. Пример — white.
highlightColor
stringHighlight color for captioned text (CSS color name or hex). По умолчанию — yellow. Пример — #39E508.
fontsize
numberFont size (7.0 for videos, 4.0 for reels). Диапазон 1–20. По умолчанию — 7.
maxChars
numberMax characters space for subtitles (20 for videos, 10 for reels). Диапазон 5–50. По умолчанию — 20.
opacity
numberBackground opacity level. Диапазон 0–1. По умолчанию — 0.
font
stringFont typeface. По умолчанию — Poppins/Poppins-ExtraBold.ttf.
strokeColor
stringText stroke/outline color. По умолчанию — black.
strokeWidth
numberText stroke/outline width. Диапазон 0–10. По умолчанию — 2.6.
kerning
numberLetter spacing (kerning). По умолчанию — -5.
rightToLeft
booleanEnable right-to-left text (requires Arial font). По умолчанию — false.

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

Запрос
curl -X POST https://api.mashagpt.ru/v1/tasks/tiktok-captions \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "video": "https://example.com/video.mp4",
  "subsPosition": "bottom75",
  "color": "white",
  "highlightColor": "yellow",
  "fontsize": 7,
  "maxChars": 20,
  "opacity": 0,
  "font": "Poppins/Poppins-ExtraBold.ttf",
  "strokeColor": "black",
  "strokeWidth": 2.6,
  "kerning": -5,
  "rightToLeft": false
}'
Ответ
{
  "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