Skip to main content
POST
Put a ratified policy version in force

Authorizations

Authorization
string
header
required

MeshQu API key passed as a bearer token: Authorization: Bearer mqu_…. Mint one in the console (Settings → API keys).

X-MeshQu-Tenant-Id
string
header
required

Tenant UUID for multi-tenant isolation. Required on all authenticated routes — validated before authentication (middleware/tenant.ts), so a missing or non-UUID header returns 400 (MISSING_TENANT_ID / INVALID_TENANT_ID) before the API key is checked.

Path Parameters

id
string<uuid>
required
version
integer
required
Required range: x >= 1

Response

Default Response

receipt_kind
enum<string>
required

Names the act inside the signed preimage. Always policy_version_activation.

Available options:
policy_version_activation
id
string<uuid>
required
tenant_id
string<uuid>
required
policy_id
string<uuid>
required
policy_version_id
string<uuid>
required

The version this act put in force.

policy_version_number
integer
required
Required range: x >= 1
previous_policy_version_id
string<uuid> | null
required

The version that was in force and is now superseded; null when nothing was in force (first activation).

shadow_mode
boolean
required

The policy's mode after this act. A first activation starts the policy in shadow; a later one keeps the mode it had.

activated_by
string
required

Stable subject id of the human who acted.

activation_authority
string
required
activated_at
string<date-time>
required
activation_receipt_digest
string
required

SHA-256 (hex) of the canonical JSON of the eleven preimage fields.

Pattern: ^[0-9a-f]{64}$
activator_signature
object
required