Read Web Vitals and JavaScript errors from real browsers
Returns the 75th percentile of LCP, INP, CLS, FCP and TTFB with rating shares, a chart and breakdowns by device, browser and country, the most viewed pages, JavaScript error groups with a recorded session for each, page views and bounce, the fetch and XHR calls pages make, and visitors' browsers, systems and countries. Filter fields: `route` (the page template), `device`, `browser`, `os` and `country`.
Authorization
cloady Personal API token (cldy_…)
In: header
Path Parameters
Query Parameters
Value in
- "production"
- "preview"
- "development"
How far back to look; the answer has 30 to 96 points across it
"1h"Value in
- "15m"
- "1h"
- "6h"
- "24h"
- "7d"
Filters, each written <field><op><value> with op =, !=, =~ or !~; =~ and !~ take a regular expression matched against the whole value, ignoring case. Repeat the parameter for several; every one must hold
items <= 20Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/workspaces/string/apps/string/browser/vitals"{ "start": 0, "step": 0, "sparkStart": 0, "sparkStep": 0, "query": "string", "vitals": [ { "name": "LCP", "p75": 0, "good": 0, "ni": 0, "poor": 0, "series": [ 0 ], "spark": [ 0 ], "by": { "device": [ { "value": "string", "p75": 0, "samples": 0 } ], "browser": [ { "value": "string", "p75": 0, "samples": 0 } ], "country": [ { "value": "string", "p75": 0, "samples": 0 } ] } } ], "pages": [ { "page": "string", "views": 0, "lcp": 0, "inp": 0, "cls": 0, "errors": 0 } ], "errors": [ { "fp": "string", "title": "string", "culprit": "string", "page": "string", "file": "string", "line": 0, "col": 0, "events": 0, "sessions": 0, "spark": [ 0 ], "replay": { "session": "string", "at": 0 } } ], "traffic": { "views": 0, "sessions": 0, "bounce": 0, "pagesPerSession": 0, "spark": [ 0 ] }, "calls": [ { "method": "string", "host": "string", "route": "string", "calls": 0, "failed": 0, "p75": 0 } ], "agents": { "browser": [ { "value": "string", "views": 0 } ], "os": [ { "value": "string", "views": 0 } ], "device": [ { "value": "string", "views": 0 } ], "country": [ { "value": "string", "views": 0 } ] }}Read browser monitoring GET
Returns the app's public browser key, the script URL and the hosts allowed to send beacons, from which the snippet is built, when the newest beacon arrived and the settings its snippet carries, and LCP p75 and active sessions over the range once pages send beacons. Browser monitoring is on exactly while the app's pages carry the snippet, and its settings (replay share, masking, conversion goal) live in the snippet itself, so turning it off means removing the snippet.
List browser sessions GET
Returns active sessions, sessions in the range, mean duration and how many had a JavaScript error or a rage or dead click, session counts per lens, and the 100 most recently active sessions in the chosen lens. A route filter keeps sessions that viewed that page at any point. Filter fields: `route` (the page template), `device`, `browser`, `os` and `country`.