Skip to main content
POST
cURL

Overview

Create an enrollment to add a person to a published template sequence. The sequence’s ruleset determines enrollment eligibility. The request body specifies:

Handle enrollment conflicts

When active enrollments prevent a new enrollment, the API returns 409 Conflict. Inspect reason and active_enrollments; the response can also include blocking_sequence_ids or unapproved_sequence_ids. If user approval is required, present the active enrollments for review before retrying with allowed_concurrent_sequence_ids. Those IDs record the user’s approval. Enrollment must still satisfy the sequences’ simultaneous-enrollment policies. Other eligibility failures return 400 Bad Request with a message explaining the cause. Examples include an unpublished sequence, ineligible mailboxes, opt-outs, exclusions, and re-enrollment restrictions. Resolve that cause before retrying. Agentic sequences use the generated-draft workflow in Unify. This endpoint returns 400 Bad Request for an agentic sequence.

Authorizations

x-api-key
string
header
required

Body

application/json

Request body for enrolling a person in a sequence.

sequence_id
string<uuid>
required

String UUID value.

person_id
string<uuid>
required

String UUID value.

mailbox_emails
string<email>[]
required

Candidate mailbox addresses to send from. One is selected at enrollment time. At most 10 addresses are accepted.

Required array length: 1 - 10 elements

String value representing an email address.

allowed_concurrent_sequence_ids
string<uuid>[]

Active sequence IDs that the caller explicitly approved for simultaneous enrollment. Omit this field unless the user reviewed those enrollments.

String UUID value.

Response

Response returned when an enrollment is created.

Response returned when an enrollment is created.

id
string<uuid>
required

String UUID value.

created_at
string<date-time>
required

String value representing an RFC 3339 datetime.

updated_at
string<date-time>
required

String value representing an RFC 3339 datetime.

sequence
object
required

Sequence details embedded in enrollment responses.

person
object
required

Person details embedded in enrollment responses.

mailbox
object
required

Mailbox details embedded in enrollment responses.

enrolled_by_play
object | null
required

The play that created the enrollment, if applicable.

reply_email_message
object | null
required

Reply email message details embedded in enrollment responses.

status
enum<string>
required

Status of a sequence enrollment.

Available options:
DRAFT,
IN_PROGRESS,
FINISHED
is_blocked
boolean
required
is_bounced
boolean
required
is_canceled
boolean
required
is_excluded
boolean
required
is_opted_out
boolean
required
is_paused
boolean
required
is_replied
boolean
required
started_at
string<date-time> | null
required

String value representing an RFC 3339 datetime.

ended_at
string<date-time> | null
required

String value representing an RFC 3339 datetime.