Protection

Publish or replace the protection manifest

Accepts YAML (text/yaml, application/yaml) or JSON. Body is the full UnifiedProtectionCard; server-side composition merges it across the platform → org → team → agent cascade and writes the canonical composed card. Requires Idempotency-Key. Body cap 128 KiB. See ADR-008 and ADR-023. Authorization: the caller must be an owner/admin of the organization named by org_id; any other caller, including every non-member and any caller naming an org id that does not exist, receives 403 and no other tenant's manifest can be changed.

put/protection/org/{org_id}

Request

  • Base URL: https://api.mnemom.ai/v1
  • URL: https://api.mnemom.ai/v1/protection/org/{org_id}
  • Auth: one of:
    • HTTP bearer
    • API key in header X-Mnemom-Api-Key
    • API key in cookie mnemom_session

Path parameters

org_idstring required

Organization identifier (e.g. org-abc12345)

Headers

Idempotency-Keystring required

Client-supplied idempotency token. Replays within 24 hours return the stored result. See ADR-023.

Request body

card_versionstring required
content_versionstring

Optional. Which default content the card carries, e.g. mnemom-agent-default/2.1.0 (semver within a lineage). Distinct from card_version, the schema version. New agents are born with it; composition carries the agent card's value onto the canonical card.

card_idstring
agent_idstring required
issued_atstring date-time
expires_atstring date-time nullable
mode'off' | 'observe' | 'nudge' | 'enforce' required

Strictest-wins composition: enforce > nudge > observe > off.

extensionsobject

Free-form extension slot for non-canonical fields. Ignored by the composer; preserved on read for tooling that needs an audit-tail metadata bag.

content_hashstring

Response-only: content hash of the composed card (sha256:<hex>), injected by the GET/PUT response. Server-assigned — do not send on a PUT.

versioninteger

Response-only: monotonic card version, injected by the GET/PUT response. Server-assigned — do not send on a PUT.

Response

Stored template wrapper after the write.

org_idstring uuid
templateunknown
enabledboolean
agents_flagged_for_recomposeinteger

Number of active member agents queued for re-composition.

agents_recomposedinteger

Team scope only: active members whose canonical cards were recomposed in this request, so their served card already reflects the write.

agents_recompose_pendinginteger

Team scope only: active members still waiting on the recompose sweep (past the per-request cap, or a compose failed). Their served card updates within the sweep cadence.

Changes

No recorded changes to this operation across all 1 revision of this API.