Linking Apollo as a source

Let AI connect your sources for you

Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog.

Learn more
PostHog Wizard hedgehog

Contents

The Apollo connector syncs your Apollo CRM data to PostHog. The following objects are supported:

ObjectSync modeDescription
ContactsIncrementalPeople in your Apollo CRM
AccountsIncrementalCompanies and organizations
OpportunitiesFull refreshSales opportunities and deals

Contacts and accounts support incremental sync using the updated_at field, so only new or changed records are fetched after the first sync. Opportunities always perform a full refresh because Apollo doesn't support sorting on this endpoint.

Alpha release

The Apollo source is in alpha. It has been tested against Apollo's API documentation but not yet validated with live credentials. If you run into issues, please report them.

  1. Go to the sources tab of the data pipeline section in PostHog.

  2. Click + New source and then click Link next to Apollo.

  3. You need an API key from Apollo. In Apollo, go to Settings > Integrations > API and create a new API key. API access requires a paid Apollo plan.

  4. Back in PostHog, paste your API key in the API key field and click Next.

  5. On the next page, set up the schemas you want to sync and modify the method and frequency as needed. Once done, click Import.

Once the syncs are complete, you can start using Apollo data in PostHog.

50,000 record limit

Apollo caps search results at 50,000 records per stream (100 records × 500 pages). If a synced object has more than 50,000 records, older records beyond this limit aren't retrieved.

For contacts and accounts using incremental sync, this cap is unlikely to cause issues because only new or changed records are fetched on subsequent syncs. It's most relevant on the very first full sync of a large dataset.

If the cap is reached during a sync, PostHog logs an error so the truncation is never silent.

Configuration

OptionTypeRequired
API keypasswordYes

Supported tables

TableDescriptionSync methodIncremental fieldPrimary key
contacts

A person saved in your Apollo account — a lead or prospect with contact details and enrichment data.

Incremental, Full refreshupdated_at
accounts

A company saved in your Apollo account, with firmographic and enrichment data.

Incremental, Full refreshupdated_at
opportunities

A sales deal tracked in Apollo's CRM, with its stage, value, and associated account.

Full refresh
emailer_messages

An outreach email your team drafted, scheduled, or sent from an Apollo sequence, with its delivery and engagement status.

Full refresh
phone_calls

A call your team placed or received through the Apollo dialer, linked to the contact and account it involved.

Full refresh
tasks

A follow-up action assigned to a rep in Apollo — a call, an email, or a LinkedIn step — with its due date and completion state.

Full refresh
emailer_campaigns

A sequence — a planned series of outreach steps. Resolves the emailer_campaign_id carried on synced emails and tasks, and carries the sequence's own send and reply stats.

Full refresh
users

A user of your Apollo team — the reps whose IDs appear as the owner of contacts, accounts, and deals.

Full refresh
contact_stages

A stage in your contact pipeline. Resolves the contact_stage_id carried on synced contacts.

Full refresh
account_stages

A stage in your account pipeline. Resolves the account_stage_id carried on synced accounts.

Full refresh
opportunity_stages

A stage in your deal pipeline. Resolves the opportunity_stage_id carried on synced opportunities.

Full refresh

Still have questions?

Was this page useful?