POST /api — Submit
Submit a CAPTCHA task using the DeathByCaptcha-compatible format. Drop-in replacement — change only the base URL.
https://api.dbcapi.me/apihttps://api.ucaptcha.net/apiYour authtoken becomes your uCaptcha API key.
Endpoint
Section titled “Endpoint”POST https://api.ucaptcha.net/api/Content-Type: application/x-www-form-urlencoded or multipart/form-data
Authentication
Section titled “Authentication”Either method is accepted:
authtokenfield in the POST body- HTTP Basic auth — username = your uCaptcha API key (password ignored)
Type Codes
Section titled “Type Codes”type | CAPTCHA | Required Fields |
|---|---|---|
1 | Image to Text | captchafile |
4 | reCAPTCHA v2 | googlekey, pageurl |
5 | reCAPTCHA v2 Invisible | googlekey, pageurl |
6 | hCaptcha | sitekey, pageurl |
7 | FunCaptcha | publickey, pageurl |
9 | reCAPTCHA v3 | googlekey, pageurl, action, min_score |
10 | reCAPTCHA v2 Enterprise | googlekey, pageurl |
11 | Cloudflare Turnstile | sitekey, pageurl |
Parameters
Section titled “Parameters”| Parameter | Type | Required | Description |
|---|---|---|---|
authtoken | string | Yes* | Your uCaptcha API key |
type | integer | Yes | CAPTCHA type code (see table above, defaults to 1) |
captchafile | string | Type 1 | Image data as base64:BASE64_DATA or raw base64 |
googlekey | string | Types 4,5,9,10 | reCAPTCHA site key |
sitekey | string | Types 6,11 | hCaptcha / Turnstile site key |
publickey | string | Type 7 | FunCaptcha public key |
pageurl | string | Types 4-11 | URL of the target page |
action | string | Type 9 | reCAPTCHA v3 action string |
min_score | float | Type 9 | reCAPTCHA v3 minimum score (e.g. 0.7) |
proxy | string | No | Proxy as user:pass@host:port or host:port |
proxytype | string | No | HTTP, SOCKS4, or SOCKS5 (defaults to http) |
* Or use HTTP Basic auth instead.
Response
Section titled “Response”{ "captcha": "550e8400-e29b-41d4-a716-446655440000", "is_correct": true, "solved": false, "text": ""}| Field | Type | Description |
|---|---|---|
captcha | string | Task ID — use this to poll for results |
is_correct | boolean | true on successful submission |
solved | boolean | false until the task is complete |
text | string | Empty until solved |
Error Responses
Section titled “Error Responses”| HTTP Status | Meaning |
|---|---|
401 | Invalid or missing authtoken |
402 | Insufficient balance |
400 | Unsupported type or bad parameters |
{ "status": 255, "error": "Invalid or missing authtoken"}Examples
Section titled “Examples”reCAPTCHA v2 (cURL)
Section titled “reCAPTCHA v2 (cURL)”curl -X POST https://api.ucaptcha.net/api/ \ -d "authtoken=YOUR_API_KEY&type=4&googlekey=SITE_KEY&pageurl=https://example.com"Image Captcha (cURL)
Section titled “Image Captcha (cURL)”BASE64=$(base64 -w 0 captcha.png)curl -X POST https://api.ucaptcha.net/api/ \ -d "authtoken=YOUR_API_KEY&type=1&captchafile=base64:$BASE64"hCaptcha (Python)
Section titled “hCaptcha (Python)”import requests
resp = requests.post("https://api.ucaptcha.net/api/", data={ "authtoken": "YOUR_API_KEY", "type": 6, "sitekey": "YOUR_SITE_KEY", "pageurl": "https://example.com"})task_id = resp.json()["captcha"]With HTTP Basic Auth (cURL)
Section titled “With HTTP Basic Auth (cURL)”curl -X POST https://api.ucaptcha.net/api/ \ -u "YOUR_API_KEY:" \ -d "type=4&googlekey=SITE_KEY&pageurl=https://example.com"