Rotate a cryptographic key (advance its material version)

Advances the Stable KID {kid} to a NEW PRIMARY material version. The kid is
FIXED — rotation does not mint a successor key; it generates a new material
version (new algorithm/spec) under the same key id and retires the previous one.

Workflow:

  1. Validates tenant access from JWT
  2. Proxies the rotation request to Core API (S2S)
  3. Logs administrative action in admin_audit_log
  4. Returns the key metadata at its advanced material version (same kid)

The new material MUST be able to serve the Stable KID's invariant purpose
(ENCRYPT_DECRYPT or SIGN_VERIFY); a cross-purpose rotation is rejected with
422 purpose-mismatch. Within the same purpose, the new material can use the
same or a different algorithm (policy permitting).

Authorization: requires scope admin.keys.rotate.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
uuid
required
string
required
Body Params

New material specification (no kid — the Stable KID is the path {kid}). Mirrors core-api RotationRequest.

Parameters for a Stable KID rotation. Mirrors core-api RotationRequest.

newMaterial
object
required

New material specification (algorithm/spec, no kid).

Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Bearer
JWT
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
application/problem+json