{siteKey} (UUID or domain). All endpoints require Authorization: Bearer {token}.
Every endpoint accepts the shared date range parameters (range, or from/to) and, unless noted otherwise, the shared dashboard filters as query parameters. Money fields (revenue, recurring_revenue, and their _new/_renewal/_refunds splits) follow the Conventions money contract — integers in minor units, never floats. The site’s Overview endpoint (topline metrics + previous-period delta) is documented in Sites — this page covers the deeper reads.
Timeseries
Query parameters — date range and filters only; no dimension-specific params.
Response — a flat object:
Status:
200 OK.
Breakdown
Query parameters
Plus date range and filters.
sort_by allows visitors, revenue, recurring_revenue — except: on the event_name dimension, or whenever an active goal filter puts the breakdown into conversions mode (every dimension except entry_path, exit_path, channel, source, campaign), only visitors is allowed. An invalid pairing returns 422.
Note: this endpoint does not accept a campaign_param; the campaign dimension always unions every UTM/ref column (equivalent to campaign_param=all on the Campaign details endpoint below).
Response
Each row in
rows:
Status:
200 OK.
Goal breakdown
Query parameters — date range and filters. The
goal filter, if present, is ignored — this endpoint always lists every goal.
Response — flat JSON array of:
Status:
200 OK.
Performance overview
Query parameters — date range and filters.
Response — a flat object with 4 percentiles (
p50, p75, p90, p99) for each of 5 metrics (lcp, cls, inp, fcp, ttfb), plus a total count:
Status:
200 OK.
Performance timeseries
Query parameters
Plus date range and filters.
Response
Status:
200 OK.
Performance by dimension
Query parameters
Plus date range and filters.
Response — flat JSON array, one entry per dimension value:
Status:
200 OK.
Location details
country/region/city/browser/os/device/channel/source/referrer_domain dimensions, fetched on demand rather than for the dashboard card.
Path parameters
Query parameters
Plus date range and filters.
channel/source/referrer_domain ignore an active goal filter (they rank visit volume, not conversions).
Response
Each row in
rows:
Status:
200 OK.
Campaign details
param=value rows unioned across every UTM/ref column (or one column when narrowed), with bounce rate and average visit duration.
Path parameters
Query parameters
Plus date range and filters. An active
goal filter is ignored (ranks visit volume, not conversions).
Response
Each row in
rows:
Status:
200 OK.
Page details
Query parameters
Plus date range and filters.
Response
Each row in
rows — fields depend on kind:
Status:
200 OK.

