UNLOCK API
Огляд

Документація UNLOCK API

Надішліть капчу як задачу, потім заберіть відповідь. API використовує ті самі назви методів, задач і коди помилок, що й інші API для розв'язання капчі, тому більшість наявного коду працює після заміни хоста й ключа.

Як працює запит

  1. 1createTask

    Створіть задачу

    POST /createTask з вашим ключем і об'єктом задачі. Ви отримуєте taskId. Ціна одразу списується з балансу.

  2. 2getTaskResult

    Перевірте результат

    Зачекайте близько 5 секунд, потім надсилайте POST /getTaskResult кожні 5 секунд, доки status не стане ready.

  3. 3solution

    Використайте відповідь

    Вставте токен або текст із solution у форму сторінки. Якщо задача не вдалася, кошти повертаються на баланс.

Основне

Базовий URL
https://unlock-api.com
API-ключ
32 символи, на сторінці акаунта. Надсилайте його як clientKey (JSON) або key (in.php, res.php).
Формат
Методи JSON: POST з тілом JSON. in.php і res.php: поля форми GET або POST; додайте json=1 для відповідей у JSON.
Ліміти
1200 запитів на хвилину на акаунт, включно з перевірками результату. Після створення задачі зачекайте близько 5 секунд, потім перевіряйте кожні 5 секунд.
Ліміт часу
Задача, не розв'язана протягом 5 хвилин, завершується з ERROR_CAPTCHA_UNSOLVABLE, а кошти повертаються на баланс.
Оплата
Ціна задачі списується під час її створення. Кошти за невдалі задачі повертаються автоматично.

Швидкий старт

Розв'яжіть reCAPTCHA v2 методами JSON. Замініть YOUR_API_KEY своїм ключем.
import time, requests

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

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "RecaptchaV2TaskProxyless",
      "websiteURL": "https://example.com/login",
      "websiteKey": "6LcR_RsTAAAAAFJR_5ZdbQd0SMxL7yIDmSXH1-lo"
    }
}).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"]["gRecaptchaResponse"])
        break
else:
    raise SystemExit("timed out")

Методи

Посібники

Типи задач

Кожен тип має власну сторінку з усіма параметрами, об'єктом solution і прикладами.

Задачі з токеном