Subscribe Contact

Creates a new contact (or updates an existing one keyed by email) for the authenticated account, applies tag/sequence/form/goal mappings, and resolves any provided custom attributes. Pass create_only: true to fail with HTTP 400 instead of upserting when a contact with the same email already exists -- this replaces the legacy /rest/contacts/create-contact endpoint, which was an alias of subscribe with the flag pre-set. Pass domain to route the subscription to a sub-account in the same billing group.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
string
required
length ≤ 255

The contact's email address. Required. Validated against email:rfc,dns.

string | null

Optional. Existing contact UUID. If supplied and the contact exists, its email is updated to match the submitted email before the upsert runs.

string | null

The contact's first name. If omitted, falls back to splitting name at the first space.

string | null

The contact's last name. If omitted, falls back to the second half of name.

string | null

Single field carrying both first and last name. Used as a fallback when first_name / last_name are not provided.

string | null

Comma-separated list of tag UUIDs to attach to the contact. All UUIDs must resolve to tags in the authenticated account.

string | null

Comma-separated list of sequence UUIDs to immediately trigger for the contact.

string | null

Form UUID to associate with the contact. Skipped when create_only: true.

string | null

Goal UUID to mark as complete for the contact. Skipped when create_only: true.

boolean | null

When true, fails with HTTP 400 if a contact with the same email already exists. When false or omitted, the request upserts (resubscribes existing contacts and updates fields). Tag/sequence/goal/form resolution is skipped in create-only mode.

string | null

Optional sub-account domain. When supplied and the domain belongs to a different account in the same billing group, the subscription is routed to that sub-account instead of the default authenticated account.

custom_attributes
array of objects | null

Array of custom attribute objects to set on the contact. Each item: {key, type, value}. type must be one of varchar, int, integer, number, boolean, bool, checkbox, decimal, float, double, date, datetime, timestamp, mediumtext, longtext.

custom_attributes
Responses

401

Missing or invalid bearer token.

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json