UNLOCK API
Présentation

Documentation de UNLOCK API

Envoyez un CAPTCHA sous forme de tâche, puis récupérez la réponse. L'API utilise les mêmes noms de méthodes, noms de tâches et codes d'erreur que les autres API de résolution, donc la plupart du code existant fonctionne une fois l'hôte et la clé changés.

Fonctionnement d'une requête

  1. 1createTask

    Créer une tâche

    Envoyez POST /createTask avec votre clé et un objet tâche. Vous recevez un taskId. Le prix est prélevé sur le solde à ce moment.

  2. 2getTaskResult

    Vérifier le résultat

    Attendez environ 5 secondes, puis envoyez POST /getTaskResult toutes les 5 secondes jusqu'à ce que status soit ready.

  3. 3solution

    Utiliser la réponse

    Placez le token ou le texte de solution dans le formulaire de la page. Si la tâche échoue, le montant revient sur le solde.

L'essentiel

URL de base
https://unlock-api.com
Clé API
32 caractères, sur votre page de compte. Envoyez-la comme clientKey (JSON) ou key (in.php, res.php).
Format
Méthodes JSON : POST avec un corps JSON. in.php et res.php : champs de formulaire en GET ou POST ; ajoutez json=1 pour des réponses JSON.
Limites
1,200 requêtes par minute et par compte, vérifications de résultat comprises. Attendez environ 5 secondes après la création d'une tâche, puis vérifiez toutes les 5 secondes.
Délai maximum
Une tâche non résolue en 5 minutes échoue avec ERROR_CAPTCHA_UNSOLVABLE et son montant revient sur le solde.
Facturation
Le prix de la tâche est prélevé à sa création. Les tâches échouées sont remboursées automatiquement.

Démarrage rapide

Résolvez un reCAPTCHA v2 avec les méthodes JSON. Remplacez YOUR_API_KEY par votre clé.
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")

Méthodes

Guides

Types de tâches

Chaque type a sa propre page avec tous les paramètres, l'objet solution et des exemples.

Tâches à token