ContactAssignment
A ContactAssignment represents a relationship between a Contact (usually a person) and a salesperson (identified by their Role) or an Organizational Unit.
Contact Stage
A Contact Stage represents where the person is in their real estate journey. It does not represent a business relationship, but instead monitors how engaged the person is with real estate in general.
Contact Stages may vary based on the ContactAssignmentType field, but the standard Contact Stages are:
Inactive: the contact is an unqualified lead in your database.
Subscriber: the contact is subscribed to one or more email campaigns.
Lead: the contact has sufficiently engaged with your marketing or has made an inquiry.
Prospect: the assignee has an active Opportunity with this contact.
Client: the assignee has an active Transaction with this contact.
This diagram depicts the Contact Stages and the goals for ContactAssignments in each stage.

ContactAssignment Status
The Contact Status indicates if the Contact Assignment is currently an active object, or if has been deleted.
| Field | Type | Required | Description |
|---|---|---|---|
Active | ffca4d2f-999c-44d2-85bc-e50c973d8fa2 | No | Assignment is Active |
Deleted | 15282a29-a0ef-4e00-9e20-e5a800c460e8 | No | Assignment was deleted by the user |
Reached Status
Assignees can be actively engaged or completed disconnected from a Contact. The Reached Status is an automated value that determines the recency of the Assignee's relationship. Reached Status values can include:
notContacted: the assignee has never attempted to contact this person.
Attempting to Contact: the assignee has attempted to contact this person with the past
Unreachable Warnperiod (default 14 days).Failing Contact: (automated value only - not selectable by the assignee) the assignee has attempted to contact the person, but it has been longer than the
Unreachable Warnperiod.Unreachable: the assignee was never able to reach this person, even after attempting to do so. This can be manually set, or will be automatically set when the
Unreachableperiod has passed (default 28 days).In Contact: the assignee has been in touch with this person within the past
Lost Contact Warnperiod (default 90 days).Losing Touch: (automated value only - not selectable by the assignee) the assignee has been in touch with this person, but not within the past
Lost Contact Warnperiod.Lost Touch: the assignee was in touch with this person at one time, but no longer. This can be manually set, or will be automatically set when the
Lost Contactperiod has passed (default 180 days).
This diagram depicts how Reached Statuses change over time. The timers can be customized at the tenant level.
OBJECT SCHEMA
| Field | Type | Required | Description |
|---|---|---|---|
id | UUID | Yes | The unique ID of this object. |
contact | Contact | Yes | The person whom the assignee is servicing. |
assignee | Assignable | Yes | The entity assigned to service this Contact. Usually an Organizational Unit or Agent. |
currentStage | string | Yes | A depiction of the Contact's current position in the real estate journey. See Contact Stage |
opportunities | Opportunity[] | No | All active Opportunities. |
transactions | Transaction[] | No | All active Transactions. |
reachedStatus | string | Yes | An indicator of the recency of the Assignee's connection with the Contact. See Reached Status |
pastClient | boolean | Yes | True if this ContactAssignment has closed in the past. |
status | string | Yes | The ContactAssignment status. See ContactAssignment Status |
customFields | CustomField[] | No | A list of custom fields and values. |
typename | string | Yes | The GraphQL type name. Aways "ContactAssignment". |
* indicates a required field
Updated July 23, 2026