hosting

DELETE /v1/sites/{siteId}

Schedule a site's permanent deletion.

Svi hosting krajnji točke

Autentifikacija

Pošaljite API ključ kao nosivi token. Ključ mora imati dozvolu sites.view; ključ bez nje se odbija s kodom 403, a ne 404.

Ova krajnja točka ne prihvaća ID organizacije. Vaš ključ već identificira organizaciju kojoj pripada, a odgovor je ograničen na nju.

Isprobajte

Zamijenite sve unutar šiljastih zagrada svojim vlastitim vrijednostima, a rezervirano mjesto za ključ s ključem iz vaše nadzorne ploče.

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

Prijavljeni ste? API konzola na vašoj nadzornoj ploči automatski unosi stvarni ID vaše organizacije i vaš vlastiti ključ te šalje zahtjev prema aktivnom API-ju kako biste mogli vidjeti stvarni odgovor. Otvori ovu krajnju točku u API konzoli

Pojedinosti

Starts the grace period after which the site, its vendor hosting package and everything on them are destroyed. Until this operation existed the driver could delete a package and the teardown workflow was in place, and a customer who wanted their own site gone had to open a ticket. The site is **not** suspended while the countdown runs — it serves normally, so waiting costs nothing. ⛔ **This operation carries a request body on `DELETE`.** RFC 9110 permits it and it is deliberate: the typed confirmation must travel with the request that acts on it, because a "confirm" call followed by an unconfirmed delete is two requests and the second one is the whole vulnerability. `confirm_domain` is compared against `SiteDeletion.primary_domain` — case-insensitively, ignoring surrounding whitespace and a trailing root dot, and never against an alias. `202` and not `200`: nothing has been destroyed yet. The body is the same `SiteDeletion` resource `getSiteDeletion` returns, so the client renders the countdown from the server's answer rather than from what it asked for. A deletion already scheduled is `409`. A confirmation that does not match, an absent `confirm_domain`, or a site whose state does not allow deletion is `422`. `503` means the teardown could not be armed and **nothing was scheduled** — the request is safe to repeat. A site with no vendor hosting package — anything on our own fleet, or a Zinn® VPS — has no such operation and returns `404`, exactly as an out-of-scope or unknown id does. Requires `sites.view` **and** `sites.delete`; the site lookup is scoped on `sites.delete`, so holding it in one organisation does not reach a site in another.

Parametri

NazivVrstaObaveznoŠto je to
siteId (path)UuidDaSite ID (UUIDv7).

Tijelo zahtjeva

NazivVrstaObaveznoŠto je to
confirm_domainstringDaThe site's primary domain, as the customer typed it. Read the value to prompt for from `SiteDeletion.primary_domain` rather than from a `Site` object already on screen: one valu…

Odgovor

NazivVrstaObaveznoŠto je to
site_idstringDaThe site this deletion state belongs to.
primary_domainstringDa⛔ What the customer must type into `deleteSite`, and what the engine compares against. Read it from here rather than from a `Site` object already on screen: one value on both si…
statestring<none, scheduled, running, stalled, deleted>DaWhere the site is in its lifecycle. A stable machine value the client turns into a localised sentence — never English composed by the engine (§2.19). ⛔ `stalled` is `running` th…
deletablebooleanDaWhether a deletion could be requested right now. False on a site whose state does not allow it, so the form is explained rather than offered and refused.
scheduled_forstringDaWhen the teardown fires, or null when nothing is scheduled.
requested_atstringDaWhen the deletion was requested, or null when nothing is scheduled.
grace_daysintegerDaHow many days the countdown runs. Clamped at both ends — a floor of one day is what stops a misconfiguration meaning *delete now*.
grace_free_reasonstring<, internal, never_provisioned>DaWhy this site would skip the grace period entirely, or `""` when it would not. `never_provisioned` means the site is `failed` — provisioning never completed, so nothing was ever…
can_cancelbooleanDa⛔ **Its own field, and never recomputed as `state == "scheduled"`.** Once the teardown starts, the request row still says scheduled while the site is already being deleted; a cl…

Pogreške koje ova krajnja točka može vratiti

401 · 403 · 404 · 409 · 422 · 429 · 503