UNLOCK API

API для розв'язання Своя задача (Imperva, Temu та інші)

Надішліть задачу Своя задача (Imperva, Temu та інші) до API та отримайте відповідь, яку ваш код передає на сторінку. class (Imperva, Temu, HUNT, tspd, Basilisk та інші) і його metadata. Ви отримуєте: Значення, які повертає цей class.

Коротко

Ціна за 1000
$0.90 ($0.0009 за задачу)
Тип createTask
CustomTask
Метод in.php
incapsula, temuimage, hunt, tspd, basilisk
Ви надсилаєте
class (Imperva, Temu, HUNT, tspd, Basilisk та інші) і його metadata
Ви отримуєте
Значення, які повертає цей class

Де знайти значення

Вкажіть у class назву захисту, а його значення зі сторінки передайте в metadata.

createTask і getTaskResult

Створіть задачу, зачекайте близько 5 секунд, потім перевіряйте результат кожні 5 секунд, доки статус не стане ready. Якщо задача не вдалася, API повертає помилку, а кошти повертаються на баланс.

import time, requests

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

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "CustomTask",
      "class": "Imperva",
      "websiteURL": "https://example.com/login",
      "metadata": {
        "incapsulaScriptUrl": "_Incapsula_Resource?SWJIYLWA=...",
        "incapsulaCookie": "incap_ses_..."
      }
    }
}).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 і res.php

Та сама задача через класичний API форм. Додайте json=1, щоб отримувати відповіді в JSON; без нього відповіді приходять звичайним текстом, наприклад OK|1001.

curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=incapsula&pageurl=https://example.com/login&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"}

Повний довідник API: усі параметри та об'єкт solution