Castle, without custom bypass code.
即使 Castle 更新其防护机制,这个可预测的三步流程也始终保持不变。
Send the Castle publishable key from the page and, if relevant, the event name for the action you're protecting (e.g. $login.succeeded). We return the X-Castle-Request-Token header value and a __cuid device id to send along with your request.
提交目标
在一次 API 请求中发送页面 URL 和挑战特定字段。
我们处理挑战
CaptchaSolv 将任务路由到专门的解决方案,并跟踪直至完成。
使用解决方案
获取下一次请求所需的令牌、请求头、cookies 或 sensor payload。
所有支持的解决方案使用相同的接口和响应格式。
{
"api_key": "YOUR_API_KEY",
"type": "Castle",
"site_url": "https://example.com/login",
"data": {
"pub_key": "pk_XXXXXXXXXXXXXXXXXXXXXXXX",
"event": "$login.succeeded"}
}{
"errorId": 0,
"status": "ready",
"solvtime": 1.94,
"data": {
"useragent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)...",
"language": "en-US,en;q=0.9",
"solution": {
"request_token": "eyJkYXRhIjoiZXlKe...",
"cuid": "d290f1ee-6c54-4b01-90e6-d701748f0851"}
}
}此验证码类型的求解请求中,可在 data 对象内发送的字段。
pub_key必填The Castle publishable key loaded by the page's Browser SDK, prefixed pk_.
event可选The activity name being protected, e.g. $login.succeeded or $registration.succeeded. Improves signal accuracy when supplied.
任务解决后在 data.solution 中返回的字段。
solution.request_token必填Send as the X-Castle-Request-Token header on the protected request.
solution.cuid可选Device id to send as the __cuid cookie, for continuity across requests from the same simulated device.
data.useragent必填The user-agent used while generating the token - reuse it on the protected request.
关于正确集成此解决方案的常见问题。
Yes - it works on any site using Castle's device fingerprinting and risk API, not just a fixed list of targets. Send the publishable key from the page you're hitting and we generate a valid request token for that specific integration.
在绕过 Castle 时遇到困难?
加入我们的 Discord,我们的团队会帮助您在您的环境中成功解决 Castle - 提供免费建议,即使挑战随时间变化也能持续应对。