Akamai Unblocker — bypass Akamai Bot Manager, get cookies
Pricing
$9.00 / 1,000 akamai clearances
Akamai Unblocker — bypass Akamai Bot Manager, get cookies
Clear Akamai Bot Manager and keep the cookies. Returns the real page plus the _abck clearance cookies your own scraper can reuse. Powered by xhr.dev.
Pricing
$9.00 / 1,000 akamai clearances
Rating
0.0
(0)
Developer
xhrdev
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
3 days ago
Last modified
Categories
Share
Akamai Unblocker
Clear Akamai Bot Manager and keep the cookies. Give this Actor a list of URLs and it returns the real page plus the _abck clearance cookies that unlocked it — so your own scraper can carry on from there without solving anything again.
A solve typically takes 11 to 18 seconds and ends with _abck in its accepted ~0~ state, alongside the ak_bmsc, bm_sz and bm_sv cookies Akamai issues with it. It is powered by xhr.dev, a challenge solver that normally runs as a Docker container inside your own network. This Actor talks to a hosted trial of it, so you can try it before you host anything.
Why use Akamai Unblocker?
It gives you a cookie, not just a page. Akamai does not gate the front door — it serves its sensor script on an ordinary HTTP 200 and gates the endpoints behind it. A landing page returning 200 tells you nothing about whether you can reach the account pages, the search API, or the checkout flow. What gets you in there is an accepted _abck, and that is what this returns.
It knows the difference between "not blocked" and "no Akamai". Point it at a URL with no Akamai in front of it and it tells you so in under a second, instead of launching a browser and grinding through a two-minute deadline to discover there was never anything to solve. Protection usually lives on a portal or account subdomain rather than the public site — edd.ca.gov runs Microsoft-IIS, while portal.edd.ca.gov sits behind AkamaiGHost — and this Actor says which one you gave it.
It runs a real browser, because that is what works. Solving Akamai server-side means the sensor requests carry the solver's TLS fingerprint rather than a browser's. Against a target that checks the submitting client, the payload gets built correctly and then simply never accepted — the solve ends in an acceptance timeout with nothing naming the cause. This Actor drives Chrome and relays each sensor request through it, which is what actually gets _abck to ~0~.
No proxy required. Unlike DataDome work, Akamai relays its sensors through the browser this Actor drives, so there is nothing to route. Use a proxy when you want a specific geography or a fresh address — not because the solve needs one.
How to use Akamai Unblocker
- Click Try for free.
- Pick the sites you want from the Sites dropdown. The default is Comcast Business, a live Akamai target you can use to watch the flow work.
- Leave the proxy off unless you need a particular exit country.
- Click Start. The log names each URL as it is checked, solved, and accepted.
- Take the results from the Output tab. The
cookieHeaderfield is ready to send as-is.
Input
| Field | Type | Default | What it does |
|---|---|---|---|
startUrls | array | a live Akamai target | The pages you want. Up to 25 per run on the shared trial solver. |
proxyConfiguration | object | off | Optional. Akamai needs no proxy; use one for geography or a fresh IP. |
returnHtml | boolean | true | Include the unblocked page's full HTML. |
returnCookies | boolean | true | Include the full cookie jar and a ready-to-send Cookie header. |
skipWhenUnchallenged | boolean | false | Skip the solve when a URL is not actively blocked. Off by default — see below. |
maxRetries | integer | 2 | Attempts per URL, each with a fresh browser context. |
maxConcurrency | integer | 2 | URLs at once. Each concurrent solve is a browser context, so keep it low. |
timeoutSecs | integer | 150 | How long one solve gets to reach an accepted _abck. |
Output
You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
{"url": "https://portal.edd.ca.gov/WebApp/Login","succeeded": true,"akamaiDetected": true,"challenged": false,"accepted": true,"finalUrl": "https://portal.edd.ca.gov/WebApp/Login","title": "Login","cookies": { "_abck": "0Xt...~0~...", "ak_bmsc": "...", "bm_sz": "...", "bm_sv": "..." },"cookieHeader": "_abck=0Xt...~0~...; ak_bmsc=...; bm_sz=...","attempts": 1,"durationMs": 9204,"error": null,"errorType": null}
Data fields
| Field | Type | Description |
|---|---|---|
url | string | The URL that was requested. |
succeeded | boolean | Whether the URL was delivered — cleared, or served with no Akamai in front of it. |
akamaiDetected | boolean | Whether Akamai is actually in front of this URL. false means there was nothing to solve. |
challenged | boolean | Whether Akamai was actively blocking the address when we arrived. |
accepted | boolean | Whether _abck reached its accepted ~0~ state. This is the one that matters. |
finalUrl | string | Where the browser ended up, after any redirects. |
title | string | The page's <title>. |
cookies | object | The full cookie jar, including _abck, ak_bmsc, bm_sz and bm_sv. |
cookieHeader | string | The same jar, ready to send as a Cookie header. |
html | string | Full HTML of the unblocked page, when returnHtml is on. |
attempts | number | How many tries this URL took. |
durationMs | number | Wall-clock time for this URL, including retries. |
errorType | string | Machine-readable reason when succeeded is false, or null. |
Which sites are supported
You pick sites from a dropdown, not a free-text box, and anything outside the list is refused before the run starts. That matters more here than for an HTTP-based unblocker: work against an unsupported target is not cheap — it holds a browser open for the full timeout rather than failing fast. Refusing at the door is cheaper and more honest.
Supported: Comcast Business · California EDD e-Services · United Airlines
Each clears _abck to its accepted ~0~ state on the first attempt, in every verification run, in 7-13 seconds.
The bar is deliberately strict. Sites that clear only some of the time are left off: a target that works most of the time is exactly what erodes a published success rate, and we would rather under-promise than have you discover the variance yourself.
Need a site that is not listed? Tell us — the list grows on request, and that is the most useful thing you can ask us for.
Reading the results## Reading the results
accepted: true is the success signal, not succeeded alone. The second field of _abck is Akamai's own verdict: ~0~ means the cookie is good, and ~-1~ means the rounds ran and never landed — usually the exit IP rather than the payload.
akamaiDetected: false is not a failure. It means you pointed at a URL Akamai is not protecting, and the page was returned without a solve. If you expected a challenge, check whether the protection sits on a different subdomain.
errorType: "acceptance_timeout" means clearance was not reached within the deadline. Usually the exit address rather than the payload — add a proxy and retry, or raise timeoutSecs.
Cookies are bound to the IP that earned them
Akamai binds clearance to the address that solved, so reuse the cookieHeader from the same exit IP. If you run this Actor with a proxy and then retry from somewhere else, you get a fresh block that looks exactly like a failed solve. When no proxy is set, everything leaves from the Actor's own container address — which is fine, provided your follow-up requests come from there too, or you carry the cookies into a scraper that runs alongside it.
How much does it cost?
Each solve launches a browser and takes roughly 7 to 15 seconds, so this Actor is heavier than a plain HTTP scrape and much lighter than a full stealth-browser crawl. Cost scales with the number of URLs solved, not with page weight. Two things reduce it: turning off returnHtml if you only want cookies, and turning on skipWhenUnchallenged if you only want pages that are not gated.
One cookie can cover a whole crawl. The cheapest way to use this is to solve once and carry the cookieHeader into your own scraper, rather than solving per page.
FAQ
Which sites does this work on? The three in the dropdown. The sensor protocol is broadly the same everywhere, but "broadly" is not a promise, so this Actor only runs against targets verified end to end. The list grows on request.
Does it handle DataDome? Not here. That is a separate Actor, DataDome Unblocker, which needs no browser at all and clears a challenge in about four seconds.
Why is there a 25-URL cap? This Actor is pointed at a shared trial container that queues Akamai sessions, and each solve costs a browser. If you need volume, you want your own container — get in touch.
Can I run the solver myself? Yes, and that is the actual product. xhr.dev ships as a Docker container that runs on your own infrastructure: your traffic goes to the target directly, and neither your cookies nor your tokens are sent to a third party. Flat fee, unlimited solves, works air-gapped. See xhr.dev and the docs.
Where are the integration examples? github.com/xhrdev/examples has the Akamai browser bridge written out in full, plus an MCP server so an LLM agent can solve a challenge inside its own loop.
Is scraping legal? Scraping publicly available data is broadly legal in many jurisdictions, but you are responsible for what you collect and how you use it — respect the target's Terms of Service, do not gather personal data without a lawful basis, and do not overload the sites you scrape.
Support
Found a bug or want a target supported? Open an issue on the Issues tab. For a self-hosted deployment or higher limits, reach us through xhr.dev.