Create or update subscriber
Changed onCreates a new subscriber or handles existing ones based on the duplicateStrategy parameter.
Requires subscribers:write, including when supplying a nonempty lists array. Explicit sequence enrollment and writes that can send a double opt-in confirmation require automations:trigger.
Duplicate Strategies:
- skip (default): Don't update existing subscribers
- merge: Only fill in missing fields, never overwrite existing values
- overwrite: Replace all fields (but never reactivate unsubscribed users)
Request
- Base URLhttps://api.sequenzy.com/api/v1
- URLhttps://api.sequenzy.com/api/v1/subscribers
- AuthHTTP bearer
Request body
Example request
{
"email": "user@example.com",
"externalId": "user_123",
"firstName": "John",
"lastName": "Doe",
"timezone": "America/New_York",
"phone": "+15551234567",
"phoneCountry": "IT",
"tags": [
"newsletter"
],
"lists": [
"list-id-1",
"list-id-2"
],
"customAttributes": {
"plan": "free"
},
"createdAt": "2019-03-14T09:30:00Z"
}Response
Subscriber created or handled based on duplicate strategy
Example response
{
"success": true,
"subscriber": {
"id": "sub_abc123",
"email": "user@example.com",
"externalId": "user_123",
"firstName": "John",
"lastName": "Doe",
"timezone": "America/New_York",
"phone": "+15551234567",
"smsStatus": "subscribed",
"status": "active",
"unsubscribedAt": "2026-07-15T10:00:00.000Z",
"emailProvider": "gmail",
"tags": [
"premium",
"newsletter"
],
"customAttributes": {
"plan": "pro",
"signupSource": "website"
},
"phoneCountry": "US",
"created": true
},
"optIn": {
"required": true,
"emailQueued": true
}
}Changes
- info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status
- info
- breaking
the request property
became not nullable - breaking
the request property
became not nullable - breaking
the request property
became not nullable - info
added the optional property
/////to the response with the status
- breaking