Skip to content
../products
● fastest in classproxy required

PerimeterX (HUMAN Security) Solver, solved in 10.0s.

Bypass PerimeterX press-and-hold protection. Returns _px3/_px2/_pxhd clearance cookies. Routed through residential by default.

Proxy required for PerimeterX (HUMAN Security) Solver

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

per 1,000$4.00
avg solve~10.0s
success99%+
throughput6/m
proxyPort: 8080…0.00s
POST/createTask type=AntiPerimeterXTask
taskId tsk_qewtfewq
POLL/getTaskResult status=processing
status ready
token 0x5b5b09cbb4e5b...
type: AntiPerimeterXTask● running on production solvers

What is PerimeterX (HUMAN Security)?

PerimeterX (now HUMAN Security) is a bot protection platform that scores requests on IP trust, browser fingerprint, TLS/JA3, and on-page behavior. The visible CAPTCHA is a press-and-hold button; the cookie hierarchy is _px3 (newer/strict, 60s expiry) > _px2 (older sites) > _pxhd (fallback).

How It Works

1

Send Task

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

2

We Solve

Capzy's proprietary solver returns the PerimeterX clearance cookies (_px3 / _px2 / _pxhd) needed to access the protected page. ProxyLess routes through our residential pool by default; AntiPerimeterXTask uses your own residential or mobile proxy.

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": "AntiPerimeterXTask",
        "proxyPort": "8080",
        "proxyType": "http",
        "proxyLogin": "user",
        "websiteURL": "https://example.com",
        "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)

task parameters.

Proxy fields below are required for this captcha — userAgent must match the one you’ll use when submitting the resulting token.
typetypestringreqyesAntiPerimeterXTaskProxyLess (residential routed) or AntiPerimeterXTask (your proxy)
websiteURLtypestringreqyesThe page URL
proxyTypetypestringreqyesProxy protocol: http, https, socks4, or socks5
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.

tokentypestringClearance cookie value (priority: _px3 > _px2 > _pxhd)
cookiestypearrayAll _px* cookies in {name, value, domain, path} form for full session replay
userAgenttypestringUser-Agent used during solve — match this on subsequent requests

Features

Routed through residential pool by default
Capzy proprietary infrastructure — handles press-and-hold variants
Returns _px3 (priority) → _px2 → _pxhd with full _px* cookie set
User-Agent capture for session continuity

Required Task Type

AntiPerimeterXTask

Frequently Asked Questions

start solving perimeterx (human security).

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