Update a Contact
Page Tools
/contacts/{identifier}Partial update. Scalars: send a value to set it, null to clear it, omit to leave untouched. tags replaces the whole list; customFields merges per key (null deletes a key). phoneNumber is immutable. Set active=true to restore an archived contact.
x-api-key.AuthenticationPath Parameters
Contact id (uuid) or phone number (digits-only recommended in URLs; E.164 requires encoding + as %2B)
Request Body
application/json- At least 1 properties
- No additional properties
- 1–255 characters
- 1–255 characters
- Up to 255 characters
- Format: email
- 1–255 characters
- 1–255 characters
Date of birth in YYYY-MM-DD format. Must be a valid date in the past; null clears the value.
- Pattern: ^\d{4}-\d{2}-\d{2}$
- 1–255 characters
- 1–255 characters
Full replace on updates; usable in segment rules
- Up to 100 items
Show item detailsHide item details for body.tags
Each item
- 1–100 characters
- 1–100 characters
Map of up to 50 fields. Values may be strings (up to 1,000 characters), numbers, booleans, arrays of up to 100 strings, or null. Nested objects are not accepted. Keys must match ^[a-zA-Z_][a-zA-Z0-9_]{0,63}$; __proto__, constructor, and prototype are reserved. A null value deletes that key on update.
- Up to 50 properties
Show child fieldsHide child fields for body.customFields
Show child fieldsHide child fields for body.customFields.[key]
One or more variants may apply.
- Up to 1000 characters
Setting OPTED_IN attests that you collected the contact's marketing consent. OPTED_IN is rejected (422) when the contact previously opted out (e.g. texted STOP); OPTED_OUT is always accepted. Contacts default to UNKNOWN, and campaigns only send to OPTED_IN contacts.
"OPTED_IN""OPTED_OUT"Set true to restore an archived contact
Responses
The updated contact
Always returned in E.164 format
false when the contact has been archived (DELETE)
Date of birth (YYYY-MM-DD)
Show item detailsHide item details for response-200.tags
Each item
Stored custom-field values keyed by field name. See create/update request schemas for accepted write types and limits.
Show child fieldsHide child fields for response-200.customFields
Additional keys may contain any JSON value.