https://reply.io logo
#feedback
is there any plan to allow API calls in sequences outside of zapier?
# feedback
h

Hollis

08/04/2026, 9:46 PM
is there any plan to allow API calls in sequences outside of zapier?
m

Mary

08/04/2026, 9:46 PM
Hi, 👋 Thank you for reaching out. I’m on it and will help you with this shortly.
Before I check this with our team, could you please share an example of what you’d like the API call to do and at which point in the sequence it should run? For example, should it send contact data to another system, update a record, trigger an external workflow, or perform another action?
h

Hollis

08/04/2026, 10:00 PM
all of the above!
m

Mary

08/04/2026, 10:01 PM
Thank you for clarifying! Let me check this with our Product team, and I’ll get back to you once I have an update.
a

Artem

08/05/2026, 1:58 PM
Hello, there! Appreciate your patience! My name is Artem. Let me step into this conversation instead of Mary, while she's away, and provide you with an update! Our product team confirms that at the moment, this functionality isn't in our backlog, although it's something our team may consider implementing in the future 👍 Without Zapier, the practical workaround is to use an external automation layer such as n8n or custom middleware: - Trigger the workflow from a Reply event, for example an email sent/replied/opened, link click, opt-out, or contact finishing a sequence. - Send the contact data and custom fields to the external system through its API/webhook. - Create or update the external record, trigger any required workflow, and - if needed - use the Reply API to update the contact, change its status, or move it to another sequence. This works well for event-based synchronization. However, if the requirement is to call an external API at one exact point inside a sequence and pause the contact until the external system responds, that is not currently available natively without the Zapier sequence step.
g

George Vitko

08/05/2026, 2:25 PM
@Hollis if you're open to sharing what you were going to build with this i can jump on a call
h

Hollis

08/05/2026, 2:28 PM
Pretty simple, I want to be able to fetch phone numbers for contacts after they've opened 2 emails in a sequence, then send them to my dialer queue in the my CRM.
I can do it via Zapier, but my company is actively trying to cancel that subscription lol.
m

Max Foster

08/05/2026, 3:06 PM
Hey @Hollis, Thanks for the additional context! A few questions to better understand your process: 1. Are you looking to enrich contacts with our in-house phone number finder, or are you only considering external enrichment tools? 2. I know we discussed using the internal dialer in Reply - is that still on the table, or are you tied to an external dialer for now? An all-in-one workflow in Reply.io would be a lot more streamlined. --- In the meantime, the Filter Contacts API call lets you pull contacts based on different criteria - including filtering by number of opens, specific sequences, and/or sequence steps: docs.reply.io/api-reference/contacts/filter-contacts For example:
Copy code
{
  "rules": [
    {
      "property": "Opens",
      "condition": "More than",
      "value": "1"
    }
  ]
}
This gives you a ready-to-go contact list for enrichment and adding to a call queue. ---- If you decide to use our built-in enrichment, you can also run it manually on the platform by applying the same filters via the UI and launching enrichment for all matching contacts. The Find Phone Numbers API call isn't fully live yet but is planned for release by end of the month. Let me know if the Filter Contacts API call works for your use case, and whether you'd be open to testing our built-in dialer and contact enrichment - should help you eliminate not just Zapier but a few other tools as well.
g

George Vitko

08/05/2026, 3:19 PM
To add to what @Max Foster said, @Hollis my Reply.io api skill in claude code suggested the following shape Yes, this is doable via the API. Reply doesn't have a built-in "opened 2+ emails" trigger, but it exposes an
email_opened
webhook that fires on every open, and the payload contains everything needed to build that logic on your side:
Copy code
{
  "event": {
    "id": "4c1b9e74-…",
    "type": "email_opened",
    "date": "…"
  },
  "sent_email_id": 999,
  "opens_count": 1,
  "contact_fields": {
    "id": 12345,
    "email": "<mailto:prospect@example.com|prospect@example.com>"
  },
  "sequence_fields": {
    "id": 200,
    "name": "Test Sequence",
    "step_number": 1
  }
}
Setup: 1. Create the subscription:`POST /v3/webhooks`with`{"eventType":"email_opened","url":"<your endpoint>","scope":"Team"}` 2. On each event, group by`contact_fields.id`+`sequence_fields.id` 3. Count the distinct`sent_email_id`values in that group — when it reaches 2, trigger your notification Counting distinct
sent_email_id
is the important detail:
opens_count
increments when the same email is reopened, so two different
sent_email_id
values within the same sequence is what actually means "opened two emails." Deduplicate incoming deliveries on
event.id
, and flag contacts you've already alerted on so you're not notified again on open #3. If you'd rather poll than receive webhooks,
POST /v3/reporting/emails
returns one row per sent email with
contactId
,
sequenceId
, and
isOpened
— counting opened rows per contact per sequence gives you the same answer on a schedule. One prerequisite: open tracking has to be enabled on the sequence (
disableOpensTracking: false
). so this is doable without a) zapier b) additional product features
r

Reply.io Team

08/05/2026, 8:56 PM
Help Artem understand how they’re doing:
Rate your conversation 😠 Terrible button 🙁 Bad button 😐 OK button 😃 Great button 🤩 Amazing button