UNLOCK API

API de résolution Tâche personnalisée (Imperva, Temu et autres)

Envoyez une tâche Tâche personnalisée (Imperva, Temu et autres) à l'API et recevez la réponse que votre code soumet à la page. class (Imperva, Temu, HUNT, tspd, Basilisk et autres) et ses metadata. Vous recevez : Les valeurs renvoyées par cette class.

En bref

Prix pour 1,000
$0.90 ($0.0009 par tâche)
Type createTask
CustomTask
Méthode in.php
incapsula, temuimage, hunt, tspd, basilisk
Vous envoyez
class (Imperva, Temu, HUNT, tspd, Basilisk et autres) et ses metadata
Vous recevez
Les valeurs renvoyées par cette class

Où trouver les valeurs

Définissez class sur le nom de la protection et placez ses valeurs de page dans metadata.

createTask et getTaskResult

Créez la tâche, attendez environ 5 secondes, puis vérifiez le résultat toutes les 5 secondes jusqu'au statut ready. Si la tâche échoue, l'API renvoie une erreur et le montant revient sur votre solde.

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 et res.php

La même tâche avec l'API classique par formulaire. Ajoutez json=1 pour obtenir des réponses JSON ; sinon les réponses sont en texte brut, par exemple 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"}

Référence complète de l'API : tous les paramètres et l'objet solution