Creates a new contact or updates an existing one.
Match priority:
_id is provided and matches an existing contact — updates it.Email matches an existing contact — updates it.Provide to update an existing contact by ID.
Contact type name (e.g. Tenant). Must match an existing type in the company.
Job title.
URL of the contact's photo. Must end in .jpg, .jpeg, or .png.
Stored and returned in subsequent reads.
Custom fields for the contact, keyed by field ID. The valid field IDs depend on the
contact's type. Pass { "<fieldId>": value } — the field definition is looked up
automatically. On read, each entry is enriched to { name, dataType, optional, value }.
Contact created or updated.
Job title.
ID of the company this contact belongs to.
CDN thumbnail URL for the contact's photo, or null if none.
Custom fields enriched with their definitions. Each key is a field ID; each
value is { name, dataType, optional, value }.