Skip to content

Cloudflare WAF Auto

Solve a Cloudflare challenge and receive the protected response.

Use task type wafauto when uncaptcha.io should make the solved follow-up request and return its response.

Request data

The input is the same as a regular Cloudflare WAF task.

Field Type Required Description
url string Yes Challenged URL to fetch
proxy string Yes Sticky proxy for solving and fetching
user_agent string No User-Agent to preserve
html string No Challenge response HTML

When omitted, user_agent defaults to:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36

Almost all User-Agents are supported, including Safari, Chrome, and Firefox on Windows, macOS, Linux, Android, and iOS.

{
  "task_type": "wafauto",
  "task_data": {
    "url": "https://example.com/protected",
    "proxy": "http://user:[email protected]:8080",
    "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) ..."
  }
}

Solution

data.solutionjson
{
  "clearance": "abc123...",
  "cf_bm": "xyz789...",
  "headers": {
    "user-agent": "Mozilla/5.0 ...",
    "sec-ch-ua": "\"Chromium\";v=\"143\""
  },
  "response": {
    "url": "https://example.com/protected",
    "status_code": 200,
    "headers": {
      "content-type": "text/html; charset=utf-8"
    },
    "base64_body": "PCFET0NUWVBFIGh0bWw+..."
  }
}
Field Type Description
clearance string Value for the cf_clearance cookie
cf_bm string or null Optional __cf_bm cookie value
headers object Browser headers used for the solved request
response.url string Final URL after redirects
response.status_code integer Final HTTP status
response.headers object Response headers
response.base64_body string Base64-encoded response bytes

Decode the body

import base64

body = base64.b64decode(solution["response"]["base64_body"])
const body = Buffer.from(solution.response.base64_body, "base64");
body, err := base64.StdEncoding.DecodeString(solution.Response.Base64Body)
Navigation

Type to search…

↑↓ navigate↵ selectEsc close