결과 콜백
JSON 방식 메서드
토큰 작업
- 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
- Cloudflare 챌린지 페이지
- Cutcaptcha
- CyberSiARA
- atbCAPTCHA
- Tencent Captcha
- Prosopo Procaptcha
- CaptchaFox
- Altcha
- NetEase Yidun
- Yandex SmartCaptcha
- VK Captcha
- Binance Captcha
- 범용 작업 (Imperva, Temu 등)
결과 콜백
결과를 확인하러 오지 않고 내 서버로 받기.
JSON 방식 메서드
createTask에 callbackUrl을 넣으세요. 작업이 끝나면 getTaskResult와 같은 모양에 taskId를 더한 JSON 본문을 그 주소로 POST해요. 실패한 작업은 errorId 1과 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
in.php에 pingback을 넣으세요. 작업이 끝나면 그 주소로 id(작업 번호)와 code(답 또는 오류 이름)가 담긴 폼 본문을 POST해요.
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...
규칙
- 주소는 공개된 http나 https여야 해요. 사설, 로컬, 루프백 주소로는 보내지 않아요.
- 타임아웃 5초로 한 번만 보내요. 결과는 getTaskResult와 res.php로도 계속 볼 수 있으니 예비 확인을 남겨 두세요.
- 내 서버의 응답은 확인하지 않고, 전달에 실패해도 다시 보내지 않아요.