#
API Endpoints
CaptchaSolv API endpoints. Submit captcha tasks and retrieve solutions.
#
Health Check
GET /health
No authentication required. Returns {"status": "ok", "service": "CaptchaSolv", "time": 1706100000}.
#
Get Supported Types
GET /supportedTypes
No authentication required. Returns {"errorId": 0, "types": ["RecaptchaV2TaskProxyless", ...]}.
#
Create Task (Async)
Creates a task and returns a taskId for polling with
Request
Response
POST /createTask
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "RecaptchaV2TaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq1bi0DJwx_mJ-"
}
}
{
"errorId": 0,
"taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
#
Parameters
#
Get Task Result
Poll for the result of a created task.
Request
Response (Processing)
Response (Ready)
POST /getTaskResult
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
{
"errorId": 0,
"status": "processing"
}
{
"errorId": 0,
"status": "ready",
"solution": {
"token": "03AGdBq24PBCbwiDRaS_MJ...",
"userAgent": "Mozilla/5.0 ..."
},
"cost": "0.00100",
"createTime": 1706100000,
"endTime": 1706100015,
"solveCount": 1
}
#
Status Values
#
Solve (Sync)
Recommended
This is the recommended endpoint for most use cases. It handles polling internally and returns the result directly.
Synchronous solving - waits for result (up to 120 seconds timeout).
Same request body as /createTask, including waitForSlot support.
Request
Response
POST /solve
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "RecaptchaV2TaskProxyless",
"websiteURL": "https://example.com",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq1bi0DJwx_mJ-"
}
}
{
"errorId": 0,
"solution": {
"token": "03AGdBq24PBCbwiDRaS_MJ...",
"userAgent": "Mozilla/5.0 ..."
},
"cost": "0.00100",
"createTime": 1706100000,
"endTime": 1706100015,
"solveCount": 1
}
Timeout: 120 seconds. Set your HTTP client timeout to at least 130s.
#
Get Balance
Request
Response
POST /getBalance
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY"
}
{
"errorId": 0,
"balance": 10.50
}