hosting
GET /v1/sites/{siteId}/quota/resources
What this site is allowed per resource, what it is using, and what more costs.
Autenticación
Envía una clave de API como token de portador. La clave debe tener el permiso sites.view; una clave que no lo tenga se rechazará con un código 403, no 404.
Este endpoint no requiere ningún id de organización. Su clave ya identifica la organización a la que pertenece, y la respuesta está delimitada a ella.
Pruébalo
Reemplaza cualquier elemento entre corchetes angulares por tus propios valores, y el marcador de posición key con una clave de tu panel de control.
curl -X GET https://api.zinndigital.com/v1/sites/{siteId}/quota/resources \
-H "Authorization: Bearer zdk_live_…"¿Has iniciado sesión? La consola de la API en tu panel de control rellena el ID de tu organización real y tu propia clave, y ejecuta la solicitud contra la API en vivo para que puedas ver la respuesta real. Abre este endpoint en la consola de la API
Detalles
The **lifecycle** view, where `GET /v1/sites/{siteId}/quota` is the live read of what the box is enforcing right now. Owner ruling 2026-08-16: a plan grants **site slots**; disk, inodes and bandwidth are **per-site** resources with an admin-set default and a paid per-site upgrade. Each entry decomposes the allowance into `base` (the site's own copied default), `granted` (live grants — staff gestures and purchased upgrades) and `total`, because a card showing only the total cannot explain why the number changed when a grant expired. `reverts_at` is when the ceiling next **drops** because a temporary grant ends, so a customer learns before it happens rather than after. `measured_at` is surfaced deliberately: a bar drawn from a two-day-old reading looks identical to one drawn from a fresh reading, and `null` means nothing has ever measured this site. `price_minor` is `null` when no price is published in the caller's currency, and the client must then offer **no upgrade control** rather than one that cannot complete. Only resources this site's driver can actually enforce are listed. On a managed shared package the disk ceiling belongs to the package *type* and an inode limit does not exist at any level, so the list is empty there — the control is absent rather than inert. Requires `sites.view`.
Parámetros
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
siteId (path) | Uuid | Sí | Site ID (UUIDv7). |
Respuesta
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
frozen | boolean | Sí | Whether the platform has restricted this site **for being over a quota**. It is deliberately not "is this site restricted": that rung is shared with the malware and abuse ladder… |
resources | SiteQuotaResource[] | Sí | Only resources this site's driver can actually enforce. Empty on a managed hosting package, where the disk ceiling belongs to the package type and inodes do not exist. |
Errores que este endpoint puede devolver
401 · 403 · 404 · 429