hosting

POST /v1/sites/{siteId}/wordpress/plugins

Install a plugin on a site's WordPress.

Tutti gli endpoint hosting

Autenticazione

Invia una chiave API come token di tipo bearer. La chiave deve disporre dell'autorizzazione sites.view; una chiave sprovvista di tale autorizzazione viene rifiutata con 403 anziché 404.

Questo endpoint non richiede alcun ID organizzazione. La tua chiave identifica già l'organizzazione a cui appartiene e la risposta è limitata ad essa.

Provalo

Sostituisci qualsiasi elemento tra parentesi angolari con i tuoi valori e il segnaposto key con una chiave dalla tua dashboard.

curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/wordpress/plugins \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

Hai effettuato l'accesso? La console API nella tua dashboard inserisce il tuo ID organizzazione reale e la tua chiave personale, ed esegue la richiesta sull'API live in modo da poter vedere la risposta effettiva. Apri questo endpoint nella console API

Dettagli

Installs a plugin and, by default, activates it. Either from the **wordpress.org directory** by `slug` (what `searchWordPressPluginDirectory` returns), or from a **zip the customer uploads**. ⛔ Exactly one of `slug` and `zip` — never both. A request carrying both is refused `422` rather than resolved by precedence, because a caller that sent the wrong one would otherwise install something it did not ask for and be told it succeeded. Idempotent: a plugin already present is activated rather than reinstalled, and an upload of a plugin that is already there replaces it in place. Nothing is ever removed — use `deleteSiteWordPressPlugin` for that. ⚠️ An uploaded zip is **the customer's own code running on their own site**, and we do not review it. It is size-capped and rejected unless it is a valid archive containing a single top-level directory with a PHP plugin header, which is what WordPress itself requires — not a security review, and not presented as one. Refused `422` when the package type does not carry `wp_plugins`, or when WordPress is not installed. `404` for a site with no vendor hosting package. Requires `sites.view` and `sites.panel_access`.

Parametri

NomeTipoObbligatorioChe cos'è
siteId (path)UuidSite ID (UUIDv7).

Corpo della richiesta

NomeTipoObbligatorioChe cos'è
slugstringNoA wordpress.org directory slug. Lower-case, digits and hyphens — the directory's own alphabet, enforced here so a path separator or a URL can never reach the box as a "slug".
zipstringNoA base64-encoded plugin zip. Present instead of a multipart upload because every other write on this API is JSON and one exception would need its own auth, size and error handling.
activatebooleanNoActivate after installing. `false` puts the files in place and leaves the plugin switched off — what a staged rollout of something risky wants. Deliberately not the default: "in…

Risposta

NomeTipoObbligatorioChe cos'è
dataSiteWordPressPlugin[]The installed plugins.
stack_cache_installedboolean⛔ **Cannot be derived from `data`.** this platform excludes its own server-side cache plugin from the listing, so a client deriving this flag from the rows would answer "not ins…

Errori che questo endpoint può restituire

401 · 403 · 404 · 409 · 413 · 422 · 429 · 503