Tasks
Updated 7/10/2026
Cloudflare Turnstile Solver API
POST
https://solver.solverify.net/createTask
The Solverify Cloudflare Turnstile Solver API creates a task and returns a response token in solution.value. Use this task type when you have the page URL and the Cloudflare Turnstile sitekey.
Request Parameters
| Field | Required | Description |
|---|---|---|
clientKey | Yes | Your API key. |
websiteURL | Yes | Full URL where the Turnstile widget is loaded. Max 2048 characters. |
websiteKey | Yes | Turnstile sitekey, usually found in data-sitekey. Max 256 characters. |
cdata | No | Turnstile cdata value when used by the target widget. |
action | No | Turnstile action value when used by the target widget. |
proxyType | No | Proxy type. Only http is accepted. |
proxyAddress | No | Proxy IP address or hostname. |
proxyPort | No | Proxy port. Numeric string, 1 to 5 digits. |
proxyLogin | No | Proxy username. |
proxyPassword | No | Proxy password. |
Create Task Example
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "turnstile",
"websiteURL": "https://example.com",
"websiteKey": "example_key",
"cdata": "example_cdata", //optional
"action": "example_action", //optional
"proxyType": "http", //optional
"proxyAddress": "1.1.1.1", //optional
"proxyPort": "80", //optional
"proxyLogin": "username", //optional
"proxyPassword": "password" //optional
}
}
Proxy is optional if its not set the system will use our proxies. If the target widget does not use cdata or action, omit those fields.
Create Response
{
"errorId": 0,
"taskId": "UUID"
}
Result Example
{
"errorId": 0,
"status": "completed",
"solution": {
"value": "0.MpR_tg_Jc9krcpY7vsFHAs"
},
"errorCode": null,
"errorDescription": null
}
Timeout
Turnstile tasks can run for up to about 130 seconds before timing out internally.
Next Steps
After creating a Turnstile task, poll the Get Task Result API with the returned taskId.