Skip to main content
GET
Get a sequence
Returns one sequence by id: its settings, its step and engagement counters, and can_manage. A sequence on another team returns 404, the same as one that does not exist.

Example

Things to know

  • Archived sequences are returned too, with archived_at set. They are left out of List sequences, cannot be enabled, and refuse new enrollments. Archiving happens in the dashboard; the API has no archive endpoint.
  • Engagement counters (open_count, reply_count and the rest) count events, not people, and are rebuilt every 15 minutes. For live, per-person numbers use List the people behind an engagement metric; for live enrollment counts use Get sequence analytics.
  • Optional settings that were never set, such as throttle_capacity or schedule, are absent from the response rather than null.
  • Reads act as the team owner, so can_manage is always true here.

Authorizations

x-api-key
string
header
required

Team-scoped API key generated in the Salesfinity dashboard under Settings → Connections → API & Webhooks. A missing or invalid key returns HTTP 403.

Path Parameters

id
string
required

24-character sequence id.

Response

The sequence.

A Sequencer sequence (a cadence). can_manage is returned by list and get only; step_type_counts and enrollment_counts by list only.

_id
string

24-character hexadecimal id.

Example:

"507f1f77bcf86cd799439011"

team
string

The team that owns the sequence (24-character id).

name
string

Sequence name.

description
string | null
tags
string[]

Free-text labels for filtering.

enabled
boolean

Whether the sequence is running. New and duplicated sequences start false.

sequence_type
enum<string>

interval: each step waits interval_seconds after the previous one. date: each step comes due on its own date.

Available options:
interval,
date
user
string

Author's team member id. Only the author, the team owner or an admin can change the sequence. On GET /v2/sequencer/sequences this field arrives expanded, as an object with _id, first_name, last_name and email, not as a string.

policy
string | null

Rules-of-engagement policy id, or null (or absent) when the sequence uses the team default policy.

transactional
boolean

Whether the sequence is transactional: enrollment skips the suppression list, and sends skip only unsubscribed and manual suppression entries.

throttle_capacity
integer | null

Most live (pending, active or paused) enrollments per owner. Absent when there is no cap.

throttle_max_adds_per_day
integer | null

Most new enrollments per owner per day. Absent when there is no cap.

throttle_paused
boolean

When true, adding people is refused while the sequence keeps running for those already in it.

track_opens
boolean

Whether emails carry an open-tracking pixel.

Whether links in emails are rewritten to track clicks.

sequence_step_count
integer

Number of steps. Updated whenever a step is added, changed or deleted.

duration_in_days
integer

Sum of the steps' interval_seconds, rounded up to whole days. Always 0 on a date sequence.

num_contacted_prospects
integer

Distinct people reached: sent or delivered an email, or a completed call or task. Rebuilt every 15 minutes.

num_replied_prospects
integer

Distinct people who replied. Rebuilt every 15 minutes.

open_count
integer

Number of opens, counted as events, not people. Rebuilt every 15 minutes.

click_count
integer

Number of link clicks, counted as events, not people. Rebuilt every 15 minutes.

reply_count
integer

Number of replies, counted as events, not people. Rebuilt every 15 minutes.

bounce_count
integer

Number of bounces, counted as events, not people. Rebuilt every 15 minutes.

opt_out_count
integer

Number of opt-outs, counted as events, not people. Rebuilt every 15 minutes.

deliver_count
integer

Number of deliveries, counted as events, not people. Rebuilt every 15 minutes.

enabled_at
string<date-time>

When the sequence was last enabled. Absent if it never has been.

archived_at
string<date-time> | null

When the sequence was archived in the dashboard, or null. Archived sequences are left out of the list and cannot be enabled or enrolled into; the API has no archive endpoint.

primary_reply_action
enum<string>

What a reply that reads as interested, a meeting request, or unclear does to the enrollment.

Available options:
finish,
continue,
pause
primary_reply_pause_duration
integer

Seconds an enrollment pauses for when primary_reply_action is pause. Absent means the pause lasts until someone resumes it.

schedule
object

The sequence's own sending window. Absent when the sequence uses the team default schedule.

email_account_ids
integer[]

Mailbox ids the sequence sends from. Empty means the author's assigned mailboxes, or the team's shared ones when the author has none.

failure_count
integer

Number of failed sends, counted as events. Rebuilt every 15 minutes.

schedule_count
integer

Number of times a step ran and produced work: emails sent plus tasks created. Rebuilt every 15 minutes.

reply_rate
integer

num_replied_prospects as a percentage of num_contacted_prospects, 0 to 100, rounded. 0 while nobody has been contacted.

automation_percentage
integer

Share of steps that are auto_email, 0 to 100, rounded.

last_activity_at
string<date-time> | null

When anything last happened in the sequence (an email, a task, a reply). Null for a sequence that has done nothing.

step_type_counts
object

List only. How many steps of each type the sequence has. Every type is always present.

enrollment_counts
object

List only. Live count of the sequence's enrollments in each state, plus total. Every state is always present.

can_manage
boolean

Whether the member the request acted as may change this sequence. API reads act as the team owner, so this is true on every API read; it does not tell you whether a given user_id may edit. Returned by list and get only.

created_at
string<date-time>

When the sequence was created.

updated_at
string<date-time>

When it last changed.