hosting

POST /v1/sites/{siteId}/vitals/checks

Measure one page of this site on demand.

सभी hosting एंडपॉइंट्स

प्रमाणन

एक बीयर टोकन के रूप में एक API कुंजी भेजें। यह एंडपॉइंट विनिर्देश में किसी विशिष्ट अनुमति का उल्लेख नहीं करता है, इसलिए अपनी कुंजी को न्यूनतम आवश्यकता दें और अनुमान लगाने के बजाय प्रतिक्रिया की जाँच करें।

यह एंडपॉइंट कोई संगठन आईडी नहीं लेता है। आपकी कुंजी पहले से ही उस संगठन की पहचान करती है जिससे वह संबंधित है, और प्रतिक्रिया उसी के दायरे में है।

इसे आज़माएँ

कोणार्कित ब्रैकेट्स में दी गई किसी भी चीज़ को अपने मानों से बदलें, और की प्लेसहोलर को अपने डैशबोर्ड की एक की से बदलें।

curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/vitals/checks \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "url": <string> }'

साइन इन हैं? आपके डैशबोर्ड में मौजूद API कंसोल आपकी वास्तविक संगठन आईडी और आपकी अपनी कुंजी स्वतः भर देता है, और लाइव API के विरुद्ध अनुरोध चलाता है ताकि आप वास्तविक प्रतिक्रिया देख सकें। इस एंडपॉइंट को API कंसोल में खोलें

विवरण

`getSiteVitals` measures the **homepage** on a schedule, which makes the product descriptive. This makes it diagnostic: *"the homepage is fine, it is `/shop/category/boots` that is slow"*. Gated on `sites.view` — asking how fast your own page is changes nothing about it. **Returns `202`, never the measurement.** A Lighthouse run takes 10-30 seconds; holding the request open is the uncached hot-path work CLAUDE.md 2.16 forbids and it times out behind Cloudflare. Poll `getSiteVitalsCheck` with the returned `id` until `status` is `done` or `failed`. **A URL outside this site is a `404`, not a `403`.** A 403 would confirm that some other organisation owns that hostname, turning this endpoint into an ownership oracle over the estate. The submitted address may be a path (`/shop/boots`), a bare hostname, or an absolute URL; it is normalised — lowercased, port and trailing dot stripped, leading `www.` folded — before being compared against the site's `primary_domain` and its aliases. The URL that comes back is rebuilt on whichever of the site's own hostnames matched, **not** on the folded form and not on what was typed: a site that lives on `www.` is measured on `www.`, because the apex may 301 or not resolve at all. Clients should display the returned `url`. **A recent identical check is returned instead of starting a new one.** Within the cache window the stored measurement comes back with `cached: true` and `status` already `done`, and it costs no quota. Clients should render `measured_at` rather than implying the page was just re-measured. **A check of the same URL that is still running is returned too** — same `202`, `cached: false`, `status` `queued` or `running`. A double-click is therefore one measurement and one quota unit, not two. Clients get an `id` to poll either way, so no branch on this is needed; it is documented because the `id` may be one the caller has already seen. **A check that has not finished within the staleness window is reported `failed`** with `error_code: timed_out`, by the read path rather than by a writer. Nothing writes a terminal status when a workflow is cancelled or its task queue has no worker, so a client that waits for one would poll a `running` check for ever. **`429` when the organisation's daily allowance is spent**, with `Retry-After` and a body naming the limit. The allowance exists because one customer in a refresh loop would otherwise burn the whole estate's shared PageSpeed quota and take a free feature down for everyone. Cached results never count against it.

पैरामीटर

नामप्रकारआवश्यकयह क्या है
siteId (path)UuidहाँSite ID (UUIDv7).

अनुरोध बॉडी

नामप्रकारआवश्यकयह क्या है
urlstringहाँThe page to measure. A path (`/shop/boots`), a bare hostname, or an absolute URL. It must resolve to this site's `primary_domain` or one of its aliases — anything else is a `404…

प्रतिक्रिया

नामप्रकारआवश्यकयह क्या है
idstringहाँ
urlstringहाँThe normalised absolute URL that was (or is being) measured.
statusstring<queued, running, done, failed>हाँ`failed` is a finished state with a customer-readable `error`, not an infrastructure fault — a page that is down or blocked to crawlers reaches it.
cachedbooleanहाँTrue when this is a stored measurement of the same URL served from the cache window rather than a run that was just started. Render `measured_at` rather than implying the page w…
errorstringहाँEmpty unless `status` is `failed`. A sentence written for a customer to act on; never a stack trace or an internal hostname. **English, and a FALLBACK** — it is authored server-…
error_codestringहाँA stable machine reason the client turns into a localised sentence: `no_data`, `no_result`, `check_failed`, `timed_out`. Empty unless `status` is `failed`. New members are addit…
created_atstringहाँ
finished_atstringनहीं
resultSiteVitalsनहींThe measurement, present once `status` is `done`. Null while queued or running and on failure — never a zeroed placeholder, which would render as a real measurement of a page th…
remaining_todayobjectहाँChecks left in this organisation's rolling daily allowance, so the UI can warn before the button is refused rather than only explaining a `429` afterwards. **`null` means no cap…

त्रुटियाँ जो यह एंडपॉइंट लौटा सकता है

401 · 403 · 404 · 422 · 429 · 503