EXPLICIT, authenticated, audited rollback of a plugin to a PRIOR version (1.5.0). Validates the target artifact (structure + trust) with the anti-downgrade floor lowered to EXACTLY the target's own version; a lower or untrusted artifact still fails (a rollback authenticates the OPERATOR, never the bytes). Persists the version pin to the overlay (survives restart) and hot-swaps via the same rebuild-and-swap path as plugins/reload

Changed on
post/api/v1/admin/plugins/rollback

Request

  • The document declares no server URL.
  • Auth: one of:
    • API key in header x-admin-token
    • HTTP bearer

Headers

If-Matchstring

Optimistic concurrency: the resource's ETag from a prior read (or the ETag returned by the previous mutation). Stale = 409 version_conflict (re-read and retry), nothing changes; absent or * = unconditional.

Request body

filestring required

The plugin tarball FILENAME (in the plugins directory) carrying the prior version to pin to.

Response

{plugin, version, config_version, plugins}: rolled back and hot-swapped

config_versioninteger required

The now-live config version after the hot swap (the ETag the response also carries).

filestring required

The library FILENAME the rollback selected in the plugins directory.

namestring required

The plugin's canonical manifest name that was pinned.

notestring required

A human note on the rollback's semantics + durability.

publisherstring required

The manifest publisher of the pinned artifact (busbar = first-party).

versionstring required

The version the plugin was pinned DOWN to (now serving), from the target artifact's manifest.

Changes