Quickstart
Solve your first captcha in two calls. Grab a key, create a task, poll until it is ready, then use the token.
1. Get your key
Create an account on capzy.ai and copy your clientKey from Dashboard → API keys. The free balance is enough to run this example.
2. Create and poll
The example below solves a Cloudflare Turnstile widget. Swap the task object for any supported task type — the create-then-poll loop never changes.
quickstart.sh
# 1. Create the task
curl -s https://api.capzy.ai/createTask \
-H 'Content-Type: application/json' \
-d '{
"clientKey": "capzy_YOUR_KEY",
"task": {
"type": "AntiTurnstileTaskProxyLess",
"websiteURL": "https://example.com",
"websiteKey": "0x4AAAAAAA..."
}
}'
# -> { "errorId": 0, "taskId": "df94...", "status": "processing" }
# 2. Poll for the result (repeat until status == "ready")
curl -s https://api.capzy.ai/getTaskResult \
-H 'Content-Type: application/json' \
-d '{ "clientKey": "capzy_YOUR_KEY", "taskId": "df94..." }'
# -> { "errorId": 0, "status": "ready", "solution": { "token": "0.eyJ..." } }Long-poll built in
/getTaskResult holds the connection open for a few seconds waiting for the solve to finish, so a 2-second poll interval is plenty. Most tasks complete in well under a minute.3. Use the solution
Submit solution.token to the target site exactly where the widget would place it (for Turnstile, the cf-turnstile-response field). For cookie-based challenges you will instead receive solution.cookies — see the per-provider pages under Task types.
Next steps
- Using proxies — required for IP-bound challenges.
- Errors — every
errorCodeand its fix. - Reporting outcomes — feed reCAPTCHA v3 scores and accept/reject signals back to improve routing.