hosting
POST /v1/sites/{siteId}/wordpress/themes
Install a theme on a site's WordPress.
പ്രമാണീകരണം
ബെയറർ ടോക്കണായി ഒരു API കീ അയയ്ക്കുക. കീക്ക് sites.view അനുമതി ഉണ്ടായിരിക്കണം; അനുമതിയില്ലാത്ത കീ 404 അല്ല, 403 നൽകി നിരസിക്കപ്പെടും.
ഈ എൻഡ്പോയിന്റ് ഓർഗനൈസേഷൻ ഐഡി സ്വീകരിക്കുന്നില്ല. നിങ്ങളുടെ കീ അത് ഉൾപ്പെടുന്ന ഓർഗനൈസേഷനെ ഇതിനകം തിരിച്ചറിയുന്നുണ്ട്, ഒപ്പം പ്രതികരണം അതിലേക്ക് പരിമിതപ്പെടുത്തിയിരിക്കുന്നു.
ശ്രമിച്ച് നോക്കൂ
കോണമ്ബ്രക്കറ്റുകളിലുള്ള ഏതും നിങ്ങളുടെ സ്വന്തം മൂല്യങ്ങൾ ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കുക, കീ പ്ലേസ്ഹോൾഡർ നിങ്ങളുടെ ഡാഷ്ബോർഡിലെ ഒരു കീ ഉപയോഗിച്ചും മാറ്റിസ്ഥാപിക്കുക.
curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/wordpress/themes \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ }'സൈൻ ഇൻ ചെയ്തിട്ടുണ്ടോ? നിങ്ങളുടെ ഡാഷ്ബോർഡിലെ API കൺസോൾ നിങ്ങളുടെ യഥാർത്ഥ ഓർഗനൈസേഷൻ ഐഡിയും നിങ്ങളുടെ സ്വന്തം കീയും പൂരിപ്പിക്കുകയും, യഥാർത്ഥ പ്രതികരണം (response) നിങ്ങൾക്ക് കാണുന്നതിനായി ലൈവ് API-ലേക്ക് അഭ്യർത്ഥന (request) പ്രവർത്തിപ്പിക്കുകയും ചെയ്യുന്നു. ഈ എൻഡ്പോയിന്റ് API കൺസോളിൽ തുറക്കുക
വിശദാംശങ്ങൾ
Installs a theme, from the **wordpress.org directory** by `slug` (what `searchWordPressThemeDirectory` returns) or from a **zip the customer uploads**. ⛔⛔ **This did not exist until W22-D, and its absence is the whole of the owner's complaint on 2026-08-16**: *"no way in this or the main site manager bit to add new theme or uplaod one"*. The platform could list, activate and delete a theme and had no way to put one on a site, so a customer could only ever choose among the three themes WordPress ships with — and could delete two of them. ⛔ Exactly one of `slug` and `zip` — never both, refused rather than resolved by precedence. ⛔ **`activate` defaults to `false` here and to `true` on the plugin path**, and the asymmetry is deliberate. Activating a plugin adds behaviour; activating a theme **replaces what every visitor sees**, immediately, on a live site. A customer uploading a theme to look at it must not have their shop re-skinned as a side effect of the upload. ⚠️ An uploaded zip is **the customer's own code running on their own site**, and we do not review it. It is size-capped at 96 MiB (themes run larger than plugins — commercial multipurpose themes ship demo imagery) and rejected unless it is a valid archive containing a single top-level directory whose `style.css` carries a `Theme Name:` header, which is what WordPress itself requires. Note that a theme is **not** validated the way a plugin is: a block theme can legitimately contain no PHP at all, so a PHP-file check would refuse valid modern themes. ⛔ **Fleet only.** this platform exposes no theme-install endpoint at any path, and its own control panel offers no install control on its Themes page either — both measured 2026-08-16. So this is refused on the managed hosting line, where `wp_theme_install` is `false`; the capability map on `getSiteWordPress` says so up front rather than letting the customer discover it by pressing the button. Requires `sites.view` and `sites.panel_access`.
പരാമീറ്ററുകൾ
| പേര് | തരം | ആവശ്യമാണ് | എന്താണിത് |
|---|---|---|---|
siteId (path) | Uuid | അതെ | Site ID (UUIDv7). |
അഭ്യർത്ഥന ബോഡി
| പേര് | തരം | ആവശ്യമാണ് | എന്താണിത് |
|---|---|---|---|
slug | string | ഇല്ല | A 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". |
zip | string | ഇല്ല | A base64-encoded theme zip. Present instead of a multipart upload because every other write on this API is JSON. |
activate | boolean | ഇല്ല | Make this the site's active theme after installing. Defaults to `false` — see the asymmetry with the plugin path above. |
പ്രതികരണം
| പേര് | തരം | ആവശ്യമാണ് | എന്താണിത് |
|---|---|---|---|
data | SiteWordPressTheme[] | അതെ | The installed themes. |
ഈ എൻഡ്പോയിന്റ് നൽകാൻ കഴിയുന്ന പിഴവുകൾ
401 · 403 · 404 · 413 · 422 · 429 · 503