Concepts
Proxies
Most types need to originate from the same network as the session you are going to use the result on. That means you supply the proxy.
Why you supply it#
A token or cookie is issued to a session, and a session is identified partly by its exit IP. If the challenge is solved from our network and then presented from yours, the two do not match and the result is rejected — no matter how good the solve was.
Passing your own proxy means the solve happens from the same address you will continue on, so what comes back is valid where you intend to use it.
Format#
Three forms are accepted:
host:port
host:port:username:password
username:password@host:portHTTP and HTTPS proxies are supported. A malformed string returns ERROR_PROXY_FORMAT before any work is done, so it costs nothing.
Tip
host:port form.Use a sticky session#
The exit IP must stay the same for the whole solve. A rotating endpoint that changes address between requests makes a single solve look like a session being handed between machines, which is exactly the pattern these systems are built to catch.
Warning
session or sid segment that pins the exit for a few minutes. Set one per solve. Without it you will see ERROR_IP_BLOCKED at a rate that looks like a service problem but is not.Choosing a pool#
Datacentre addresses are cheap and fine for the score-based types on relaxed targets. For anything consumer-facing — retail, ticketing, travel — residential or mobile addresses score materially better, and on the harder types the difference decides whether you get a usable result at all.
If a target starts refusing a pool that used to work, the pool has usually been burned rather than anything having changed here. Rotating to fresh addresses fixes it more often than any change to your request.
The type that needs none#
reCAPTCHA Mobile and Cloudflare Turnstile do not require a proxy from you.
Last updated on 18 July 2026