Справка

Ошибки и ограничения

Коды ошибок, лимиты и правила безопасности.

Ошибки авторизации

Ошибки /oauth/token приходят в формате OAuth 2.0: {"error": "код", "error_description": "текст по-русски"}.

КодСтатусЧто значит и что делать
invalid_client401Неверный client_id или секрет; приложение ещё не одобрено или приостановлено. Проверьте ключи, выпустите новый секрет.
invalid_grant400Код истёк (60 с) или уже использован; не совпал redirect_uri или code_verifier; токен обновления отозван, истёк или уже использован; аккаунт отключён. Отправьте человека войти заново.
invalid_request400Нет обязательного параметра; у публичного приложения нет PKCE; метод PKCE не S256.
unsupported_grant_type400Поддерживаются только authorization_code и refresh_token.
unsupported_response_type—В запросе авторизации response_type не code. Показывается человеку на странице UNIT ID.
access_denied—Человек отказался на экране согласия. Приходит на ваш redirect_uri.
invalid_token401Токен доступа истёк или отозван — обновите его или попросите войти.
insufficient_scope403У токена нет нужного права.

Ограничения

ЧтоЛимит
Приложений у одного человека5 (включая заявки на рассмотрении)
Неверные пароли5 на одну почту или 20 с одного адреса за 15 минут — затем пауза
Коды 2FA5 неверных за 15 минут — затем пауза
Описание приложенияот 10 до 1000 символов

Безопасность

  • Секрет — только на сервере. Не кладите его в мобильное приложение, браузер, публичный репозиторий.
  • Всегда передавайте и сверяйте state; используйте PKCE даже с секретом.
  • Адреса возврата — только HTTPS (кроме http://localhost для разработки) и только те, которыми вы управляете.
  • Храните людей по sub, а не по почте.
  • Запрашивайте минимум прав и не храните токены дольше, чем нужно.
  • Секрет утёк — сразу выпустите новый в разделе «Разработчикам»: старый перестанет действовать.
UNIT · UNIT ID · вопросы по интеграции — администратору UNIT