Everything an AI agent can do with the Apollo API.

A reference guide for building AI agents: every method, how to authenticate, and the permissions each one needs.

Endpoints20
API versionv1
Last updated23 June 2026
Orientation

How the Apollo API works.

The Apollo API is how an app or AI agent works with a sales account: searching Apollo's database of people and companies, enriching a contact with verified details, saving and updating the team's own contacts and accounts, and adding people to outreach sequences. Access is granted through an account-level API key sent in a header, and that key is either a master key that reaches every endpoint or a scoped key limited to the endpoints chosen for it. Some endpoints draw down account credits, and several are reachable only with a master key.

20Endpoints
8Capability groups
12Read
8Write
0Permissions
Authentication
Every call carries an Apollo API key in an X-Api-Key header. Keys are created in the account settings and belong to the whole Apollo account, not an individual user. There are two kinds: a master key that can call every endpoint, and a scoped key restricted to the endpoints chosen when it is created. Anyone holding a key can take action in the account, so keys are stored securely. The official MCP server uses OAuth 2.0 instead of a key.
Permissions
Apollo keys do not carry granular per-data-type permission scopes. The only access control on a key is which endpoints it can reach: a master key reaches all of them, and a scoped key is limited to a chosen list. Several endpoints, including sequences, tasks, deals, users, and usage stats, are reachable only with a master key and return 403 to a scoped key. Because of this, each method here lists no separate permission token; access is decided by the key type and its endpoint list.
Credits
Database and enrichment endpoints draw down account credits. People enrichment, bulk people enrichment, organization search, and organization enrichment all consume credits, and revealing personal emails or phone numbers and waterfall enrichment draw extra. The people search endpoint is optimized for API use and does not consume credits. How many credits each call costs depends on the account's pricing plan.
Data model
The API is resource-oriented JSON over HTTPS at https://api.apollo.io under /api/v1. It separates Apollo's shared prospecting database, reached through people and company search and enrichment, from the records a team owns, which are its contacts, accounts, sequences (called emailer_campaigns), tasks, and deals (called opportunities). There is one live version, with no dated version header to pin.
Connect & authenticate

Connection & authentication methods.

How an app or AI agent connects to Apollo determines what it can reach. There are two routes, a direct API key for server calls and an official MCP server for AI assistants, each governed by the credential behind it.

Ways to connect

REST API

The REST API answers at https://api.apollo.io under the /api/v1 path. Each call carries the API key in an X-Api-Key header, and there is a single live version with no dated version to pin.

Best forConnecting an app or AI agent to Apollo from a server.
Governed byThe API key, and whether it is a master key or restricted to chosen endpoints.
Docs ↗

MCP server (Model Context Protocol)

Apollo's official remote MCP server lets an AI assistant search, enrich, and act on contacts through the Model Context Protocol. It answers at https://mcp.apollo.io/mcp over streamable HTTP, signs in through a browser-based OAuth flow, and reflects the signed-in user's Apollo permissions, plan, and available credits.

Best forConnecting an AI assistant to Apollo through a standard tool protocol.
Governed byThe OAuth-authorized Apollo user's own permissions, plan, and credits.
Docs ↗
Authentication

Master API key

A master API key has access to every Apollo API endpoint, including the ones that only a master key can call, such as sequences, tasks, deals, users, and usage stats. Anyone holding it can take action across the whole Apollo account.

TokenMaster API key (X-Api-Key header)
Best forIntegrations that need the full set of endpoints
Docs ↗

Scoped API key

A scoped API key is restricted to the specific endpoints chosen when it is created. The scope is at the endpoint level only, so there are no finer per-data-type permissions, and endpoints that require a master key return 403 to a scoped key.

TokenScoped API key (X-Api-Key header)
Best forLimiting a key to only the endpoints an integration uses
Docs ↗

OAuth 2.0 (MCP)

The official MCP server uses a browser-based OAuth 2.0 flow instead of an API key. The signed-in user authorizes access to their workspace, and the assistant can then act only within that user's own Apollo permissions, plan, and credits.

TokenOAuth user authorization
Best forAI assistants connecting through the MCP server
Docs ↗
Capability map

What an AI agent can do in Apollo.

The Apollo API is split into areas an agent can act on, such as the people and organization databases, the contacts and accounts a team has saved, sequences, tasks, and deals. Some endpoints read public prospect data, while others change records the team owns, and several consume account credits.

Endpoint reference

Every Apollo API method.

Filter by method, access, or permission, or search any path. Select a row for version detail, rate limits, the related webhook event, and the source.

