Sequences
Bulk enroll people in a sequence
Enrolls up to 500 people. Partial success is allowed. Requires a USER API key. enrollerUserId applies to every Person in the batch — see the single-enroll endpoint for the on-behalf-of semantics and error codes. Unlike per-Person outcomes, an invalid enrollerUserId fails the whole request (checked once before the batch runs).
post/public/v1/sequences/{sequenceId}/enrollments/bulk
Path parameters
sequenceIdnumber nullable
Example:101
Headers
idempotency-keystring
Example:example value
Request body
Example request
{
"personRowIds": [
"example"
],
"senderConnectedAccountId": 1,
"enrollerUserId": 1
}Response
Previously completed idempotent bulk enrollment
Example response
{
"created": [
{
"id": 1,
"accountId": 1,
"sequenceId": 1,
"personRowId": "example",
"snapshotId": "example",
"sourceSnapshotId": "example",
"snapshotPinnedAt": "example",
"currentNodeId": "example",
"status": "ACTIVE",
"blockedOn": "NONE",
"nextExecutionAt": "example",
"enrolledByUserId": 1,
"senderConnectedAccountId": 1,
"startedAt": "example",
"lastAdvancedAt": "example",
"exitedAt": "example",
"completedAt": "example",
"pausedAt": "example",
"removedAt": "example",
"exitReason": "example",
"exitNote": "example",
"exitedByUserId": 1,
"failureReason": "example",
"failureCode": "example",
"createdAt": "example",
"updatedAt": "example",
"enrolledByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
},
"exitedByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
}
}
],
"skipped": [
{
"personRowId": "example",
"reason": "example",
"instance": {
"id": 1,
"accountId": 1,
"sequenceId": 1,
"personRowId": "example",
"snapshotId": "example",
"sourceSnapshotId": "example",
"snapshotPinnedAt": "example",
"currentNodeId": "example",
"status": "ACTIVE",
"blockedOn": "NONE",
"nextExecutionAt": "example",
"enrolledByUserId": 1,
"senderConnectedAccountId": 1,
"startedAt": "example",
"lastAdvancedAt": "example",
"exitedAt": "example",
"completedAt": "example",
"pausedAt": "example",
"removedAt": "example",
"exitReason": "example",
"exitNote": "example",
"exitedByUserId": 1,
"failureReason": "example",
"failureCode": "example",
"createdAt": "example",
"updatedAt": "example",
"enrolledByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
},
"exitedByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
}
},
"conflictSequence": {
"id": 1,
"name": "example",
"status": "LIVE"
},
"activeCount": 1,
"maxAllowed": 1,
"activeInstances": [
{
"instanceId": 1,
"sequenceId": 1,
"sequenceName": "example"
}
]
}
],
"conflicts": [
{
"personRowId": "example",
"reason": "example",
"instance": {
"id": 1,
"accountId": 1,
"sequenceId": 1,
"personRowId": "example",
"snapshotId": "example",
"sourceSnapshotId": "example",
"snapshotPinnedAt": "example",
"currentNodeId": "example",
"status": "ACTIVE",
"blockedOn": "NONE",
"nextExecutionAt": "example",
"enrolledByUserId": 1,
"senderConnectedAccountId": 1,
"startedAt": "example",
"lastAdvancedAt": "example",
"exitedAt": "example",
"completedAt": "example",
"pausedAt": "example",
"removedAt": "example",
"exitReason": "example",
"exitNote": "example",
"exitedByUserId": 1,
"failureReason": "example",
"failureCode": "example",
"createdAt": "example",
"updatedAt": "example",
"enrolledByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
},
"exitedByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
}
},
"conflictSequence": {
"id": 1,
"name": "example",
"status": "LIVE"
},
"activeCount": 1,
"maxAllowed": 1,
"activeInstances": [
{
"instanceId": 1,
"sequenceId": 1,
"sequenceName": "example"
}
]
}
],
"blocked": [
{
"personRowId": "example",
"reason": "example",
"instance": {
"id": 1,
"accountId": 1,
"sequenceId": 1,
"personRowId": "example",
"snapshotId": "example",
"sourceSnapshotId": "example",
"snapshotPinnedAt": "example",
"currentNodeId": "example",
"status": "ACTIVE",
"blockedOn": "NONE",
"nextExecutionAt": "example",
"enrolledByUserId": 1,
"senderConnectedAccountId": 1,
"startedAt": "example",
"lastAdvancedAt": "example",
"exitedAt": "example",
"completedAt": "example",
"pausedAt": "example",
"removedAt": "example",
"exitReason": "example",
"exitNote": "example",
"exitedByUserId": 1,
"failureReason": "example",
"failureCode": "example",
"createdAt": "example",
"updatedAt": "example",
"enrolledByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
},
"exitedByUser": {
"id": 1,
"firstName": "example",
"lastName": "example",
"email": "user@example.com",
"avatar": "example"
}
},
"conflictSequence": {
"id": 1,
"name": "example",
"status": "LIVE"
},
"activeCount": 1,
"maxAllowed": 1,
"activeInstances": [
{
"instanceId": 1,
"sequenceId": 1,
"sequenceName": "example"
}
]
}
]
}Changes
Changed in 1 of the 2 revisions of this API.1
- ○
endpoint added
endpoint-added
This revision also has 9 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ○