Обзор
Базовый URL
https://api.neuroartist.ruАутентификация
Authorization: Bearer na_live_xxxxxxxxxxxxxxxxПодробнее — Аутентификация.
Формат
- Запросы:
Content-Type: application/json(либоmultipart/form-dataдля/me/uploads). - Ответы:
application/json(кроме/metrics). - Кодировка: UTF-8.
- Баланс и суммы — целые числа в рублях.
- Даты — ISO 8601 UTC (
2026-04-25T10:00:00Z).
Envelope ошибок
{ "error": "insufficient_balance", "message": "Not enough credits", "required": 12, "available": 5 }Ветвите по error — стабильный machine-readable. Полный список — коды ошибок.
Стандартные headers
X-Request-ID: 01HXYZ… ← в каждом ответе
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 99
X-RateLimit-Reset: 1714050300
Retry-After: 47 ← при 429/503CORS
Access-Control-Allow-Origin: <FRONTEND_ORIGINS allowlist>
Access-Control-Allow-Credentials: true
Access-Control-Expose-Headers: X-Request-ID, X-RateLimit-*, Retry-AfterCross-origin браузер → credentials: 'include' для session cookie.
OpenAPI
| URL | Что |
|---|---|
/openapi.json | OpenAPI 3.1 (EN) — для генерации SDK |
/openapi.ru.json | RU overlay |
/docs | Scalar UI |
/llms.txt | Token-optimized markdown для LLM |
/llms-full.txt | Полная markdown-документация |
В production /admin/* и /webhooks/yookassa/* отфильтрованы из спеки.
Группы ручек
| Префикс | Группа | Назначение |
|---|---|---|
/models/* | Models | Каталог |
/run/{modelId} | Run | Sync-генерация |
/queue/{modelId}/* | Queue | Async-генерация + polling |
/v1/* | OpenAI compatibility | OpenAI-shaped images API |
/me/* | Me | Профиль, ключи, активность, баланс |
/billing/* | Биллинг | Пополнение через YooKassa |
/webhooks/yookassa/* | YooKassa callbacks | Server-to-server, не для клиентского кода |
/health, /metrics | Health | Liveness, Prometheus |
Версионирование
API не версионируется в URL. Изменения — обратно совместимо. Список — GET /changelog.json.
Дальше
- Шпаргалка по API — все публичные эндпоинты одним списком.
/run— синхронная генерация./queue— async, polling и cancel.