UNLOCK API
مهمة صور مركبة

مهمة صور مركبة

كيف ترسل مهمة مهمة صور مركبة إلى UNLOCK API عبر createTask أو in.php: أسماء نوع المهمة، وكل معامل، وكائن solution، وحقول البروكسي، وأمثلة كود بـ 7 لغات.
السعر
$0.60 $0.0006 لكل مهمة
ترسل
قيمة class (recaptcha أو hcaptcha أو funcaptcha أو recognition) والصور ونص المهمة
تستلم
الصور أو الخانات المطابقة

نظرة عامة والسعر

أسماء نوع المهمة

لهذا النوع اسم واحد.
ComplexImageTask

كائن المهمة

type
Stringمطلوب
اسم نوع المهمة. يُطابق بأي حالة أحرف. ComplexImageTask
class
Stringمطلوب
نوع تحدي الصور، مثلًا recaptcha أو hcaptcha.
imagesBase64
Arrayمطلوب
الصور كقائمة من سلاسل base64.
metadata
Objectاختياري
السؤال والتخطيط، مثلًا Task وGrid.

الحقول غير المذكورة هنا تُمرر إلى الحلّال كما أُرسلت.

الطلب

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "ComplexImageTask",
    "class": "recaptcha",
    "imagesBase64": [
      "/9j/4AAQSkZJRgABAQ..."
    ],
    "metadata": {
      "Task": "Select all images with a bus",
      "Grid": "3x3"
    }
  }
}

كائن solution

يُرجع في solution عندما تكون status هي ready.
answer
Array
الإجابة المطلوب إرسالها.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "answer": [
      false,
      true,
      false,
      false,
      true,
      false,
      false,
      false,
      true
    ]
  },
  "cost": "0.0006",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

أمثلة الكود

import time, requests

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

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "ComplexImageTask",
      "class": "recaptcha",
      "imagesBase64": [
        "/9j/4AAQSkZJRgABAQ..."
      ],
      "metadata": {
        "Task": "Select all images with a bus",
        "Grid": "3x3"
      }
    }
}).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

هذا النوع متاح عبر طرق JSON فقط.