The short version
The Apollo API is Apollo.io's REST API for people search, enrichment and CRM records. It lives at api.apollo.io/api/v1, authenticates with an x-api-key header, and spends the same credits as the app: 1 credit for an email match, 8 more if a mobile number comes back, 0 when nothing is found. People search is free but returns no emails or phone numbers. Paid plans get 200 standard calls a minute and 1,000 enrichment calls a minute per team. This guide is about Apollo.io, the sales platform, not Apollo GraphQL. We make Cleanlist AI, which also has an enrichment API, so read this as a vendor's guide.
Facts checked October 15, 2026. Every Apollo fact on this page comes from Apollo's developer docs and pricing page, read on October 15, 2026. We did not benchmark Apollo's data through its API for this guide, so there are no accuracy numbers here.
What is the Apollo API?
The Apollo API is the programmatic way into Apollo.io: the same people and company data, enrichment and CRM objects you use in the app, called over HTTPS. Apollo's docs list endpoints for people and organization search, single and bulk enrichment, contacts, accounts, deals, sequences, emails and tasks. Apollo also ships an MCP server and a command-line tool that call the same platform, covered in our Apollo MCP server review.
Two products share the name. Apollo GraphQL is a separate company that makes GraphQL developer tools, and it dominates part of this search. If you want leads, contacts and enrichment, you want Apollo.io, which is the API this page covers.
How do I get an Apollo API key?
Create the key in the Apollo app under Settings > Integrations > API Keys, then click Create new key. Name it, pick the endpoints it may call, and copy the key once Apollo shows it. Send it on every request in the x-api-key header; technology partners can use OAuth 2.0 instead.
Keys come in two kinds:
- Scoped keys (the default) reach only the endpoints you select. Calling anything else returns
403. - Master keys reach every endpoint. A few endpoints, such as listing users, require one.
Apollo recommends scoped keys limited to what your integration needs. Its docs also note that API requests act as the earliest active admin on the account, so treat any key, master or scoped, like a password.
Can you use the Apollo API for free?
Partly. Apollo's developer FAQ says every pricing plan includes at least basic API access, with more advanced functionality limited to certain plans, and its pricing page lists API access on the Free plan. Apollo does not publish which endpoints each plan unlocks, so confirm with Apollo before you build on Free.
Two rules apply to free accounts. They need a work email to use search and enrichment, and the Free plan's rate limits are a quarter of the paid ones (see below). Reselling Apollo data through your own product needs a custom contract.
How much does the Apollo API cost?
The Apollo API costs credits, not a separate API fee. The credits come from your Apollo plan:
| Plan | Price per seat a month | Credits | Notes |
|---|---|---|---|
| Free | $0 | Small monthly allowance | Work email needed to search and enrich |
| Basic | $49 billed annually, $65 monthly | 2,500 | |
| Professional | $79 billed annually, $99 monthly | 4,000 | |
| Organization | $119 billed annually | 6,000 | 3-seat minimum |
Credits are pooled across the team and do not roll over. Each endpoint spends them differently, per Apollo's API pricing page:
| Call | Credits |
|---|---|
| People search | 0 |
| Create, update, list or manage records (contacts, accounts, deals) | 0 |
| People enrichment: email or demographics | 1, only when data is found (the demographic credit depends on match_confidence, and a none match is free) |
| People enrichment: mobile phone | 8 more when a number is returned |
| Email waterfall enrichment | Typically 1 to 4, some setups 20+ |
| Phone waterfall enrichment | Typically 8 to 25, some setups 45+ |
| Organization enrichment | 1 per company |
| Organization search | 1 per page of up to 100 results |
The headline is that searching is free and phone numbers are expensive. A list of 500 people enriched with emails costs about 500 credits; add mobile numbers and the same list can cost 4,500. Apollo's waterfall options call third-party sources, and its docs warn that some of those vendors charge per lookup even when no data comes back. Our Apollo pricing guide covers the plans in more depth.
What are the Apollo API rate limits?
Apollo limits requests per team, per endpoint, in three windows. These are the published limits:
| Plan | Standard endpoints (minute / hour / day) | Search endpoints (minute / hour / day) | Enrichment endpoints |
|---|---|---|---|
| Free | 50 / 200 / 600 | 50 / 200 / 600 | 50 a minute (20 bulk), 200 an hour (100 bulk), 600 a day |
| Basic | 200 / 400 / 2,000 | 200 / 6,000 / 50,000 | 1,000 a minute, no hourly or daily cap |
| Professional | 200 / 400 / 2,000 | 200 / 6,000 / 50,000 | 1,000 a minute, no hourly or daily cap |
| Organization | 200 / 600 / 6,000 | 200 / 6,000 / 50,000 | 1,000 a minute, no hourly or daily cap |
Going over returns 429. Read the retry-after header for the number of seconds until the window resets, then retry; the x-minute-requests-left, x-hourly-requests-left and x-24-hour-requests-left headers tell you how close you are. Apollo notes that legacy plans may have different limits, and that a high enrichment limit does not mean unlimited data: your credit balance still caps it.
Which endpoints does the Apollo API have?
The endpoints most integrations use:
- People search (free): filter by title, seniority, location, company and more. It returns names, titles and companies, but no emails or phone numbers, and stops at 50,000 records (500 pages of 100).
- People enrichment:
POST https://api.apollo.io/api/v1/people/match, matched on an email, a LinkedIn URL, a name plus a domain or company, or an Apollo ID. A name alone may return200with nothing enriched, so checkmatch_confidencein the response. - Bulk people enrichment: up to 10 people per call.
- Organization search and enrichment: companies by domain or filters.
- Records: contacts, accounts, deals, tasks, plus sequences and emails.
A minimal enrichment call looks like this:
curl -X POST "https://api.apollo.io/api/v1/people/match" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"first_name": "Jane", "last_name": "Doe", "domain": "example.com"}'Why does Apollo phone enrichment need a webhook?
Apollo returns phone numbers asynchronously. Setting reveal_phone_number to true requires a webhook_url, a public HTTPS endpoint Apollo calls when the number is ready; the same rule applies to run_waterfall_email and run_waterfall_phone. If you cannot host a webhook, set poll_only to true instead and fetch the result later with the request_id Apollo returns. Passing both webhook_url and poll_only returns 400. Apollo may retry webhook deliveries, so make your handler idempotent.
Personal emails work differently: reveal_personal_emails returns them synchronously, but Apollo does not reveal personal emails for people in GDPR-covered regions.
What can't the Apollo API do?
- Search does not return contact data. Every email or phone number goes through enrichment and its credits.
- Bulk is small. Ten people per bulk enrichment call means 100 calls for a 1,000-row list.
- Phone numbers are slow and costly. They arrive by webhook or polling, at 8 or more credits each.
- Endpoint access by plan is not published. Apollo says advanced functionality is limited to certain plans without listing which.
- Waterfall costs vary by vendor. Some sources inside Apollo's waterfall charge even on a miss.
Apollo API, MCP or CLI: which should I use?
Use the API when software runs the job: a form that enriches each new lead, a nightly sync, a product feature. Use the MCP server when a person drives the job from Claude, ChatGPT or Cursor in plain language; it spends the same credits. The CLI suits scripted one-off pulls. All three draw on the same account and credit balance. The rate limits above are the API's: Apollo says its MCP server has separate rate limits.
When does a waterfall enrichment API fit better?
Cleanlist AI publishes this page, so treat this section as a disclosed vendor entry. Cleanlist AI's API, at api.cleanlist.ai/api/v2, runs every enrichment through a waterfall of 25+ data providers and verifies each work email before returning it. On our 500-lead benchmark that returned 98% verified work emails and 85% phone numbers.
| Apollo API | Cleanlist AI API | |
|---|---|---|
| Search cost | 0 (no contact data returned) | 0 |
| Verified work email | 1 credit when found | 1 credit when found |
| Phone number | 8 more credits | 10 credits |
| Charged on a miss | No (some waterfall vendors yes) | No |
| Phone delivery | Webhook or polling | Async job, polled with a job ID |
| Bulk | 10 people per call | Bulk jobs with a signed cost quote first |
| Rate limits (paid) | 200 a minute standard, 1,000 a minute enrichment | 60 a minute per workspace, 30 per key |
| Plan with API keys | Basic access on every plan, advanced on some | Pro ($89 per seat a month) and Enterprise |
| AI agents | Apollo MCP server | Cleanlist AI MCP server, from Starter |
Pick Apollo's API if you already run Apollo and want search, records and sequences from one integration. Pick Cleanlist AI's if the job is filling records with verified emails and phone numbers that a single source leaves empty, priced per result. The API product page and the data enrichment API explainer cover how ours works; plans are on the pricing page.
Frequently asked questions
Is the Apollo.io API the same as Apollo GraphQL?
No. Apollo.io is a sales intelligence and engagement platform with a REST API for contact and company data. Apollo GraphQL is a different company that makes GraphQL tooling for developers. Both appear when you search "apollo api".
Where is the Apollo API documentation?
At docs.apollo.io. The pages most integrations need are authentication, rate limits, API pricing (credit cost per endpoint), people enrichment and people search.
How do I find my API key in Apollo?
Go to Settings > Integrations > API Keys in the Apollo app. Existing keys are listed there; create a new one if you cannot see the full value, because Apollo shows it only once.
Does the Apollo API return phone numbers?
Yes, through people enrichment with reveal_phone_number set to true. Numbers arrive at your webhook_url or by polling with poll_only, and each mobile number costs 8 credits on top of the base match.
What happens when I hit the Apollo API rate limit?
Apollo returns HTTP 429 with a retry-after header in seconds. Wait that long, then retry; back off further if you keep hitting it.

