hosting
POST /v1/sites/{siteId}/quota/resources/{resource}/downgrade
Reduce a site's allowance — refused while the site is over the target.
Баталгаажуулалт
API түлхүүрийг bearer token хэлбэрээр илгөэнэ үү. Түлхүүр нь sites.view эрхтэй байх ёстой бөгөөд үүнгүйгээр 404 биш, харин 403 алдаа буцааж татгалзах болно.
Энэ төгсгөл цэг нь ямар ч байгууллагын ID шаардахгүй. Таны түлхүүр аль хэдийн харьяалагдах байгууллагыг тодорхойлж байгаа бөгөөд хариу нь тухайн байгууллагын хүрээнд хязгаарлагдана.
Туршиж үзэх
Өнцөг хаалтанд байгаа бүх зүйлийг өөрийн утгаар солиж, түлхүүр санамж байрлуулагчийг хяналтын самбарынхаа түлхүүрээр сольж оруулна уу.
curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/quota/resources/{resource}/downgrade \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "target": <number> }'Та нэвтэрсэн байна уу? Таны хяналтын самбар дахь API консол нь таны бодит байгууллагын ID болон өөрийн түлхүүрийг автоматаар бөглөж, шууд ажиллаж буй API рүү хүсэлт илгээх тул та бодит хариуг харах боломжтой болно. Энэ төгсгөлийн цэгийг API консол дээр нээх
Дэлгэрэнгүй
Owner ruling: downgrades are allowed **only when the site is not over the limit**. The check is made against a **live** reading of the box, not a stored sample: a downgrade is an irreversible narrowing the customer meets at their next write, so an hour-old figure could license one that is already breached. ⛔ An **unreadable** usage is a refusal, not a pass. If the box cannot be measured the request answers `422`; "we could not tell, so we allowed it" is how a customer ends up above a ceiling they did not choose. The `422` body names the real numbers — *"This site is using 1.90 GB of disk, which is more than the 1.00 GB you asked for"* — because a customer told only "you cannot reduce this" files a ticket, and one told the figures deletes something. Purchased grants for the resource are revoked so the ceiling **is** the number asked for; staff gestures are deliberately left alone. Requires `sites.view` and `hosting.quota.manage`.
Параметрүүд
| Нэр | Төрөл | Заавал шаардлагатай | Энэ юу вэ |
|---|---|---|---|
siteId (path) | Uuid | Тийм | Site ID (UUIDv7). |
resource (path) | string<disk, inodes> | Тийм | Which metered per-site resource. Only resources the platform actually enforces are addressable — `bandwidth` is modelled and priceable in admin but nothing measures or enforces… |
Хүсэлтийн бие
| Нэр | Төрөл | Заавал шаардлагатай | Энэ юу вэ |
|---|---|---|---|
target | number | Тийм | The new ceiling, in the resource's sold unit. Refused with `422` when the site is currently using more than this, or when its usage cannot be read. |
Хариу үйлдэл
| Нэр | Төрөл | Заавал шаардлагатай | Энэ юу вэ |
|---|---|---|---|
resource | string<disk, inodes, bandwidth> | Тийм | — |
unit | SiteQuotaUnit | Тийм | The unit a quota's figures are expressed in, as a **code the client localises** — never a word to render raw. `GB` for disk and bandwidth, `files` for inodes. ⛔ This was an unco… |
step | integer | Тийм | One purchasable step, in `unit`. A customer buys N of these, never an arbitrary size. |
base | number | Тийм | The site's own allowance, copied from the product line's admin-set default when the site was provisioned. `null` means this site has no limit row yet — it has not been through p… |
granted | number | Тийм | Extra from grants live right now — staff gestures and purchased upgrades, added together. |
total | number | Тийм | The effective ceiling — `base + granted`. `null` when `base` is null. |
used | number | Тийм | Measured usage. `null` means **unknown** — the box was unreachable, or nothing has sampled it yet — and never `0`. A client must render those differently. |
percent | integer | Тийм | Usage as a whole percentage of `total`, or `null` when either is unknown. |
measured_at | string | Тийм | When the box was last asked. **Render the age.** A bar drawn from a two-day-old reading looks identical to one drawn a minute ago, and the customer cannot tell. |
reverts_at | string | Тийм | When the ceiling next **drops**, because a temporary grant expires. `null` when no live grant has an expiry. A customer whose limit is about to fall needs to know before it does. |
warn_at_percent | integer[] | Тийм | The thresholds at which the platform notifies the customer, ascending. |
price_minor | integer | Тийм | Cost of ONE step, in integer minor units of `price_currency`, NET of tax. `null` means no price is published in the caller's currency — the client must then show no upgrade cont… |
price_currency | string | Тийм | — |
price_interval | string<monthly, yearly> | Тийм | — |
Энэ төгсгөл цэгээс буцааж болох алдаанууд
401 · 403 · 404 · 422 · 429