NEWСтандартные API createTask и in.php. Смените адрес, и вы подключены.Открыть документацию API
GATESOLVER
Начать

Документация API

Запросы в формате JSON на один адрес (https://gatesolver.com). API-ключ из личного кабинета передаётся как clientKey. Создайте задачу (createTask) и через несколько секунд получите результат (getTaskResult).

Базовый адрес
https://gatesolver.com
Авторизация
clientKey в теле запроса
Лимит запросов
600 в 1 минуту на ключ
Формат
JSON (POST)

Начать

  1. Зарегистрируйтесь и пополните баланс.
  2. Создайте ключ в разделе API-ключ личного кабинета. Ключ показывается только один раз при создании.
  3. Создайте задачу через createTask и каждые несколько секунд вызывайте getTaskResult с полученным taskId.
  4. Когда status станет ready, вставьте solution на страницу.

Клиенты, созданные для формата createTask, работают без изменений после смены адреса API. Новый адрес: https://gatesolver.com

createTask

POST https://gatesolver.com/createTask

Создаёт задачу и возвращает taskId. На этом этапе деньги не списываются.

ПолеФорматОбязательноОписание
clientKeystringДаAPI-ключ
taskobjectДаДанные задачи: type и поля для конкретного типа (см. таблицу type задач ниже и страницы типов)
callbackUrlstringНетНе принимается. Результат получайте через getTaskResult.

Запрос

{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "ReCaptchaV2TaskProxyLess",
    "websiteURL": "https://www.google.com/recaptcha/api2/demo",
    "websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
  }
}

Ответ

{ "errorId": 0, "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006" }

getTaskResult

POST https://gatesolver.com/getTaskResult

Возвращает результат задачи. Для токенных капч опрашивайте раз в 3 секунды, для распознавания изображений раз в 1 секунду. Стоимость 1 задачи списывается с баланса в момент получения ответа.

ПолеОписание
statusprocessing (в работе), ready (ответ готов), failed (ошибка, деньги не списаны)
solutionОтвет. Поля зависят от типа (gRecaptchaResponse, token, cookie, text и др.)
costСумма, списанная за эту задачу (в долларах)
createTime / endTimeВремя создания и завершения (мс)
{
  "errorId": 0,
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006",
  "status": "ready",
  "solution": { "gRecaptchaResponse": "03AFcWeA6...", "userAgent": "Mozilla/5.0 ..." },
  "cost": "0.000560"
}

getBalance

POST https://gatesolver.com/getBalance

Возвращает баланс в долларах.

{ "clientKey": "YOUR_API_KEY" }

{ "errorId": 0, "balance": 42.5 }

Type задачи

Имя type не зависит от регистра. Поля и примеры для каждого типа есть на его странице.

typeТип1,000 задач
ReCaptchaV2TaskProxyLessreCAPTCHA v2$0.56
ReCaptchaV2TaskreCAPTCHA v2$0.56
ReCaptchaV2EnterpriseTaskProxyLessreCAPTCHA v2 Enterprise$0.70
ReCaptchaV2EnterpriseTaskreCAPTCHA v2 Enterprise$0.70
ReCaptchaV3TaskProxyLessreCAPTCHA v3$0.70
ReCaptchaV3TaskreCAPTCHA v3$0.70
ReCaptchaV3EnterpriseTaskProxyLessreCAPTCHA v3 Enterprise$2.10
ReCaptchaV3EnterpriseTaskreCAPTCHA v3 Enterprise$2.10
AntiTurnstileTaskProxyLessCloudflare Turnstile$0.84
TurnstileTaskProxylessCloudflare Turnstile$0.84
AntiCloudflareTaskCloudflare Challenge$0.84
AntiAwsWafTaskProxyLessAWS WAF$1.40
AntiAwsWafTaskAWS WAF$1.40
GeeTestTaskProxyLessGeeTest v3 / v4$0.84
GeeTestTaskGeeTest v3 / v4$0.84
MtCaptchaTaskProxyLessMTCaptcha$2.10
MtCaptchaTaskMTCaptcha$2.10
DatadomeSliderTaskDataDome Slider$1.75
ImageToTextTaskImage to Text$0.28
ReCaptchaV2ClassificationreCAPTCHA Image Classification$0.28
AwsWafClassificationAWS WAF Image Classification$0.42
VisionEngineVision Engine$1.05

Коды ошибок

При ошибке errorId равен 1, а вместе с ним приходят errorCode и errorDescription. За ответы с ошибкой деньги не списываются.

errorCodeЗначение
ERROR_KEY_DENIED_ACCESSclientKey отсутствует или неверен.
ERROR_ZERO_BALANCEНедостаточно средств. Пополните баланс и повторите запрос.
ERROR_TASK_NOT_SUPPORTEDЭтот type задачи не поддерживается.
ERROR_INVALID_TASK_DATAНе хватает обязательного поля. Его имя указано в errorDescription.
ERROR_TASKID_INVALIDЭтот taskId создан не этим ключом или не существует.
ERROR_CAPTCHA_UNSOLVABLEРешить не удалось. Деньги не списаны. Повторите запрос.
ERROR_SERVICE_UNAVAILABLEОшибка сети. Деньги не списаны. Повторите запрос чуть позже.
ERROR_RATE_LIMITПревышено 600 запросов в 1 минуту. Увеличьте интервал между запросами.
ERROR_ACCOUNT_SUSPENDEDАккаунт заблокирован.

Совместимость с in.php

Для программ в формате in.php достаточно сменить адрес. Поддерживаемые методы: userrecaptcha (reCAPTCHA v2), turnstile, geetest, base64 и post (текст на изображении).

GET https://gatesolver.com/in.php?key=YOUR_API_KEY&method=userrecaptcha&googlekey=6Le...&pageurl=https://example.com
OK|61138bb6-19fb-11ec-a9c8-0242ac110006

GET https://gatesolver.com/res.php?key=YOUR_API_KEY&action=get&id=61138bb6-19fb-11ec-a9c8-0242ac110006
CAPCHA_NOT_READY
OK|03AFcWeA6...

GET https://gatesolver.com/res.php?key=YOUR_API_KEY&action=getbalance
42.50000

Добавьте json=1, и ответ придёт в виде {"status":1,"request":"..."}.

Примеры

import requests, time

API, KEY = "https://gatesolver.com", "YOUR_API_KEY"

def solve(task, wait=3, timeout=120):
    r = requests.post(f"{API}/createTask", json={"clientKey": KEY, "task": task}, timeout=30).json()
    if r.get("errorId"):
        raise RuntimeError(r["errorCode"])
    end = time.time() + timeout
    while time.time() < end:
        time.sleep(wait)
        res = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": r["taskId"]}, timeout=30).json()
        if res.get("errorId"):
            raise RuntimeError(res["errorCode"])
        if res["status"] == "ready":
            return res["solution"]
    raise TimeoutError("task timed out")

print(solve({"type": "ReCaptchaV2TaskProxyLess", "websiteURL": "https://example.com", "websiteKey": "6Le..."}))