consent
Consent contract models.
The API records that a user accepted a versioned legal document, gates authorization until every required document is accepted at its current version, and surfaces what is still outstanding. These are the shared request/response shapes; the audit ledger and its enforcement live server-side.
ConsentAcceptItem
pydantic-model
¶
Bases: BaseModel
One document acceptance in a consent submission.
Fields:
-
document(ConsentDocument) -
version(PositiveInt)
ConsentAcceptRequest
pydantic-model
¶
Bases: BaseModel
Body of POST /user/consent — accept one or more documents.
Fields:
-
accepts(list[ConsentAcceptItem])
accepts
pydantic-field
¶
The document acceptances to record.
ConsentRecord
pydantic-model
¶
Bases: BaseModel
An audited acceptance row in the append-only consent ledger.
Config:
from_attributes:True
Fields:
-
document(ConsentDocument) -
version(PositiveInt) -
accepted_at(datetime)
PendingConsent
pydantic-model
¶
Bases: BaseModel
A document the user must still accept, and the version to accept.
Fields:
-
document(ConsentDocument) -
current_version(PositiveInt)