Put people into a sequence
Enrolls contacts at the sequence's first step — and WRITES their messages: every step's email or LinkedIn note is written per person at enrollment (entries inline, the rest within minutes), stored per step, editable via the messages endpoints before anything is live. A draft or paused sequence enrolls fine; its first messages park in the review queue and nothing sends until it is turned on. **Sending uses the caller's own connected mailbox** — `enrolled_by` comes from the session, never a colleague's. Idempotent: somebody already moving through the sequence is left exactly where they are; somebody who finished is put back at the start; somebody unreachable on every channel is skipped and named in the response.
Enrolls contacts at the sequence's first step — and WRITES their messages: every step's email or LinkedIn note is written per person at enrollment (entries inline, the rest within minutes), stored per step, editable via the messages endpoints before anything is live. A draft or paused sequence enrolls fine; its first messages park in the review queue and nothing sends until it is turned on. Sending uses the caller's own connected mailbox — enrolled_by comes from the session, never a colleague's. Idempotent: somebody already moving through the sequence is left exactly where they are; somebody who finished is put back at the start; somebody unreachable on every channel is skipped and named in the response.
API key (sk_live_... prefix). Generate keys in the UI under Settings > API Keys, then send it as Authorization: Bearer sk_live_...
In: header
Path Parameters
uuidRequest Body
application/json
1 <= items <= 200Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://loading/api/v1/org/sequences/497f6eca-6276-4993-bfeb-53cbbbba6f08/enrollments" \ -H "Content-Type: application/json" \ -d '{ "org_contact_ids": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ] }'{
"data": {
"enrolled": -9007199254740991,
"alreadyIn": -9007199254740991,
"restarted": -9007199254740991,
"unreachable": [
"string"
],
"drafted": -9007199254740991,
"searching": [
"string"
]
}
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "module_required",
"module": "string",
"message": "string",
"contact": "string"
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}Who is in this sequence GET
Everyone enrolled, newest first, with where each of them has got to and when they are next due. `status` distinguishes the three parked states — `active` waits for the send window, `waiting` sits on a wait step, `throttled` has hit the account's daily cap — from the three finished ones.
One person's planned messages GET
The whole conversation-to-be, in the order the sequence will happen to this person. Written at enrollment; whatever is stored here is what each step sends verbatim when it comes due. The message currently parked in the review queue is flagged `is_pending` — send or skip it there.