Data Models¶
Identity¶
The Identity is the primary model of the Seed Identity Store. Each record represents a unique user identity.
Fields¶
- id
- A UUID 4 unique identifier for the record.
- version
- An integer number representing the schema version number that this record was created with.
- details
- A JSON fields containing extra details of the identity record. It should always contain at least an addresses key with the following structure:
- communicate_through
- A self-referencing link to another Identity record that should be used instead of this record when trying to communicate directly with an end-user.
- operator
- A self-referencing link to another Identity record that represents the operator that created this record.
- created_at
- A date and time field of when the record was created.
- updated_at
- A date and time field of when the record was last updated.
- created_by
- A reference to the User account that created this record.
- updated_by
- A reference to the User account that last updated this record.
OptIn¶
- id
- A UUID 4 unique identifier for the record.
- identity
- A reference to an Identity record.
- address_type
- The address type used to identify the Identity.
- address
- The address used to identify the Identity
- request_source
- The Service that the OptIn was requested from.
- requestor_source_id
- The ID for the user requesting the OptIn on the service that it was requested from. Ideally a UUID.
- created_at
- A date and time field of when the record was created.
- created_by
- A reference to the User account that created this record.
OptOut¶
- id
- A UUID 4 unique identifier for the record.
- identity
- A reference to an Identity record.
- optout_type
A field representing a fixed set of reasons for the OptOut:
- stop -> No communication on address
- stopall -> No communication on all addresses
- unsubscribe -> Unsubcribe
- forget -> Forget
- reason
- An optional reason (e.g. ‘not interested’) for the OptOut.
- address_type
- The address type used to identify the Identity.
- address
- The address used to identify the Identity
- request_source
- The Service that the OptOut was requested from.
- requestor_source_id
- The ID for the user requesting the OptOut on the service that it was requested from. Ideally a UUID.
- created_at
- A date and time field of when the record was created.
- created_by
- A reference to the User account that created this record.