Skip to content
capzy
Capy Puzzle
CapyTaskProxyLess

Capy Puzzle Solver, solved in 5.0s.

Solve Capy jigsaw puzzle captchas used on Japanese sites. Returns captchakey, challengekey, and answer tokens.

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

Capy (capy.me) is a Japanese captcha service that presents a jigsaw puzzle — the user drags a puzzle piece to complete an image. It's used primarily on Japanese websites and some international sites.

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": "CapyTaskProxyLess",
        "websiteURL": "https://example.jp/form",
        "websiteKey": "PUZZLE_abc123def456"
    }
}).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: Capy — submit all three values to the form
sol = result["solution"]
requests.post("https://target.example.com/submit", data={
    "capy_captchakey":  sol["captchakey"],
    "capy_challengekey": sol["challengekey"],
    "capy_answer":      sol["answer"],
})

1. Send Payload

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

2. Solving Engine

Capzy's proprietary solver returns the Capy Puzzle solution payload ready for direct submission. Designed for authorized testing and automation.

3. Get Result

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

Using your own proxy

Use CapyTask instead of CapyTaskProxyLess 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": "CapyTask",
        "websiteURL": "https://example.jp/form",
        "websiteKey": "PUZZLE_abc123def456",
        "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
typetypestringreqyesCapyTaskProxyLess or CapyTask
websiteURLtypestringreqyesThe page URL
websiteKeytypestringreqyesThe sitekey (starts with PUZZLE_)
apiServertypestringreqnoCustom Capy widget host. Defaults to https://jp.api.capy.me. Pass this when the target site serves the widget from its own CDN (white-label deployment) — find the value in the page's <script src='…/puzzle/get_js/?k=…'> tag. Aliases: api_server, capyApiServerSubdomain.

Response Shape

captchakeytypestringChallenge identifier
challengekeytypestringPer-session challenge value
answertypestringHex-encoded solved puzzle answer

Example response

{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "captchakey": "<challenge identifier>",
    "challengekey": "<per-session challenge value>",
    "answer": "8a3f<hex-encoded solved puzzle position>"
  }
}

Error response

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

Features

Solves the jigsaw puzzle reliably
Rare-coverage captcha — most solvers don't support it
Japanese site compatibility
High-quality solves

Pricing & Stats

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

Start solving capy puzzle.

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