MVPбез авторизации и оплаты, только генерация

ABAI

Три режима. Одна кнопка. Воркеры делают магию в фоне.

Документация API (MVP)
Интеграция без интерфейса: curl, статусы, скачивание

Сейчас сервис работает без полноценной авторизации и биллинга. API-ключи ниже генерируются локально в браузере и нужны как идентификатор (в том числе для ограничения «1 задача одновременно»). Позже ключи будут храниться в базе и проверяться на сервере.

База
Базовый URL: https://24abai.ru
Все запросы ниже используют этот домен.
Аутентификация (пока условная)
Передавай ключ в заголовке Authorization: Bearer <API_KEY>.
В MVP ключи не проверяются на сервере, но используются как идентификатор для ограничения «1 активная задача на ключ».
1) Запуск задачи
POST /api/jobs (JSON или multipart/form-data)
curl -sS \
  -H "content-type: application/json" \
  -H "authorization: Bearer YOUR_API_KEY" \
  -d '{"mode":"text_to_video","prompt":"Кинематографичный кадр, неон, дождь","ratio":"9:16","quality":"fast"}' \
  "https://24abai.ru/api/jobs"
Ответ: { "jobId": "..." }
2) Статус
GET /api/jobs/:jobId
curl -sS \
  -H "authorization: Bearer YOUR_API_KEY" \
  "https://24abai.ru/api/jobs/JOB_ID_HERE"
Поле status: queued | processing | success | failed.
3) Скачать результат
GET /api/jobs/:jobId/download (mp4 или png)
curl -L \
  -H "authorization: Bearer YOUR_API_KEY" \
  -o output.mp4 \
  "https://24abai.ru/api/jobs/JOB_ID_HERE/download"
Режимы и поля
mode: text_to_video, image_to_video, text_to_image
Для image_to_video нужны img1 и img2 как HTTPS-ссылки.
Если ты загружаешь файлы (multipart), воркерам нужен публичный HTTPS-домен для скачивания (см. UPLOAD_BASE_URL).
Ограничение
Один пользователь (по cookie в браузере или по API-ключу в заголовке) может иметь только 1 активную задачу одновременно. Если запустить ещё одну, вернётся 429 и { error: "already_running", jobId: "..." }.