Playground

Playground

Contact

/api/v1/crm/contacts

A person at a customer account.

listgetcreateupdatedelete

Schema

FieldTypeNotes
id*uuidServer-assigned ULID with type prefix (e.g. per_…).
tenant_id*stringTenant scope — auto-stamped from the caller's JWT.
app_idstringApp scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present.
created_at*date-timeServer stamp.
updated_at*date-timeServer stamp; updated on every patch.
created_byuuidPerson id from the caller's JWT (sub).
updated_byuuidPerson id from the last writer's JWT (sub).
sourcestringProvenance tag — defaults to 'edm'.
source_typeenumfrontend | backend | server | system | apiWhere the write originated. Defaults to 'api'.
is_deletedbooleanSoft-delete flag. Excluded from default list queries.
deleted_atdate-timeStamped when soft-deleted; null otherwise.
deleted_byuuidPerson id who soft-deleted; null otherwise.
schema_versionnumberDocument schema version. Bumped on incompatible writes.
account_idstringAccount this contact belongs to. Null for unattached/orphan contacts. Format: acc-<uuid>.
first_namestringGiven name.
last_namestringFamily name.
display_namestringDisplay name. Computed from firstName + lastName if blank.
emailemailWork email address. Unique within (tenantId, accountId).
phonestringPhone number in E.164 format.
job_titlestringJob title at their company.
senioritystringSeniority level at the contact's company.
decision_rolestringRole this contact plays in deal decisions.
is_primarybooleanTrue if this is the primary contact at the account.
linkedin_urlstringLinkedIn profile URL.
reports_to_contact_idstringContact ID of this person's manager within the account.
last_interaction_atdate-timeTimestamp of the most recent interaction with this contact.
opted_inbooleanWhether this contact has opted in to marketing communications (GDPR/CASL).
opted_in_atdate-timeTimestamp when the opt-in was recorded.
gdpr_consentjsonGDPR/CASL consent record.
custom_fieldsjsonPer-tenant schema extension for additional fields.
tagsjsonFree-form string tags.
versionnumberOptimistic-concurrency version counter.

API

client.customer.contacts.*
Loading manifest…