Adwos CMS

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

Bearer-токены, cookie-сессии, обновление и права доступа

API защищённых операций CMS принимает JWT access-токен в заголовке Authorization: Bearer. Браузерный клиент также использует HttpOnly cookie. Публичные операции не требуют сессии; административные дополнительно проверяют роль и разрешения.

Вход в API Docs выполняется через аккаунт платформы Adwos. Токены установленной CMS предназначены для её домена.

Вход по email

POST /api/v1/auth/login
Content-Type: application/json

{ "email": "user@example.com", "password": "YOUR_PASSWORD" }

Успешный ответ содержит:

{
  "access_token": "ACCESS_TOKEN",
  "refresh_token": "REFRESH_TOKEN",
  "expires_at": 1791064800
}

expires_at — срок действия access-токена в Unix-секундах, а не длительность сессии. Значение в примере условное. Не задавайте срок токена константой в клиенте.

При включённых CAPTCHA или двухфакторной защите вход потребует дополнительных полей (captcha_token, totp_code). remember_me управляет сохранением браузерной сессии. Состав тела проверяйте по схеме операции своей версии CMS.

Запрос с токеном

GET /api/v1/auth/me
Authorization: Bearer ACCESS_TOKEN

Не помещайте токены в query-параметры или журнал ошибок. Для cookie-сессии учитывайте режим credentials и политику origin установки.

Обновление

POST /api/v1/auth/refresh
Content-Type: application/json

{ "refresh_token": "REFRESH_TOKEN" }

Refresh-токен также может поступить из cookie. Сохраняйте новую пару из ответа: старый refresh-токен не следует повторно использовать. При параллельных запросах выполняйте одно обновление сессии и передавайте результат ожидающим запросам.

При 401 от refresh прекратите повторы и запросите новый вход. 401 обычного API-запроса и 403 из-за отсутствия прав требуют разных действий.

Выход

POST /api/v1/auth/logout
Authorization: Bearer ACCESS_TOKEN
Content-Type: application/json

{ "refresh_token": "REFRESH_TOKEN" }

CMS отзывает refresh-токен и очищает cookie-сессию; клиент должен удалить локально сохранённые токены.

Ответы входа

HTTPДействие
400 / 422Проверить тело и обязательные поля
401Проверить учётные данные; при 2fa_required запросить второй фактор
403Проверить блокировку пользователя и CAPTCHA
429Прекратить частые повторы и дождаться следующего разрешённого запроса

SMS/OAuth-вход зависит от настроенных модулей. См. их инструкции.

On this page