Skip to content
getsolvr

Anti-bot vendor

DataDome live

DataDome, and the three things it throws at you.

A quiet background check, a "checking your device" page, and an image slider — shown in that order as a site trusts you less. Clear whichever one you get and it lets you in and remembers you. We solve it, and you keep your own connection.

from $0.003 when it works · nothing when it doesn’t $5 minimum · no subscription you keep your own proxy nothing to wait for
Request a vendor

How it goes, start to finish

the answer comes straight back · no proxy ever leaves your side

  1. 01 yours

    You fetch the challenge

    From your own session, through your own proxy — the page you were sent to, and for a slider the puzzle pictures too.

  2. 02 ours

    We build the reply

    One call to us with what you fetched. Back comes the reply that gets you through: where to send it, what to send, and the browser to send it as.

  3. 03 yours

    You reply

    From the same session. The site lets you in and hands your session the pass it carries from then on — made for your address, because you’re the one using it.

Read this first

The two things that catch people.

Neither is a solver problem, and both look exactly like one. The first gets your request turned away before we ever run it; the second is a reply the site quietly refuses even though everything in it looks perfect.

For integrators: the exact field rules are in the reference.

2MB per field, measured after decompression · a device-check page runs about half a megabyte · send Content-Encoding: gzip if your stack can

the most common early rejection Send the page as-is. Send the images encoded.
The asymmetry is deliberate. A page body is text and travels fine as a JSON string, which is one encoding step fewer for you to get wrong; a JPEG cannot, so puzzle and piece go up as base64. Base64-encoding the html field is the single most frequent reason a request is refused before it is ever run.
a refusal you cannot see Reply as the browser we return, not your own.
The solve runs as one calibrated browser identity, and every response tells you which in user_agent, alongside the exact headers to send. Claim a different browser on the wire and the payload fails a cross-check you never see — and from your side that is indistinguishable from a solve that simply did not work.

Endpoint

One endpoint, three types.

The same key, the same balance, and the same plain reason when something doesn’t land — across everything here. For integrators: every field and its rules are in the reference.

DataDome live

The "checking your device" page and the slider puzzle. You keep your own connection; we tell you exactly what to send so it waves you through.

What you get Price
The "checking your device" page

The screen most scrapers hit first. We return exactly what to post so your session sails through.

about 350 ms
$3.00
per 1,000
The puzzle slider

We find the notch and drive a human-looking drag. Slower on purpose, because that's what passes.

2 to 4 seconds
$3.00
per 1,000
Trust signals

The background data a real browser sends. Send it too and you'll see far fewer challenges in the first place.

about 200 ms
$3.00
per 1,000

Answers in the same request. Nothing to poll.

One way in, not three — you just tell us which challenge you got. You don’t get to choose it; DataDome decides, so it’s one thing you set rather than three separate addresses to remember.

There’s no proxy to hand over and nothing to wait for. You make every request yourself, so nothing here hangs on someone else’s proxy or can fail because of one — the answer comes straight back, in about 350 ms for a device check and 2 to 4 seconds for a slider, where the drag is paced to look human and rushing it is the one sure way to fail.

What comes back depends on which challenge it was, and each carries only what its own reply needs. The device check and slider live on *.captcha-delivery.com; the background script and where it reports to live on *.datadome.co. The two aren’t interchangeable, and pointing either at the protected site’s own address is refused by name rather than passed along.

What DataDome drew Price
The "checking your device" page

The one you’ll meet most, and the first you’ll wire up.

you send device_link + html · you replay POST payload to post_url
about 350 ms
$0.003
$3.00 per 1,000
The puzzle slider

We find the gap in the picture and drag the piece at human speed — that pacing is the whole point, which is why it isn’t instant.

you send captcha_link + html (+ puzzle, piece) · you replay GET check_url
2 to 4 seconds
$0.003
$3.00 per 1,000
Trust signals

The quiet signals the script sends in the background. Not a challenge at all — they build trust before a challenge appears, so sending them means meeting fewer of the two above.

you send tags_js + page_url + ddk · you replay POST body to endpoint
about 200 ms
$0.003
$3.00 per 1,000

typical is the middle of the distribution, not a best case · you pay for a returned solve and nothing else

Worked

Fetch, send, replay.

The interstitial, start to finish. One call to us in the middle of two of your own. field reference →

