Sequence API
Create, populate, and control multichannel outreach sequences — email, LinkedIn, and calls in one campaign object.
- Base URL
https://api.reply.io/v3- Official reference
- docs.reply.io/api-reference/sequences/list-all-sequences
- OpenAPI
- sequences.openapi.yaml
- Markdown twin
- sequences.md
- Scopes
sequences:readsequences:writesequences:operate
What it does
The Sequence API is the outreach engine. A sequence is a multichannel campaign object: an ordered series of steps (automated email, LinkedIn action, call task) with delays, sending schedules, and A/B message variants. The API covers the full lifecycle — create a sequence (from scratch or a template), define its steps and variants, assign sending mailboxes and LinkedIn accounts, add contacts in bulk, start, pause, archive, and read stats per sequence and per step.
The problem it solves
Sending one email is easy; running outreach is not. Follow-up timing, channel mixing, reply detection (stop-on-reply), bounce handling, A/B testing, and sender rotation are months of infrastructure work. An agent that creates a sequence and adds contacts gets all of that from one API call surface — the machinery is Reply.io’s, already running at production scale.
How an agent starts using it
Create a sequence with POST /v3/sequences, add steps with the Sequence Steps endpoints, assign a mailbox with Sequence Email Accounts, add contacts with POST /v3/sequences/{id}/contacts/bulk-add-style Sequence Contacts operations, then POST /v3/sequences/{id}/start. Requires an API key with sequences:write and sequences:operate scopes. Reply detection, scheduling, and sending are handled by the platform from there.
Typical agent tasks
- Create a sequence with email and LinkedIn steps for a new campaign
- Add a batch of qualified contacts to a running sequence
- Pause a sequence when reply rates drop below a threshold
- Read per-step stats and disable the losing A/B variant
- Save a winning sequence as a reusable template
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
name | string | yes | Sequence name (create). |
steps | SequenceStep[] | no | Steps with channel, delay, and message variants — managed via the Sequence Steps endpoints. |
contactIds | string[] | no | Contacts to add, via the Sequence Contacts endpoints (bulk add supported). |
emailAccountIds | string[] | no | Sending mailboxes to assign, via the Sequence Email Accounts endpoints. |
Outputs
| Name | Type | Description |
|---|---|---|
id | string | Sequence identifier used by every other sequence endpoint. |
status | string | Lifecycle state (draft, active, paused, archived). |
stats | SequenceStats | Deliveries, opens, clicks, replies, bounces — per sequence and per step. |
Authentication
API key as Bearer token. Send Authorization: Bearer <API_KEY> on every request. Get an API key in the
Reply.io app under Settings → API Key —
authentication reference.
Rate limits
100 requests/minute and 3,000 requests/hour per user (shared across all of the user's API clients). The stats endpoints (/v3/sequences/{id}/stats, /v3/sequences/stats) may throttle earlier. On 429, honor the Retry-After header.
Example
curl -X POST https://api.reply.io/v3/sequences \
-H "Authorization: Bearer $REPLY_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "name": "SaaS founders - outbound July" }'
{
"id": 5417,
"name": "SaaS founders - outbound July",
"status": "draft",
"createdAt": "2026-07-04T09:15:00Z"
}
{
"type": "https://docs.reply.io/api-reference/authentication",
"title": "Forbidden",
"status": 403,
"detail": "This API key does not have the required scope: sequences:write."
}
Related APIs
Modules are designed to chain — combining them is the point.
Contact Data API
The CRM-grade contact and account store — create, import, filter, and organize the people and companies your agent works.
Outreach Actions API
One-off sends outside a sequence — a single email, LinkedIn connection request, InMail, message, or voice message, on demand.
Conversations & Inbox API
The unified inbox as an API — read threads across email and LinkedIn, classify replies with categories, detect meeting intent, and respond.
Analytics API
Outcome data for optimizing agents — email, LinkedIn, call, and task overviews, activity feeds, team performance, channel efficiency, and the meetings list.
Templates & Schedules API
Reusable email and sequence templates, variable rendering, sending schedules, and holiday calendars.
Frequently asked questions
Can one sequence mix email and LinkedIn steps?
Yes. A sequence is a multichannel object — steps can be automated emails, LinkedIn actions, or call tasks, with per-step delays and A/B variants.
How does an agent start and stop a sequence?
POST /v3/sequences/{id}/start and /pause (scope sequences:operate). Bulk start/pause/archive endpoints exist for managing many sequences at once.
Where do replies to a sequence show up?
In the unified inbox. Use the Conversations & Inbox API to read threads, or subscribe to the email_replied webhook event to be pushed each reply.
Start here: get an API key and make your first call, or explore workflows that combine this module with others.