> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fourdos.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Consent

> Append-only consent evidence that actually gates what the platform does with member data

Consent in 4D is not a checkbox column - it's an append-only evidence trail
that the platform consults before acting on member data.

## Agreements vs. consents

The catalog distinguishes two kinds of item, mirroring their lawful basis:

* **Agreements** - contract-basis, non-optional documents (terms of service
  and the like). A member with an un-accepted agreement at its required
  version is *gated*: they must accept before proceeding when they next sign
  in. Agreements are versioned; a major version change re-gates.
* **Consents** - freely-given opt-ins (e.g. location use). Optional by
  definition, revocable at any time, and their absence simply switches the
  associated behavior off.

Items can be platform-wide or specific to your organization.

## Append-only evidence

Every grant and revocation is a new immutable record: who, which item, which
version, when, through what channel, with supporting evidence. Nothing is
ever updated in place - re-consenting after a revocation appends a fresh
record, so the full history of a member's choices is always reconstructible.
At most one grant per item is *active* at a time; that active record is what
gates behavior.

## Consent actually gates behavior

The point of the trail is that platform features check it. The concrete
example: geo enrichment of [engagement events](/concepts/events). A coarse
country/region is stamped onto a member's events **only** while they hold an
active `data.geo` consent. The lookup is transient - the raw IP address is
never persisted - and for a member without that consent, location is never
derived at all.

## Imported members

Bulk-imported members receive **no** consent records at import time - an
import never fabricates consent evidence. Like every member, they encounter
the consent gate (pending agreements, offered opt-ins) the first time they
sign in. See
[Migrate an existing member base](/walkthroughs/migrate-existing-members).
