Skip to content

Use code FUN10 for 10% bonus credits

DocsAkamai (_abck)

Akamai _abck API Reference

Get a valid Akamai Bot Manager _abck session and replay it.

Read Markdown (English)

The Captcha.fun Akamai (_abck) API accepts kind, url and returns _abck session cookies. Send the API_KEY header, create a solve with POST /v1/request, then poll GET /v2/response/{id} until ready is true.

What you’ll need

  • Your API key
  • The URL of the page where the challenge appears
  • Optional: protectedUrl
  • A proxy, if the result must come from your own IP (akamai_abck_proxy)
Use kind

Good to Know

The Akamai _abck product mints a valid sensor session against the target page: the solver runs Akamai's bot manager sensor until the _abck cookie rotates to a valid state, then returns it.

protectedUrl names the endpoint your integration will replay against — advisory metadata, not a pre-return validation. The clearance evidence is the in-flow sensor rotation itself; your first replay is the live check.

API-tier enforcement can exceed the cookie family: some storefront APIs answer 403 Access Denied with a cookie that clears the site itself. Treat the first protected-API replay as the live check for your exact endpoint.

Important: _abck sessions are bound to the IP. Replay from the solve’s IP, or use a _proxy kind with a sticky proxy.

Send the Challenge

Send the page details with your API key. You get a solve id back right away.

POSThttps://api.captcha.fun/v1/request
curl -X POST https://api.captcha.fun/v1/request \
  -H "API_KEY: CAPFUN-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
  "kind": "akamai_abck",
  "url": "https://your-domain.example"
}'

Response

Returns the solve id. Use it to get the result.

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "message": "Started Solving"
}
Request fields5 body fields · 2 required

Headers

NameTypeRequiredDescription
API_KEYstringYesYour API key
Content-TypestringYesapplication/json
APP_IDstringNoOptional app ID for request tracking

Body

NameTypeRequiredDescription
kindstringYesOne of akamai_abck, akamai_abck_proxy
urlstringYesPage URL where the challenge appears
protectedUrlstringNoEndpoint you will replay the session against. Defaults to url. Advisory — the solver does not validate against it before return
proxystringNoFor _proxy kinds: host:port or host:port:username:password
platformstringNoRequested platform label: windows (default) or mac

Wait for the Result

Use the solve id to fetch the result.

GEThttps://api.captcha.fun/v2/response/{id}

Poll every second until ready is true.

Example

curl -X GET https://api.captcha.fun/v2/response/550e8400-e29b-41d4-a716-446655440000 \
  -H "API_KEY: CAPFUN-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  -H "Accept: application/json"

Response

{
  "ready": true,
  "status": "SUCCESS",
  "success": true,
  "userAgent": "RETURNED_USER_AGENT",
  "secUa": "RETURNED_SEC_CH_UA",
  "token": "8AAB1B2C3D4E5F6G7H8I9J0K1L2M3N4O~...",
  "cookies": {
    "_abck": "8AAB1B2C3D4E5F6G7H8I9J0K1L2M3N4O~...",
    "bm_sz": "bm-sz-sibling..."
  },
  "cookieHeader": "_abck=8AAB1B2C3D4E5F6G7H8I9J0K1L2M3N4O~...; bm_sz=bm-sz-sibling..."
}
Request and response fields9 response fields

Request

NameTypeRequiredDescription
idstring (UUID)YesPath parameter. The id from Create Solve
API_KEYstringYesHeader. Your API key

Response Fields

NameTypeRequiredDescription
readyboolean—true when the solve is finished (v2 only)
statusstring—PENDING while solving, then SUCCESS or FAILURE
successboolean—Whether the solve succeeded
userAgentstring—Value to send as User-Agent when using the result. Preserve it exactly
secUastring—Value to send as Sec-CH-UA when using the result
tokenstring—The minted _abck cookie value — the family also carries bm_sz/ak_bmsc/bm_sv siblings
cookiesobject—The defense cookie family, cookie name to value
cookieHeaderstring—The solving session's full Cookie header value, verbatim — replay it with the returned userAgent from the same egress IP
messagestring—Failure reason. Omitted on success

Send the Cookies

Replay cookieHeader as the Cookie header on outbound requests, with the returned userAgent as your User-Agent header, from the same egress IP as the solve.

When using a successful result, preserve the returned userAgent as User-Agent and secUa as Sec-CH-UA.

Wrong or rejected result? Report the failed solve.

More from Akamai