Apollo
Search contacts, enrich leads, and trigger sequences via the Apollo.io REST API.
This tool talks directly to the Apollo.io REST API
(https://api.apollo.io/api/v1) using your master API key. It covers the
three highest-value sales-prospecting operations: finding people, enriching a
single lead, and adding contacts to an outbound sequence.
What it does
| Operation | Apollo endpoint | Purpose |
|---|---|---|
people_search |
POST /mixed_people/api_search |
Search Apollo's people database by keywords, title, and location. |
people_enrichment |
POST /people/match |
Enrich one person — match on email, name, or employer to return full demographic/firmographic data. |
add_to_sequence |
POST /emailer_campaigns/{sequence_id}/add_contact_ids |
Add one or more contacts to an existing sequence (emailer campaign). |
The tool returns the raw Apollo JSON response as result (a JSON string) plus
the HTTP status. Non-2xx responses are returned, not thrown, so you can
inspect Apollo's error payload.
API key setup
- Sign in to Apollo and go to Settings → Integrations → API.
- Create an API key (a master API key is required for search and sequence operations).
- Pass it as the
apiKeyinput. The tool sends it as thex-api-keyrequest header — Apollo's documented authentication scheme. No OAuth or token exchange is needed.
Note:
people_searchdoes not consume credits, butpeople_enrichmentwithrevealPersonalEmails: trueandadd_to_sequencedo consume Apollo credits.
Inputs
| Input | Used by | Notes |
|---|---|---|
apiKey |
all | Required. Apollo master API key (x-api-key header). |
operation |
all | Required. One of people_search, people_enrichment, add_to_sequence. |
qKeywords |
people_search | Free-text keywords. |
personTitles |
people_search | Comma-separated job titles → person_titles[]. |
personLocations |
people_search | Comma-separated locations → person_locations[]. |
page |
people_search | Page number (default 1). |
perPage |
people_search | Results per page, max 100 (default 10). |
firstName / lastName |
people_enrichment | Person's name. |
email |
people_enrichment | Email to match on. |
domain |
people_enrichment | Employer domain, no www/@ (e.g. apollo.io). |
organizationName |
people_enrichment | Current/previous employer name. |
revealPersonalEmails |
people_enrichment | true to reveal personal emails (consumes credits). |
sequenceId |
add_to_sequence | Required. Target sequence (emailer campaign) id. |
contactIds |
add_to_sequence | Required. Comma-separated Apollo contact ids → contact_ids[]. |
sendEmailFromEmailAccountId |
add_to_sequence | Required. Sending email-account id. |
People-enrichment requires at least one strong identifier: email, or
domain, or organizationName, or firstName+lastName.
Examples
Search for sales managers in California
operation: people_search
qKeywords: sales manager
personTitles: sales manager,account executive
personLocations: California
perPage: 25
Enrich a known lead
operation: people_enrichment
firstName: tim
lastName: zheng
domain: apollo.io
Add contacts to a sequence
operation: add_to_sequence
sequenceId: 6512a1b2c3d4e5f6a7b8c9d0
contactIds: 64f1...a1,64f1...a2
sendEmailFromEmailAccountId: 63ab...90
Output
{
"result": "{ ...raw Apollo JSON response... }",
"status": "200"
}