UNLOCK API
Rotate

Rotate

How to send a Rotate task to UNLOCK API with createTask or in.php: task type names, every parameter, the solution object, proxy fields and code samples in 7 languages.
Price
$0.25 $0.00025 per task
You send
The image as base64
You get
The angle to rotate the image

Overview and price

Task type names

This type has one name.
RotateTask

Task object

type
StringRequired
Task type name. Matched in any letter case. RotateTask
body
StringRequired
The image as base64 (JPG, PNG or GIF), up to about 100 KB. A data: prefix is allowed.
angle
IntegerOptional
Rotation step in degrees.
comment
StringOptional
Instruction for the solver, for example the question shown above the image.

Fields not listed here are passed to the solver as sent.

Request

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "RotateTask",
    "body": "/9j/4AAQSkZJRgABAQ...",
    "angle": 15
  }
}

Solution object

Returned in solution when status is ready.
rotate
Integer
Angle in degrees to turn the image.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "rotate": 135
  },
  "cost": "0.00025",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

Code samples

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"])

for _ in range(60):   # 60 x 5 s = the 5 minute task limit
    time.sleep(5)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r["errorId"]:
        raise SystemExit(f"{r['errorCode']}: {r.get('errorDescription', '')}")   # failed tasks are refunded
    if r["status"] == "ready":
        print(r["solution"]["rotate"])
        break
else:
    raise SystemExit("timed out")

in.php form method

The same task with the classic form request. res.php returns the answer as text.
in.php, res.php
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"}

Form API: in.php and res.php