Read endpoints require
sequences:read. Enrolling, updating variables, pausing, resuming, and stopping require sequences:write.Enroll a contact
The most direct path isPOST /v1/sequences with the contact and template you want:
ACTIVE with at least one step. Topo rejects duplicate enrollments (same contact already running that template) and contacts on an exclusion list. The response is 201 with the new sequence resource.
Enroll via contact lists
Alternatively, attach adefault_sequence_template_id to a contact list and add entries:
- Known contact —
POST /v1/contact-entriesreturnscontact_idimmediately; enrollment starts in the same request when the list has an active default template. - New person —
contact_idisnulluntil lead-import finishes; enrollment runs after resolution when a default template is set.
GET /v1/sequences?contact_id=<uuid> — filter by the contact you enrolled.
List and inspect sequences
GET /v1/sequences supports filters including contact_id, sequence_template_id, status, and created_at_before / created_at_after. GET /v1/sequences/{sequence_id} returns a single run.
PATCH /v1/sequences/{sequence_id} merges per-run variables into the sequence.
Action endpoints:
POST /v1/sequences/{sequence_id}/pause— optionalpaused_untilbodyPOST /v1/sequences/{sequence_id}/resumePOST /v1/sequences/{sequence_id}/stop—reason(WINorLOSE) andscope(CONTACTstops this run only,ACCOUNTalso stops sequences for other contacts of the same account)