Аутентификация
OAuth 2.0, токены доступа, scopes, привязка токена к клиенту.
OAuth 2.0
API LegalStack использует OAuth 2.0. Точка выдачи токенов — POST https://api.legalstack.ru/oauth/token, метаданные — https://api.legalstack.ru/.well-known/oauth-authorization-server.
Основные flow:
- Client Credentials — для server-to-server интеграций от имени команды.
- Authorization Code (PKCE) — для приложений, действующих от имени пользователя.
Полный набор операций OAuth (авторизация, обмен кода, refresh, revocation, introspection) — в API Reference: Security.
Использование токена
Передавайте токен в каждом запросе:
GET /api/v1/tasks HTTP/1.1
Authorization: Bearer <access_token>Токены короткоживущие; обновляйте их по refresh_token или повторным client-credentials запросом. Ответ 401 с кодом TOKEN_EXPIRED — сигнал получить новый токен.
Scopes
Доступ контролируется scopes вида <домен>:<действие> — например tasks:read, registry:write, webhooks:write. Требуемые scopes каждой операции указаны в API Reference. Запрашивайте минимально необходимый набор: запрос с недостающим scope получит 403 с кодом OAUTH_INSUFFICIENT_SCOPE.
Ключи подписи
Публичные ключи для проверки JWT публикуются в JWKS: https://api.legalstack.ru/.well-known/jwks.json. Ключи ротируются — резолвьте их по kid из заголовка токена, а не кэшируйте единственный ключ навсегда.