Accountmaker Docs
Types

User Identity

Personal profile information stored separately for GDPR compliance and data minimization.

identity profile pii gdpr privacy

User Identity

User Identity contains personally identifiable information (PII) separated from the user record for privacy compliance. It can be deleted independently while preserving the user reference.

Schema

interface UserIdentity {
  id: string; // User ID (uid...)
  given_name: string | null;
  family_name: string | null;
  display_name: string | null;
  avatar_url: string | null;
  locale: string | null; // e.g., "en-US"
  timezone: string | null; // e.g., "America/New_York"
  preferred_language: string | null;
  external_id: string | null;
}

Properties

PropertyTypeDescription
idstringUser this identity belongs to
given_namestring?First name
family_namestring?Last name
display_namestring?Preferred display name
avatar_urlstring?Profile picture URL
localestring?Locale preference (BCP 47)
timezonestring?IANA timezone
preferred_languagestring?Language preference
external_idstring?External system identifier

Privacy Design

User (Permanent)          Identity (Deletable)
┌─────────────┐          ┌─────────────────┐
│ id          │◄────────▶│ id              │
│ application │          │ given_name      │
│ status      │          │ family_name     │
└─────────────┘          │ display_name    │
                         │ ...             │
                         └─────────────────┘

GDPR Operations

OperationEffect
DELETERemoves all PII, preserves user reference
POST (recreate)Restores identity after deletion

Example

{
  "id": "uid_2kHfPZcN9xW4mE8RtY7vB",
  "given_name": "Jane",
  "family_name": "Smith",
  "display_name": "Jane S.",
  "avatar_url": "https://example.com/avatar.jpg",
  "locale": "en-US",
  "timezone": "America/New_York",
  "preferred_language": "en",
  "external_id": "crm_123"
}