OAuth 2 authorize URL онлайн

Собирает ссылку «Войти через …» с client_id, redirect и state. Ошибка в redirect_uri — частая причина invalid redirect.

Готовый URL поставьте в href кнопки входа или сделайте redirect с бэкенда. state сохраните в сессии и сверьте на callback. Token endpoint и client_secret сюда не входят — это только первый шаг authorize.

Данные

Адрес страницы логина провайдера, из документации: …/authorize или …/oauth/authorize.

Идентификатор приложения из кабинета Google/Яндекс/своего IdP. Это не секрет.

Куда вернуть пользователя после входа. Должно байт-в-байт совпасть с зарегистрированным URI.

Какие данные просите, через пробел: openid profile email. Смотрите список у провайдера.

Пусто — сгенерировать.

Для безопасного входа оставьте code (authorization code). token — устаревший implicit.

Из сервиса PKCE, не сам verifier. Пусто — URL без PKCE (хуже для SPA).

Как пользоваться

Укажите endpoint авторизации провайдера, client_id и redirect_uri как в кабинете приложения.

Как интерпретировать результат

state сгенерируется, если пустой. code_challenge возьмите из сервиса PKCE — не путайте с verifier.

Частые вопросы

Зачем state?

Защита от CSRF: сверьте его на callback с тем, что сохранили.

token в implicit?

response_type=token устарел. Для SPA используйте code + PKCE.

redirect не совпадает?

Провайдер требует байт-в-байт совпадение с зарегистрированным URI.

scope через запятую?

В OAuth 2 обычно пробел. Некоторые IdP принимают запятую — смотрите их доку.

Это токен?

Нет, только URL первого шага. Код меняют на token endpoint.