UNLOCK API
Gumuhit sa paligid

Gumuhit sa paligid

Paano magpadala ng Gumuhit sa paligid 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 image bilang base64 at kung ano ang guguhitan sa paligid
Matatanggap mo
Mga point ng iginuhit na outline

Overview at presyo

Mga pangalan ng task type

Isa lang ang pangalan ng type na ito.
DrawAroundTask

Task object

type
StringRequired
Pangalan ng task type. Tumutugma kahit anong letter case. DrawAroundTask
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": "DrawAroundTask",
    "body": "/9j/4AAQSkZJRgABAQ...",
    "comment": "Draw around the dog"
  }
}

Solution object

Ibinabalik sa solution kapag ready ang status.
canvas
Array
Outline na iginuhit sa paligid ng object, bilang listahan ng mga point.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "canvas": [
      [
        {
          "x": 10,
          "y": 20
        },
        {
          "x": 60,
          "y": 22
        },
        {
          "x": 58,
          "y": 80
        }
      ]
    ]
  },
  "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": "DrawAroundTask",
      "body": "/9j/4AAQSkZJRgABAQ...",
      "comment": "Draw around the dog"
    }
}).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

Parehong task gamit ang classic na form request. Ibinabalik ng res.php ang sagot bilang text.
in.php, res.php
curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=base64&canvas=1&textinstructions=Draw+around+the+dog&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 at res.php