Enrich new Airtable leads with Apollo and enroll them in Reply.io

When a new lead lands in your Airtable inbox, enrich them with Apollo, push them into the right Reply.io sequence, and stamp the result back on the row.

Deterministic Code
AirtableApolloReply.ioSalesOperationsLead EnrichmentData Sync
PromptCreate

Build a code-based workflow that runs whenever a new record is added to my Airtable "Lead Inbox" table, enriches the lead with Apollo, enrolls them in a Reply.io sequence, and writes the result back to the Airtable row.

Trigger: poll Airtable for new records on the Lead Inbox table. The table includes at least these columns: Email, First Name, Last Name, Company, Company Domain, Reply Sequence ID (the Reply.io sequenceId to use), and a few result columns I want stamped back (Reply Contact ID, Sequence Enrolled, Enrichment Status, Processed At).

Step 1: Call Apollo People Enrichment using the row's email. If email is missing, fall back to first name plus company domain. Capture title, company name, industry, employee count, and LinkedIn URL from the Apollo response.

Step 2: Build a Reply.io contact payload with firstName, lastName, email, title, and company taken from Apollo when present and from the Airtable row as a fallback. Include custom fields for industry, employee count, and LinkedIn URL. Then call Reply.io Add Contact to Sequence, passing the sequenceId from the Reply Sequence ID column on the Airtable row so different lead types route to different sequences.

Step 3: Call Airtable Update Record on the original row to write back the Reply.io contact ID, the sequence enrolled, an enrichment status of "enriched: true" or "enriched: false", and a processed_at timestamp. This stamp is what prevents the row from being reprocessed.

Error handling: if Apollo returns no match, do not fail the run. Still enroll the contact in Reply.io with the raw Airtable fields, and set the enrichment status to "enriched: false" so I can spot which rows went out thin. If Reply.io returns a 409 because the contact is already in the sequence, treat that as a successful enrollment and still stamp the row.

Additional information

What does this prompt do?
  • Watches your Airtable lead inbox and runs the moment a new row appears, so leads start a sequence the same day they land.
  • Looks up each lead in Apollo to fill in title, company, industry, employee count, and LinkedIn URL before any outreach is sent.
  • Adds the enriched contact to the right Reply.io sequence based on a column on the lead row, so different lead types get different cadences.
  • Stamps the Reply.io contact ID, the sequence enrolled, the enrichment status, and a processed timestamp back on the Airtable row so nothing gets touched twice.
What do I need to use this?
  • An Airtable base with a lead inbox table that has at least an email column and a sequence selector column.
  • An Apollo account with API access for people enrichment.
  • A Reply.io account with the sequences you want to enroll leads into already set up.
How can I customize it?
  • Change which Airtable column decides the Reply.io sequence, so you can route by lead source, persona, or region.
  • Adjust which Apollo fields get mapped into Reply.io custom fields, like adding seniority, location, or department.
  • Decide what to do when Apollo cannot match a lead: enroll them anyway with the raw Airtable data, or skip and flag the row for manual review.

Frequently asked questions

What happens if Apollo cannot find the lead?
The workflow still adds the contact to Reply.io using the fields already on the Airtable row, and marks the row as not enriched so you can spot which leads went out with thinner data.
How does it pick which Reply.io sequence to use?
It reads a sequence column on the Airtable row. That means different lead types, like inbound demo requests versus event scans, can route into completely different cadences without any branching logic on your end.
Will the same lead get enrolled twice if I edit the row later?
No. After enrollment, the workflow stamps a processed timestamp and the Reply.io contact ID back on the row, and only acts on rows that have not been processed yet.
Do I need a paid Apollo plan?
You need a plan that allows API access to people enrichment, since enrichment consumes Apollo credits. Free trial plans usually include a small allowance to test with.
Can I run this on an existing Airtable table without rebuilding it?
Yes. As long as your table has an email column and a column that names the Reply.io sequence to use, you can point the workflow at it. The workflow adds the result columns it needs on first run.

Related templates

Daily procurement, tender, and grant opportunity finder

Every morning an AI browser agent checks the tender and grant portals you follow, logs the ones that fit your business, and Slacks you what is closing soon.

Browser Use Cloud
Airtable
Slack
Agentic Task
Weekly Addepar AUM snapshot into an Airtable ops dashboard

Every Monday at 6am, snapshot every household's AUM from Addepar into an Airtable base so your ops team starts the week with a fresh dashboard.

Addepar
Airtable
Deterministic Code
Send vendor NDAs from Airtable through Adobe Sign

When a new vendor lands in Airtable, pick the right Adobe Acrobat Sign NDA template, send it out for signature, and log the agreement id back to the row.

Adobe Acrobat Sign
Airtable
Slack Bot
Agentic Task
Auto-register Airtable shipments in AfterShip with ETAs

When ops drops a new shipment row into Airtable, we detect the courier, register it in AfterShip, and stamp the predicted delivery date back on the row.

Airtable
AfterShip
Agentic Task
Nightly Airtable base backup to Amazon S3

Copy every table in an Airtable base to Amazon S3 as CSV in a timestamped folder each night, with a manifest for easy restores.

Airtable
Amazon S3
Deterministic Code
Auto-send Adyen payment links for Airtable invoices

Every 15 minutes, generate an Adyen payment link for every ready invoice in Airtable, save it to the row, and email the customer.

Adyen
Airtable
Gmail
Deterministic Code

Stop hand-loading leads into Reply.io.

Connect Airtable, Apollo, and Reply.io once, and Geni enriches and enrolls every new lead the moment it lands.