request · interstitial $0.003 if it lands
$ curl -X POST app.getsolvr.io/api/datadome/solve \
    -H "X-API-Key: solv_live_…" \
    -H "Content-Type: application/json" \
    -d '{
      "type": "interstitial",
      "device_link": "https://geo.captcha-delivery.com/interstitial/?initialCid=…",
      "html": "<!doctype html>…the page you just fetched, raw…"
    }'
200 · solved about 350 ms
{
  "task_id": "9c1e4a7b-…",
  "status":  "success",
  "type":    "interstitial",
  "solution": {
    "post_url":   "https://geo.captcha-delivery.com/interstitial/",
    "payload":    "…url-encoded form body…",
    "headers":    { … send all of these … },
    "user_agent": "Mozilla/5.0 …"
  }
}
then · your replay, from the session that fetched the page the cookie is yours
$ curl -X POST <post_url> \
    -H "Content-Type: application/x-www-form-urlencoded" \
    -H "<every header we returned>" \
    -A "<the user_agent we returned>" \
    --data "<payload>"

200 { "view": "redirect", "cookie": "datadome=…" }   ← set it, carry on
200 { "view": "captcha", … }                  ← escalated: fetch that page, come back with type slider

Same session for all three hops. The page is bound to the session that fetched it and to the exit address that will replay it, and challenge pages are single-use: one fetched for one attempt cannot be re-sent for another. We keep the solve record for 72h for your own debugging; the cookie itself never passes through us.

Failures

When a solve doesn't land.

A plain reason, never a bare error and a shrug. None of these touch your balance. And because you make every request yourself, the proxy problems you’d see on the Kasada side can’t happen here — what’s left is almost always a page that no longer matches the session it came from.

Every reason we can give →
  • Your request wasn’t quite right

    The request was rejected. Usually the challenge page is stale or truncated, or device_link is missing its query string. Re-fetch the device-check page and retry with the fresh pair.

    bad_request
    Don’t retry
  • The page no longer matched its session

    The page ran but produced no solve request. That normally means the challenge page no longer matches the session it was fetched on — DataDome pages are single-use. Fetch a fresh challenge on a fresh sticky session and retry.

    rejected
    Retry
  • We don’t handle this challenge yet

    That challenge variant is not supported yet. Report it and it will be tuned.

    unsupported_target
    Don’t retry
  • We were briefly full

    The solver is at capacity. Retry shortly.

    busy
    Retry

the wording matches the challenge you sent · when we’re full we back off and never bill you

Three things that look like failures and are not

A slider where you expected a device check
Which one DataDome draws depends on your address and its reputation, not on your solve. Switch to a fresh address and try again — the same rule as a flagged proxy on Kasada.
A refused pass on a strict site
On the strictest sites, how fast you move is judged too. Jumping from opening a page to submitting a form with no pause counts against you even with a perfect reply. Move at human speed on form flows; on ordinary pages it doesn’t matter.
It worked once and not again
Challenge pages work once. A page you fetched for one attempt can’t be sent again for another — fetch a fresh one each time.

Questions

DataDome, asked and answered.

The questions people arrive with, including the one about the missing proxy field, which is a feature.

What is DataDome?

A bot blocker that ramps up instead of deciding once. A script on the page quietly sends signals about your browser; if that is not enough it shows a "checking your device" page; if that is still not enough, an image slider. Clear whichever one you get and the site lets you in and remembers you from then on. Those challenge pages are served from *.captcha-delivery.com, not from the site itself.

Why is there no proxy field?

Because you make every request yourself. You fetch the challenge from your own session, send us what you got, and we send back exactly what to reply with — where to send it, what to send, and the browser to send it as. You reply from the same session, so the pass the site gives out is tied to your address, not ours. There is nothing to wait for either: the answer comes straight back, in about about 350 ms for a device check.

Which type do I send?

Whichever one DataDome showed you. You do not choose — that is why it is one option you set rather than three separate addresses to remember. Most people meet the "checking your device" page first. If your reply comes back with a slider instead of a pass, your session was bumped up a level — fetch that page and come back as a slider. Sending the background signals on ordinary page loads builds trust ahead of time, so you meet fewer of the other two at all.

How much does it cost?

$0.003 for a device check, $0.003 for a slider and $0.003 for the background signals — $3.00, $3.00 and $3.00 per 1,000 — and nothing when a solve fails. A bad request, an error on our side, or us being briefly full all cost nothing. The slider is one and a half times the device check, not ten, because it is the level-up you did not choose.

DataDome is a trademark of its owner, which is not affiliated with Solvr. The name is used here to identify the protection this service answers. For authorised testing of systems you own or may assess.

$5 is 1,666 device checks. Failures don't count.

Create an account