Security Analytics
Repackages your traffic logs into an attacker-fingerprint and mitigation view: how much traffic was allowed versus mitigated (blocked by a firewall rule or rate limit), a time series, the worst-offending source IPs / ASNs / countries / user-agents / paths / hosts / rules, and a tail of the most-recently mitigated requests. The numbers line up with the traffic metrics surface because both read the same traffic_logs data over the same scope and window.
A request counts as mitigated when its firewall action or rate-limit action was blocked; everything else is allowed. When a request is blocked by both, it is attributed to the firewall only, so allowed + mitigated_firewall + mitigated_ratelimit sums to total.
This endpoint requires the security_analytics plan entitlement and the traffic-inspector read permission. Callers on a plan without the entitlement receive 403.
Query parameters
30m, 1h, 6h, 12h, 24h, 7d, 30d, or custom. Default 24h. Unknown values fall back to 24h.time_range=custom — the explicit start and end of the window. to must be after from. Ignored for the presets.source_ip=203.0.113.42 or country=US. browser / os match the derived label set (Chrome, Safari, iOS, Windows, …). Multiple dimensions combine with AND.path_op=starts_with. Free-text dimensions (host, path, ua) accept equals, not_equals, contains, starts_with, ends_with, in, not_in; enumerable dimensions (method, source_ip, asn, country, browser, os) accept equals, not_equals, in, not_in. Defaults to equals when omitted.Response (200 OK)
{start, end, time_range} (start/end are timestamps; time_range echoes the requested preset).{total, allowed, mitigated_firewall, mitigated_ratelimit, mitigated_total, mitigation_rate}. Counts over the window; mitigation_rate is mitigated_total / total (0–1).{labels, allowed, mitigated_firewall, mitigated_ratelimit}. Every array is the same length (one entry per bucket, zeros included). The bucket interval is chosen from the window size.{source_ips, asns, countries, user_agents, paths, hosts, rules, browsers, operating_systems}. Each is an array (top 10) ranked by mitigated then total. Standard dimensions emit {value, total, mitigated, mitigation_rate}; asns add a numeric asn; rules emit {value, rule_id, kind, hits} where kind is firewall or rate_limit.{id, request_ts, source_ip, country, host, path, method, status_code, action, rule_name} where action is firewall or rate_limit.Errors
custom with a missing or non-ordered from/to).security_analytics entitlement, or the member lacks traffic-inspector read permission.