Concepts
Captcha types at a glance
Side-by-side comparison of every supported captcha protection: parameters, pricing, response shape, and when to pick which.
Captcha types at a glance
Four protections are supported. They share the same /solve endpoint but have different shapes and behaviours.
Side-by-side
| Property | Cloudflare Turnstile | Cloudflare Challenge | Kasada | Akamai |
|---|---|---|---|---|
type value | turnstile | challenge | kasada | akamai |
| Long alias | cloudflare-turnstile | cloudflare-challenge | kasada-bypass | akamai-bypass |
| Per 1,000 solves | $0.40 | $0.50 | $1.50 | $2.00 |
| Per solve | $0.0004 | $0.0005 | $0.0015 | $0.0020 |
| Average solve time | ~1s | 1–5s | 3–10s | 4–12s |
| Required fields | site_key, url | url, proxy | url, kasada_config | url, proxy, user_agent |
| Proxy required? | No | Yes | No | Yes |
| Response payload | token | cookies (+ user_agent) | headers (x-kpsdk-*) | cookies (_abck, …) |
| Replay binding | Anywhere | Same proxy IP + same UA | Same UA | Same proxy IP + same UA |
Pick by symptom
You see a Turnstile widget
A visible <div> with data-sitekey, usually next to a 'Verify you are human' label. Use Turnstile.
You see 'Just a moment...'
A full-page interstitial before the real content loads, or an invisible block on automation. Use Challenge.
You see x-kpsdk-* requests in DevTools
Requests to /p.js, /fp, /tl, or response headers prefixed x-kpsdk-. Use Kasada.
You see _abck cookie / bm_sz / akam_*
Akamai Bot Manager sensor and _abck cookie on the response. Use Akamai.
Which types is my key allowed to solve?
Read allowed_types from GET /balance:
{
"allowed_types": ["turnstile", "challenge"]
}A solve of a type outside that list returns:
{
"success": false,
"error": "Captcha type 'kasada' is not allowed for your account"
}Ask an admin to expand your allowed types if you need more.