UNLOCK API
Callbacks de resultado

Callbacks de resultado

Recibe el resultado en tu servidor en lugar de consultarlo.

Métodos JSON

Agrega callbackUrl a createTask. Cuando la tarea termina, el resultado se envía a esa dirección por POST con un cuerpo JSON con la misma forma que getTaskResult, más taskId. Una tarea fallida envía errorId 1 con errorCode.
POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "callbackUrl": "https://your-server.com/captcha-result",
  "task": {
    "type": "TurnstileTaskProxyless",
    "websiteURL": "https://example.com/login",
    "websiteKey": "0x4AAAAAAAC3DHQFLr1GavRN"
  }
}
POST https://your-server.com/captcha-result
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "token": "0.zrSnRHO7h0HwSjSCU8oyzbjEtD8p..."
  },
  "cost": "0.00055",
  "createTime": 1791640000,
  "endTime": 1791640011,
  "solveCount": 1
}

API de formulario

Agrega pingback a in.php. Cuando la tarea termina, la dirección recibe un cuerpo de formulario por POST con id (el id de la tarea) y code (la respuesta o el nombre del error).
in.php
curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=turnstile&sitekey=SITE_KEY&pageurl=https://example.com/login&pingback=https://your-server.com/captcha-result"

# POST https://your-server.com/captcha-result
# Content-Type: application/x-www-form-urlencoded
# id=1001&code=0.zrSnRHO7h0HwSjSCU8oyzbjEtD8p...

Reglas

  • La dirección debe ser http o https pública. No se llama a direcciones privadas, locales ni de loopback.
  • Un solo intento con un tiempo de espera de 5 segundos. El resultado también sigue disponible con getTaskResult y res.php, así que mantén una consulta de respaldo.
  • La respuesta de tu servidor no se comprueba y una entrega fallida no se reintenta.