API v1 follows the classic in.php / res.php: create a task first, then poll the result.
Authenticate with your API key.
Send a task to the API and receive a task id.
POST /in.php
Content-Type: application/x-www-form-urlencoded
key=<API_KEY>
method=<method>
...method-specific params...
json=0|1
OK|123456789
| Param | Required | Description |
|---|---|---|
| key | yes | Your API key |
| method | yes | Task type (see Methods). |
| json | no | Set to 1 to receive JSON responses. |
Poll the result until it is ready.
GET /res.php?action=get&key=<API_KEY>&id=<TASK_ID>&json=0|1
CAPCHA_NOT_READY
OK|<answer>
ERROR_CAPTCHA_UNSOLVABLE
Supported values of method for in.php.
Send an image CAPTCHA as Base64.
POST /in.php
key=API_KEY
method=base64
body=data:image/jpeg;base64,/9j/4AAQSk...
json=1
Solve reCAPTCHA v2 using sitekey plus pageurl.
POST /in.php
key=API_KEY
method=userrecaptcha
googlekey=6Lc...
pageurl=https://site.com/
json=1
Solve reCAPTCHA v3 using sitekey, pageurl and optional action/min_score.
POST /in.php
key=API_KEY
method=userrecaptcha
googlekey=6Lc...
pageurl=https://site.com/
action=login
version=v3
min_score=0.3
Supports both standard Turnstile and Challenge mode with data.
# Standard Turnstile
POST /in.php
key=API_KEY
method=turnstile
sitekey=0x4AAAA...
pageurl=https://site.com/
json=1
# Turnstile Challenge (with data)
POST /in.php
key=API_KEY
method=turnstile
sitekey=0x4AAAA...
pageurl=https://site.com/
data=cf_challenge_data_value
json=1
SmartCaptcha expects two images: body and task (Base64).
POST /in.php
key=API_KEY
method=smartcaptcha
body=data:image/jpeg;base64,...
task=data:image/jpeg;base64,...
Send a Base64 image and the task text.
POST /in.php
key=API_KEY
method=pazl_smartcaptcha
body=data:image/jpeg;base64,...
task=[...]
json=1
OK|<id>
CAPCHA_NOT_READY
OK|<answer>
ERROR_*
{
"status": 1,
"request": "123456789"
}
{
"status": 0,
"request": "CAPCHA_NOT_READY"
}
| Error | Description |
|---|---|
| ERROR_WRONG_USER_KEY | API key is missing or invalid. |
| ERROR_NO_SLOT_AVAILABLE | Queue is full, try again later. |
| ERROR_ZERO_BALANCE | Insufficient balance. |
| ERROR_WRONG_METHOD | Unsupported method. |
| ERROR_BAD_FILE | Invalid or missing image data. |
| ERROR_WRONG_CAPTCHA_ID | Task id was not found. |
| CAPCHA_NOT_READY | The task is not solved yet. |
| ERROR_CAPTCHA_UNSOLVABLE | The captcha could not be solved. |
curl -X POST "https://api.querylabz.com/in.php" \
-d "key=API_KEY" \
-d "method=base64" \
-d "body=data:image/jpeg;base64,/9j/4AAQSk..." \
-d "json=1"
curl "https://api.querylabz.com/res.php?action=get&key=API_KEY&id=123456789&json=1"
curl -X POST "https://api.querylabz.com/in.php" \
-d "key=API_KEY" \
-d "method=smartcaptcha" \
-d "body=data:image/jpeg;base64,..." \
-d "task=data:image/jpeg;base64,..."
curl -X POST "https://api.querylabz.com/in.php" \
-d "key=API_KEY" \
-d "method=pazl_smartcaptcha" \
-d "body=data:image/jpeg;base64,..." \
-d "task=[...]" \
-d "json=1"