Skip to main content

Contact Custom Fields

Manage custom field values for individual contacts. These endpoints allow you to get, set, and delete custom field values on specific contacts.

Overview​

While the Custom Fields endpoints define the structure of custom fields, the Contact Custom Fields endpoints manage the actual values stored for each contact. A contact can have values for any of the defined custom fields.

Supported Field Types and Value Formats​

Field TypeValue TypeExample
textstring"Acme Inc"
numbernumber42, 3.14
booleanbooleantrue, false
datestring"2025-01-15"
datetimestring"2025-01-15T10:30:00Z"
selectstring"enterprise"
listarray of strings["Webinar X", "Webinar Y"]

Endpoints​

MethodEndpointDescription
GET/contacts/{contactUuid}/custom-fieldsGet all custom field values for a contact
PUT/contacts/{contactUuid}/custom-fields/{fieldUuid}Set a custom field value (replaces the whole value)
POST/contacts/{contactUuid}/custom-fields/{fieldUuid}/itemsAdd a single element to a list field
DELETE/contacts/{contactUuid}/custom-fields/{fieldUuid}/itemsRemove a single element from a list field
DELETE/contacts/{contactUuid}/custom-fields/{fieldUuid}Remove a custom field value entirely

Working with list fields​

A list field holds multiple free-form string values. You can manage it two ways:

  • Replace the whole list with PUT .../custom-fields/{fieldUuid} by sending an array as value (also works via Update Contact bulk custom_fields).
  • Add/remove single elements with the .../items endpoints — ideal for event-driven updates (e.g. a webhook firing when a contact attends a meeting).

Constraints for list values: each element is a non-empty string up to 255 characters, max 100 elements per contact. Elements are trimmed and de-duplicated; order is preserved.