Bypass Solution
Our solution automates solving challenges like sliding captchas and interstitial device checks, allowing seamless access to Datadome protected websites without any worry.
How the Solution Works
<!DOCTYPE html>
<html lang="en" style="background-color:#ffffff">
<head>
<title>You have been blocked | Bot or Not?</title>
<!-- ... --->{
"url": "https://geo.captcha-delivery.com/captcha/?initialCid=...&hash=...&cid=...&t=fe&referer=...&s=...&e=...&dm=..."
}<html lang="es">
<head>
<title>idealista.com</title>
</head>
<body style="margin:0">
<p id="cmsg">Please enable JS and disable any ad blocker</p>
<script data-cfasync="false">
var dd = {
'rt': 'i',
'cid': 'AHrlqAAAAAMAycYDrCG87_UAVNwdBA==',
'hsh': 'AC81AADC3279CA4C7B968B717FBB30',
'b': 1709036,
's': 17156,
'e': '...',
'qp': '',
'host': 'geo.captcha-delivery.com',
'cookie': '...'
}
</script>
<script data-cfasync="false" src="https://ct.captcha-delivery.com/i.js"></script>
</body>
</html>
Endpoint
The DataDome challenge-page HTML (the 403 body containing the dd object). Get it by requesting the target page via /tls.
<html>…var dd={...}…</html>The Referer of the page that served the challenge.
https://access.tickets.fifa.com/Proxy to solve behind, so the cookie binds to the right IP. Format ip:port or ip:port:user:pass.
1.2.3.4:8000:user:passChrome full version to emulate.
149.0.7480.66macOS version to emulate.
26.1.0Success returns the generated cookie. IMPORTANT: input-validation and "blocked" conditions ALSO return HTTP 200 with an error field (not a 4xx), so always check for error before reading cookie.
Authentication or quota failure — returned as HTTP 401 with an error message (no key, bad key, quota reached, or expired key).
Unexpected server error (HTTP 500).
Proxy in ip:port or ip:port:user:pass format.
1.2.3.4:8000:user:passHTTP method for the upstream request.
GETPossible values: The target URL to request.
https://access.tickets.fifa.com/Raw request body (alternative to json).
The upstream response. On a bad request the API returns 200 with an error field instead of an HTTP error, so check for error first.
Authentication or quota failure — returned as HTTP 401 with an error message (no key, bad key, quota reached, or expired key).
Unexpected server error (HTTP 500).
Last updated