Skip to main content

Documentation Index

Fetch the complete documentation index at: https://help.daylit.com/llms.txt

Use this file to discover all available pages before exploring further.

Sequences let you define reusable, multi-step outreach programs and enroll customers into them automatically. Each sequence contains ordered steps (emails, calls, or tasks) that fire on a schedule relative to enrollment. The queue surface gives you visibility into upcoming and ready steps and lets you send or cancel individual items before they go out.

List sequences

GET /api/companies/{company_id}/sequences
Returns a paginated list of sequence definitions for the company.
company_id
string
required
UUID of the company.
status
string
Comma-separated list of statuses to filter by (e.g. active,draft).
Free-text search on sequence name.
page
integer
default:"1"
Page number.
page_size
integer
default:"20"
Results per page.

Response

count
integer
Total matching sequences.
page
integer
Current page.
page_size
integer
Results per page.
data
array
List of sequence objects.

Create sequence

POST /api/companies/{company_id}/sequences
Creates a new sequence definition. You can optionally duplicate an existing sequence’s steps.
company_id
string
required
UUID of the company.
name
string
required
Unique name for the sequence within the company.
timezone
string
default:"America/New_York"
IANA timezone for step scheduling.
duplicate_from
string
UUID of an existing sequence to copy steps from.
send_followups_in_thread
boolean
When true, follow-up emails are sent as replies in the same email thread.
Returns the created sequence object with HTTP 201.
curl --request POST \
  --url "https://your-instance.com/api/companies/{company_id}/sequences" \
  --header "Authorization: Token {token}" \
  --header "Content-Type: application/json" \
  --data '{"name": "Net-60 Reminder Sequence", "timezone": "America/Chicago"}'

Get sequence detail

GET /api/companies/{company_id}/sequences/{sequence_id}
Returns a single sequence definition.
company_id
string
required
UUID of the company.
sequence_id
string
required
UUID of the sequence.

Update sequence

PATCH /api/companies/{company_id}/sequences/{sequence_id}
Updates mutable sequence settings. You can also use a POST to the same path with an action body to change lifecycle state.
company_id
string
required
UUID of the company.
sequence_id
string
required
UUID of the sequence.
name
string
New unique name.
timezone
string
Valid IANA timezone string.
sender_connection_id
string
UUID of an active Nylas email connection to use as the default sender. Pass null or an empty string to clear.
send_followups_in_thread
boolean
Thread follow-up toggle.
To change lifecycle state, POST to the same URL with {"action": "activate"} or {"action": "archive"}.

Get sequence overview

GET /api/companies/{company_id}/sequences/{sequence_id}/overview
Returns the full sequence definition with its ordered steps, active enrollment count, and the list of available email connections for sender selection.
company_id
string
required
UUID of the company.
sequence_id
string
required
UUID of the sequence.

Response

sequence
object
Full sequence definition.
steps
array
Ordered list of sequence steps.
active_enrollment_count
integer
Number of customers currently enrolled in this sequence.
email_connections
array
Available Nylas email connections for sender selection.

Add step

POST /api/companies/{company_id}/sequences/{sequence_id}/steps
Adds a new step to a sequence definition.
company_id
string
required
UUID of the company.
sequence_id
string
required
UUID of the sequence.
step_type
string
default:"reminder"
Step type: reminder, call, or task.
label
string
default:"New Step"
Display label for this step.
offset_days
integer
default:"0"
Days after enrollment start to schedule this step.
offset_time
string
default:"09:00"
Time of day in HH:MM format.
is_active
boolean
default:"true"
Whether this step fires for new enrollments.
subject_template
string
Email subject template.
body_plain_template
string
Plain-text email body template.
body_html_template
string
HTML email body template.
instructions
string
Instructions for AI email generation.
Returns the created step with HTTP 201.
curl --request POST \
  --url "https://your-instance.com/api/companies/{company_id}/sequences/{sequence_id}/steps" \
  --header "Authorization: Token {token}" \
  --header "Content-Type: application/json" \
  --data '{
    "step_type": "reminder",
    "label": "Day 7 Follow-up",
    "offset_days": 7,
    "offset_time": "09:00",
    "subject_template": "Following up on invoice {{invoice.number}}"
  }'

Get or update step

