hosting
POST /v1/sites/{siteId}/hosting/applications
Install a one-click application onto a live site.
Authentifizierung
Senden Sie einen API-Schlüssel als Bearer-Token. Dieser Endpunkt gibt in der Spezifikation keine spezifische Berechtigung an. Versehen Sie Ihren Schlüssel daher mit den minimal erforderlichen Rechten und prüfen Sie die Antwort, anstatt Annahmen zu treffen.
Dieser Endpunkt erfordert keine Organisations-ID. Ihr Schlüssel identifiziert bereits die zugehörige Organisation, und die Antwort ist entsprechend eingeschränkt.
Ausprobieren
Ersetzen Sie alles in spitzen Klammern durch Ihre eigenen Werte und den Platzhalter für den Schlüssel durch einen Schlüssel aus Ihrem Dashboard.
curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/hosting/applications \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "application": <string> }'Angemeldet? Die API-Konsole in Ihrem Dashboard trägt automatisch Ihre echte Organisations-ID sowie Ihren eigenen Schlüssel ein und führt die Anfrage gegen die Live-API aus, sodass Sie die tatsächliche Antwort sehen können. Öffnen Sie diesen Endpunkt in der API-Konsole
Details
Installs `application` onto the site's hosting package. The submit is instant and the work runs as a durable workflow (§2.16), so this answers `202` with the install row — poll `GET` on this path and read `current` for its state. ⛔ **This is destructive**: a one-click install unpacks a whole application over the site's document root and creates a database, so it is gated on `hosting.applications.manage` rather than on `hosting.deploy.manage`, and only one install may run per site at a time (`409` otherwise). `404` for a site whose platform has no application catalogue at all — a site on our own fleet simply does not have this resource, and naming the platform it is *not* on would disclose which vendor a site runs on. `422` when the catalogue exists but that application is not offered: either the product line does not sell it, or the vendor no longer carries it. The application list is per **product line** — the footprint-free line deliberately offers a narrower set than mainstream — and it is read live, so a page left open can offer something that has since gone.
Parameter
| Name | Typ | Erforderlich | Was es ist |
|---|---|---|---|
siteId (path) | Uuid | Ja | Site ID (UUIDv7). |
Anfragekörper
| Name | Typ | Erforderlich | Was es ist |
|---|---|---|---|
application | string | Ja | The `key` of an application from this site's own list. Validated against the **live** catalogue rather than a fixed enum, because the range changes without a release on our side. |
locale | string | Nein | The language to install the site in, as a platform language code (`de`, `pt-BR`). Applies to `wordpress` only, and is saved to the site so a later reinstall keeps it. Omit to us… |
Antwort
| Name | Typ | Erforderlich | Was es ist |
|---|---|---|---|
id | string | Ja | — |
application_key | string | Ja | — |
application_name | string | Ja | The display name captured at the moment of installing — a snapshot, so history still reads correctly after the platform renames or retires an application. |
status | string<queued, installing, installed, failed> | Ja | — |
message | string | Ja | Customer-facing English. Only meaningful when `failed`. |
requested_by | string | Nein | The actor who asked for it, for the audit trail. |
started_at | string | Nein | — |
finished_at | string | Nein | — |
created_at | string | Ja | — |
Fehler, die dieser Endpunkt zurückgeben kann
401 · 403 · 404 · 409 · 422 · 429 · 503