MethodEndpointWhat it doesAccessPermissionVersion

People & enrichment

Search Apollo's database of people, and enrich one person or a batch with matched contact and company data.3

Optimized for API use and does not consume credits. Returns up to 50,000 records (100 per page, up to 500 pages). Apollo keys are not scoped per data type, so a key either has access to this endpoint or it does not.

Acts onperson
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Consumes credits. Personal emails and phone numbers are returned only when reveal_personal_emails and reveal_phone_number are set, and those, plus waterfall enrichment, draw extra credits.

Acts onperson
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Consumes credits per person enriched, plus extra for revealed emails or phone numbers and for waterfall enrichment.

Acts onperson
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Organizations

Search Apollo's database of companies and enrich a company with firmographic data.2

Consumes credits as part of the account's pricing plan.

Acts onorganization
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Consumes credits. At least one of domain, LinkedIn URL, name, or website must be supplied.

Acts onorganization
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Contacts

Create, update, and search the contacts a team has saved into its own Apollo account.3

Set run_dedupe to true to avoid creating a duplicate contact.

Acts oncontact
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

The contact_id path parameter is the Apollo ID of the contact to change.

Acts oncontact
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Searches only the team's own saved contacts, not the wider Apollo database. Returns up to 50,000 records (100 per page, up to 500 pages).

Acts oncontact
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Accounts

Create, update, and search the accounts, the companies a team has saved into its own Apollo account.3

An account is a company the team has explicitly added to its own database.

Acts onaccount
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

The account_id path parameter is the Apollo ID of the account to change.

Acts onaccount
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Searches only the team's own saved accounts, not the wider Apollo database.

Acts onaccount
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Sequences

Search the team's outreach sequences and add saved contacts into a sequence.2

Sequences are called emailer_campaigns in the API. Requires a master API key; a scoped key returns 403.

Acts onsequence
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Adds contacts by their Apollo IDs to the sequence named in the path. Requires a master API key; a scoped key returns 403.

Acts onsequence
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Tasks

Create and search the tasks a team tracks against its contacts and accounts.2

Requires a master API key; a scoped key returns 403.

Acts ontask
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Requires a master API key; a scoped key returns 403.

Acts ontask
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Deals

Create, update, and list the deals a team tracks against its accounts.3

Deals are called opportunities in the API. Requires a master API key; a scoped key returns 403.

Acts ondeal
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

The opportunity_id path parameter is the Apollo ID of the deal to change. Requires a master API key; a scoped key returns 403.

Acts ondeal
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Requires a master API key; a scoped key returns 403.

Acts ondeal
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Users

List the teammates in a team's Apollo account.2

Used to find the user IDs needed as deal owners or task owners. Requires a master API key; a scoped key returns 403.

Acts onuser
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply

Reports the per-minute, per-hour, and per-day limits and how much has been used, per endpoint. Requires a master API key; a scoped key returns 403.

Acts onusage stats
Permission (capability)None required
VersionAvailable since the API’s base version
Webhook eventNone
Rate limitStandard limits apply
No endpoints match those filters.
Webhooks

Webhook events.

Apollo does not document a general event-subscription webhook system on its public API. The one webhook it does support is asynchronous delivery of enrichment results: a webhook_url passed on an enrichment call receives the matched emails and phone numbers once Apollo has verified them, which is mandatory when revealing phone numbers.

EventWhat it signalsTriggered by
No events match that search.
Rate limits & pagination

Rate limits, pagination & request size.

Apollo limits how fast an app or AI agent can call, with a separate per-minute, per-hour, and per-day ceiling on each endpoint that depends on the account's pricing plan. Enrichment and database endpoints also draw down account credits.

Request rate

Apollo sets rate limits per endpoint, with a separate per-minute, per-hour, and per-day ceiling on each, using a fixed-window strategy where the full allowance can be spent at any point inside the window before it resets. The exact numbers depend on the account's pricing plan, so a higher plan raises the limits. Going over any window returns 429. The current limits and how much has been used are reported in the headers of a successful response and through the api_usage_stats endpoint, which needs a master API key. Apollo does not publish a single fixed table of numbers, because they vary by plan and endpoint, so an integration should read its own limits from the usage stats endpoint rather than assume a value.

Pagination

Search endpoints use page-based pagination through the page and per_page parameters, where per_page tops out at 100. The people, contacts, and account search endpoints return at most 50,000 records per query, which is 100 records per page across up to 500 pages.

Request size

Requests and responses are JSON. Bulk people enrichment takes up to 10 people in a single call. There is no single documented payload size limit across the API.