GET  /api/companies/{company_id}/sequences/{sequence_id}/steps/{step_id}
PUT  /api/companies/{company_id}/sequences/{sequence_id}/steps/{step_id}
GET returns the step. PUT updates any combination of the same fields accepted by the create endpoint. You cannot update a step that has execution history.
company_id
string
required
UUID of the company.
sequence_id
string
required
UUID of the sequence.
step_id
string
required
UUID of the step.
DELETE /api/companies/{company_id}/sequences/{sequence_id}/steps/{step_id} removes a step permanently. Returns 409 if the step has any execution history.

Enroll customer

POST /api/companies/{company_id}/sequence-enrollments
Enrolls a customer into a sequence. If the customer is already actively enrolled in the same sequence, the existing enrollment is returned with HTTP 200. Otherwise the new enrollment is returned with HTTP 201.
company_id
string
required
UUID of the company.
sequence_id
string
required
UUID of the sequence to enroll into.
customer_id
string
required
UUID of the customer to enroll.
start_date
string
ISO date (YYYY-MM-DD) for the enrollment start. Defaults to today.

Response

created
boolean
Whether a new enrollment was created.
enrollment
object
The enrollment record.
curl --request POST \
  --url "https://your-instance.com/api/companies/{company_id}/sequence-enrollments" \
  --header "Authorization: Token {token}" \
  --header "Content-Type: application/json" \
  --data '{"sequence_id": "seq-uuid", "customer_id": "cust-uuid", "start_date": "2026-06-01"}'

Bulk enroll customers

POST /api/companies/{company_id}/sequences/{sequence_id}/enrollments/bulk
Enrolls multiple customers into a sequence in one request. Only works with active sequences. Any customer already actively enrolled is re-enrolled with the new start date after completing the stale enrollment.
company_id
string
required
UUID of the company.
sequence_id
string
required
UUID of the sequence.
customer_ids
array
required
Non-empty list of customer UUIDs to enroll.
start_date
string
ISO date (YYYY-MM-DD). Applies to all enrollments in this request.

Response

enrolled_count
integer
Customers newly enrolled.
updated_count
integer
Customers re-enrolled after completing a stale enrollment.
skipped_count
integer
Customers skipped (e.g. not found).

Stop enrollment

POST /api/companies/{company_id}/sequence-enrollments/{enrollment_id}/stop
Completes an enrollment and cancels any remaining scheduled (not yet ready) steps.
company_id
string
required
UUID of the company.
enrollment_id
string
required
UUID of the enrollment to stop.
stop_reason
string
Optional reason for stopping the enrollment.

Response

enrollment
object
Updated enrollment record.
cancelled_scheduled_steps
integer
Number of future steps cancelled.

Get queue

GET /api/companies/{company_id}/sequences/queue
Returns the outreach queue — sequence steps that are ready to send or have already been processed. The endpoint automatically promotes any due steps to ready status before returning results.
company_id
string
required
UUID of the company.
category
string
default:"ready"
ready — steps waiting to be sent. history — completed, cancelled, or failed steps.
step_type
string
Filter by step type: reminder, call, or task.
sequence_id
string
Filter by sequence UUID.
enrollment_id
string
Filter by enrollment UUID.
customer_id
string
Filter by customer UUID.
ar_owner
string
Comma-separated list of AR owner member UUIDs. Use __unassigned__ to include customers with no AR owner.
search
string
Free-text search on sequence name, step label, customer name, or email subject.
page
integer
default:"1"
Page number.
page_size
integer
default:"20"
Results per page.

Response

count
integer
Total matching queue rows.
data
array
List of scheduled sequence step objects.

Send queue step

POST /api/companies/{company_id}/sequences/queue/{scheduled_step_id}/send
Sends a ready email sequence step. Only ready steps of type email can be sent. If the step is already past ready, the current state is returned without error.
company_id
string
required
UUID of the company.
scheduled_step_id
string
required
UUID of the scheduled step.
sender_connection_id
string
UUID of the Nylas email connection to send from. Must be the current user’s own connection, the sequence’s configured sender, or a connection with allow_shared_sending enabled. Defaults to the sequence’s configured sender.
Returns the updated scheduled step object after sending.
curl --request POST \
  --url "https://your-instance.com/api/companies/{company_id}/sequences/queue/{scheduled_step_id}/send" \
  --header "Authorization: Token {token}" \
  --header "Content-Type: application/json" \
  --data '{"sender_connection_id": "conn-uuid"}'