π€Slider CAPTCHA
Our Datadome Slider CAPTCHA service allows you to generate datadome cookies when you are presented with the slider challenge
Datadome Captcha Workflow
This workflow guides you through solving Datadome captcha challenges using our API. Captcha blocks are typically encountered on high-security endpoints and require strict browser emulation.
β οΈ Before proceeding: Ensure you are using a Chrome TLS client, and your requests perfectly match Chrome browser behavior. Any deviations β in headers, TLS fingerprint, or request flow β may invalidate the resulting
datadomecookie.
π§± Step 1: Detect a Captcha Block
Send a GET request to a protected page. If youβre blocked by a captcha, the HTML response will include:
A script reference to
https://ct.captcha-delivery.com/c.jsA
<script>element with a JavaScript object like this:
<script>
var dd = {
'rt': 'c',
'cid': 'AHrlqAAAAAMASuDzOQlFQzIALvhm3g==',
'hsh': 'EC3B9FB6F2A31D3AF16C270E6531D2',
't': 'fe',
's': 43337,
'e': '16fbe80bb40a1dfb31c417e8849d8d22...',
'host': 'geo.captcha-delivery.com'
};
</script>π Step 2: Construct the Captcha Link
Using the dd object, build a captcha URL with the following query parameters:
initialCidhashcid(your session/client identifier)treferer(URL-encoded original page)sedm
Example URL:
π If the value of
tisbv, your proxy is banned. Rotate your proxy and retry the request until you receive at=feresponse.
Also, remove any old datadome cookies before retrying or you may get stuck in a loop.
Here is a Golang implementation for constructing the CAPTCHA link:
πΌοΈ Step 3: Retrieve Captcha Images
Make a GET request to the captcha link.
Ensure the HTML response contains:
var captcha = sliderCaptcha({...})The Datadome comment:
/** DataDome is a cybersecurity solution...
Extract Image Paths:
Parse the
captchaChallengePathvalue to get the main background image (ends in.jpg)Replace
.jpgwith.frag.pngto get the fragment (slider) image
Download both images and base64-encode the raw binary data of each.
Here is a Golang implementation to parse the captchaObject to get the image/fragment paths:
π§ Step 4: Solve Using Our API
See API Reference
The response will contain a captchaSubmitUrl field. This is the fully constructed URL for submitting the solution.
π€ Step 5: Submit Captcha Solution
Make a GET request to the captchaSubmitUrl returned by our API.
Ensure that your headers match Chrome browser behavior exactly, especially:
user-agentsec-ch-uaand related client hintsreferermatching the captcha pageProper header ordering
πͺ Step 6: Handle the Response
If the captcha is accepted, the response will include:
Extract and store this datadome cookie in your cookie jar for future requests to the target domain.
π Step 7: Retry Original Request
Retry the original request using the solve cookie.
If it works: π Youβre in!
If still blocked:
Retry up to 3 times
If unsuccessful, rotate your proxy
Clear any old cookies and restart the entire workflow from Step 1
Last updated