Skip to content
Talk to an Engineer Dashboard

Apollo

Connect to Apollo to search contacts, manage sequences, enrich leads, and accelerate sales pipeline

Connect to Apollo to search contacts, manage sequences, enrich leads, and accelerate sales pipeline

Apollo logo

Supports authentication: OAuth 2.0

Register your Scalekit environment with the Apollo connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows:

  1. Set up auth redirects

    • In Scalekit dashboard, go to Agent Auth → Create Connection. Find Apollo and click Create.

    • Click Use your own credentials and copy the redirect URI. It looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

    • Go to Apollo’s developer settings and create a new OAuth application.

    • Under Redirect URIs, paste the redirect URI you copied and save the application.

  2. Get client credentials

    Apollo provides your Client ID and Client Secret after you create the OAuth application.

  3. Add credentials in Scalekit

    • In Scalekit dashboard, go to Agent Auth → Connections and open the connection you created.

    • Enter your credentials:

    • Click Save.

Connect a user’s Apollo account and make API calls on their behalf — Scalekit handles OAuth and token management automatically.

import scalekit.client, os
from dotenv import load_dotenv
load_dotenv()
connection_name = "apollo" # get your connection name from connection configurations
identifier = "user_123" # your unique user identifier
# Get your credentials from app.scalekit.com → Developers → Settings → API Credentials
scalekit_client = scalekit.client.ScalekitClient(
client_id=os.getenv("SCALEKIT_CLIENT_ID"),
client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
env_url=os.getenv("SCALEKIT_ENV_URL"),
)
actions = scalekit_client.actions
# Authenticate the user
link_response = actions.get_authorization_link(
connection_name=connection_name,
identifier=identifier
)
# present this link to your user for authorization, or click it yourself for testing
print("đź”— Authorize Apollo:", link_response.link)
input("Press Enter after authorizing...")
# Make a request via Scalekit proxy
result = actions.request(
connection_name=connection_name,
identifier=identifier,
path="/v1/contacts/search",
method="POST"
)
print(result)

Create a new account (organization) in Apollo. Requires the account_write scope.

NameTypeRequiredDescription
namestringYesName of the account to create
domainstringNoWebsite domain of the account (e.g., example.com)
linkedin_urlstringNoLinkedIn profile URL of the account
phone_numberstringNoPrimary phone number of the account
raw_addressstringNoPhysical address of the account

Create a new contact in Apollo. Requires the contact_write scope.

NameTypeRequiredDescription
first_namestringYesFirst name of the contact
last_namestringYesLast name of the contact
account_idstringNoID of the account to associate this contact with
emailstringNoEmail address of the contact
linkedin_urlstringNoLinkedIn profile URL of the contact
organization_namestringNoName of the contact’s organization
phonestringNoPhone number of the contact
titlestringNoJob title of the contact

Enrich an account’s profile with additional data from Apollo’s database using domain or name. Requires the organizations_enrich scope.

NameTypeRequiredDescription
domainstringNoDomain of the organization to enrich (e.g., example.com)
namestringNoName of the organization to enrich

Enrich a contact’s profile with additional data from Apollo’s database. Requires the person_read scope.

Note: This tool is restricted to certain Apollo plans.

NameTypeRequiredDescription
emailstringNoEmail address of the person to enrich (recommended for best results)
first_namestringNoFirst name of the person
last_namestringNoLast name of the person
linkedin_urlstringNoLinkedIn profile URL of the person
organization_namestringNoOrganization name of the person
reveal_personal_emailsbooleanNoSet to true to include personal email addresses in the response
reveal_phone_numberbooleanNoSet to true to include phone numbers in the response

Retrieve details of a specific account from Apollo by account ID. Requires the account_read scope.

NameTypeRequiredDescription
account_idstringYesID of the account to retrieve

Retrieve details of a specific contact from Apollo by contact ID. Requires the contact_read scope.

NameTypeRequiredDescription
contact_idstringYesID of the contact to retrieve

List sequences (email outreach campaigns) in Apollo. Requires the emailer_campaigns_search scope.

NameTypeRequiredDescription
pageintegerNoPage number for pagination
per_pageintegerNoNumber of results per page
searchstringNoSearch term to filter sequences by name

Search for accounts (organizations) in Apollo using filters such as company name, industry, and location. Requires the accounts_search scope.

Note: This tool is restricted to certain Apollo plans.

NameTypeRequiredDescription
company_namestringNoFilter by company name
employee_rangesstringNoFilter by employee count range (e.g., 1,10)
industrystringNoFilter by industry
keywordsstringNoFull-text keyword search
locationstringNoFilter by account location
pageintegerNoPage number for pagination
per_pageintegerNoNumber of results per page

Search for contacts in Apollo using filters such as title, company, industry, and location. Requires the contacts_search scope.

Note: This tool is restricted to certain Apollo plans.

NameTypeRequiredDescription
company_namestringNoFilter by company name
industrystringNoFilter by industry
keywordsstringNoFull-text keyword search
locationstringNoFilter by contact location
pageintegerNoPage number for pagination
per_pageintegerNoNumber of results per page
senioritystringNoFilter by seniority level
titlestringNoFilter by job title

Update an existing contact in Apollo by contact ID. Requires the contact_update scope.

NameTypeRequiredDescription
contact_idstringYesID of the contact to update
contact_stage_idstringNoUpdated contact stage ID
emailstringNoUpdated email address
first_namestringNoUpdated first name
last_namestringNoUpdated last name
linkedin_urlstringNoUpdated LinkedIn profile URL
organization_namestringNoUpdated organization name
phonestringNoUpdated phone number
titlestringNoUpdated job title