hosting
POST /v1/sites/deleted/{deletedSiteId}/restore
Restore a deleted site.
Autenticación
Envía una clave de API como token de portador. La clave debe tener el permiso sites.create; 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 POST https://api.zinndigital.com/v1/sites/deleted/{deletedSiteId}/restore \
-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
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.
Parámetros
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
deletedSiteId (path) | Uuid | Sí | The `DeletedSite` record id (not the site id). |
Respuesta
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
id | Uuid | Sí | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
site_id | Uuid | Sí | The site this was. May no longer exist as a row. |
org_id | Uuid | Sí | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
primary_domain | string | Sí | — |
reason | string<dunning, customer, staff, abuse> | Sí | 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 | Sí | Soft delete — removed from serving. The data is still here. |
deleted_by | string | No | — |
purge_due_at | string | No | **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 | No | Hard delete. Non-null means the data is gone and no restore is possible. |
restored_at | string | No | — |
restorable | boolean | Sí | 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> | Sí | 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… |
Errores que este endpoint puede devolver
401 · 403 · 404 · 422 · 429 · 503