public

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

What an installed Zinn® plugin polls for updates.

Όλα τα τελικά σημεία public

Πισtoποίηση

Στείλτε ένα κλειδί API ως διακριτικό φορέα (bearer token). Αυτό το τελικό σημείο δεν ορίζει μια συγκεκριμένη άδεια στην προδιαγραφή, οπότε δώστε στο κλειδί σας τα ελάχιστα δυνατά δικαιώματα και ελέγξτε την απόκριση αντί να κάνετε υποθέσεις.

Αυτό το τελικό σημείο δεν δέχεται αναγνωριστικό οργανισμού. Το κλειδί σας προσδιορίζει ήδη τον οργανισμό στον οποίο ανήκει, και η απάντηση περιορίζεται σε αυτόν.

Δοκιμάστε το

Ατικatastήstε ό,τι βρίskεtai μέσα σe γώniaδeς μe τis δikές sas timές, kai to placeholder klεidioύ μe éna klεidi apó ton pinaka ελέgchou sas.

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.

Παράμετροι

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
siteId (path)UuidΝαιSite ID (UUIDv7).

Σώμα αίτησης

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
slugstringΝαιThe plugin asking
versionstringΝαιThe version currently installed.
sitestringΌχιThe site's own home URL

Απάντηση

ΌνομαΤύpοςΥποχρεωτικόΤι είναι
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