LLM Router
Справочник API

Аутентификация

Endpoints регистрации, входа, сессии, приглашений и OIDC.

Кому подходит

  • Разработчикам интеграций — получение и проверка Bearer-токена.
  • Администраторам SSO — OIDC login flow.

Base URL: https://api.example.com (адрес вашего экземпляра)


POST /api/auth/register

Регистрация организации и первого владельца.

Тело запроса:

ПолеТипОбязательноОписание
legalNamestringдаНазвание организации
slugstringнетКод организации; иначе из email
emailstringдаEmail владельца
passwordstringдаМинимум 8 символов
planCodestringнетmonthly, quarterly или enterprise; по умолчанию monthly
curl -s -X POST https://api.example.com/api/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "legalName": "Моя Компания ООО",
    "slug": "my-company",
    "email": "owner@mycompany.example",
    "password": "secure-password",
    "planCode": "monthly"
  }'

После регистрации создаётся billing account и первичный счёт на выбранный пакет. Новые LLM-запросы остаются заблокированными до оплаты счёта, кроме Enterprise-сценариев с кредитным лимитом.

Ответ 201:

{
  "token": "…",
  "email": "owner@mycompany.example"
}

Ошибки: 400 — валидация (текст в поле error на русском).


POST /api/auth/login

Локальный вход по email и паролю.

Тело:

ПолеТипОбязательно
emailstringда
passwordstringда
curl -s -X POST https://api.example.com/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email":"owner@example.com","password":"owner password"}'

Ответ 200: { "token", "email" }

Ошибки: 401{"error":"Неверный email или пароль"}


GET /api/auth/session

Текущая сессия по Bearer-токену.

curl -s https://api.example.com/api/auth/session \
  -H "Authorization: Bearer <token>"

Ответ 200: { "token", "email" }

Ошибки: 401{"error":"Сессия не найдена"}


POST /api/invitations/{id}/accept

Принятие приглашения и создание учётной записи.

Тело:

ПолеТипОбязательно
passwordstringда
curl -s -X POST https://api.example.com/api/invitations/inv_abc/accept \
  -H "Content-Type: application/json" \
  -d '{"password": "new-secure-password"}'

Ответ 200: сессия { "token", "email" }

Ошибки: 400 — неверное приглашение или пароль.

Подробнее: Приглашения


GET /api/auth/oidc/{providerId}/login

Начало OIDC-авторизации. Авторизация не требуется.

Query:

ПараметрОбязательноОписание
redirect_uriдаURI возврата после IdP
curl -s "https://api.example.com/api/auth/oidc/auth_xyz/login?redirect_uri=https://app.example.com/login/callback"

Ответ 200:

{
  "authorizationUrl": "https://…",
  "state": "…"
}

Перенаправьте пользователя на authorizationUrl.


GET /api/auth/oidc/callback

Завершение OIDC после редиректа от IdP.

Query: state, code (от провайдера)

curl -s "https://api.example.com/api/auth/oidc/callback?state=…&code=…"

Ответ 200: { "token", "email" }


POST /api/auth/oidc/providers/{id}/discover

Проверка OIDC discovery. Требуется Bearer-токен owner/admin организации провайдера.

curl -s -X POST https://api.example.com/api/auth/oidc/providers/auth_xyz/discover \
  -H "Authorization: Bearer <token>"

Ответ 200:

{
  "issuer": "https://sso.example.com",
  "authorization_endpoint": "…",
  "token_endpoint": "…",
  "jwks_uri": "…"
}

Заголовок Authorization

Для защищённых endpoints:

Authorization: Bearer <token>

Что дальше

На этой странице