parsa
Get started
Sign up now · 1,000 free solves

Get past
any wall.

Akamai, DataDome, Incapsula, PerimeterX and Queue-it behind one API. From €0.50 per 1,000 solves, and a failed solve costs nothing.

Live· last 60 seconds
Balance€8.42
Solves per second38.2
Solved96.1%
Spent today€1.58
Requests● Solved● Failed
Latest
  • /datadome/slider412ms€0.002
  • /akamai/sensor286ms€0.001
  • /incapsula/reese841.2sfree
  • /perimeterx/collector398ms€0.0015
  • /botdeflector/icon301ms€0.001
Works againstAkamaiDataDomeIncapsulaPerimeterXQueue-it
Why an API

A browser fleet, or one request.

Getting past a challenge with browsers means running Chrome for every session. Parsa answers the challenge itself, so your client sends one HTTPS request and gets the cookie or payload back.

Browser fleeta headless Chrome per session
CPU
Memory
Per page
  • Hundreds of MB of memory for every browser you keep open
  • Seconds per page while the challenge runs in the browser
  • Chrome builds, stealth patches and servers to keep current
Parsa APIone HTTPS request
Browsers
0
Per challenge
1 request
Per answer
< 1 s
  • No browser to run: your client stays a plain HTTP client
  • An answer in under a second, from any language
  • New vendor builds are our work, and a failed solve costs nothing
Use cases

Wherever a page asks if you're human.

Any job that fetches pages with a challenge in front of them.

How it works

Three steps, one request.

  1. 1

    Top up and make a key

    Any amount, from the dashboard. Keys are free, up to ten at a time.

  2. 2

    Send the challenge

    Post what the protected page gave you to the solver's endpoint.

  3. 3

    Use the answer

    A 200 carries the payload or cookie. Anything else is free.

curl https://api.parsalabs.io/datadome/interstitial \
  -H "Authorization: Bearer parsa_…" \
  -H "Content-Type: application/json" \
  -d '{
    "userAgent": "Mozilla/5.0 (Macintosh; …",
    "deviceLink": "https://geo.captcha-delivery.com/…",
    "html": "<html>…",
    "ip": "203.0.113.7",
    "acceptLanguage": "en-US,en;q=0.9"
  }'

# 200 OK · charged €0.001
{ "payload": "…", "headers": { … }, "url": "…" }
import requests

res = requests.post(
    "https://api.parsalabs.io/datadome/interstitial",
    headers={"Authorization": "Bearer parsa_…"},
    json={
        "userAgent": user_agent,
        "deviceLink": device_link,
        "html": html,
        "ip": "203.0.113.7",
        "acceptLanguage": "en-US,en;q=0.9",
    },
)
# A 200 carries the payload; anything else costs nothing.
solve = res.json()  # payload, headers, url
const res = await fetch("https://api.parsalabs.io/datadome/interstitial", {
  method: "POST",
  headers: {
    "Authorization": "Bearer parsa_…",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ userAgent, deviceLink, html, ip, acceptLanguage }),
});
// A 200 carries the payload; anything else costs nothing.
const { payload, headers, url } = await res.json();
body, _ := json.Marshal(map[string]string{
	"userAgent":      userAgent,
	"deviceLink":     deviceLink,
	"html":           html,
	"ip":             "203.0.113.7",
	"acceptLanguage": "en-US,en;q=0.9",
})
req, _ := http.NewRequest("POST", "https://api.parsalabs.io/datadome/interstitial", bytes.NewReader(body))
req.Header.Set("Authorization", "Bearer parsa_…")
req.Header.Set("Content-Type", "application/json")
res, err := http.DefaultClient.Do(req)
// A 200 carries the payload; anything else costs nothing.
Pricing

Pay per solve. Nothing else.

Prepaid, no plan, no minimum. A request is only charged when the solver answers 200.

SolverChallengeEndpointper 1,000
AkamaiSensor (v3)/akamai/sensor€1.00
SBSD/akamai/sbsd€1.00
Pixel/akamai/pixel€0.50
DataDomeInterstitial/datadome/interstitial€1.00
Slider/datadome/slider€2.00
Tags/datadome/tags€0.50
Incapsulareese84/incapsula/reese84€1.50
PerimeterX_px3 collector post/perimeterx/collector€1.50
Queue-itBotDeflector icons/botdeflector/icon€1.00

Estimate your cost

Requests per month250,000
At most, per month
€500.00≈ €16.67 a day
Failed requests are free, so you'll likely pay less.
Top up €500.00
Questions

Before you top up.

What counts as a solve?

A request the solver answers with 200. A 400, a timeout or a refused challenge is never charged, and the hold goes back to your balance at once.

What happens when my balance runs out?

Requests are answered with a 402 that links to your top-up page. Nothing runs into debt.

What if a solver is busy?

We move the request to the next replica before you ever see an error.

How many keys can I make?

Up to ten active keys per account, all drawing on the same balance. Revoke one and you can make another.

Is there a plan or a minimum?

No. Top up any amount, use it at your own pace, and stop whenever you like.

Your first solve is a minute away.

Top up €10.00 and you have 10,000 DataDome interstitials.