UNLOCK API
Drag and drop

Drag and drop

Paano magpadala ng Drag and drop task sa UNLOCK API gamit ang createTask o in.php: mga pangalan ng task type, bawat parameter, ang solution object, mga proxy field at code sample sa 7 wika.
Presyo
$0.60 $0.0006 bawat task
Ipapadala mo
Ang mga image at kung saan dapat ilagay ang mga piraso
Matatanggap mo
Mga galaw na gagawin (mula at hanggang point)

Overview at presyo

Mga pangalan ng task type

Isa lang ang pangalan ng type na ito.
DragAndDropTask

Task object

type
StringRequired
Pangalan ng task type. Tumutugma kahit anong letter case. DragAndDropTask
body
StringRequired
Ang image bilang base64 (JPG, PNG o GIF), hanggang mga 100 KB. Puwede ang data: prefix.
comment
StringOptional
Instruction para sa solver, halimbawa ang tanong na nasa itaas ng image.

Ang mga field na wala sa listahang ito ay ipinapasa sa solver kung paano ipinadala.

Request

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "DragAndDropTask",
    "body": "/9j/4AAQSkZJRgABAQ...",
    "comment": "Move each piece to its matching place"
  }
}

Solution object

Ibinabalik sa solution kapag ready ang status.
answer
Array
Ang sagot na isusumite.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "answer": [
      {
        "from": {
          "x": 20,
          "y": 40
        },
        "to": {
          "x": 210,
          "y": 44
        }
      }
    ]
  },
  "cost": "0.0006",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

Mga code sample

import time, requests

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

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "DragAndDropTask",
      "body": "/9j/4AAQSkZJRgABAQ...",
      "comment": "Move each piece to its matching place"
    }
}).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"])
        break
else:
    raise SystemExit("timed out")

in.php form method

Sa JSON methods lang available ang type na ito.