Overview
If you use Apollo for data but use Marketo for engagement, you can enrich your existing contacts in Marketo with up-to-date information from Apollo.
The benefits of instant enrichment include:
- Accuracy: Ensure the data you gather from lead capture forms in Marketo is correct and up-to-date.
- Streamlined Workflow: Remove unnecessary steps when working between Apollo and Marketo.
- Specificity: Guarantee the leads that best match your Ideal Customer Profile include all the data points that you need to execute your engagement strategy effectively.
- Instant Data Fill: The data you enrich from Apollo to Marketo is instant.
Please note, Apollo enriches your records at a rate limit of 100 records per minute and 300 records per hour. Each successful enrichment costs 0.01 data credit.
Refer to the sections below for instructions on how to access your Apollo API Key, create a webhook, and set up enrichment field mapping in Marketo to enrich your existing Marketo contacts with Apollo data.
Access Your Apollo API Key
You need to access your Apollo API Key before you can use Apollo to enrich your Marketo contacts.
Please note, if you already have your Apollo API Key, you can skip this step.
Launch Apollo and click Settings. Then, click Integrations.
Scroll to API and click Connect.
This takes you to the API Settings page which displays your Rate Limits and contains a link to the Apollo API documentation. Click Request API Key to continue with the setup.
Copy your unique API Key to your clipboard with ctrl+c
on PC or cmd+c
on Mac.
Please note, you need to keep this key in a safe place. Anyone with access to this key can take action through your Apollo account.
Create a Webhook in Marketo
Launch Marketo, click Admin, then click Webhooks.
Click New Webhook.
Give your new Webhook a name.
Copy and paste the link below into the URL field:
https://api.apollo.io/v1/people/match?api_key=YOUR_API_KEY&first_name={{lead.First Name:default=}}&last_name={{lead.Last Name:default=}} &email={{lead.Email Address:default=}} &website_url={{company.Website:default=}} &organization_name={{company.Company Name:default=}}
Please remember to replace the words YOUR_API_KEY in the URL above with your actual Apollo API Key.
Click the Request Type drop-down and select POST.
Click the Response Type drop-down and select JSON.
Click Save.
For more information about how to create a webhook in Marketo, please refer to the "Create a Webhook" article in the Marketo Knowledge Base.
Set Up Enrichment Field Mapping in Marketo
Scroll to the Response Mapping section and click Edit. Then, click Add.
Under Response Attribute select the Apollo Attribute that you want to use.
You can choose from the following Apollo Attributes:
Attribute Type | Apollo Response Attribute | Description | Value Format |
---|---|---|---|
Contact First Name | person.first_name | Refers to the contact's first name (if it exists) | String |
Contact Last Name | person.last_name | Refers to the contact's last name (if it exists) | String |
Contact Name | person.name | Refers to the contact's full name (if it exists) | String |
LinkedIn Profile | person.linkedin_url | Refers to the contact's LinkedIn profile | String |
Facebook Profile | person.facebook_url | Refers to the contact's Facebook profile | String |
Twitter Profile | person.twitter_url | Refers to the contact's Twitter profile | String |
Job Title | person.title | Refers to the contact's job title | String |
City | person.city | Refers to the current city whereby the contact resides | String |
State | person.state | Refers to the current state whereby the contact resides | String |
Country | person.country | Refers to the current country whereby the contact resides | String |
Company Name | person.organization.name | Refers to the name of the company in which the contact is currently employed | String |
Company Website | person.organization.website_url | Refers to the company website (e.g. http://www.google.com) | String |
AngelList URL | person.organization.angellist_url | Refers to the company AngelList URL | String |
Company LinkedIn Profile | person.organization.linkedin_url | Refers to the company LinkedIn profile | String |
Company Twitter Profile | person.organization.twitter_url | Refers to the company Twitter profile | String |
Company Facebook Profile | person.organization.facebook_url | Refers to the company Facebook profile | String |
Company Domain | person.organization.domain | Refers to the company domain (e.g. google.com) | String |
Company Headcount | person.organization.estimated_num_employees | Refers to an estimate of the company size (e.g. 13) | Integer |
Company Phone Number | person.organization.phone | Refers to the company's primary phone number | String |
Alexa Ranking | person.organization.alexa_ranking | Refers to the Alexa ranking of the company's primary website | Integer |
Company Languages | person.organization.languages | Refers to a list of the languages that the company website supports | Array of String |
Company Logo | person.organization.logo_url | Refers to the company's logo | String |
Industry | person.organization.industry | Refers to the industry in which the company is located | String |
HQ Address | person.organization.raw_address | Refers to the raw address of the company's global headquarters | String |
HQ City | person.organization.city | Refers to the city in which the company's global headquarters is based | String |
HQ State | person.organization.state | Refers to the state in which the company's global headquarters is based | String |
HQ Country | person.organization.country | Refers to the country in which the company's global headquarters is based | String |
Publicly Traded Symbol | person.organization.publicly_traded_symbol | Refers to the company's ticker symbol, if it is publicly traded (e.g. AAPL for Apple) | String |
Publicly Traded Exchange | person.organization.publicly_traded_exchange | Refers to the name of the stock exchange in which the company is listed (e.g. NYSE) | String |
Company SEO Description | person.organization.seo_description | Refers to the brief description that the company uses to describe itself for SEO purposes | String |
Total Funding | person.organization.total_funding | Refers to the total funding the company has raised in USD (e.g. 120000000) | Integer |
Latest Funding Round Date | person.organization.latest_funding_round_date | Refers to the date of the latest funding the company has received, if any (e.g. 2016-05-01T00:00:00.000+00:00) | String |
Latest Funding Stage | person.organization.latest_funding_stage | Refers to the stage of the company's latest funding, if any (e.g. Series A) | String |
Number of Retail Locations | person.organization.retail_location_count | Refers to the total number of retail locations that the company has | Integer |
Annual Revenue | person.organization.annual_revenue | Refers to an estimate of the company's current revenue in USD (e.g. 120000000) | Integer |
Technology | person.organization.technology_names | Refers to a list of the technologies that the company currently uses | Array of String |
Please note, if you experience any issues, double-check that there are no extra spaces before or after each Response Attribute. Please verify this is the case before you click Save in Marketo.
Please note, you do not need to know the value formats in order to set up Enrichment Field Mapping in Marketo. However, if you use the Apollo API regularly, you may wish to know what each value format stands for:
-
String fields show a series of characters that correspond to one value. For example:
“person.organization.country”: "Brazil"
Please note, in the Apollo API, you need to wrap Strings in quotations marks. -
Integer fields return a single number value. For example:
“person.organization.annual_revenue”: 4000000
Please note, in the Apollo API, you should not use quotations marks for Integers. -
Array of String fields return a series of characters that correspond to multiple values. For example:
“person.organization.technology_names” : ["Cloudflare DNS", "Mailchimp Mandrill"]
Please note, in the Apollo API you need to wrap all Arrays of Strings in brackets.
Under Marketo Field select the corresponding field in Marketo.
Please note, you can add as many fields as necessary. Repeat the above process to add additional fields.
When you are ready, click Save.
You are now ready to trigger your webhook in Marketo.
For more information about how to use your new Webhook to enrich leads with Marketo's built-in Triggers, please refer to the "Use a Webhook in a Smart Campaign" article in the Marketo Knowledge Base.