One metric per day across projects
As the per-project route.
An API token from POST /v2/tokens (at_live_...), or a project's secret key (sk_...) for server-side ingest.
In: header
Query Parameters
Start of the range; send with to.
date-timeEnd of the range, exclusive.
date-timeA range ending at the start of today in UTC (24h ends at the start of this hour). Ignored when from and to are sent; 30d by default.
Value in
- "24h"
- "7d"
- "30d"
- "90d"
- "12mo"
- "all"
filter[route], filter[page] and filter[country]; a value, or !value to exclude.
mobile (tablets included), desktop or all (the default).
Value in
- "mobile"
- "desktop"
- "all"
production (the default) leaves preview deployments out, preview keeps only them, all keeps both.
Value in
- "production"
- "preview"
- "all"
Bucket size in UTC: day (the default) or hour, which covers at most 7 days and only the last 30 days of raw samples.
Value in
- "hour"
- "day"
route (the default) groups by the route the SDK reported, falling back to the path; path groups by the path.
Value in
- "route"
- "path"
Which percentile of the samples the values show; default 75.
Value in
- "50"
- "75"
- "90"
- "95"
- "99"
The Web Vital: lcp, inp, cls, fcp or ttfb. Required on speed/timeseries and speed/elements.
Value in
- "lcp"
- "inp"
- "cls"
- "fcp"
- "ttfb"
Rows per page, 1 to 100 (default 20), or up to 1000 with format.
1 <= value <= 1000The opaque nextCursor of the previous page.
1 <= lengthResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v2/speed/timeseries"{ "data": [ { "bucket": "2026-09-25T00:00:00.000Z", "value": 2640, "samples": 41 }, { "bucket": "2026-09-26T00:00:00.000Z", "value": null, "samples": 12 } ], "metric": "lcp", "percentile": 75, "device": "mobile", "environment": "production", "interval": "day", "range": { "from": "2026-09-25T00:00:00.000Z", "to": "2026-09-27T00:00:00.000Z" }}