UNLOCK API

Rotate solving API

Send a Rotate task to the API and get back the answer your code submits to the page. The image as base64. You get: The angle to rotate the image.

At a glance

Price per 1,000
$0.25 ($0.00025 per task)
createTask type
RotateTask
in.php method
rotatecaptcha
You send
The image as base64
You get
The angle to rotate the image

Where to find the values

Send the image to rotate. angle sets the step of one rotation if the widget turns in fixed steps.

createTask and getTaskResult

Create the task, wait about 5 seconds, then check the result every 5 seconds until the status is ready. If the task fails, the API returns an error and the charge goes back to your balance.

import time, requests

API = "https://unlock-api.com"
KEY = "YOUR_API_KEY"

task = requests.post(f"{API}/createTask", json={
  "clientKey": KEY,
  "task": {
      "type": "RotateTask",
      "body": "/9j/4AAQSkZJRgABAQ...",
      "angle": 15
    }
}).json()
if task["errorId"]:
    raise SystemExit(task["errorCode"])

while True:
    time.sleep(5)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r["errorId"]:
        raise SystemExit(r["errorCode"])   # failed tasks are refunded
    if r["status"] == "ready":
        print(r["solution"]["rotate"])
        break

in.php and res.php

The same task with the classic form API. Add json=1 to get JSON answers; without it the answers are plain text such as OK|1001.

curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=rotatecaptcha&body=BASE64_IMAGE&json=1"
# {"status":1,"request":"1001"}

curl -s "https://unlock-api.com/res.php?key=YOUR_API_KEY&action=get&id=1001&json=1"
# {"status":0,"request":"CAPCHA_NOT_READY"}  then  {"status":1,"request":"ANSWER"}