Changelog
Notable changes to the CaptchaLa API and SDKs. Dates are UTC.
API
2026-06-20
/v1/validateresponse now returns acaptcha_argsobject — solve-time context echoed back for logging / your own risk scoring (never required for pass/fail):platform—web/android/ios/flutter/windows/ …user_ip— end-user IP recorded at solve timereferer— solve page URL (web);nullon nativepkg— app package / bundle id (native);nullon websolved_at— solve completion time (unix seconds)risk_score— solve-time risk score (0-100, higher = riskier)
client_ipon/v1/validateis optional but recommended — the end-user's IP from your inbound request, used for additional risk checks. Safe to omit. (Exact solve-vs-submit IP matching was dropped because it rejected legitimate users on CDN + dual-stack IPv4/IPv6 networks.)- Fully backward compatible — existing integrations keep working unchanged.
PHP SDK (captchala/captchala-php)
1.2.3 — 2026-06-20
- Added
ValidateResult::getUserIp()andValidateResult::getCaptchaArgs(). validate()'s$clientIpis now optional but recommended (used for risk checks). Backward compatible.
Go SDK (github.com/Captcha-La/captchala-go)
1.2.2 — 2026-06-20
- Added
ValidateResult.CaptchaArgs(CaptchaArgsstruct:Platform,UserIP,Referer,Pkg,SolvedAt,RiskScore). ValidateWithClientIP's IP argument is now optional but recommended. Backward compatible.