public

POST /v1/wp/plugin-update/{siteId}

What an installed Zinn® plugin polls for updates.

Все эндпоинты public

Аутентификация

Передайте API-ключ в качестве маркера носителя (bearer token). Эта конечная точка не указывает конкретное разрешение в спецификации, поэтому предоставьте своему ключу минимум необходимых прав и проверьте ответ, вместо того чтобы делать предположения.

Этот эндпоинт не принимает идентификатор организации. Ваш ключ уже определяет организацию, к которой он принадлежит, и ответ ограничивается ее рамками.

Попробовать

Замените всё в угловых скобках на собственные значения, а плейсхолдер ключа — на ключ из вашей панели управления.

curl -X POST https://api.zinndigital.com/v1/wp/plugin-update/{siteId} \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "slug": <string>, "version": <string> }'

Вошли в систему? Консоль API в вашей панели управления автоматически подставляет реальный идентификатор вашей организации и ваш собственный ключ, а также выполняет запрос к работающему API, чтобы вы могли увидеть актуальный ответ. Откройте эту конечную точку в API-консоли

Подробнее

The WordPress self-hosted update endpoint. It is called by the plugin, not by a person: `wp/plugins/*/includes/class-updater.php` posts here on WordPress's own update schedule and turns the answer into the ordinary "update available" notice. Authenticated by the site's own secret, never by a bearer token — the caller is a WordPress site, not a principal. The request carries `X-Zinn-Cache-Signature: sha256=HMAC(timestamp + "\n" + body)` keyed with that site's `ZINN_UPDATE_SECRET`, and the response is signed the same way in `X-Zinn-Signature` so a site can prove the answer came from us before installing anything. ⛔ A site already on the current version gets `204`, not a `200` describing the version it has: the updater re-fetches and re-verifies a package whenever it is offered one. Anything unauthenticated, stale or unknown is a `404` — never a `401`, so this cannot become an oracle for which site ids exist.

Параметры

ИмяТипОбязательноЧто это
siteId (path)UuidДаSite ID (UUIDv7).

Тело запроса

ИмяТипОбязательноЧто это
slugstringДаThe plugin asking
versionstringДаThe version currently installed.
sitestringНетThe site's own home URL

Ответ

ИмяТипОбязательноЧто это
versionstringДа
packagestringДаWhere to fetch the archive. Always HTTPS on our own hostname — the updater refuses any other host, which is what stops a forged descriptor pointing a site at somebody else's zip.
package_sha256stringДа
testedstringНет
requiresstringНет
requires_phpstringНет
changelogstringНет
homepagestringНет

Ошибки, которые может возвращать этот эндпоинт

404 · 429