hosting
GET /v1/sites/{siteId}/vitals
Get a site's homepage Core Web Vitals.
Uwierzytelnianie
Wyślij klucz API jako token bearer. Ten punkt końcowy nie określa konkretnego uprawnienia w specyfikacji, więc nadaj swojemu kluczowi minimum potrzebnych uprawnień i sprawdź odpowiedź zamiast zakładać.
Ten punkt końcowy nie wymaga identyfikatora organizacji. Twój klucz już identyfikuje organizację, do której należy, a odpowiedź jest do niej ograniczona.
Wypróbuj
Zastąp wszystko w nawiasach ostrych własnymi wartościami, a zastępczy znacznik klucza kluczem ze swojego pulpitu nawigacyjnego.
curl -X GET https://api.zinndigital.com/v1/sites/{siteId}/vitals \
-H "Authorization: Bearer zdk_live_…"Zalogowany? Konsola API w Twoim panelu uzupełnia rzeczywiste identyfikator organizacji oraz Twój własny klucz i wykonuje żądanie względem aktywnego API, dzięki czemu możesz zobaczyć rzeczywistą odpowiedź. Otwórz ten punkt końcowy w konsoli API
Szczegóły
The site's newest Core Web Vitals reading — LCP, CLS and INP for its homepage, with the "good / needs improvement / poor" band for each and for the reading as a whole. Backs the Performance tab's vitals card and the free SEO Basics tile, both of which are sold as included on every plan and every site. RLS-scoped to a site the caller can view (sites.view); an out-of-scope or unknown id is a 404, exactly like getSite. Homepage only, by design. Every surface that sells this sells homepage Core Web Vitals. Measuring every URL of every site is a different product. Collection is asynchronous. Readings are taken off the request path by a scheduled collector and read back here — a live Lighthouse run would be a 20-second uncached external call on a tab that mounts for every site (CLAUDE.md §2.16). Until a site has been measured, available is false, every metric is null and every band is unknown. source must be rendered. A lab reading is a synthetic Lighthouse run; a field reading is what real Chrome users experienced (Chrome UX Report) and is what Google ranks on. Field data does not exist for sites below CrUX's traffic threshold — which is most low-traffic sites — so lab is the coverage tier. Presenting a lab score as though real users produced it is a false claim about what visitors experienced, so clients must label which one they are showing.
Parametry
| Nazwa | Typ | Wymagane | Co to jest |
|---|---|---|---|
siteId (path) | Uuid | Tak | Site ID (UUIDv7). |
Odpowiedź
| Nazwa | Typ | Wymagane | Co to jest |
|---|---|---|---|
available | boolean | Tak | Whether any vitals reading exists for this site yet. |
url | string | Tak | The exact URL measured. Empty when unavailable. |
source | string<field, lab, > | Tak | field = Chrome UX Report (real users, what Google ranks on); lab = a synthetic Lighthouse run. Clients MUST label which is shown. Empty string when unavailable, following… |
field_available | boolean | Tak | Whether real-user (field) data exists for this site at all, independent of which reading is returned — so the UI can say "no real-user data yet" while still showing the lab number. |
lcp_ms | object | Tak | Largest Contentful Paint, p75, milliseconds. Good ≤ 2500, poor > 4000. |
cls_milli | object | Tak | Cumulative Layout Shift, p75, in thousandths (0.083 → 83). An integer so no band comparison is ever made against a float at the 0.1/0.25 boundaries; clients render… |
inp_ms | object | Tak | Interaction to Next Paint, p75, milliseconds. Good ≤ 200, poor > 500. INP replaced First Input Delay as a Core Web Vital in March 2024; FID is retired and is deliberately not… |
ttfb_ms | object | Tak | Time to First Byte — a diagnostic, not a Core Web Vital. |
fcp_ms | object | Tak | First Contentful Paint — a diagnostic, not a Core Web Vital. |
performance_score | object | Tak | Lighthouse performance score, 0–100. Always null on a field reading — the Chrome UX Report computes no score, and inventing one would present a number Google never produced. |
accessibility_score | object | Tak | Lighthouse accessibility score, 0–100 (docs/85 §2.1). Lighthouse computes all four of its categories from a single page load, so this costs about a second on a 10–30 s run —… |
best_practices_score | object | Tak | Lighthouse best-practices score, 0–100 — mixed content, deprecated APIs, console errors. null on a field reading. |
seo_score | object | Tak | Lighthouse SEO score, 0–100. null on a field reading. |
stack_packs | string[] | Tak | The technology stacks Lighthouse detected on this run (wordpress, woocommerce, …). Ids only. Lighthouse also ships stack-specific remediation text; that is untranslated… |
band | VitalsBand | Tak | A Core Web Vitals verdict against Google's published p75 thresholds. The overall band is the worst of the three measured metrics, because that is how Google assesses a page:… |
lcp_band | VitalsBand | Tak | A Core Web Vitals verdict against Google's published p75 thresholds. The overall band is the worst of the three measured metrics, because that is how Google assesses a page:… |
cls_band | VitalsBand | Tak | A Core Web Vitals verdict against Google's published p75 thresholds. The overall band is the worst of the three measured metrics, because that is how Google assesses a page:… |
inp_band | VitalsBand | Tak | A Core Web Vitals verdict against Google's published p75 thresholds. The overall band is the worst of the three measured metrics, because that is how Google assesses a page:… |
measured_at | object | Tak | — |
opportunities | SiteVitalsOpportunity[] | Tak | What is actually making this page slow, largest saving first — the "why" behind the numbers above. ⚠️ An empty array does not mean "nothing to fix". It means this reading… |
screenshots | SiteVitalsScreenshots | Tak | What the page looked like while it loaded — the filmstrip and the finished render. available is reported separately from the parent envelope's flag because a perfectly good… |
Błędy, które ten punkt końcowy może zwrócić
401 · 403 · 404 · 429