Person Email Form
Field reference for person email records. A person can have multiple email addresses of different types.
Fields
Backed by core.person_emails.
| Field | Column | Type | Required | Notes |
|---|---|---|---|---|
| Email ID | person_email_id | UUID | Auto | Primary key |
| Person | person_id | UUID (FK) | Yes | Parent person record |
| Email Type | email_type_id | Select (Lookup) | Yes | EMAIL_TYPE |
| Email Address | email_address | Text(255) | Yes | |
| Is Primary | is_primary | Boolean | Yes | Primary email for the person |
| Is Current | is_current | Boolean | Yes | The currency flag |
| Effective Date | effective_date | Date | No | Never populated from ODS — no source field exists |
| End Date | end_date | Date | No | Set when the address is retired |
| Legacy Email ID | legacy_email_id | Integer | Auto | Colleague/ODS source key |
There is no verification or notification state: is_verified, verified_date and receives_notifications do not exist.
Contact records are end-dated, never deleted
is_current is the currency flag — there is no is_active column on any contact record. Removing a value sets is_current = false and stamps end_date; the row stays so the history survives. This holds through the admin API too. Contact values are also not unique: some 50,000 people share a phone number and 3,700 share an email, so key on the row id plus person_id, never on the value itself.
Email Type Values
| Code | Description | Notes |
|---|---|---|
| INSTITUTIONAL | Institutional | University-assigned email |
| PERSONAL | Personal | Personal email address |
| WORK | Work | Professional/business email |
Computed Fields (Read-Only)
| Field | Description |
|---|---|
| Domain | Email domain (e.g., university.edu) |
| Is Institutional | Whether email is from institution domain |
Validation Rules
- Person must exist before adding emails
- Email Address must be valid email format (name@domain.ext)
- Only one email per type can be Is Primary = true
- INSTITUTIONAL email typically auto-generated from student/employee ID
- Institutional emails should match university domain pattern
Related Screens
- Person - Parent person record