Creates or updates a contact on the specified sending list. If the contact already exists on the list, their custom fields are merged (not replaced) and existing data is preserved. New contacts are automatically validated via carrier lookup, which populates carrier, timezone, and line type fields.
When true, skips journey enrollment if the ListContact record already exists (i.e., the contact was previously added to this list). Only relevant when use_journeys is true.
Key-value pairs of custom data to attach to the contact on this list. Values can be strings, numbers, or booleans. Custom fields are merged with any existing fields — existing keys not included in the request are preserved.
When true, replaces the contact’s custom fields entirely instead of merging. When false (default), provided custom fields are merged into existing fields.
Array of warning strings about missed configuration. For example, if there are active Welcome Journeys matching this list but use_journeys was not set to true.