{"summary":{"ip":"216.73.216.45","country":"US","city":"Columbus","asOrganization":"Anthropic, PBC","colo":"CMH","httpVersion":"HTTP/2","tlsVersion":"TLSv1.3","suggestedLocale":"und-US","userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"},"ip":{"ip":"216.73.216.45","ipVersion":4,"ray":"a06e9111b9425e37","geo":{"continent":"NA","country":"US","region":"Ohio","regionCode":"OH","city":"Columbus","postalCode":"43215","latitude":"39.96118","longitude":"-82.99879","timezone":"America/New_York","metroCode":"535"},"network":{"asn":16509,"asOrganization":"Anthropic, PBC","colo":"CMH"},"note":"Geo and network fields are populated by Cloudflare on the incoming request — no third-party API call. Accuracy varies by ISP and is not a substitute for a paid geolocation service."},"connection":{"protocol":{"httpVersion":"HTTP/2","tlsVersion":"TLSv1.3","tlsCipher":"AEAD-AES256-GCM-SHA384"},"edge":{"colo":"CMH","clientTcpRttMs":2,"ray":"a06e9111b9425e37"},"botFingerprint":{"ja3Hash":null,"ja4":null,"verifiedBot":null,"score":null,"note":"JA3/JA4 hashes, verified-bot status, and bot score require Cloudflare Bot Management (paid). On the free plan these are null."},"note":"Populated from request.cf — no third-party API call. Reflects the connection between your client and Cloudflare's edge, not your client and the origin."},"locale":{"acceptLanguage":null,"parsedLanguages":[],"cloudflareEdge":{"country":"US","regionCode":"OH","city":"Columbus","timezone":"America/New_York"},"suggestedLocale":"und-US","suggestedLocaleSource":"No Accept-Language; country only","note":"Suggested locale is a best-effort BCP-47 tag derived from the highest-quality Accept-Language preference combined with Cloudflare's country geolocation. Real apps usually also factor in the user's saved preference if any."},"encoding":{"clientSent":"gzip, deflate, br","workerSees":"gzip, br","normalized":true,"supportedByClient":["gzip","deflate","br"],"supportedByWorker":["gzip","br"],"removedByCloudflare":["deflate"],"addedByCloudflare":[],"note":"Cloudflare may rewrite the Accept-Encoding header before it reaches the Worker, typically narrowing it to encodings the edge can cache against. clientSent is the original header your client transmitted; workerSees is what the Worker code observes."},"headers":{"accept":"*/*","accept-encoding":"gzip, br","cf-connecting-ip":"216.73.216.45","cf-ipcountry":"US","cf-ray":"a06e9111b9425e37","cf-visitor":"{\"scheme\":\"https\"}","connection":"Keep-Alive","host":"catastrophic.io","user-agent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","x-forwarded-proto":"https","x-real-ip":"216.73.216.45"},"note":"Aggregates every server-observable signal about your client into one response. The browser version of this page also runs the /fingerprint probes on top — client-side fields will not appear in the curl/JSON response."}