Models
Contact
Core contact model representing a person or organization in the ContactsManager SDK
Contact
The Contact
model is the core data structure in the ContactsManager SDK that represents a person or organization. It contains basic information about the contact and references to related contact information components.
Properties
Identity
identifier: String
- Unique identifier for the contactid: String
- Alias for identifier, conforming to Identifiable protocol
Basic Information
contactType: Int
- Type of contact (0 = person, 1 = organization)
Name Components
namePrefix: String?
- Title or honorific (e.g., Dr., Mr.)givenName: String?
- First namemiddleName: String?
- Middle namefamilyName: String?
- Last namepreviousFamilyName: String?
- Previous last name (e.g., maiden name)nameSuffix: String?
- Name suffix (e.g., “Jr.”, “III”)nickname: String?
- Informal name
Display Information
contactSection: String?
- Section for alphabetical groupingdisplayName: String?
- Formatted full name for display
Organization Information
organizationName: String?
- Company or organization namedepartmentName: String?
- Department within organizationjobTitle: String?
- Professional title
Additional Information
notes: String?
- General notes about the contactbio: String?
- Biographical informationlocation: String?
- Geographic location
Image Data
imageUrl: String?
- URL to contact’s avatar imageimageData: Data?
- Full-size image datathumbnailImageData: Data?
- Optimized thumbnail image dataimageDataAvailable: Bool
- Indicates if image data is available
Contact Information Lists
The Contact model contains collections of related information stored in separate models:
- Phone Numbers - Collection of
ContactPhoneNumber
objects - Email Addresses - Collection of
ContactEmailAddress
objects - URL Addresses - Collection of
ContactURLAddress
objects - Social Profiles - Collection of
ContactSocial
objects - Physical Addresses - Collection of
ContactAddress
objects - Instant Message Addresses - Collection of
ContactInstantMessage
objects - Relations - Collection of
ContactRelation
objects
Additional Lists
interests: [String]
- List of interests/hobbiesavatars: [String]
- List of avatar URLs
Dates
birthday: Date?
- Contact’s birthday- Important Dates - Collection of
ContactDate
objects createdAt: Double
- Creation timestamp
Metadata
matchString: String?
- Searchable string containing all contact informationisDeleted: Bool
- Soft deletion flagparentContactId: String?
- ID of parent contact if this is a linked contactlastSyncedAt: Double?
- Timestamp of last successful sync with serverdirtyTime: Double?
- Last modification timestampsourceId: String?
- External source identifier
Usage Example
Related Models
- LocalCanonicalContact - Links a local contact with a canonical user profile
- CanonicalContact - Server-side user profile information