Callbacks de résultat
Méthodes JSON
Tâches à token
- reCAPTCHA v2
- reCAPTCHA v2 Enterprise
- reCAPTCHA v3
- Cloudflare Turnstile
- GeeTest v3 / v4
- FunCaptcha (Arkose Labs)
- Amazon AWS WAF
- MTCaptcha
- Friendly Captcha
- Lemin Cropped Captcha
- DataDome
- KeyCaptcha
- Capy Puzzle
- Page Cloudflare Challenge
- Cutcaptcha
- CyberSiARA
- atbCAPTCHA
- Tencent Captcha
- Prosopo Procaptcha
- CaptchaFox
- Altcha
- NetEase Yidun
- Yandex SmartCaptcha
- VK Captcha
- Binance Captcha
- Tâche personnalisée (Imperva, Temu et autres)
Callbacks de résultat
Recevez le résultat sur votre serveur au lieu de le vérifier.
Méthodes JSON
Ajoutez callbackUrl à createTask. Quand la tâche est terminée, le résultat est envoyé à cette adresse par POST avec un corps JSON au même format que getTaskResult, plus taskId. Une tâche échouée envoie errorId 1 avec 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
}{
"errorId": 1,
"taskId": 1001,
"errorCode": "ERROR_CAPTCHA_UNSOLVABLE"
}API formulaire
Ajoutez pingback à in.php. Quand la tâche est terminée, l'adresse reçoit un corps de formulaire par POST avec id (l'id de la tâche) et code (la réponse ou le nom de l'erreur).
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...
Règles
- L'adresse doit être en http ou https public. Les adresses privées, locales et de loopback ne sont pas appelées.
- Une seule tentative avec un timeout de 5 secondes. Le résultat reste aussi disponible via getTaskResult et res.php, gardez donc une vérification de secours.
- La réponse de votre serveur n'est pas vérifiée, et un envoi échoué n'est pas relancé.