revoke

[POST] /oauth/revoke

Метод отзывает выданный токен. Используйте его, когда пользователь отключил интеграцию, приложение выполняет локальный выход или вам нужно прекратить доступ раньше окончания срока действия токена.

Запрос отправляется как application/x-www-form-urlencoded. Confidential-клиент подтверждает себя через Basic Auth или через client_id и client_secret в теле формы. Public-клиент передаёт client_id без секрета. Каждый клиент может отзывать только собственные токены.

curl -X POST https://auth.regos.uz/oauth/revoke \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -u "your_client_id:your_client_secret" \
  -d "token=opaque_access_token" \
  -d "token_type_hint=access_token"

Параметры:

Название Обязательность Описание
token Да Access token или refresh token, который нужно отозвать.
token_type_hint Нет access_token или refresh_token; это подсказка, фактический тип токена проверяется сервером.
client_id Да, если не используется Basic Auth Идентификатор клиента.
client_secret Только для confidential-клиента без Basic Auth Секрет клиента. Public-клиент его не передаёт.

При успешном отзыве сервер возвращает пустой ответ 204 No Content. После этого приложение должно удалить токены у себя и не пытаться использовать их снова.

Если токен уже неактивен, приложение все равно должно считать локальную очистку успешной: пользователю важно, что интеграция больше не использует старые учетные данные.

Отзыв refresh token публичным приложением

curl -X POST https://auth.regos.uz/oauth/revoke \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "client_id=your_client_id" \
  --data-urlencode "token=opaque_refresh_token" \
  --data-urlencode "token_type_hint=refresh_token"

При отзыве refresh token отзывается вся его цепочка, включая новые токены, выданные при ротации. Это действует и для старого использованного refresh token, пока сохраняется его цепочка. Другие независимые авторизации клиента не отзываются. Неизвестный токен возвращает такой же успешный ответ; чужой токен не отзывается.

Отзыв access token делает недействительной соответствующую пару access/refresh tokens. Для гарантированного отзыва всей цепочки передавайте refresh token. Отзыв не равен выходу из браузерной сессии REGOS: для этого используется /oauth/logout.

Для opaque access tokens API проверяет состояние через introspection. Отозванные токены возвращают active: false. При сбоях инвалидирования кэша задержка на стороне REGOS может достигать 30 секунд; собственный кэш API добавляет задержку. Срок действия токена определяется настройками клиента или наследуется от сервера.