Skip to content
../products
Shopee SliderShopeeSliderTaskProxyLess

Shopee Slider, solved in 1.9s.

Shopee's custom slide / curve puzzle. Send the puzzle + piece image; get the exact slide offset.

$2.00per 1,000
~1.9savg solve
99%+success
32/mthroughput
type: ShopeeSliderTask…0.00s
POST/createTask type=ShopeeSliderTaskProxyLess
taskId tsk_5we2ciqr
POLL/getTaskResult status=processing
status ready
token 0x8740517b5042...
type: ShopeeSliderTaskProxyLess● running on production solvers

What is Shopee Slider?

Shopee's marketplace uses a proprietary slider captcha with line (straight drag) and curve (arced trajectory) variants: a background puzzle with a gap and a piece you must slide into place. This solver reads the images and returns where the piece goes.

How it works

1

Send Task

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

2

We Solve

Send the puzzle background and the piece as base64 images. We locate the gap with computer vision and return the horizontal slide offset (as a 0–1 proportion and in pixels), plus candidate offsets. No browser and no proxy — pure image analysis.

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": "ShopeeSliderTaskProxyLess",
        "type": "ShopeeSliderTask",
        "image": "<base64 puzzle>",
        "pieceImage": "<base64 piece>",
        "challengeType": "line"
    }
}).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

Shopee validates the drag client-side, so the answer is the geometry — slide the piece slideOffset pixels in your own session.

use_result.py
# Step 3 — drag the piece by slideOffset pixels (or use the 0-1 proportion)
sol = result["solution"]
offset_px = sol["slideOffset"]              # absolute px, e.g. 186
proportion = sol["slideXProportion"]        # same as a 0-1 fraction of the track
# e.g. Playwright: mouse.down(); mouse.move(start_x + offset_px, y); mouse.up()

Task parameters

typetypestringreqyesShopeeSliderTask (line) or ShopeeCurveTask (arced). ProxyLess variants exist.
imagetypestringreqyesThe puzzle background image, base64.
pieceImagetypestringreqyesThe slider piece image, base64.
challengeTypetypestringreqnoline (default) or curve.

Solution response

slideXProportiontypenumberHorizontal offset as a proportion of the puzzle width (0–1).
slideOffsettypeintegerAbsolute horizontal offset in pixels.
candidatestypearrayAlternative offsets [{x, proportion}] ranked by confidence.
methodtypestringWhich path produced the answer (opencv / ml).

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": {
    "method": "opencv",
    "candidates": [
      {
        "x": 186,
        "proportion": 0.62
      }
    ],
    "slideOffset": 186,
    "slideXProportion": 0.62
  }
}

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

Sub-2s image-only solve
Line + curve variants
No browser, no proxy

task types

proxyless: ShopeeSliderTaskProxyLess

with proxy: ShopeeSliderTask

Frequently asked questions

start solving shopee slider.

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