Reply.io integrationReply.io logo

Reply.io integration for AI agents.

Reply.io integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves Reply.io tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.

What your agents can do

Real Reply.io actions, managed and audited.

Your user connects Reply.io once; your agent can then use Reply.io to manage contacts, accounts, sequences, inbox, email channels, reporting, and outreach workflows — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.

  1. 1

    Your user grants Reply.io access once (OAuth) — the token lands in the vault.

  2. 2

    Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.

  3. 3

    Every routed call appends a hash-chained audit record — nothing leaves your infra.

Tools & triggers

Supported Reply.io tools.

356 tools are generated from the published Reply.io catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.

Showing 356 tools. All published catalog entries are included in this page's server-rendered HTML.

Add accounts to an account list
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Adds accounts to the specified account list, preserving any other list memberships. This is a non-atomic operation: successfully added accounts are not rolled back if some fail. The response contains only the failed items with their error details.
Account Lists
Add a note to a contact
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Adds a note to an existing contact
Contacts
Add contacts to a contact list
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Adds contacts to the specified contact list. This is a non-atomic operation: successfully added contacts are not rolled back if some fail. The response contains only the failed items with their error details.
Contact Lists
Add a link
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Adds a web link to a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Add tags to an email account
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Adds one or more tags to an email account by tag name. Tags that don't exist yet will be created automatically.
Email Accounts
Archive a sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Archives a sequence. Returns the updated sequence.
Sequences
Assign email account to sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Links an email account to the sequence so it can be used for sending outbound emails.
Sequence Email Accounts
Assign a LinkedIn account to a sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Links a LinkedIn account to the specified sequence
Sequence LinkedIn Accounts
Reassign a task
<small>_Requires the `tasks:write` scope (or a broader one that includes it)._</small> Changes the assigned user for a single task. The target user must be a member of the caller's team.
Tasks
Assign threads to a category
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Non-atomic bulk assignment — links each supplied thread to this category. Per-item failures are returned in a dictionary keyed by thread id. **Per-item error codes** | Error code | Meaning | | --- | --- | | `notFound` | Thread or category not found | | `invalidInput` | Invalid input | | `forbidden` | User not allowed to assign this thread |
Inbox
Batch reassign tasks
<small>_Requires the `tasks:write` scope (or a broader one that includes it)._</small> Reassigns multiple tasks to a user. The target user must be a member of the caller's team. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Tasks
Batch complete tasks
<small>_Requires the `tasks:operate` scope (or a broader one that includes it)._</small> Completes multiple tasks without execution. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Tasks
Bulk add contacts to an account
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Adds multiple contacts to the specified account. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Accounts
Bulk add contacts to sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Add multiple contacts to the sequence at once
Sequence Contacts
Bulk archive sequences
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Archives multiple sequences at once. Non-atomic — some may succeed while others fail.
Sequences
Bulk assign sequences to a folder
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Assigns multiple sequences to a folder. Returns a map of sequence IDs that could not be processed with their error details.
Sequence Folders
Bulk change sequence owner
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Changes the owner of multiple sequences at once. Non-atomic — some may succeed while others fail.
Sequences
Bulk create domain blacklist rules
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates multiple domain blacklist rules. Non-atomic — some may succeed while others fail. Each item in the response array contains the created ID or error details.
Contact Blacklist Rules
Bulk create email exception blacklist rules
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates multiple email exception blacklist rules. Non-atomic — some may succeed while others fail. Each item in the response array contains the created ID or error details.
Contact Blacklist Rules
Bulk create email blacklist rules
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates multiple email blacklist rules. Non-atomic — some may succeed while others fail. Each item in the response array contains the created ID or error details.
Contact Blacklist Rules
Bulk create accounts
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates multiple accounts. Non-atomic — some may succeed while others fail. Each item in the response array contains the created ID or error details.
Accounts
Bulk create step variants
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates multiple text variants for a sequence step at once. For email steps, each variant may carry up to **3** `attachmentIds` (upload first via `POST /v3/attachments`); inaccessible attachment IDs surface as a per-item `forbidden` result.
Sequence Steps
Bulk create sequence steps
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates multiple steps in a sequence at once. Returns a list of results for each step. Email-step variants may carry up to **3** `attachmentIds` each; inaccessible attachment IDs surface as a per-item `forbidden` result (upload first via `POST /v3/attachments`).
Sequence Steps
Bulk delete domain blacklist rules
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes multiple domain blacklist rules by ID. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Contact Blacklist Rules
Bulk delete email exception blacklist rules
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes multiple email exception blacklist rules by ID. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Contact Blacklist Rules
Bulk delete email blacklist rules
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes multiple email blacklist rules by ID. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Contact Blacklist Rules
Bulk delete accounts
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes multiple accounts by ID. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Accounts
Bulk delete contacts
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes multiple contacts by ID. Non-atomic — some may succeed while others fail.
Contacts
Bulk delete email accounts
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Deletes multiple email accounts at once. This is a non-atomic operation: successfully deleted accounts are not rolled back if some fail. The response contains only the failed items with their error details.
Email Accounts
Bulk-delete inbox threads
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Non-atomic bulk delete. Successful threads are removed; per-item failures (e.g. not found, forbidden) are returned in a dictionary keyed by thread id. **Per-item error codes** | Error code | Meaning | | --- | --- | | `notFound` | Thread not found | | `forbidden` | User not allowed to delete this thread |
Inbox
Bulk delete LinkedIn accounts
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Deletes multiple LinkedIn accounts. Returns a dictionary of failed items keyed by account ID.
LinkedIn Accounts
Bulk delete step variants
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes multiple variants from a sequence step at once. Returns a map of variant IDs that could not be processed with their error details.
Sequence Steps
Bulk delete sequence steps
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes multiple steps from a sequence at once. Returns a map of step IDs that could not be processed with their error details.
Sequence Steps
Bulk delete sequences
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes multiple sequences at once. Non-atomic — some may succeed while others fail.
Sequences
Bulk delete tasks
<small>_Requires the `tasks:write` scope (or a broader one that includes it)._</small> Deletes multiple tasks by ID. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Tasks
Bulk pause sequences
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Pauses multiple sequences at once. Non-atomic — some may succeed while others fail.
Sequences
Bulk remove contacts from an account
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Removes multiple contacts from the specified account. Non-atomic — some may succeed while others fail. Items not in the response dictionary succeeded.
Accounts
Bulk remove contacts from sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Remove multiple contacts from the sequence at once
Sequence Contacts
Bulk start sequences
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Starts multiple sequences at once. Non-atomic — some may succeed while others fail.
Sequences
Bulk unarchive sequences
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> <small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Unarchives multiple sequences at once. Non-atomic — some may succeed while others fail.
Sequences
Bulk unassign sequences from a folder
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Removes multiple sequences from a folder. Returns a map of sequence IDs that could not be processed with their error details.
Sequence Folders
Cancel a background job
<small>_Requires the `other:operate` scope (or a broader one that includes it)._</small> Requests cancellation of a background job. Idempotent — cancelling an already-terminal job returns 204 without effect on the worker. The request body is optional; if provided, the `reason` is recorded alongside the cancellation event.
Background Jobs
Change contacts owner
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Changes the owner of one or more contacts to a different team member
Contacts
Disconnect the knowledge base from the sequence
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Disconnects the knowledge base connected to the sequence. Returns 404 if no knowledge base is connected. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Detach the playbook from the sequence
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Detaches the playbook attached to the sequence. Returns 404 if no playbook is attached. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Clone an email template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a copy of an existing email template.
Email Templates
Complete a task
<small>_Requires the `tasks:operate` scope (or a broader one that includes it)._</small> Marks a task as completed without execution (no email sent, no SMS sent). For tasks that require execution (sending), use the execute endpoint instead.
Tasks
Connect Gmail account via OAuth
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Initiates Gmail OAuth flow. Returns a 302 redirect to Google's OAuth consent page. After authorization, the email account will be automatically connected.
Email Accounts
Connect Office 365 account via OAuth
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Initiates Microsoft Office 365 OAuth flow. Returns a 302 redirect to Microsoft's OAuth consent page. After authorization, the email account will be automatically connected.
Email Accounts
Count contacts in sequence
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> <small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns the total number of contacts enrolled in the sequence.
Sequence Contacts
Count sequences
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> <small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns the total number of sequences matching the given filters. Accepts the same filter parameters as `GET /v3/sequences` (except pagination and sorting).
Sequences
Create an AI SDR sequence
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a new AI SDR sequence with its full AI SDR settings payload. The sequence is seeded either from a saved offer (`offerId`) or from inline offer-context inputs (`offerGenerationInputs`) — exactly one is required. Sequence steps are generated by the AI SDR — clients do not pass `steps` here. Generic sequence fields (`name`, `scheduleId`, `settings`, `emailAccounts`, `linkedInAccounts`) are accepted and applied after the AI SDR-specific setup. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Create a domain blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new domain blacklist rule.
Contact Blacklist Rules
Create an email exception blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new email exception blacklist rule.
Contact Blacklist Rules
Create an email blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new email blacklist rule.
Contact Blacklist Rules
Create a contact
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new contact. All fields are optional — at minimum provide email or a LinkedIn URL.
Contacts
Create an account
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new account.
Accounts
Create an account list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new account list for the current user's team. Names must be 3–128 characters and unique per team.
Account Lists
Create a contact list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new contact list.
Contact Lists
Create a custom field
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Creates a new custom field
Custom Fields
Create a direct connection link
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Creates a direct connection link for connecting a LinkedIn account without specifying a name upfront.
LinkedIn Accounts
Create an email account
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Creates a new email account. Only works with custom email account providers (SMTP/IMAP).
Email Accounts
Create an email template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new email template.
Email Templates
Create an email template folder
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new email template folder.
Email Templates
Create a holiday calendar
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new custom holiday calendar.
Holiday Calendars
Create inbox category
<small>_Requires the `inbox:write` scope (or a broader one that includes it)._</small> Creates a custom inbox category. Names must be unique within the team (case-insensitive).
Inbox
Create a knowledge base
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a new knowledge base. Only `name` is required. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Create a connection link
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Creates a new connection link for connecting a LinkedIn account via browser extension. Also creates a pending account entry.
LinkedIn Accounts
Create an offer
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a new offer. Only `name` is strictly required; all other fields default to empty. Requires the AI SDR feature on the caller's team.
AI SDR Offers
Create a playbook
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a new playbook in the `organization` or `team` scope. `global` playbooks are Reply-curated and cannot be created via the API. Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
Create a reengagement card
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a new reengagement card attached to a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Create a reply handler
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a new reply handler attached to a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Create a schedule
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new schedule with timing configuration.
Schedules
Create a sequence
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new email sequence
Sequences
Create a sequence folder
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new sequence folder
Sequence Folders
Create a sequence from a template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new sequence based on an existing sequence template
Sequences
Create a sequence step
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new step in a sequence. For bulk creation, use the `/steps/bulk` endpoint. For email steps, each variant may carry up to **3** `attachmentIds` (upload first via `POST /v3/attachments`); attachments that don't belong to the caller (or the caller's team) are rejected with `403 sequenceStep.forbidden`.
Sequence Steps
Create a step variant
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new variant for a sequence step. Supports both text variants (`application/json`) and voice message variants (`multipart/form-data`). For email-step text variants, the request may carry up to **3** `attachmentIds` (upload first via `POST /v3/attachments`). Inaccessible attachment IDs are rejected with `403 sequenceStep.forbidden`.
Sequence Steps
Create a task
<small>_Requires the `tasks:write` scope (or a broader one that includes it)._</small> Creates a new task. The template body may contain handlebars variables (e.g. `{{firstName}}`) which are resolved when the task is read or executed.
Tasks
Create a webhook subscription
<small>_Requires the `webhooks:write` scope (or a broader one that includes it)._</small> Creates a new webhook subscription for the authenticated user. `scope` defaults to `personal` when omitted. `team`-scope subscriptions are accepted only when policy allows: any member may create them for public teams or organization mode; only the team owner may create them for private teams. Attempting to create an `organization`-scope subscription is rejected with `code: webHook.organizationScopeNotImplemented` — the value is reserved for future use.
Webhooks
Reject (delete) a pending approval
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Discards the pending AI-generated message for a contact and removes the contact from the sequence. The queued draft and its personalization step are deleted. Requires the AI SDR feature on the caller's team.
AI SDR Pending Approvals
Delete a domain blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing domain blacklist rule. Global rules (seeded by the system) cannot be deleted.
Contact Blacklist Rules
Delete an email exception blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing email exception blacklist rule.
Contact Blacklist Rules
Delete an email blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing email blacklist rule. Global rules (seeded by the system) cannot be deleted.
Contact Blacklist Rules
Delete a contact
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing contact
Contacts
Delete an account
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing account.
Accounts
Delete an account list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing account list. The accounts themselves are not deleted — only their membership in this list is removed.
Account Lists
Delete a contact list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing contact list.
Contact Lists
Delete a custom field
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Deletes an existing custom field
Custom Fields
Delete an email account
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Deletes an existing email account by ID.
Email Accounts
Delete an email template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes an email template by ID.
Email Templates
Delete an email template folder
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes an email template folder by ID.
Email Templates
Delete a holiday calendar
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes a custom holiday calendar. Only custom calendars can be deleted.
Holiday Calendars
Delete inbox category
<small>_Requires the `inbox:write` scope (or a broader one that includes it)._</small> Deletes a custom category and unlinks it from any threads. Reserved (system) categories reject this operation with 403 / `code: inboxCategory.cannotModifyDefault`.
Inbox
Delete inbox thread
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Permanently deletes a single thread.
Inbox
Delete a knowledge base
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Deletes a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Delete a document
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Removes a document from a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Delete a link
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Removes a link from a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Delete a LinkedIn account
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Deletes a LinkedIn account by ID. Use the force parameter to delete accounts that are in use by sequences.
LinkedIn Accounts
Delete an offer
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Deletes an offer. Requires the AI SDR feature on the caller's team.
AI SDR Offers
Delete a pending LinkedIn account
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Deletes a pending LinkedIn account that has not yet been connected.
LinkedIn Accounts
Delete a playbook
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Deletes a playbook. `global` playbooks cannot be deleted via the API. Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
Delete a style file
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Removes a style file from a playbook. Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
Delete a reengagement card
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Deletes a reengagement card. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Delete reengagement card media
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Removes a media item from a reengagement card. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Delete a reply handler
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Deletes a reply handler. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Delete reply handler media
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Removes a media item from a reply handler. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Delete a schedule
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes a schedule by ID. Cannot delete the default schedule or a schedule in use.
Schedules
Delete a sequence
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes an existing sequence
Sequences
Delete a sequence folder
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes an existing sequence folder
Sequence Folders
Delete a sequence step
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes a sequence step. By default only the addressed step is removed (`mode=nodeOnly`), and any children remain attached to the parent. For condition (branch) steps, set `mode` to also remove descendants on one or both branches.
Sequence Steps
Delete a step variant
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes an existing variant from a sequence step
Sequence Steps
Delete a sequence template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Deletes an existing sequence template. - **Global templates** (seeded by the system) cannot be deleted — returns 403. - **User-scoped templates** are team-shared: any teammate may delete a template visible to them. Out-of-team or non-existent ids return 404. - **Organization templates** require the `DeleteOrgTemplates` feature scope — callers without it get 403.
Sequence Templates
Delete a task
<small>_Requires the `tasks:write` scope (or a broader one that includes it)._</small> Deletes a single task by ID. Returns 204 on success.
Tasks
Delete a webhook subscription
<small>_Requires the `webhooks:write` scope (or a broader one that includes it)._</small> Permanently deletes the subscription and its delivery-log payloads.
Webhooks
Disable autopilot
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Disables autopilot on the sequence. No-op when autopilot is already disabled. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Disable step variants
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Disables the specified variants on a sequence step. Variants are toggled independently — failures are reported per `variantId` in the response without aborting the whole call.
Sequence Steps
Disable a webhook subscription
<small>_Requires the `webhooks:operate` scope (or a broader one that includes it)._</small> Pauses a subscription without deleting it — no events fire until re-enabled. Idempotent: calling on an already-disabled subscription still returns `204`. Use this dedicated endpoint rather than `PUT` to toggle the paused state (`PUT` does not accept the `enabled` flag).
Webhooks
Duplicate a knowledge base
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a copy of an existing knowledge base, including its links, documents, reply handlers, and reengagement cards. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Duplicate an offer
<Warning> **Coming soon.** This endpoint will be available by mid July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a copy of an existing offer, including its company-context fields (ICP, reason for outreach, case studies, pain points, proof points, value propositions, and calls to action). The copy is returned in the response body. Requires the AI SDR feature on the caller's team.
AI SDR Offers
Duplicate a playbook
<Warning> **Coming soon.** This endpoint will be available by mid July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Creates a copy of an existing playbook and returns the new playbook in the response body. `global` playbooks can also be duplicated. Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
Enable autopilot
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Enables autopilot on the sequence. No-op when autopilot is already enabled. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Enable step variants
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Enables the specified variants on a sequence step. Variants are toggled independently — failures are reported per `variantId` in the response without aborting the whole call.
Sequence Steps
Enable a webhook subscription
<small>_Requires the `webhooks:operate` scope (or a broader one that includes it)._</small> Resumes a paused subscription. Idempotent — calling on an already-enabled subscription still returns `204`. Use this dedicated endpoint rather than `PUT` to toggle the paused state (`PUT` does not accept the `enabled` flag). When the active-subscriptions limit has been reached, returns `409 Conflict` with `code: webHook.limitReached`.
Webhooks
Enrich contacts by email
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Enriches contact data using each contact's existing email address. Consumes credits from the Reply credit pool — 1 credit per contact.
Contact Enrichment
Enrich contacts by LinkedIn URL
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Enriches contact data using each contact's LinkedIn URL. Optionally also finds email and/or phone in the same call. Consumes credits from the Reply credit pool: 1 per contact, plus (when find-email is enabled) 2 and (when find-phone is enabled) 3 per contact.
Contact Enrichment
Fill AI custom fields
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Fills configured AI custom field values for contacts using AI. Consumes credits from the Reply credit pool — 1 credit per contact-field combination.
Contact Enrichment
Estimate email validation
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Synchronous probe — given a list of contact IDs, returns counts, credit sufficiency, and any blockers that would prevent scheduling. Useful for showing pre-flight feedback in the UI before triggering `/schedule`.
Email Validations
Execute and complete a task
<small>_Requires the `tasks:operate` scope (or a broader one that includes it)._</small> Executes the task action (sends email or SMS) and completes it. Only ManualEmail (7) and Sms (8) task types support execution. Other task types return 400 — use the complete endpoint for those.
Tasks
Export a holiday calendar as CSV
<Warning> **Coming soon.** This endpoint will be available by mid-July 2026. </Warning> <small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Exports the holidays of a calendar as a CSV file. The response filename matches the calendar name.
Holiday Calendars
Filter accounts
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated, filtered list of accounts using advanced filter criteria.
Accounts
Filter contacts
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of contacts matching the provided filter rules
Contacts
Count filtered contacts
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns the total number of contacts matching the provided filter rules. Accepts the same request body as `POST /v3/contacts/filter` but returns only the count.
Contacts
Filter email accounts
<small>_Requires the `channels:read` scope (or a broader one that includes it)._</small> Returns a paginated list of email accounts matching the provided filter criteria. In Public or Organization mode, results include all team members' accounts. Use `ownerUserIds` filter to restrict by specific users. When no accounts match the filter, the response contains an empty `items` array with `hasMore: false` — this is normal behavior, not an error.
Email Accounts
Filter inbox threads
<small>_Requires the `inbox:read` scope (or a broader one that includes it)._</small> Returns a paginated page of inbox threads matching the supplied filter. All filter fields are optional — the empty body matches the same set as `GET /v3/inbox/threads`.
Inbox
Filter tasks
<small>_Requires the `tasks:read` scope (or a broader one that includes it)._</small> Returns a filtered, paginated list of tasks. Pagination params (`top`, `skip`) are in query string; filter criteria in request body. All filter fields are optional — an empty body `{}` returns all tasks. The request body must be a valid JSON object; a missing or unparseable body returns 400.
Tasks
Find missing email addresses
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Finds missing email addresses for contacts that currently don't have one. Consumes credits from the Reply credit pool — 2 credits per contact.
Contact Enrichment
Find phone numbers
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Finds phone numbers for contacts. Consumes credits from the Reply credit pool — 3 credits per contact.
Contact Enrichment
Force-start an autopilot search
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Force-starts an autopilot contact search for the sequence, bypassing the normal schedule. Autopilot must already be enabled; rejected with 409 otherwise. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Generate an AI draft reply
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> Generates an AI-suggested reply for an inbox thread. The same endpoint backs both the initial generate and the "Regenerate" action in the message editor — each call produces a fresh draft. To send the draft (with or without edits), use the existing `POST /v3/inbox/threads/{id}/messages` endpoint.
Inbox
Generate an offer
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Generates an offer from a prompt or company URL, optionally seeded with previously uploaded attachments. The generated offer is persisted directly — clients do not need a separate create call. Returns a background job to poll via `GET /v3/background-jobs/{jobId}`; on completion its `jsonDataResult` carries the generated offer (`offerId` plus the same company-context fields returned by `GET /v3/ai-sdr/offers/{id}`). Requires the AI SDR feature on the caller's team.
AI SDR Offers
Get the sequence's knowledge base
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns the knowledge base connected to the sequence. Each sequence is connected to at most one knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Get the sequence's playbook
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns the playbook attached to the sequence. Each sequence is attached to at most one playbook. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Read AI SDR sequence settings
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns the AI SDR-specific settings of a sequence. Mirrors the shape of the create/patch body. Generic sequence fields (name, schedule, etc.) are read via `GET /v3/sequences/{id}`. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Get pending approval for a contact
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns the pending AI-generated message for a single (sequence, contact) pair, including the prior message thread for context. Requires the AI SDR feature on the caller's team.
AI SDR Pending Approvals
Get a background job
<small>_Requires the `other:read` scope (or a broader one that includes it)._</small> Returns the full record for a background job, including raw input (`jsonData`) and result (`jsonDataResult`) JSON payloads when available.
Background Jobs
List background jobs
<small>_Requires the `other:read` scope (or a broader one that includes it)._</small> Returns a paginated list of background jobs created by the current user. Optionally filter by category suffix.
Background Jobs
Get a domain blacklist rule
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single domain blacklist rule by ID.
Contact Blacklist Rules
List domain blacklist rules
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of domain blacklist rules.
Contact Blacklist Rules
Get an email exception blacklist rule
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single email exception blacklist rule by ID.
Contact Blacklist Rules
List email exception blacklist rules
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of email exception blacklist rules.
Contact Blacklist Rules
Get an email blacklist rule
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single email blacklist rule by ID.
Contact Blacklist Rules
List email blacklist rules
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of email blacklist rules.
Contact Blacklist Rules
List call activity
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns a paginated list of individual call records matching the specified filters. Call recording URLs are included only if the user has permission to listen to call records.
Reports
Get calls reporting overview
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns aggregated call statistics with per-member breakdown. Includes total calls, average duration, positive/answered counts, and inbound missing calls.
Reports
Get channel efficiency overview
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns cross-channel efficiency statistics comparing performance across email, calls, LinkedIn, and other channels.
Reports
List contact filter properties
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all available contact filter properties that can be used in sequence step conditions. Each property includes its supported operators and, for enum-like properties, the allowed values. This is a static discovery endpoint — the response does not depend on user data or any specific sequence.
Sequence Steps
Get an account
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single account by ID.
Accounts
List contacts for an account
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of contacts linked to the specified account.
Accounts
Get an account list
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single account list by ID.
Account Lists
List account lists
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of account lists for the current user's team.
Account Lists
List accounts
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of accounts.
Accounts
Get activities for a contact
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of activities for a contact
Contacts
Get AI insights for a contact
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Returns the AI-generated insights summary for a single (sequence, contact) pair. The summary is rendered as Markdown. Only available after at least one personalized message has been generated for the contact in this sequence. Returns `404` otherwise. Requires the AI SDR feature on the caller's team.
AI SDR Insights
Get a contact
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns contact details by ID
Contacts
Get a contact list
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single contact list by ID.
Contact Lists
List contact lists
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of all contact lists.
Contact Lists
Get contact's lists
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns the contact lists that contain the specified contact.
Contact Lists
Get sequences for a contact
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a list of sequences that the contact is enrolled in
Contacts
Get a contact's statuses
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns the contact's current global flags (`isOptedOut`, `callStatus`, `meetingStatus`) plus per-sequence status (`statusInSequence`) and email disposition (`isReplied`, `isBounced`) for each sequence the contact is enrolled in.
Contacts
List all contacts
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of all contacts in your account
Contacts
Get a custom field
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single custom field by ID
Custom Fields
List all custom fields
<small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a list of all custom fields in your account
Custom Fields
Get an email account
<small>_Requires the `channels:read` scope (or a broader one that includes it)._</small> Returns the full details of a single email account including all configuration sections.
Email Accounts
Get an email template
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a single email template by ID.
Email Templates
Get an email template folder
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a single email template folder by ID.
Email Templates
Get template variables
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all available template variables grouped by category (prospect, team, advanced).
Email Templates
List email activity
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns a paginated list of individual email activity records matching the specified filters. Use `top` and `skip` query parameters for pagination.
Reports
Get email reporting overview
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns email delivery and engagement metrics with optional trend comparison. Provides aggregated statistics including delivery rates, opens, replies, bounces, and clicks. Optionally compare against a previous period by providing the `compareTo` field.
Reports
List sequences in a folder
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a paginated list of sequences in a folder
Sequence Folders
Get a holiday calendar
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a single holiday calendar by ID, including its holidays.
Holiday Calendars
Get inbox category
<small>_Requires the `inbox:read` scope (or a broader one that includes it)._</small> Returns a single inbox category by id, including reserved system categories.
Inbox
Get inbox thread
<small>_Requires the `inbox:read` scope (or a broader one that includes it)._</small> Returns a single thread including the ordered message history.
Inbox
Get a knowledge base
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a single knowledge base by id. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Get a LinkedIn account
<small>_Requires the `channels:read` scope (or a broader one that includes it)._</small> Returns a single LinkedIn account by ID.
LinkedIn Accounts
List LinkedIn activity
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns a paginated list of individual LinkedIn action records matching the specified filters.
Reports
Get LinkedIn reporting overview
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns LinkedIn engagement metrics overview including connection requests, messages, InMails, and profile views.
Reports
Get a Live Data search
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a single Live Data search by id, including its status, progress, and the filters it was run with.
Live Data
List meetings
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns a paginated list of meetings booked through team performance, matching the specified filters.
Reports
Get an offer
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a single offer by id. Requires the AI SDR feature on the caller's team.
AI SDR Offers
Get a playbook
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a single playbook by its composite id (`g-N` / `o-N` / `t-N`). Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
Get a reengagement card
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a single reengagement card by id. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Get a reply handler
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a single reply handler by id. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Get a schedule
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a single schedule by ID.
Schedules
Get a sequence
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns sequence details by Id
Sequences
Get a contact in a sequence
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns details of a specific contact enrolled in the sequence.
Sequence Contacts
List contacts in sequence
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Retrieve all contacts enrolled in the sequence. Defaults to most-recently-added first; use `sort_by` and `sort_direction` to override.
Sequence Contacts
List contacts in sequence with extended state
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Retrieve contacts enrolled in the sequence with optional additional columns such as current step, last step completed at, and status. The response always includes the base fields: `contactId`, `email`, `firstName`, `lastName`, `title`, `addedAt`. Additional fields (`currentStep`, `lastStepCompletedAt`, `status`) are **only** included when explicitly requested via the `additionalColumns` query parameter. Omitting `additionalColumns` returns only the base fields.
Sequence Contacts
List email accounts in sequence
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns the list of email accounts currently linked to the specified sequence.
Sequence Email Accounts
Get a sequence folder
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a sequence folder by Id
Sequence Folders
List all sequence folders
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a list of all sequence folders for the current user
Sequence Folders
List LinkedIn accounts for a sequence
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all LinkedIn accounts available for the sequence
Sequence LinkedIn Accounts
Get sequence preview for a contact
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns the per-contact preview of the messages this sequence will send, including any AI-personalized step templates.
Sequence Contacts
Get sequence stats
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns aggregated email and LinkedIn engagement stats for a single sequence.
Sequences
Get stats for all sequences
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns email and LinkedIn engagement stats per sequence. **Date range restrictions:** - `dateRangePreset` must be `lastWeek` or `lastMonth`. `lastYear` and `allTime` are rejected. - When using `from`/`to`, the span must not exceed 31 days. - `from` must be within the last 31 days from the current date. - Defaults to `lastWeek` if no date filters are provided.
Sequences
Get a sequence step
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns details of a specific sequence step
Sequence Steps
List step variants
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all variants for a sequence step
Sequence Steps
List all sequence steps
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a list of all steps in a sequence
Sequence Steps
List all sequence templates
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all sequence templates grouped by scope (global, organization, team)
Sequence Templates
List all sequences
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a paginated list of all sequences in your account. Results are ordered by creation date, newest first, unless overridden with `sortBy` / `sortDirection`.
Sequences
Get settings
<small>_Requires the `settings:read` scope (or a broader one that includes it)._</small> Returns the full settings object for the authenticated user's team, including account profile, email configuration, LinkedIn, calls, contacts, and beta features.
Settings
Get a task
<small>_Requires the `tasks:read` scope (or a broader one that includes it)._</small> Returns full task details by ID. Use `includeContent=true` to also get the rendered content (variables resolved).
Tasks
List all tasks
<small>_Requires the `tasks:read` scope (or a broader one that includes it)._</small> Returns a paginated list of all tasks visible to the current user. For filtered search, use POST /tasks/filter.
Tasks
List task activity
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns a paginated list of individual task records matching the specified filters.
Reports
Get tasks reporting overview
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns aggregated task statistics broken down by type (call, email, LinkedIn, meetings, SMS, to-do, WhatsApp), with per-member breakdown.
Reports
Get team performance overview
<small>_Requires the `reporting:read` scope (or a broader one that includes it)._</small> Returns team performance metrics including meetings booked, contacts engaged, conversion rates, touches per contact, and response times, with per-member breakdown.
Reports
Get a webhook subscription
<small>_Requires the `webhooks:read` scope (or a broader one that includes it)._</small> Returns a single webhook subscription owned by the authenticated user.
Webhooks
List supported event types
<small>_Requires the `webhooks:read` scope (or a broader one that includes it)._</small> Returns the catalog of event type names a subscription may listen to. Use any of these values in the `eventType` field when creating or updating a subscription.
Webhooks
Get webhook delivery logs
<small>_Requires the `webhooks:read` scope (or a broader one that includes it)._</small> Returns a paginated **failure log** for a single subscription — only failed delivery attempts are recorded here; successful deliveries are not listed. Each log entry captures the triggering event id, HTTP status (or `null` when the request could not be completed) and the UTC timestamp of the attempt.
Webhooks
Import contacts
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Import contacts by providing an array of contact objects with optional import settings. Each item in the `items` array uses the same fields as the contact patch model. Use `options` to control deduplication, list assignment, and other import behavior.
Contacts
Link a holiday calendar to a schedule
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Links a holiday calendar to the specified schedule.
Schedules
List AI web searches for a sequence
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Returns AI web searches started for a given sequence.
AI SDR Web Search
List pending approvals
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of AI-generated messages awaiting human approval before being sent. Requires the AI SDR feature on the caller's team.
AI SDR Pending Approvals
List email account tags
<small>_Requires the `channels:read` scope (or a broader one that includes it)._</small> Returns all email account tags available to the authenticated user.
Email Accounts
List email accounts
<small>_Requires the `channels:read` scope (or a broader one that includes it)._</small> Returns a paginated list of email accounts. By default returns all email accounts visible to the authenticated user, including team members' accounts in Public or Organization mode. Use `my=true` to restrict results to only the authenticated user's own accounts.
Email Accounts
List email template folders
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all email template folders for the authenticated user.
Email Templates
List email templates
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns a paginated list of email templates for the authenticated user.
Email Templates
List holiday calendars
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all holiday calendars available to the authenticated user, including predefined and custom calendars.
Holiday Calendars
List inbox categories
<small>_Requires the `inbox:read` scope (or a broader one that includes it)._</small> Returns all inbox categories visible to the current user, including reserved system categories.
Inbox
List messages in an inbox thread
<small>_Requires the `inbox:read` scope (or a broader one that includes it)._</small> Returns a paginated page of messages on the given thread, ordered by `date` ascending. Messages are polymorphic: `channel: email` carries recipient and subject metadata, `channel: linkedIn` carries only the shared base fields.
Inbox
List inbox threads
<small>_Requires the `inbox:read` scope (or a broader one that includes it)._</small> Returns a paginated page of inbox threads visible to the current user, ordered by `lastActivityDate` descending.
Inbox
Industries typeahead
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of Reply industry IDs used in intent-signal configuration (e.g. `technologyUsed.industryId`, `jobHiring.industries[]`). Distinct taxonomy from the Live Data filter-value industries — those are string-only Sales Navigator industries. Requires the AI SDR feature on the caller's team.
AI SDR Intent Signals
Technologies typeahead
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of Reply technology slugs used in intent-signal configuration (e.g. `technologyUsed.technologies[]`). The slug is the persisted identifier; name is display-only. Requires the AI SDR feature on the caller's team.
AI SDR Intent Signals
List documents
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of file documents attached to a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
List links
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of web links attached to a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
List knowledge bases
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of knowledge bases visible to the caller. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
List LinkedIn accounts
<small>_Requires the `channels:read` scope (or a broader one that includes it)._</small> Returns all LinkedIn accounts for the authenticated user.
LinkedIn Accounts
Departments typeahead
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Typeahead values for the `departments` filter on the Live Data / Autopilot sidebar.
Live Data
Industries typeahead
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Typeahead values for the `industries` filter on the Live Data / Autopilot sidebar.
Live Data
Job titles typeahead
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Typeahead values for the `jobTitles` filter on the Live Data / Autopilot sidebar.
Live Data
Locations typeahead
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Typeahead values for the `locations` filter on the Live Data / Autopilot sidebar. The response mixes countries, regions, and cities (no separate `/countries` endpoint).
Live Data
List Live Data searches
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Returns a paginated list of past Live Data searches for the caller's team, most recent first. Each item includes status and progress for polling.
Live Data
Seniorities typeahead
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:read` scope (or a broader one that includes it)._</small> Typeahead values for the `seniorities` filter on the Live Data / Autopilot sidebar.
Live Data
List offers
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of offers visible to the caller. Requires the AI SDR feature on the caller's team.
AI SDR Offers
List pending LinkedIn accounts
<small>_Requires the `channels:read` scope (or a broader one that includes it)._</small> Returns all pending LinkedIn accounts that are awaiting connection.
LinkedIn Accounts
List playbooks
<small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of playbooks visible to the caller. When `type` is omitted, results from all three scopes (`global`, `organization`, `team`) are merged. Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
List reengagement cards
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of reengagement cards attached to a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
List reply handlers
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:read` scope (or a broader one that includes it)._</small> Returns a paginated list of reply handlers attached to a knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
List linked holiday calendars
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all holiday calendars linked to the specified schedule.
Schedules
List schedules
<small>_Requires the `sequences:read` scope (or a broader one that includes it)._</small> Returns all schedules for the authenticated user.
Schedules
List webhook subscriptions
<small>_Requires the `webhooks:read` scope (or a broader one that includes it)._</small> Returns a paginated list of the authenticated user's webhook subscriptions, ordered by descending id. Use `top`/`skip` to page through results and inspect `hasMore` to detect additional pages.
Webhooks
Mark threads as read
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Non-atomic bulk update — flips `isRead` to `true` on each supplied thread. Per-item failures are returned in a dictionary keyed by thread id. **Per-item error codes** | Error code | Meaning | | --- | --- | | `notFound` | Thread not found | | `forbidden` | User not allowed to access this thread |
Inbox
Mark threads as unread
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Non-atomic bulk update — flips `isRead` to `false` on each supplied thread. Per-item failures are returned in a dictionary keyed by thread id. **Per-item error codes** | Error code | Meaning | | --- | --- | | `notFound` | Thread not found | | `forbidden` | User not allowed to access this thread |
Inbox
Move accounts to an account list
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Moves accounts to the specified account list, removing them from any other lists they belong to. This is a non-atomic operation: successfully moved accounts are not rolled back if some fail. The response contains only the failed items with their error details.
Account Lists
Move a contact to a sequence
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Moves a contact to a different sequence, optionally removing from existing sequences
Contacts
Move contacts to a contact list
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Moves contacts to the specified contact list. This is a non-atomic operation: successfully moved contacts are not rolled back if some fail. The response contains only the failed items with their error details.
Contact Lists
Move an email template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Moves an email template to a different folder.
Email Templates
Pause a sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Pauses an active sequence. Returns the updated sequence. This operation is **idempotent**: calling Pause on an already paused sequence returns `200` with the current sequence state. No error is raised.
Sequences
Personalize the preview for a contact
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Kicks off (or re-runs) AI personalization for a single contact in an AI SDR sequence. Personalization runs step-by-step in the background. The whole step chain for the contact is tracked by a single background job: the response returns its `jobId`, and progress advances as `personalizedSteps / totalSteps`. Poll the generic `GET /v3/background-jobs/{id}` endpoint for status and progress; on completion the job's `jsonDataResult` carries `{ sequenceId, contactId, personalizedSteps, totalSteps }`. A chain that ended early (for example, the contact was removed mid-chain) reports `personalizedSteps < totalSteps`. Requires the AI SDR feature on the caller's team.
AI SDR Sequence Preview
Preview autopilot results
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Previews the expected autopilot results for the sequence. Clients pass the autopilot filter config in the body — they are NOT required to save it to the sequence first (supports try-before-save in the filter UI). Returns a background job to poll via `GET /v3/background-jobs/{id}`; on completion its `jsonDataResult` carries `{ contactsCount, companiesCount, sampleContacts }`, where `sampleContacts` is a capped sample of matching contacts. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Preview a Live Data search
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Starts a Live Data preview for the given filters and returns a background job to poll. The job is tracked by `GET /v3/background-jobs/{id}`; on completion its `jsonDataResult` carries `{ contactsCount, companiesCount, sampleContacts }`, where `sampleContacts` is a capped sample of matching contacts. A preview adds no prospects and consumes no credits.
Live Data
Reconnect a LinkedIn account
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Generates a new connection link for reconnecting an existing LinkedIn account whose cookie has expired.
LinkedIn Accounts
Regenerate a pending approval
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Starts a background job that regenerates the AI-generated message for a single (sequence, contact) pair, and returns the job id. Optionally pass freeform `recommendations` to steer the regeneration. Poll `GET /v3/background-jobs/{jobId}` for status; when the job finishes, its result holds the regenerated `subject` and `body`. Requires the AI SDR feature on the caller's team.
AI SDR Pending Approvals
Remove contact from sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Remove a contact from the sequence
Sequence Contacts
Remove email account from sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Unlinks an email account from the sequence. The email account itself is not deleted.
Sequence Email Accounts
Remove a LinkedIn account from a sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Unlinks a LinkedIn account from the specified sequence
Sequence LinkedIn Accounts
Remove tags from an email account
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Removes one or more tags from an email account by tag name.
Email Accounts
Render an email template
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Renders an email template by substituting variables with actual contact data.
Email Templates
Reset manual edits in a sequence preview
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Reverts any manual edits the user has made to the preview for a contact and restores the AI-generated templates.
Sequence Contacts
Resume sending
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Resumes email sending for an account that was paused or throttled by the provider.
Email Accounts
Save a sequence as a template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Creates a new sequence template from an existing sequence
Sequences
Schedule email validation
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Schedules an asynchronous email-validation job for the supplied contact IDs. Returns `202 Accepted` with a `Location` header pointing at `/v3/background-jobs/{jobId}` — poll that endpoint for status and the eventual result. The eligibility filter (team scope + `RequiresValidation` status) and the credits cap applied here mirror the `/estimate` semantics. Set `acceptPartial = true` to schedule whatever credits allow when the team's balance is below the eligible count.
Email Validations
Send a pending approval
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Approves and sends the queued AI-generated message for a single (sequence, contact) pair. Optionally override the draft body and/or subject before sending. Requires the AI SDR feature on the caller's team.
AI SDR Pending Approvals
Send a batch of pending approvals
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Approves and sends the queued AI-generated messages for up to 20 (sequence, contact) pairs in one call. Bodies and subjects cannot be overridden in bulk — use the per-contact endpoint for that. Requires the AI SDR feature on the caller's team.
AI SDR Pending Approvals
Send a direct email to a contact
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Sends a one-off email directly to a contact outside of any sequence
Direct Outreach
Send an AI-generated LinkedIn voice message to a contact
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Generates and sends an AI voice message to the contact via LinkedIn outside of any sequence. The caller must already be connected with the contact on LinkedIn. The voice is synthesized from the provided script using the account's text-to-speech settings.
Direct Outreach
Send a LinkedIn connection request to a contact
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Sends a direct LinkedIn connection request to the contact outside of any sequence. The contact must have a LinkedIn profile URL set. The caller must own an active LinkedIn account (`linkedInAccountId`).
Direct Outreach
Send a LinkedIn InMail to a contact
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Sends a direct LinkedIn InMail message to the contact outside of any sequence. Requires a Sales Navigator account with available InMail credits.
Direct Outreach
Send a LinkedIn message to a contact
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Sends a direct LinkedIn message to the contact outside of any sequence. The caller must already be connected with the contact on LinkedIn.
Direct Outreach
Send a LinkedIn voice message to a contact
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Sends a pre-recorded voice message to the contact via LinkedIn outside of any sequence. The caller must already be connected with the contact on LinkedIn. Upload audio files via `POST /v3/attachments/voice` to obtain a `voiceAttachmentId`.
Direct Outreach
Send a reply within a thread
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Sends an outbound message on the supplied thread. The request body''s `channel` discriminator must match the thread''s channel; mismatches are rejected with `code: inboxThread.channelMismatch`.
Inbox
Send a test email
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Sends a test email using the specified template.
Email Templates
Set the approval mode
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Sets the sequence's approval mode — whether AI-generated messages require human approval before sending. Settable only via this dedicated PUT (or at create time); NOT in the AI SDR sequence PATCH. When disabling (`enabled` = `false`), `approveAllPendingContacts` may be set to `true` to immediately approve all currently-pending contacts. `approveAllPendingContacts` is rejected when enabling. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Set generated step types
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Replaces the step channels the AI SDR is allowed to generate, and triggers regeneration of the sequence's steps using the new mix. Rejected with 409 once the sequence has already acted on contacts (sent emails or LinkedIn messages, generated tasks, etc.). Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Connect a knowledge base to the sequence
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Connects a knowledge base to the sequence by id. Replaces any previously-connected knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Attach a playbook to the sequence
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:operate` scope (or a broader one that includes it)._</small> Attaches a playbook to the sequence by composite id. Replaces any previously-attached playbook. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Mark or unmark contacts as bounced
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Marks the given contacts as bounced (`isBounced: true`) or clears the bounced flag (`isBounced: false`) across **every sequence** they are currently enrolled in. When clearing the flag (`isBounced: false`), `resendEmails` is required: pass `true` to retry the previously bounced step or `false` to leave the schedule untouched. When marking as bounced (`isBounced: true`), `resendEmails` must be omitted. To restrict the change to a single sequence, use `POST /v3/sequences/{id}/contacts/set-bounced` instead.
Contacts
Mark or unmark contacts as replied
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Marks the given contacts as replied (`isReplied: true`) or clears the replied flag (`isReplied: false`) across **every sequence** they are currently enrolled in. To restrict the change to a single sequence, use `POST /v3/sequences/{id}/contacts/set-replied` instead.
Contacts
Set contacts' in-sequence status
<small>_Requires the `contacts:operate` scope (or a broader one that includes it)._</small> Sets the in-sequence status (`active` / `paused` / `finished` / `outOfOffice`) for the given contacts across **every sequence** they are currently enrolled in. Replied and Bounced are **not** values of this enum — use `POST /v3/contacts/set-replied` or `POST /v3/contacts/set-bounced` for those. To restrict the change to a single sequence, use `POST /v3/sequences/{id}/contacts/set-status-in-sequence` instead. `paused` requires the contact to currently be `active` in the sequence — pausing from any other state is reported per-item as `invalidStatusTransition`. The other targets (`active`, `finished`, `outOfOffice`) accept any current state.
Contacts
Set default email account
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Sets the specified email account as the default for the authenticated user.
Email Accounts
Set default schedule
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Sets the specified schedule as the default.
Schedules
Assign or clear a thread's category
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Sets the thread's category, or clears it when `categoryId` is `null`. Idempotent.
Inbox
Toggle thread meeting-intent
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Sets or clears the meeting-intent flag on a thread.
Inbox
Mark or unmark contacts as bounced in this sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Marks the given contacts as bounced (`isBounced: true`) or clears the bounced flag (`isBounced: false`), scoped to **this sequence only**. When clearing the flag (`isBounced: false`), `resendEmails` is required: pass `true` to retry the previously bounced step or `false` to leave the schedule untouched. When marking as bounced (`isBounced: true`), `resendEmails` must be omitted. To apply across every sequence a contact is in, use `POST /v3/contacts/set-bounced` instead.
Sequence Contacts
Mark or unmark contacts as replied in this sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Marks the given contacts as replied (`isReplied: true`) or clears the replied flag (`isReplied: false`), scoped to **this sequence only**. To apply across every sequence a contact is in, use `POST /v3/contacts/set-replied` instead.
Sequence Contacts
Set contacts' status in this sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Sets the in-sequence status (`active` / `paused` / `finished` / `outOfOffice`) for the given contacts, scoped to **this sequence only**. To apply across every sequence a contact is in, use `POST /v3/contacts/set-status-in-sequence` instead. Replied and Bounced are **not** values of this enum — use `POST /v3/sequences/{id}/contacts/set-replied` or `POST /v3/sequences/{id}/contacts/set-bounced` for those. `paused` requires the contact to currently be `active` in this sequence — pausing from any other state is reported per-item as `invalidStatusTransition`. The other targets (`active`, `finished`, `outOfOffice`) accept any current state.
Sequence Contacts
Set sequence email accounts
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Replaces all email account links for the sequence with the provided list. Any previously linked accounts not in the new list will be unlinked.
Sequence Email Accounts
Share a contact list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Makes a contact list shared across the team.
Contact Lists
Share an email template folder
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Shares a personal email template folder with the team.
Email Templates
Start an AI web search
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Kicks off an AI-driven web search to find contacts for a sequence.
AI SDR Web Search
Start a Live Data search
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Starts a Live Data search that finds contacts matching the filters and adds them as prospects (optionally moving them into a sequence and/or lists). Consumes credits from the Reply credit pool per resulting contact. Returns the created search's id; track its progress via `GET /v3/live-data/searches/{id}`.
Live Data
Start a sequence
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Activates a new or paused sequence. Returns the updated sequence. This operation is **idempotent**: calling Start on an already active sequence returns `200` with the current sequence state. No error is raised.
Sequences
Start a strategist run
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Starts an AI Strategist run for the caller's team. The strategist generates sequence ideas and creates a sequence for each one. Returns a background job to poll via `GET /v3/background-jobs/{jobId}`; on completion its `jsonDataResult` carries `{ sequenceIds }` — the ids of the sequences created from the generated ideas. Requires the AI SDR feature on the caller's team.
AI SDR Strategist
Submit feedback on a pending approval
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Records a thumbs-up / thumbs-down reaction on the queued AI-generated message, with optional dislike reasons and a freeform comment. Used as a training signal for the AI SDR. No step identifier is needed — the approval is unique per (sequence, contact). Requires the AI SDR feature on the caller's team.
AI SDR Pending Approvals
Submit feedback on a generated AI draft
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Records a thumbs-up / thumbs-down on the AI-generated draft, with optional dislike reasons and a freeform comment. Used as a training signal. Requires the AI SDR feature on the caller's team.
Inbox
Submit feedback on a preview step
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> Records a thumbs-up / thumbs-down reaction on the AI-generated message for a specific step in a contact's preview, with optional dislike reasons and a freeform comment. Used as a training signal for the AI SDR. Requires the AI SDR feature on the caller's team.
AI SDR Sequence Preview
Test IMAP connectivity
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Tests connectivity to an IMAP server with the provided credentials without creating an email account.
Email Accounts
Test SMTP connectivity
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Tests connectivity to an SMTP server with the provided credentials without creating an email account.
Email Accounts
Send a test payload
<small>_Requires the `webhooks:operate` scope (or a broader one that includes it)._</small> Triggers a synthetic delivery to the subscription's URL so the integrator can validate wiring. Only enabled subscriptions can be tested.
Webhooks
Toggle LinkedIn account status
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Toggles the enabled/disabled status of a LinkedIn account.
LinkedIn Accounts
Unarchive a sequence
<Warning> **Coming soon.** This endpoint will be available by late July 2026. </Warning> <small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Restores an archived sequence to its previous state. Returns the updated sequence.
Sequences
Unassign threads from a category
<small>_Requires the `inbox:operate` scope (or a broader one that includes it)._</small> Non-atomic bulk unassignment — clears the category link from each supplied thread when it points at this category. Per-item failures are returned in a dictionary keyed by thread id. **Per-item error codes** | Error code | Meaning | | --- | --- | | `notFound` | Thread or category not found | | `invalidInput` | Invalid input | | `forbidden` | User not allowed to modify this thread |
Inbox
Unlink a holiday calendar from a schedule
<small>_Requires the `sequences:operate` scope (or a broader one that includes it)._</small> Removes the link between a holiday calendar and the specified schedule.
Schedules
Unshare a contact list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Makes a shared contact list private again.
Contact Lists
Update AI SDR sequence settings
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Partial update of AI SDR-specific sequence settings (generation inputs, tone of voice, personalization points, provider LLM, autopilot config, intent signals). PATCH semantics: a field absent from the body is skipped; a field explicitly set to `null` is rejected. `intentSignals`, when present, fully replaces the current list. `autopilot.filters`, when present, fully replaces the current filters object. At least one field must be present. Out of scope for this PATCH (use the dedicated sub-resources instead): name and other generic sequence fields, approval mode, generated step types, attached playbook, connected knowledge base. Requires the AI SDR feature on the caller's team.
AI SDR Sequences
Update a domain blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing domain blacklist rule.
Contact Blacklist Rules
Update an email exception blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing email exception blacklist rule.
Contact Blacklist Rules
Update an email blacklist rule
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing email blacklist rule.
Contact Blacklist Rules
Update a contact
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing contact. All fields are optional — only include the fields you want to change (PATCH semantics).
Contacts
Update an account
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing account.
Accounts
Update an account list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing account list name. Names must be 3–128 characters and unique per team.
Account Lists
Update account owner
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Changes the owner of an account. The new owner must be a member of the caller's team — an `ownerUserId` outside the team returns 400 `contactAccount.invalidInput` (404 is reserved for "account row missing").
Accounts
Update a contact list
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing contact list name.
Contact Lists
Update a custom field
<small>_Requires the `contacts:write` scope (or a broader one that includes it)._</small> Updates an existing custom field
Custom Fields
Update an email account
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Partially updates an email account. Only works with custom email account providers (SMTP/IMAP). Provide only the sections and fields you want to change; omitted fields are left unchanged.
Email Accounts
Update a tag
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Updates the name and/or color of an email account tag.
Email Accounts
Update an email template
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing email template.
Email Templates
Update an email template folder
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing email template folder.
Email Templates
Update a holiday calendar
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing custom holiday calendar. Only custom calendars can be updated.
Holiday Calendars
Update inbox category
<small>_Requires the `inbox:write` scope (or a broader one that includes it)._</small> Full replacement of `name` and `color` for a category. Reserved (system) categories reject this operation with 403 / `code: inboxCategory.cannotModifyDefault`.
Inbox
Update a knowledge base
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Partial update — send only the fields you want to change. At least one field must be present. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Update LinkedIn account limits
<small>_Requires the `channels:operate` scope (or a broader one that includes it)._</small> Updates the daily automation limits for a LinkedIn account.
LinkedIn Accounts
Update LinkedIn account revoke settings
<small>_Requires the `channels:write` scope (or a broader one that includes it)._</small> Updates the automatic connection revocation settings for a LinkedIn account.
LinkedIn Accounts
Update an offer
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Partial update — send only the fields you want to change. Array fields, if present, fully replace the current value (no item-level merge). At least one field must be present. Requires the AI SDR feature on the caller's team.
AI SDR Offers
Update a playbook
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Partial update — send only the fields you want to change. `type` is immutable. Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
Update a reengagement card
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Partial update — send only the fields you want to change. At least one field must be present. Media is not patched here; use the `/media` sub-resource. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Update a reply handler
<Info> **Beta.** This endpoint is in beta. Behavior, parameters, and response shapes may change without notice. </Info> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Partial update — send only the fields you want to change. At least one field must be present. Media is not patched here; use the `/media` sub-resource. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Update a schedule
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing schedule.
Schedules
Update a sequence
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing sequence
Sequences
Update a sequence folder
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing sequence folder
Sequence Folders
Change sequence owner
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Changes the owner of a single sequence to a different team member
Sequences
Update a sequence step
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing sequence step. Each variant in the request body must include its `id` to identify which variant to update. For email steps, each variant may carry up to **3** `attachmentIds` (upload first via `POST /v3/attachments`); attachments that don't belong to the caller (or the caller's team) are rejected with `403 sequenceStep.forbidden`.
Sequence Steps
Update a step variant
<small>_Requires the `sequences:write` scope (or a broader one that includes it)._</small> Updates an existing variant for a sequence step. Supports both text variants (`application/json`) and voice message variants (`multipart/form-data`). For email-step text variants, the request may carry up to **3** `attachmentIds` (upload first via `POST /v3/attachments`). Inaccessible attachment IDs are rejected with `403 sequenceStep.forbidden`.
Sequence Steps
Update settings
<small>_Requires the `settings:write` scope (or a broader one that includes it)._</small> Performs a sparse update of settings. Only properties present in the request body are updated — omitted properties are left unchanged. Nested sections follow the same rule: include only the fields you want to change within each section. **Contact stages and account stages** are an exception — when the `contactStages` or `accountStages` array is present, all 8 stages must be provided with unique IDs (1–8).
Settings
Update a task
<small>_Requires the `tasks:write` scope (or a broader one that includes it)._</small> Full replacement update of a task. Only tasks with status `New` (0) can be updated. Sequence task type and contact cannot be changed.
Tasks
Update a webhook subscription
<small>_Requires the `webhooks:write` scope (or a broader one that includes it)._</small> Full replacement of the mutable fields of an existing subscription. `organization` scope is rejected with `code: webHook.organizationScopeNotImplemented`.
Webhooks
Upload attachment
<small>_Requires the `other:write` scope (or a broader one that includes it)._</small> Uploads a single file as a `multipart/form-data` request and returns its attachment id. Use the returned `id` in `attachmentIds` arrays on email-template, sequence-step, and inbox-message endpoints to attach the file to outbound communications.
Attachments
Upload a template attachment
Uploads a file to be used as an email template attachment. Returns the attachment metadata including the ID to use when creating or updating templates.
Email Templates
Upload a document
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Uploads a file document to a knowledge base. Maximum upload size: 100 MB. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Upload an attachment for offer generation
<Warning> **Coming soon.** This endpoint will be available by early July 2026. </Warning> <small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Uploads a single attachment whose id can be passed in `attachmentIds` of `POST /v3/ai-sdr/offers/generate` to seed the generation. Maximum size 10 MB; supported formats are `.txt`, `.pdf`, `.doc`, `.docx`, and `.rtf`. Requires the AI SDR feature on the caller's team.
AI SDR Offers
Upload a style file
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Uploads a style file (reference document) to a playbook. Style files inform tone and voice when the playbook is applied. Maximum upload size: 100 MB. Requires the AI SDR feature on the caller's team.
AI SDR Playbooks
Upload reengagement card media
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Attaches a media file to a reengagement card. Maximum upload size: 100 MB. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Upload reply handler media
<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small> Attaches a media file to a reply handler. Maximum upload size: 100 MB. Requires the AI SDR feature on the caller's team.
AI SDR Knowledge Bases
Upload voice attachment
Uploads an audio file as a `multipart/form-data` request, converts it to LinkedIn voice format, and returns the attachment metadata including the duration. Use the returned `id` to attach the voice message to LinkedIn voice outreach endpoints.
Attachments
Get current user
<small>_No scope required — any valid API key can call this endpoint._</small> Returns the authenticated user's ID, username, and team ID. Useful for verifying credentials and identifying the current user and their team.
User Account
List team users
<small>_No scope required — any valid API key can call this endpoint._</small> Returns all users in the authenticated user's team (workspace), including each user's team ID, team name, user ID, display name, and email address.
User Account
FAQ

Reply.io integration, answered

How do AI agents use Reply.io through Open Connector?
Your user connects Reply.io once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes Reply.io tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
Is this a Reply.io MCP server?
Yes. Open Connector can serve Reply.io as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call Reply.io actions with credentials injected server-side.
Where do Reply.io credentials live?
In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.

Give your agents Reply.io — keep the keys.

Open source, self-hostable, with Reply.io credentials that never leave your infrastructure. Run it from source today.