Skip to main content
POST
/
api
/
v1
/
sequences
/
{sequenceId}
/
enroll
Enroll Subscribers
curl --request POST \
  --url https://api.sequenzy.com/api/v1/sequences/{sequenceId}/enroll \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "emails": [
    "<string>"
  ],
  "subscriberIds": [
    "<string>"
  ],
  "targetNodeId": "<string>"
}
'
{
  "success": true,
  "enrolled": 1,
  "skipped": 0,
  "notFound": ["unknown@example.com"],
  "targetNodeId": "node_email_1",
  "scheduledFor": "2026-06-11T10:00:00.000Z"
}
Manually enroll active subscribers into a sequence by email or subscriber ID. Enrollment starts at the first step after the trigger, or at a specific node when you pass targetNodeId. Subscribers that are inactive or already enrolled are skipped. You can pass up to 500 targets per request, combined across emails and subscriberIds. The sequence must be open for enrollment: enabled (or capturing entrants) and not enrollment-paused.

Request

sequenceId
string
required
Sequence ID.
emails
string[]
Subscriber emails to enroll. Emails are trimmed and lowercased. Unknown emails are returned in notFound.
subscriberIds
string[]
Subscriber IDs to enroll.
targetNodeId
string
Node to start enrollment at. Defaults to the first non-trigger node connected to the trigger. Cannot be a trigger node. When the target is a delay step, enrollment is scheduled after the delay.
Provide at least one of emails or subscriberIds.
curl -X POST "https://api.sequenzy.com/api/v1/sequences/seq_abc123/enroll" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"emails": ["user@example.com", "unknown@example.com"]}'

Responses

{
  "success": true,
  "enrolled": 1,
  "skipped": 0,
  "notFound": ["unknown@example.com"],
  "targetNodeId": "node_email_1",
  "scheduledFor": "2026-06-11T10:00:00.000Z"
}