hosting
GET /v1/sites/{siteId}/wordpress/update-policy
What this site is set to update by itself, and where it has drifted.
Autenticación
Envía una clave de API como token de portador. La clave debe tener el permiso sites.view; 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 GET https://api.zinndigital.com/v1/sites/{siteId}/wordpress/update-policy \
-H "Authorization: Bearer zdk_live_…"¿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
Returns three things that must never be collapsed into one: the **policy** an operator stored, what the site is **actually** configured to do, and the **drift** between them. ⛔ A screen showing only the stored policy cannot tell a customer that the policy was never applied — which is the whole point. A decision is applied when a row changes, and the row that decides whether a WordPress updates itself lives on that WordPress, not in this platform's database. A customer can change any of it from wp-admin, a plugin can change it on activation, and a restored backup carries the old settings back. ⛔ `observed_core` is `""` when `WP_AUTO_UPDATE_CORE` is **not defined at all**, which is NOT the same as `off` — an undefined constant means WordPress applies its own default, which is `minor`. Rendering the first as the second would tell an operator their sites are not taking security releases when in fact they are. ⛔ `observed_read` is `false` when the site could not be read (a managed hosting package, or a box that did not answer). An empty `drift` is only meaningful while it is `true`; otherwise an unreachable site renders as compliant, which is the worst default for a security setting. Ungated read — requires `sites.view`.
Parámetros
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
siteId (path) | Uuid | Sí | Site ID (UUIDv7). |
Respuesta
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
core | string<off, minor, all> | Sí | The stored policy for WordPress core updates. |
plugins | boolean | Sí | The stored policy — whether every plugin should auto-update. |
themes | boolean | Sí | The stored policy — whether every theme should auto-update. |
ring | string<canary, early, general> | Sí | The staged-rollout ring this site belongs to. |
applied_at | string | Sí | When the policy last reached the site, ISO-8601, or `""` if it never has. ⛔ A timestamp and not a flag: "when did this last reach the site" is the question an operator asks, and… |
apply_error | string | Sí | Why the last apply failed, or `""`. Kept beside `applied_at` rather than replacing it, so a failed re-apply does not erase that an earlier one worked. |
observed_read | boolean | Sí | Whether the site itself was read. ⛔ An empty `drift` is only meaningful while this is `true`. |
observed_core | string | Sí | What `WP_AUTO_UPDATE_CORE` is set to on the site — `off`, `minor`, `all`, or `""` meaning **the constant is not defined at all**, so WordPress applies its own default. ⛔ `""` is… |
plugins_off | string[] | Sí | The plugins on this site that are NOT auto-updating. |
themes_off | string[] | Sí | The themes on this site that are NOT auto-updating. |
drift | string<core, plugins, themes>[] | Sí | Which of `core`, `plugins`, `themes` the site disagrees with the policy about. |
Errores que este endpoint puede devolver
401 · 403 · 404 · 429 · 503