Documentação
Protocolo CapSolver-compatible. Nunca envie a API key no browser.
createTask
POST /createTask
{
"clientKey": "inf_...",
"task": {
"type": "ReCaptchaV2TaskProxyLess",
"websiteURL": "https://example.com",
"websiteKey": "6Le..."
},
"api": 2
}api é opcional. Sem ele, o roteador escolhe a API habilitada de menor custo.
getTaskResult
POST /getTaskResult
{ "clientKey": "inf_...", "taskId": "uuid" }2Captcha compat
Os mesmos fluxos existem em /in.php e /res.php.
SDKs
# curl
curl -X POST https://HOST/createTask -d '{"clientKey":"inf_...","task":{"type":"ReCaptchaV2TaskProxyLess","websiteURL":"https://example.com","websiteKey":"6Le..."}}'
# Python
import requests
r = requests.post("https://HOST/createTask", json={"clientKey":"inf_...","task":{"type":"ReCaptchaV2TaskProxyLess","websiteURL":"...","websiteKey":"..."}})
tid = r.json()["taskId"]
print(requests.post("https://HOST/getTaskResult", json={"clientKey":"inf_...","taskId":tid}).json())
# Node
const r = await fetch("https://HOST/createTask", {method:"POST", headers:{"Content-Type":"application/json"}, body: JSON.stringify({clientKey:"inf_...", task:{type:"ReCaptchaV2TaskProxyLess", websiteURL:"...", websiteKey:"..."}})})
# Go
req, _ := http.NewRequest("POST", "https://HOST/createTask", strings.NewReader(body))
# PHP
$ch = curl_init("https://HOST/createTask");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));GET /api/v1/balance
POST /api/v1/tasks/hcaptcha
POST /api/v1/tasks/hcaptcha-tse
POST /api/v1/tasks/hcaptcha-gov
GET /api/v1/tasks/{requestId}
Header: x-api-key