Policy Sets
List policy sets in a zone
Create a new policy set
Get a policy set by ID
Update a policy set
Archive a policy set
ModelsExpand Collapse
Attestation = object { payload, protected, signature } JWS Flattened JSON Serialization (RFC 7515 §7.2.2) of a policy set attestation. The protected header carries the signing algorithm and key identifier; the payload is a base64url-encoded AttestationStatement canonicalized per RFC 8785 (JCS). Verify using the zone JWKS endpoint (RFC 7517). Currently signed with RS256; future zone key types (e.g. EdDSA) will be indicated by the "alg" header — no envelope changes required.
JWS Flattened JSON Serialization (RFC 7515 §7.2.2) of a policy set attestation. The protected header carries the signing algorithm and key identifier; the payload is a base64url-encoded AttestationStatement canonicalized per RFC 8785 (JCS). Verify using the zone JWKS endpoint (RFC 7517). Currently signed with RS256; future zone key types (e.g. EdDSA) will be indicated by the "alg" header — no envelope changes required.
Base64url-encoded AttestationStatement (RFC 7515 §3). Decode to inspect attestation content. The RFC 8785 canonical form of the decoded JSON is the JWS Signing Input alongside the protected header.
Base64url-encoded JWS protected header (RFC 7515 §4). Contains at minimum "alg" (signing algorithm — currently RS256, will migrate to EdDSA) and "kid" (signing key identifier resolvable via the zone JWKS endpoint).
Base64url-encoded digital signature computed over the JWS Signing Input (ASCII(protected) || '.' || payload) per RFC 7515 §5.1.
AttestationStatement = object { attested_at, attested_by, manifest, 7 more } Decoded content of an Attestation JWS payload. Describes the exact policy set version composition at attestation time. This schema defines what consumers see after base64url-decoding the Attestation.payload field.
Decoded content of an Attestation JWS payload. Describes the exact policy set version composition at attestation time. This schema defines what consumers see after base64url-decoding the Attestation.payload field.
Snapshot of the policy set manifest at attestation time. Each entry pins a policy version by ID and content SHA.
Snapshot of the policy set manifest at attestation time. Each entry pins a policy version by ID and content SHA.
SHA-256 of the policy version content, populated by the server
SHA-256 of the policy set version manifest. Verifiers MUST check this matches the policy_set_version.manifest_sha to detect attestation/version mismatches.
status: "committed" or "re_signed"Event that produced this attestation. "committed" is the initial attestation at version creation; "re_signed" is a re-attestation after key rotation (same content, new signature).
Event that produced this attestation. "committed" is the initial attestation at version creation; "re_signed" is a re-attestation after key rotation (same content, new signature).
Statement type discriminator
Statement schema version
PolicySet = object { id, created_at, created_by, 9 more }
owner_type: "platform" or "customer"Who manages this policy set:
"platform" — managed by the Keycard platform (system policies).
"customer" — managed by the tenant (custom policies).
Who manages this policy set:
"platform"— managed by the Keycard platform (system policies)."customer"— managed by the tenant (custom policies).
scope_type: "zone" or "resource" or "user" or "session"The scope at which this policy set applies:
"zone" — applies to all requests in the zone.
"resource" — scoped to a specific resource.
"user" — scoped to a specific user.
"session" — scoped to a specific session.
The scope at which this policy set applies:
"zone"— applies to all requests in the zone."resource"— scoped to a specific resource."user"— scoped to a specific user."session"— scoped to a specific session.
Human-readable version number of the latest version (e.g., 1, 2, 3)
PolicySetDraft = object { created_at, manifest, policy_set_id, 3 more }
SHA-256 of the policy version content, populated by the server
PolicySetManifest = object { entries }
SHA-256 of the policy version content, populated by the server
PolicySetManifestEntry = object { policy_id, policy_version_id, sha }
SHA-256 of the policy version content, populated by the server
Whether this policy set is currently bound to a scope
Human-readable version number of the active version (e.g., 1, 2, 3)
Public ID of the currently active (bound) version
mode: optional "active" or "shadow"
Policy SetsVersions
List versions of a policy set
Create a new immutable policy set version
Get a specific policy set version
Activate a policy set version
Archive a policy set version
List policy versions in a policy set version
ModelsExpand Collapse
PolicySetVersion = object { id, created_at, created_by, 9 more }
SHA-256 of the policy version content, populated by the server
Hex-encoded SHA-256 of the canonicalized manifest
Schema version pinned to this policy set version. Determines the Cedar schema used for evaluation when activated.
Whether this policy set version is currently bound with mode='active'
JWS Flattened JSON Serialization (RFC 7515 §7.2.2) of a policy set attestation. The protected header carries the signing algorithm and key identifier; the payload is a base64url-encoded AttestationStatement canonicalized per RFC 8785 (JCS). Verify using the zone JWKS endpoint (RFC 7517). Currently signed with RS256; future zone key types (e.g. EdDSA) will be indicated by the "alg" header — no envelope changes required.
JWS Flattened JSON Serialization (RFC 7515 §7.2.2) of a policy set attestation. The protected header carries the signing algorithm and key identifier; the payload is a base64url-encoded AttestationStatement canonicalized per RFC 8785 (JCS). Verify using the zone JWKS endpoint (RFC 7517). Currently signed with RS256; future zone key types (e.g. EdDSA) will be indicated by the "alg" header — no envelope changes required.
Base64url-encoded AttestationStatement (RFC 7515 §3). Decode to inspect attestation content. The RFC 8785 canonical form of the decoded JSON is the JWS Signing Input alongside the protected header.
Base64url-encoded JWS protected header (RFC 7515 §4). Contains at minimum "alg" (signing algorithm — currently RS256, will migrate to EdDSA) and "kid" (signing key identifier resolvable via the zone JWKS endpoint).
Base64url-encoded digital signature computed over the JWS Signing Input (ASCII(protected) || '.' || payload) per RFC 7515 §5.1.