Skip to content
capzy
reCAPTCHA v2
ReCaptchaV2TaskProxyLess

reCAPTCHA v2 Solver, solved in 5.0s.

Solve Google reCAPTCHA v2 checkbox and image challenges automatically. Supports both standard and invisible variants.

Avg Speed~5.0s
Success99%+
Cost / 1k$2.00
Throughput12/m

reCAPTCHA v2 presents a checkbox ('I'm not a robot') that users must click. If Google's risk engine is suspicious, it shows image grid challenges ('Select all images with traffic lights'). The invisible variant skips the checkbox and triggers programmatically. reCAPTCHA v2 is still widely used on login forms, registration pages, and anywhere Google's free captcha is deployed.

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": "ReCaptchaV2TaskProxyLess",
        "websiteURL": "https://example.com/signup",
        "websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
    }
}).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)

Using the result

use_result.py
# Step 3: Use the result — paste the token into g-recaptcha-response
token = result["solution"]["gRecaptchaResponse"]
# Browser side: document.querySelector('textarea[name="g-recaptcha-response"]').value = token
# Or include it in your form POST:
resp = requests.post("https://target.example.com/login", data={
    "username": "...",
    "password": "...",
    "g-recaptcha-response": token,
})
print(resp.status_code)

1. Send Payload

Dispatch your ReCaptchaV2TaskProxyLess to our processing cluster via the secure API endpoint.

2. Solving Engine

Capzy's proprietary solver returns valid reCAPTCHA v2 tokens for authorized testing and automation. Both checkbox and invisible modes are supported.

3. Get Result

Poll getTaskResult for the validated token, then finalize your automated request.

Using your own proxy

Use ReCaptchaV2Task instead of ReCaptchaV2TaskProxyLess to route the solve through your own proxy — useful when the target site checks that the solving IP matches the submitting IP.

solve_proxy.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": "ReCaptchaV2Task",
        "websiteURL": "https://example.com/signup",
        "websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
        "proxyType": "http",
        "proxyAddress": "123.45.67.89",
        "proxyPort": "8080",
        "proxyLogin": "user",
        "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)

Additional proxy parameters

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)
userAgenttypestringreqnoUser-Agent string to use. Must match the UA you use when submitting the token

Task Parameters

API Spec
typetypestringreqyesReCaptchaV2TaskProxyLess or ReCaptchaV2Task
websiteURLtypestringreqyesThe page URL where reCAPTCHA is loaded
websiteKeytypestringreqyesThe sitekey (starts with 6L...). Found in data-sitekey or the JS render call
isInvisibletypebooleanreqnoSet true for invisible reCAPTCHA (no checkbox, auto-triggered)
isEnterprisetypebooleanreqnoSet true if the site uses reCAPTCHA Enterprise

Response Shape

gRecaptchaResponsetypestringThe solved token. Submit in g-recaptcha-response textarea

Example response

{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "gRecaptchaResponse": "03AGdBq25...<long opaque token>..."
  }
}

Error response

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

Features

Checkbox + image challenge solving
Invisible variant support (isInvisible: true)
Enterprise reCAPTCHA support
Capzy proprietary models handle every challenge type — no human workers
Capzy proprietary infrastructure — high-quality solves
~8 second average solve time

Pricing & Stats

Per 1,000 solves$2.00
Avg solve time~5.0s
Success rate99%+
Throughput12/m

Start solving recaptcha v2.

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

Frequently asked questions