Документация
Справочник по API и руководство по интеграции
hCaptcha
Поддерживаемые сайты
Сейчас hCaptcha стабильно решается для Steam (help.steampowered.com, steamcommunity.com) и E*** G**** (target-site.com — invisible enterprise через rqdata). Остальные домены пока не гарантируются — поддержка в разработке.Как это работает
Steam — обычный (checkbox) виджет. Передавайте websiteURL + websitePublicKey; для чистого прохода задавайте свой proxy (тогда токен намят через ваш IP). В ответе — готовый token, который вы подставляете в форму восстановления.
E*** G**** — invisible enterprise. Сайт генерит rqdata в вашей сессии; передайте его вместе с websitePublicKey target-site и тем же proxy, через который получен rqdata (enterprise привязан к IP сессии — если IP минта не совпадёт с IP генерации rqdata, hCaptcha вернёт challenge и токен будет отклонён). Мы возвращаем token, который вы сабмитите в своём флоу (например, в XAL) под тем же userAgent, что и в ответе.
Что возвращается: строка solution.token (h-captcha-response / g-recaptcha-response, обычно вида P1_…) и solution.userAgent. Токен живёт ~120с — подставляйте/сабмитьте сразу.
Параметры task
POST https://api.funsolver.com/createTask
Content-Type: application/json
{
"clientKey": "fsk_abc...",
"task": {
"type": "HCaptchaTask",
"websiteURL": "https://example.com/login",
"websitePublicKey": "a5f74b19-9e45-40e0-b45d-47ff91b7a6c2",
"rqdata": "<enterprise payload, optional>",
"proxy": "http://user:pass@host:port",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) ... Chrome/149.0.0.0 ..."
}
}type"HCaptchaTask" (с прокси клиента) или "HCaptchaTaskProxyless" (на нашем IP).websiteURLwebsitePublicKeyrqdataproxyuserAgentОтвет getTaskResult
{
"errorId": 0,
"status": "ready",
"solution": {
"token": "P1_eyJ...",
"userAgent": "Mozilla/5.0 ..."
},
"processingTime": 4.2
}solution.token — значение h-captcha-response / g-recaptcha-response для подстановки в форму. solution.userAgent — UA, под которым решалась капча: сабмитьте токен с тем же UA (иначе hCaptcha даст UA-mismatch → score=0).
Примеры
Steam (обычный виджет, без rqdata)
POST https://api.funsolver.com/createTask
Content-Type: application/json
{
"clientKey": "fsk_abc...",
"task": {
"type": "HCaptchaTask",
"websiteURL": "https://help.steampowered.com/en/wizard/HelpWithLoginInfo",
"websitePublicKey": "464c5638-2416-4818-8fa8-91e669b4d6a8",
"proxy": "http://user:pass@host:port"
}
}Без proxy — используйте "HCaptchaTaskProxyless" (минт на нашем IP).
E*** G**** (invisible enterprise, с rqdata)
POST https://api.funsolver.com/createTask
Content-Type: application/json
{
"clientKey": "fsk_abc...",
"task": {
"type": "HCaptchaTask",
"websiteURL": "https://www.target-site.com/id/login",
"websitePublicKey": "91e4137f-95af-4bc9-9d05-6e6fd9c7c9f1",
"rqdata": "<rqdata, сгенерённый в вашей target-site-сессии>",
"proxy": "http://user:pass@host:port",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36"
}
}Важно: rqdata и минт должны идти через один IP — передавайте тот же proxy, под которым target-site выдал rqdata. Ответ — token, который вы сабмитите в свой target-site-флоу (XAL) под тем же userAgent.