hosting
POST /v1/sites/{siteId}/previews
Build a branch as a preview, without touching the live site.
Autenticación
Envía una clave de API como token de portador. La clave debe tener el permiso hosting.deploy.manage; 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/{siteId}/previews \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "branch": <string> }'¿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
A preview NEVER binds the site's hostname: it is reachable at the provider's own per-deployment URL and nowhere else, which is the whole promise of a preview. Previewing the branch the site already serves is refused rather than quietly promoted to a production deploy. Requires `hosting.deploy.manage`.
Parámetros
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
siteId (path) | Uuid | Sí | Site ID (UUIDv7). |
Cuerpo de la solicitud
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
branch | string | Sí | The branch to build as a preview. Must not be the branch the site already serves — that would be a normal deploy. |
Respuesta
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
id | Uuid | Sí | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
site_id | Uuid | Sí | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
target | DeployTarget | Sí | Where the site is published from. `fleet` is our own managed fleet; the rest are managed edge hosts, deployed to from a pooled account of ours or the customer's own connected on… |
status | DeployStatus | Sí | `idle` means the site has never been deployed. It is reported, never stored — a stored idle would be a second way to say "no deployments" that could contradict the first. |
trigger | DeployTrigger | Sí | What caused the deploy. Stored because `requested_by` cannot answer it for a push — the actor there is a webhook delivery, not a person. |
repo | object | Sí | — |
branch | object | Sí | — |
commit | object | Sí | — |
commit_message | object | Sí | — |
live_url | object | Sí | — |
message | object | Sí | Why it failed, else null. Rendered to the customer verbatim. |
requested_by | string | Sí | — |
created_at | string | Sí | — |
started_at | object | Sí | — |
finished_at | object | Sí | — |
log | string | Sí | The build log, one timestamped line per step. Truncated from the FRONT when long — the end of a build log is where the failure is. |
Errores que este endpoint puede devolver
401 · 403 · 404 · 409 · 422 · 429 · 503