Привет! Прошу помощи в написании авторизации в аккаунт Riot Games на запросах. 4 сентября 2024 года риот поменяли эндпоинты апи,и теперь старые простые методы просто не работают. Я прошел авторизацию в клиенте риота и перехватил запросы через Fiddler Classic. Короче у риотов: PKCE-аутентификация с проверкой code_verifier/code_challenge Проверка User-Agent и клиентской платформы hCaptcha Валидация заголовков и cookies. Я использую: эндпоинты RIOT_AUTH_URL = "https://auth.riotgames.com/api/v1/authorization" ENTITLEMENTS_URL = "https://entitlements.auth.riotgames.com/api/token/v1" USERINFO_URL = "https://auth.riotgames.com/userinfo" REGION_URL = "https://riot-geo.pas.si.riotgames.com/pas/v1/product/valorant" Заголовки "User-Agent": "RiotClient/73.0.1.4907369.4789131 rso-auth (Windows;10;;Professional, x64)" "Content-Type": "application/json" "Accept": "application/json" "Origin": "https://auth.riotgames.com" "X-Riot-ClientPlatform": "<base64-encoded-platform-info>" "X-Riot-ClientVersion": "release-09.12-shipping-13-<random-number>" Последовательность запросов Инициализация (POST на RIOT_AUTH_URL): { "acr_values": "urn:riot:bronze", "claims": "", "client_id": "riot-client", // или "play-valorant-web-prod" "code_challenge": "<code_challenge>", "code_challenge_method": "S256", "nonce": "<random-string>", "redirect_uri": "http://localhost/redirect", "response_type": "token id_token", "scope": "openid link ban lol_region account email phone" } Python { "acr_values": "urn:riot:bronze", "claims": "", "client_id": "riot-client", // или "play-valorant-web-prod" "code_challenge": "<code_challenge>", "code_challenge_method": "S256", "nonce": "<random-string>", "redirect_uri": "http://localhost/redirect", "response_type": "token id_token", "scope": "openid link ban lol_region account email phone" } Аутентификация (PUT на RIOT_AUTH_URL): { "type": "auth", "username": "<username>", "password": "<password>", "remember": true, "language": "en_US" } Python { "type": "auth", "username": "<username>", "password": "<password>", "remember": true, "language": "en_US" } Entitlements токен (POST на ENTITLEMENTS_URL): Заголовок: "Authorization": "Bearer <access_token>" Python Заголовок: "Authorization": "Bearer <access_token>" Информация пользователя (GET на USERINFO_URL): Заголовок: "Authorization": "Bearer <access_token>" Python Заголовок: "Authorization": "Bearer <access_token>" Основная ошибка при авторизации в Riot Games API - "auth_failure" Я использовал PKCE,точные ЮА,разные client_id,обработку hcaptcha (решение вручную и (или) с помощью сервиса 2Captcha),добавлял региональные настройки в качестве исключения. Всегда ошибка auth_failure Буду несказанно рад (возможно даже закину копеечку) тому,кто подскажет как обойти эту блядскую ошибку,у меня нет сил. Я уже 3 месяца дрочу эти запросы,делал на селениуме с использованием undetected_chromedriver,но риот фродит любые поиски по селекторам,любой ввод текста/клики по селекторам. Прошу вас,поставьте меня на верный путь к авторизации. Спасибо.
https://github.com/tanishqmanuja/valorant-api-client/tree/74f362a86d22434ab9734450d96707d00b119566 https://github.com/Morilli/riot-manifests/blob/315a10185fc90da37358c780fb819429df011828/utils.py#L56 https://github.com/VShopApp/mobile/blob/763803b435dd26907de5e0ca5c4815c7d42bf458/utils/valorant-api.ts#L295
ты в курсе что капчу hcaptcha ввели да? тогда отснифай клиент десктоп у риотов и посмотри где она берется и как решается, даже я сделав солвер получаю ошибки на вход... а ты даже без капчи пытаешься войти The post was merged to previous May 19, 2025 дай свой код где ты хкапчу решаешь, посмотрю, если что пиши в личку, можем обсудить, мб придем к решению