Requires watchly:view. One endpoint answers most reporting questions via query params rather than one route per report.
Example
GET /metrics?metrics=visitors,pageViews,lcp&groupBy=country&from=2026-08-01&to=2026-08-27
Supported dimensions (v1)
Every metric supports date, space, country, region, city, and page. referrer is pageViews-only and link is linkClicks-only. browser/operatingSystem/deviceType are not yet supported and return 400.
Space scoping
A caller with only space-restricted access must supply space; a tenant-wide grant can query with or without it.
Requires watchly:users. Returns the canonical visitor's linked identities, geography, and first/last-seen timestamps. Resolved by visitorId and tenant together — never returns another tenant's visitor.
Requires watchly:users. Filterable by from/to/space/type, paginated. Only returns events still within the raw-event retention window — older activity is metrics-only.
Requires watchly:admin. Reports the daily-summary and event-retention jobs' last run state, plus effective retention configuration. Error messages are sanitized — never includes DB/env/infrastructure details.