Config::require('TURNSTILE_SECRET_KEY'), 'response' => $token, 'remoteip' => $ip, ]), ['Content-Type' => 'application/x-www-form-urlencoded'], 6); if ($res['error'] !== null || $res['status'] !== 200) { // Fail open on provider outage so real visitors are never blocked; honeypot + rate limit still apply. Log::warn('Turnstile verification unavailable', ['status' => $res['status'], 'error' => $res['error']]); return true; } return (bool)($res['json']['success'] ?? false); } }