hosting
POST /v1/sites/deleted/{deletedSiteId}/restore
Restore a deleted site.
Authentification
Envoyez une clé API en tant que jeton du porteur. La clé doit posséder l'autorisation sites.create ; une clé qui ne l'a pas est refusée avec le code 403, et non 404.
Cet endpoint ne prend aucun identifiant d'organisation. Votre clé identifie déjà l'organisation à laquelle elle appartient, et la réponse y est limitée.
Essayer
Remplacez tout ce qui se trouve entre crochets par vos propres valeurs, et le espace réservé à la clé par une clé de votre tableau de bord.
curl -X POST https://api.zinndigital.com/v1/sites/deleted/{deletedSiteId}/restore \
-H "Authorization: Bearer zdk_live_…"Connecté ? La console d'API de votre tableau de bord saisit votre véritable ID d'organisation ainsi que votre propre clé, et exécute la requête sur l'API de production afin que vous puissiez voir la réponse réelle. Ouvrir ce point de terminaison dans la console API
Détails
Brings a deleted site back. Answers `202` — the site is rebuilt by a workflow, and returns to `suspended` rather than `active` until it is actually serving again. ⛔ **The guard is re-evaluated on this request, never trusted from the button.** Between the list rendering and the click the customer may have recreated a site on the same domain, the retention window may have closed, or the purge may have run. A `422` carries the machine-readable reason (`no_backup`, `purged`, `domain_in_use`, `already_restored`, `abuse_hold`) so the client can say which it was. Requires `sites.create` as well as `sites.view`: a restore *creates* a live site.
Paramètres
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
deletedSiteId (path) | Uuid | Oui | The `DeletedSite` record id (not the site id). |
Réponse
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
id | Uuid | Oui | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
site_id | Uuid | Oui | The site this was. May no longer exist as a row. |
org_id | Uuid | Oui | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
primary_domain | string | Oui | — |
reason | string<dunning, customer, staff, abuse> | Oui | Why it was deleted. `abuse` is restorable by staff only — a one-click customer restore of a site removed for terms enforcement would undo the enforcement. |
deleted_at | string | Oui | Soft delete — removed from serving. The data is still here. |
deleted_by | string | Non | — |
purge_due_at | string | Non | **When the backup is purged and the site becomes permanently unrecoverable.** ⛔ Computed by the engine from the live retention policy, by the same function the purge sweep selec… |
purged_at | string | Non | Hard delete. Non-null means the data is gone and no restore is possible. |
restored_at | string | Non | — |
restorable | boolean | Oui | Whether a restore would succeed **right now**. Reflects a real check that the backup object exists in storage — not a status column. |
reason_code | string<, no_backup, purged, domain_in_use, already_restored, abuse_hold> | Oui | Empty when restorable. Otherwise one of `no_backup`, `purged`, `domain_in_use`, `already_restored`, `abuse_hold`. ⛔ A **code**, rendered by the client through its own catalogue… |
Erreurs que cet point de terminaison peut renvoyer
401 · 403 · 404 · 422 · 429 · 503