Errors

Status codes & error handling.

The status codes an agent should handle, and what to do about each.

StatusCodeMeaningWhat to do
401UnauthorizedThe API key is missing or invalid.Send a valid key in the X-Api-Key header.
403ForbiddenThe request is authenticated but not permitted. Most often the key is a scoped key calling an endpoint that requires a master key, or the account's plan does not include the feature.Use a master API key for master-only endpoints, or confirm the plan includes the feature.
404Not FoundThe path or the referenced record does not exist.Check the endpoint path and the ID in the request.
422Unprocessable EntityThe request was well-formed but a parameter is missing or invalid, so Apollo could not process it.Correct the named parameters and resend.
429Too Many RequestsA per-minute, per-hour, or per-day rate limit for the endpoint was exceeded.Slow down and retry after the window resets, and check the usage stats endpoint for the current limits.
Versioning & freshness

Version history.

Apollo serves a single, continuously updated version of its API, reached under the v1 path. There is no dated version to pin, and changes ship through the release notes.

Version history

What changed, and when

Latest versionv1
v1Current version
Single live version (v1)

Apollo serves one continuously updated version of its API under the v1 path. There is no dated version to pin and no version header to send, so an integration always calls the current API. Changes ship through the release notes rather than as a new version string.

What changed
  • All endpoints are served under the /api/v1 path
  • No dated version header; the current API is always live
  • Notable changes are published in Apollo's dated release notes

Because there is one live version, an integration always calls the current API and watches the release notes for changes.

Apollo API release notes ↗
Questions

Apollo API, answered.

How does an integration authenticate with the Apollo API?+
Each request sends an Apollo API key in an X-Api-Key header. Keys are created by an account admin in Settings, under Integrations, and they belong to the whole Apollo account rather than a single user. The official MCP server is the one exception: it uses a browser-based OAuth 2.0 flow instead of a key.
What is the difference between a master key and a scoped key?+
A master key can call every Apollo API endpoint. A scoped key is restricted to the specific endpoints chosen when it is created, so it can be limited to only what an integration uses. Some endpoints, such as sequences, tasks, deals, users, and usage stats, are reachable only with a master key, and a scoped key calling them returns 403. The scope is at the endpoint level only; there are no finer per-data-type permissions.
Which endpoints consume credits?+
Enrichment and database endpoints draw down account credits: people enrichment, bulk people enrichment, organization search, and organization enrichment. Revealing personal emails or phone numbers, and waterfall enrichment that checks third-party sources, draw extra credits on top. The people search endpoint is optimized for API use and does not consume credits. The exact cost per call depends on the account's pricing plan.
What are the rate limits?+
Apollo sets a separate per-minute, per-hour, and per-day limit on each endpoint, using a fixed-window strategy, and the numbers depend on the account's pricing plan, so a higher plan gets higher limits. Exceeding any window returns 429. Apollo does not publish one fixed table, because limits vary by plan and endpoint. The current limits and usage are in the headers of a successful response and through the api_usage_stats endpoint, which needs a master key, so an integration reads its own limits rather than assuming a number.
Does the Apollo API send webhooks?+
Apollo does not document a general event-subscription webhook system. The one webhook it supports is asynchronous enrichment delivery: passing a webhook_url on a people enrichment call sends the matched emails and phone numbers to that URL once Apollo has verified them, and it is mandatory when revealing phone numbers. Otherwise an app or AI agent works through request and response and tracks consumption through the usage stats endpoint.
Does Apollo have an official MCP server for AI agents?+
Yes. Apollo runs an official remote MCP server at https://mcp.apollo.io/mcp that lets an AI assistant search, enrich, and act on contacts through the Model Context Protocol. It connects over a browser-based OAuth 2.0 flow and reflects the signed-in user's own Apollo permissions, plan, and credits, so the assistant can do only what that user could.
Related

More sales API guides for agents

What is Bollard AI?

Control what every AI agent can do in Apollo.

Bollard AI sits between a team's AI agents and Apollo. Grant each agent exactly the access it needs, read or write, action by action, and every call is checked and logged.

  • Set read, write, or full access per agent, never a shared Apollo API key.
  • Denied by default, so an agent reaches only what has been explicitly allowed.
  • Every call recorded in plain English: who, what, where, and the decision.
Apollo
Sales Agent
Search the people database ActionOffReadFull use
Add contacts to a sequence ActionOffReadFull use
Reveal emails and phone numbers ActionOffReadFull use
Per-agent access, set in Bollard AI, not in Apollo