Core Web Vitals
Returns LCP, INP/TBT, and CLS values for the site homepage with good/needs-improvement/poor ratings and PageSpeed Insights category scores.
GET
/api/v1/sites/:siteId/cwvCore Web Vitals status
Returns LCP, INP/TBT, and CLS values for the site homepage with good/needs-improvement/poor ratings and PageSpeed Insights category scores.
Request
bash
curl -X GET \
'https://letoseo.com/api/v1/sites/:siteId/cwv' \
-H 'Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'Path parameters
| Name | Type | Required | Description | Default |
|---|---|---|---|---|
siteId | uuid | required | The site UUID. | — |
Responses
200CWV metrics and PSI scores.
json
{
"data": {
"cwv": [
{
"name": "LCP",
"label": "Largest Contentful Paint",
"labValue": 1840,
"fieldValue": null,
"unit": "ms",
"status": "good",
"thresholds": {
"good": 2500,
"poor": 4000
}
},
{
"name": "TBT",
"label": "Total Blocking Time",
"labValue": 120,
"fieldValue": null,
"unit": "ms",
"status": "good",
"thresholds": {
"good": 200,
"poor": 600
}
},
{
"name": "CLS",
"label": "Cumulative Layout Shift",
"labValue": 0.04,
"fieldValue": null,
"unit": "",
"status": "good",
"thresholds": {
"good": 0.1,
"poor": 0.25
}
}
],
"psiScores": {
"performance": 91,
"accessibility": 88,
"bestPractices": 95,
"seo": 100,
"url": "https://acme-demo.example",
"lastScannedAt": "2025-01-13T05:00:00.000Z"
},
"hasFieldData": false
},
"_meta": {
"generated_at": "2025-01-15T10:30:00.000Z",
"site_id": "00000000-0000-0000-0000-000000000001"
}
}404Site not found or not owned by the authenticated user.
json
{
"error": "Site not found"
}