Skip to main content
POST
Rotate a record key

Authorizations

Authorization
string
header
required

Human personal access token (sk-actrl-pat-...).

Headers

Idempotency-Key
string

Stable key for safely retrying this write. Reuse the same key only with the same request body; results are retained for 24 hours and conflicting reuse returns 409.

Path Parameters

id
string
required

Body

application/json
dekVersion
integer
required

Record DEK version read before opening its source wrapper.

Required range: x >= 1
sourceWrappedDek
object
required

Exact encrypted source wrapper opened by the client; never plaintext key material.

sourceVersionId
string<uuid> | null
required

Current content version read by the client; null for an empty Environment variant or an unversioned legacy record.

ciphertext
string | null
required

General value encrypted with the new record key; null for Environment records.

cipherMeta
object | null
required

Client-generated General encryption metadata.

dekTransition
object
required
wrappedDek
object
required

New record key encrypted for the owner.

sourceProjectKeyVersion
integer

Required only when the source is the project copy; omit for an individual wrapper.

Required range: x >= 1
environmentValues
object[]

For Environment records, submit exactly every populated variant with its source version. The entire DEK replacement is atomic.

recipientWrappers
object[]

Exact existing per-record recipient set, excluding the caller. Echo the public identity used to seal each wrapper. Omitted, extra or stale recipients reject the entire replacement.

projectWrappedDek
object

Record key encrypted for the project key. Required when replacing an existing project copy; otherwise optional.

projectKeyVersion
integer

Required when projectWrappedDek is sent. Version of the project key used by the client; stale or pending re-key material is rejected.

Required range: x >= 1

Response

Record key rotated.

ok
enum<boolean>
required
Available options:
true
data
object
required