hosting
POST /v1/sites/{siteId}/hosting/applications
Install a one-click application onto a live site.
Authentification
Envoyez une clé d'API en tant que jeton du porteur (bearer token). Cet endpoint n'indique pas de permission spécifique dans la spécification, attribuez donc à votre clé le minimum requis et vérifiez la réponse plutôt que de faire des suppositions.
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/{siteId}/hosting/applications \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "application": <string> }'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
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.
Paramètres
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
siteId (path) | Uuid | Oui | Site ID (UUIDv7). |
Corps de la requête
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
application | string | Oui | 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 | Non | 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 use… |
Réponse
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
id | string | Oui | — |
application_key | string | Oui | — |
application_name | string | Oui | 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> | Oui | — |
message | string | Oui | Customer-facing English. Only meaningful when failed. |
requested_by | string | Non | The actor who asked for it, for the audit trail. |
started_at | string | Non | — |
finished_at | string | Non | — |
created_at | string | Oui | — |
Erreurs que cet point de terminaison peut renvoyer
401 · 403 · 404 · 409 · 422 · 429 · 503