Privacy pillar · v0.16.0

consent-record StandaloneConsentRecord

Standalone consent record.

$id · https://corpospec.com/schemas/v0.16.0/consent-record.schema.json

Fields

Field Type Required Description
bundled_with_contract boolean yes Whether consent was bundled with a non-consent purpose (Art. 7(4) flag — informational, not necessarily blocking).
channel ConsentChannel yes Channel of capture.
controller PathRef yes PathRef to the controller entity.
evidence_ref PathRef yes PathRef to consent evidence artefact (signed PDF, JSON of banner click, recording).
id PathRef yes Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
pii_class PiiClass yes Personal-data classification on every record carrying personal data, per BDR 0070 / BDR 0069 / BDR 0078. Used by `corpospec-report` to gate rendering and by the privacy pillar's RoPA records to determine safeguards.
privacy_notice_version string yes Version of the privacy notice presented to the subject.
purpose ConsentPurpose yes Consent purpose (one record per (subject, purpose)).
purpose_text string yes Free-form purpose narrative shown to the subject.
retention_until IsoDate yes Retention until 3 years after withdrawal (BGB §195 generic claims window).
silent_or_pre_ticked boolean yes Whether consent was pre-ticked / silent (Recital 32 — invalid).
state ConsentState yes Consent state.
subject_pseudonym string yes Pseudonymised subject identifier (hash of email / user-id).
expires_at IsoDate? When consent expires automatically (typical cookie 13 months).
granted_at IsoDate? When consent was given (None for never-granted).
subject_ref PathRef? Optional PathRef into the subject (if internal). Omitted for anonymous web visitors.
withdrawn_at IsoDate? When consent was withdrawn (None if still in force / expired).

Definitions

Shared types referenced within this schema.

ConsentChannel
Channel of capture.
ConsentPurpose
Consent purpose (one record per (subject, purpose)).
ConsentState
Consent state.
IsoDate
ISO 8601 date (YYYY-MM-DD).
type: string
PathRef
Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
pattern: ^[a-z0-9_-]+(/[a-z0-9_.-]+)+$
PiiClass
Personal-data classification on every record carrying personal data, per BDR 0070 / BDR 0069 / BDR 0078. Used by `corpospec-report` to gate rendering and by the privacy pillar's RoPA records to determine safeguards.

Reference in your YAML

# yaml-language-server: $schema=https://corpospec.com/schemas/v0.16.0/consent-record.schema.json