NEWAPIs padrão createTask e in.php. Mude o endereço e você está conectado.Ver documentação da API
GATESOLVER
Começar

Documentação da API

As requisições são em JSON e há um único endereço (https://gatesolver.com). Envie como clientKey a chave de API criada na tela da conta. Crie a tarefa (createTask) e, alguns segundos depois, obtenha o resultado (getTaskResult).

Endereço base
https://gatesolver.com
Autenticação
clientKey no corpo
Limite de requisições
600 por minuto por chave
Formato
JSON (POST)

Começar

  1. Cadastre-se e recarregue o saldo.
  2. Crie a chave no menu Chave de API da tela da conta. A chave aparece só uma vez, na criação.
  3. Crie a tarefa com createTask e chame getTaskResult com o taskId recebido a cada poucos segundos.
  4. Quando o status virar ready, insira a solution na página.

Clientes feitos para o formato createTask funcionam como estão, bastando trocar o endereço da API. Novo endereço: https://gatesolver.com

createTask

POST https://gatesolver.com/createTask

Cria a tarefa e devolve o taskId. Nada é cobrado nesta etapa.

CampoFormatoObrigatórioDescrição
clientKeystringSimChave de API
taskobjectSimConteúdo da tarefa: type e os campos de cada tipo (veja a tabela de types abaixo e a página de cada tipo)
callbackUrlstringNãoNão aceitamos. Obtenha o resultado com getTaskResult.

Requisição

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

Resposta

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

getTaskResult

POST https://gatesolver.com/getTaskResult

Devolve o resultado da tarefa. Recomendamos consultar a cada 3 segundos para CAPTCHAs de token e a cada 1 segundo para reconhecimento de imagem. O valor de 1 tarefa sai do saldo no momento em que a resposta fica pronta.

CampoDescrição
statusprocessing (aguardando), ready (resposta pronta), failed (falhou, sem cobrança)
solutionResposta. Os campos variam por tipo (gRecaptchaResponse, token, cookie, text etc.)
costValor cobrado por esta tarefa (dólares)
createTime / endTimeHorário de criação e de conclusão (milissegundos)
{
  "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

Devolve o saldo em dólares.

{ "clientKey": "YOUR_API_KEY" }

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

type da tarefa

O nome do type não diferencia maiúsculas de minúsculas. Os campos e exemplos de cada tipo estão na página de cada tipo.

typeTipo1,000 tarefas
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

Códigos de erro

Em caso de erro, errorId vem como 1, junto com errorCode e errorDescription. Respostas de erro não são cobradas.

errorCodeSignificado
ERROR_KEY_DENIED_ACCESSclientKey ausente ou inválida.
ERROR_ZERO_BALANCESaldo insuficiente. Recarregue e tente novamente.
ERROR_TASK_NOT_SUPPORTEDtype de tarefa não suportado.
ERROR_INVALID_TASK_DATAFalta um campo obrigatório. O nome do campo ausente está em errorDescription.
ERROR_TASKID_INVALIDO taskId não foi criado com esta chave ou não existe.
ERROR_CAPTCHA_UNSOLVABLENão foi possível resolver. Nada foi cobrado. Envie novamente.
ERROR_SERVICE_UNAVAILABLEErro de rede. Nada foi cobrado. Tente novamente em instantes.
ERROR_RATE_LIMITMais de 600 requisições em 1 minuto. Aumente o intervalo entre as requisições.
ERROR_ACCOUNT_SUSPENDEDConta suspensa.

Compatível com in.php

Para programas no estilo in.php, basta trocar o endereço. Métodos suportados: userrecaptcha (reCAPTCHA v2), turnstile, geetest, base64 e post (texto em imagem).

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

Adicione json=1 para receber a resposta no formato {"status":1,"request":"..."}.

Exemplos

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..."}))