Skip to content
../products
Imperva IncapsulaAntiImpervaTaskproxy required

Imperva Incapsula Solver, solved in 5.0s.

Bypass Imperva Incapsula bot protection. Returns reese84, visid_incap and incap_ses cookies.

Proxy required for Imperva Incapsula Solver

Tokens are bound to the solving IP. Use AntiImpervaTask with proxyAddress + userAgent. The *TaskProxyLess variant returns ERROR_PROXY_REQUIRED at no charge.

$2.00per 1,000
~5.0savg solve
99%+success
12/mthroughput
proxyPort: 8080…0.00s
POST/createTask type=AntiImpervaTask
taskId tsk_s5w6arh1
POLL/getTaskResult status=processing
status ready
token 0x2f94e6ac38f9c...
type: AntiImpervaTask● running on production solvers

What is Imperva Incapsula?

Imperva Incapsula is a CDN/WAF that protects ~27,000 sites including banks, insurance companies, and enterprise portals. It uses JS challenges (reese84 + utmvc) to fingerprint browsers and set authentication cookies. The reese84 challenge factors in IP ASN, TLS fingerprint, and behavioral signals before issuing clearance.

How it works

1

Send Task

POST your AntiImpervaTask with the target URL and sitekey to our API. We'll queue it instantly.

2

We Solve

Capzy's proprietary solver returns the Imperva reese84 / incap_ses session cookies plus the matching User-Agent. ProxyLess is routed for you; AntiImpervaTask uses your own proxy directly.

3

Get Token

Poll getTaskResult — when status is 'ready', the solution contains the token to inject into the target page.

Quick integration

solve.py
import requests, time

API = "https://api.capzy.ai"
KEY = "capzy_your_key_here"

# Step 1: Create task
task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
        "type": "AntiImpervaTask",
        "proxyPort": "8080",
        "proxyType": "http",
        "proxyLogin": "user",
        "websiteURL": "https://example.com/protected",
        "proxyAddress": "123.45.67.89",
        "proxyPassword": "pass"
    }
}).json()

task_id = task["taskId"]
print(f"Task created: {task_id}")

# Step 2: Poll for result
while True:
    result = requests.post(f"{API}/getTaskResult", json={
        "clientKey": KEY,
        "taskId": task_id
    }).json()

    if result["status"] == "ready":
        print("Solved!", result["solution"])
        break
    elif result["status"] == "failed":
        print("Failed:", result.get("errorDescription"))
        break

    time.sleep(1)

# Step 3: Use the result — set every cookie on a session jar
sol = result["solution"]
session = requests.Session()
for c in sol["cookies"]:
    session.cookies.set(c["name"], c["value"], domain=c.get("domain"), path=c.get("path", "/"))
session.headers["User-Agent"] = sol.get("userAgent", "")
# IMPORTANT: route through the SAME proxy you supplied at solve time
resp = session.get("https://target.example.com/", proxies={
    "http":  "http://USER:PASS@PROXY_HOST:PORT",
    "https": "http://USER:PASS@PROXY_HOST:PORT",
})
print(resp.status_code, len(resp.text), "bytes")

Task parameters

Proxy fields below are required for this captcha — userAgent must match the one you’ll use when submitting the resulting token.
typetypestringreqyesAntiImpervaTaskProxyLess (residential routed) or AntiImpervaTask (your proxy)
websiteURLtypestringreqyesThe Imperva-protected page URL
proxyTypetypestringreqyesProxy protocol: http or https
proxyAddresstypestringreqyesProxy IP address or hostname
proxyPorttypenumberreqyesProxy port number
proxyLogintypestringreqnoProxy username (if auth required)
proxyPasswordtypestringreqnoProxy password (if auth required)
userAgenttypestringreqyesUser-Agent string to use. Must match the UA you use when submitting the token

Solution response

cookiestypearrayCookie objects `{name, value, domain, path}`. Includes `reese84` (Imperva's primary clearance), `incap_ses_*`, `visid_incap_*`, and any other Imperva cookies the deployment set.
userAgenttypestringExact User-Agent the browser used. Imperva correlates UA with the TLS fingerprint that produced the cookies — reuse verbatim on replay.
ipBoundtypebooleanAlways `true`. Imperva cookies are bound to the IP that solved the challenge — replay through the same proxy.
domaintypestringHostname the cookies were validated against (host of `websiteURL`). Cookies are scoped to this domain.

Example response

Full getTaskResult response shape. The fields in the table above describe what's inside solution — the outer envelope (errorId, status) is identical for every captcha type.

{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "domain": "www.example.com",
    "cookies": [
      {
        "name": "reese84",
        "path": "/",
        "value": "3:abcdef...long_reese84_value...",
        "domain": ".example.com"
      },
      {
        "name": "incap_ses_123_456",
        "path": "/",
        "value": "session_id_value",
        "domain": ".example.com"
      },
      {
        "name": "visid_incap_456",
        "path": "/",
        "value": "visitor_id_value",
        "domain": ".example.com"
      }
    ],
    "ipBound": true,
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
  }
}

Error response

Failures use the same envelope with errorId: 1 plus errorCode + errorDescription. See the error-code reference for the full list.

{
  "errorId": 1,
  "errorCode": "ERROR_CAPTCHA_UNSOLVABLE",
  "errorDescription": "Solver gave up — automatically refunded."
}

Pending response

While the solver is still working, getTaskResult returns status: "processing". Poll every 1–2 seconds until ready or failed.

{
  "errorId": 0,
  "status": "processing"
}

Features

Routed for you by default (ProxyLess)
Captures reese84 + visid_incap_* + incap_ses_* + ___utmvc cookies
Supports both reese84 and utmvc challenge variants
Cookies are IP + UA bound — full session replay payload returned

task types

required: AntiImpervaTask

Frequently asked questions

start solving imperva incapsula.

$0.10 in free credits — no card. ~250 free solves to test before you spend.