Reply.io is a sales engagement platform that automates multichannel outreach, enabling users to create and manage email campaigns, track replies, and monitor performance directly within their platform.
Reply.io is a sales engagement platform that automates multichannel outreach, enabling users to create and manage email campaigns, track replies, and monitor performance directly within their platform. On Nagent, Reply is exposed as a fully-configurable marketing automation integration that any agent can call — 21 actions, and API key authentication. No code is required to wire Reply into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Reply to automate the kinds of tasks marketing automation teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Reply into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Reply, with input parameters and output schema. Drop these into any step of an agent built in Helix.
REPLY_CREATE_LISTTool to add a new personal list on the People page. Use when you need to organize contacts into a custom list.
Input parameters
Name of the new personal list to create.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_DELETE_EMAIL_ACCOUNTTool to delete a specific email account. Use when you need to remove an existing email account identified by its ID.
Input parameters
The unique identifier of the email account to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_DELETE_LIST_BY_IDTool to delete a list by its ID. Use when you need to remove a personal list you own.
Input parameters
ID of the personal list to delete. Only lists owned by the authenticated user can be deleted.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_DELETE_SEQUENCETool to delete a sequence. Use after confirming the sequence exists to remove it permanently.
Input parameters
Sequence ID to delete; must be an integer ≥ 1
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_DELETE_USERTool to delete a user. Use after confirming the user exists to remove them permanently.
Input parameters
User ID to delete; string identifier to maximize compatibility
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GENERATE_ULIDGenerate ULID
Input parameters
Optional seed to influence randomness
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GET_ALL_LISTSTool to retrieve all available people lists. Use when you need to list all lists in your Reply account.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GET_BLACKLIST_ALLTool to retrieve the full list of blacklisted domains and emails. Use after confirming updates to the blacklist when you need a complete view.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GET_CAMPAIGN_SCHEDULES_ALLRetrieves all campaign schedules from Reply.io, including the default schedule and any user-created schedules. Each schedule contains timezone settings, daily timing configurations (mainTimings), and follow-up timings. Use this to view available schedules before assigning one to a campaign or to audit existing schedule configurations.
Input parameters
Page number to retrieve (1-based indexing).
Maximum number of schedules to return per page.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GET_CAMPAIGNS_FOR_CONTACTTool to retrieve campaigns a contact belongs to by contact ID. Use when you need to list all sequences (campaigns) associated with a specific contact.
Input parameters
Page number to retrieve (1-based indexing).
Maximum number of campaigns to return per page.
The unique numeric ID of the contact. You can obtain this from the contact list endpoints or from contact search results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GET_CONTACTS_IN_LIST_BY_IDTool to retrieve contacts in a specific personal list. Use after obtaining the list ID when you need a paginated set of contacts for that list.
Input parameters
Page number for pagination (default is 1)
Number of contacts per page (default is 20, max is 100)
Unique identifier of the list to retrieve contacts from
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GET_LIST_BY_IDTool to return a specific people list by its ID. Use after you know the list ID and need its details.
Input parameters
Unique identifier of the list to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_GET_TEMPLATES_LISTRetrieves all email templates from Reply.io, including user-created, team-shared, organization-wide, and community templates. Use this to browse available templates before sending emails or creating campaigns. No parameters required - returns all accessible templates for the authenticated user.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_LIST_CAMPAIGNSTool to list all campaigns (sequences). Use when you need a paginated list of campaigns.
Input parameters
Filter campaigns by name (exact match or contains, depending on API)
Page number to retrieve (1-based indexing)
Number of items per page, must be >= 1
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_LIST_CONTACTS_BASICTool to list contacts. Use when verifying API access and gathering contact IDs.
Input parameters
Page number to retrieve (1-based indexing)
Number of items per page (max 100)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_LIST_EMAIL_ACCOUNTSTool to list all email accounts. Use when you need to retrieve email accounts page by page.
Input parameters
Page number to retrieve (1-based indexing)
Number of items per page (max 100)
Filter by account status (active/inactive)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_MARK_CONTACT_AS_FINISHEDMarks a contact (by email) or all contacts under a domain as finished in all Reply.io campaigns. Use this tool to stop outreach for contacts who have been successfully engaged or should no longer receive campaign messages. - When using 'email': The specific contact must exist and be enrolled in at least one campaign. - When using 'domain': Marks all contacts with that email domain as finished (succeeds even if no contacts match). Note: Provide exactly one of 'email' or 'domain', not both.
Input parameters
Email address of the contact to mark as finished in all campaigns. The contact must already exist and be enrolled in at least one campaign. Provide either 'email' or 'domain', not both.
Email domain (e.g., 'company.com') to mark all contacts with emails from this domain as finished in all campaigns. Provide either 'email' or 'domain', not both.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_MARK_CONTACT_AS_REPLIEDTool to mark a contact as replied in all campaigns by email or domain. Use after confirming the contact has responded.
Input parameters
Email address of the contact to mark as replied
Email domain whose contacts should be marked as replied
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_MOVE_CONTACTS_TO_LISTSTool to move one or more contacts to specified lists. Use when reorganizing contacts across lists after verifying contact and list IDs.
Input parameters
List of target list IDs (integers) where contacts should be moved. Get list IDs from the 'Get All Lists' action.
List of contact IDs (integers) to move to the target lists. Get contact IDs from the 'Get Contacts in List' or 'Get All Contacts' action.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_REMOVE_DOMAIN_FROM_BLACKLISTTool to remove the specified domain from the blacklist. Use when you need to allow sending to that domain again.
Input parameters
The domain name to remove from the blacklist
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
REPLY_SEARCH_CONTACTSTool to search contacts by email. Use when you need to find existing contact IDs for update tests.
Input parameters
Email address to search for.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 46 agents privately built on Nagent that already use Reply.
Build on Nagent
Connect Reply to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Reply, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Reply is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Reply is connected, you configure its 21 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Reply steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Reply event fires, the agent kicks off automatically.
Every Reply action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Reply ships with 21 pre-built marketing automation actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Reply together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Reply-based workflows tailored to your business.