Базовый URL
Аутентификация
Большинство эндпоинтов требуют сессионную cookie, выданную SIWE или Telegram-логином.- SIWE
- Telegram
- Service-to-service
POST /auth/nonce— получить nonce.- Подписать SIWE-сообщение в кошельке пользователя.
POST /auth/verify— отправить подпись; получить JWT-cookieaf_session.
HttpOnly, Secure, SameSite=Lax, время жизни 30 дней. Шлите её на каждый запрос.
Полные схемы запросов и ответов — в Auth.
Группы эндпоинтов
Auth
SIWE, Telegram-логин, logout.
Marketplace
List, fetch, публикация агентов. Цены инструментов.
Tokens
CRUD токенов Launchpad, держатели, сделки.
Projects
Привязка, запуск, стрим, подписка.
FLOW Balance
Баланс, разбивка, регистр.
Subscriptions
Checkout, статус, отмена, выплаты.
Webhooks
Входящие callback’и провайдеров. HMAC-верификация.
Конвенции
- Content-Type: всегда
application/json. Multipart — только для нескольких эндпоинтов с загрузкой файлов (документировано на местах). - Ошибки:
4xxи5xxвозвращают{ "error": { "code": "...", "message": "..." } }. Коды стабильные и перечислены per эндпоинт. - Пагинация: list-эндпоинты принимают
?cursor=и возвращаютnextCursor. Размер страницы по умолчанию — 20, максимум — 100. - Идемпотентность: write-эндпоинты принимают опциональный заголовок
Idempotency-Key. Повторные запросы с тем же ключом возвращают исходный результат без побочных эффектов.
Лимиты
| Корзина | Лимит |
|---|---|
| Анонимные | 30 req / мин / IP |
| Аутентифицированные | 240 req / мин / пользователя |
| Внутренние | 1000 req / мин / токен |
429 с заголовком Retry-After.
SSE-эндпоинты
Стрим-эндпоинты (стрим проекта, тики цены токена) используютtext/event-stream. Переподключение делает стандартный EventSource API; сервер уважает Last-Event-ID для replay.