hosting
POST /v1/sites/{siteId}/vendor-snapshots/restore
Restore a site from a vendor restore point.
Autenticação
Envie uma chave de API como um token de portador. A chave deve ter a permissão hosting.backup.manage; uma chave sem ela é recusada com 403, e não 404.
Este endpoint não requer um ID de organização. Sua chave já identifica a organização à qual pertence, e a resposta é delimitada a ela.
Experimente
Substitua qualquer item entre colchetes por seus próprios valores e o espaço reservado para a chave por uma chave do seu painel.
curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/vendor-snapshots/restore \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "scope": <string<web, database, mailbox>>, "timestamp": <string> }'Conectado? O console da API no seu painel preenche o ID da sua organização real e a sua própria chave, e executa a requisição contra a API de produção para que você possa ver a resposta real. Abra este endpoint no console da API
Detalhes
Rolls the website, one database or one mailbox back to a named restore point. `202` and the whole surface's new state, for the same reason `takeSiteVendorSnapshot` returns it: the platform performs the restore afterwards and the client polls on `in_progress`. ⛔ **This is the destructive one, and its own path is part of how it is gated.** It overwrites the customer's live files and database, so it is deliberately not a verb on the collection that takes backups — it must not be reachable by sending a slightly different body to the endpoint beside it. A restore always **names its restore point**, never "the latest": `timestamp` is one of the values `getSiteVendorSnapshots` returned, and the engine re-checks it against the live listing before anything is sent, so a value a client composed cannot reach the vendor. `temp_mailbox` applies to mailboxes only, where the platform restores into a `temp-` prefixed mailbox instead of overwriting the original; it is offered as a choice rather than assumed. The action is audit-logged **after** the platform accepts it, so the trail never claims a restore a refusal never started. `404` for a site with no vendor hosting package, or one that is not the caller's; `422` for a restore point that is no longer in the listing or a scope that cannot be restored. Requires `hosting.backup.manage`.
Parâmetros
| Nome | Tipo | Obrigatório | O que é |
|---|---|---|---|
siteId (path) | Uuid | Sim | Site ID (UUIDv7). |
Corpo da requisição
| Nome | Tipo | Obrigatório | O que é |
|---|---|---|---|
scope | string<web, database, mailbox> | Sim | What to restore. |
timestamp | string | Sim | The restore point's handle, exactly as `getSiteVendorSnapshots` reported it. |
item_id | string | Não | Which database or mailbox. Empty for the website. |
temp_mailbox | boolean | Não | Mailboxes only. The platform restores into a `temp-` prefixed mailbox instead of overwriting the original, which is the safe default for mail — offered as a choice rather than a… |
Resposta
| Nome | Tipo | Obrigatório | O que é |
|---|---|---|---|
available | boolean | Sim | Whether the site's hosting platform has a timeline surface at all. False is **our** gap, and nothing the customer can do changes it. |
permitted | boolean | Sim | Whether the vendor package type includes it. False is answered by an upgrade. |
pro | boolean | Sim | Whether the package carries the paid tier rather than the included one. |
attached | boolean | Sim | Whether a Timeline Storage service is actually attached to the package. False is the third "no", and it is neither of the other two. |
can_back_up | boolean | Sim | Whether `takeSiteVendorSnapshot` would be accepted right now. Read rather than recomputed from the three flags above, so a screen never offers a button the engine refuses. |
has_dead_web | boolean | Sim | Whether the platform reports the website's timeline as broken. It is surfaced rather than hidden: a customer whose restore points stopped being taken needs to know before they n… |
in_progress | boolean | Sim | Whether any snapshot or restore job is running. This is what a client polls on, and only while it is true. |
web | SiteVendorSnapshotItem | Sim | The website's timeline, or null when the platform holds none. |
databases | SiteVendorSnapshotItem[] | Sim | Each database's timeline. |
mailboxes | SiteVendorSnapshotItem[] | Sim | Each mailbox's timeline. |
Erros que este endpoint pode retornar
401 · 403 · 404 · 422 · 429 · 503