Overview
ZoomInfo provides detailed business data like emails, phone numbers, job titles, company size, and industry.
You can use it to enrich your leads using an email or domain. This helps improve lead quality, scoring, routing, and personalisation in your sales and marketing.
In this guide, we’ll show you how to set up a Universal Connector job to enrich leads with ZoomInfo data and send the results to your marketing platforms.
Here’s an example of how enriched data looks in the Convertr lead view:
Please note: Personal data has been modified in the example above.
Configuring the Universal Connector to Enrich Leads with ZoomInfo
This setup uses ZoomInfo’s Contact Enrich endpoint to enrich lead data. For details on available endpoints, refer to the ZoomInfo API documentation.
The retrieved data is stored in the Universal Connector scope of the processed lead and passed to the end platform or CSV export.
To configure:
- Go to Processr > Quality Assurance tab
- Click 'Add' to create a new job
- Select 'Universal Connector' from the dropdown
- Fill in the configuration sections as shown below, or click 'Import from JSON' and provide the following JSON configuration for a quick start:
{ "api": { "apiUrl": "https://api.zoominfo.com/enrich/contact", "method": "post", "verify_ssl_peer": "1", "send_as_json": "1" }, "headers": { "Authorization": "Bearer ##token##" }, "OAuth": { "url": "https://api.zoominfo.com/authenticate", "access_token_key": "jwt", "access_token_expire_key": "expires_in", "access_token_expire_in": "3000", "method": "post", "username": "<Your ZoomInfo username>", "password": "<Your ZoomInfo password>" }, "mapping": { "matchPersonInput": [ { "emailAddress": "email" } ], "outputFields": [ "street", "city", "region", "zipCode", "phone", "companyEmployeeCount", "companyRevenue", "companyPrimaryIndustry" ] }, "resultMapping": { "zi_street": "data.result.0.data.0.street", "zi_city": "data.result.0.data.0.city", "zi_region": "data.result.0.data.0.region", "zi_postal_code": "data.result.0.data.0.zipcode", "zi_phone": "data.result.0.data.0.phone", "zi_company_employee_size": "data.result.0.data.0.company.employeeCount", "zi_company_revenue": "data.result.0.data.0.company.revenue", "zi_company_industry": "data.result.0.data.0.company.primaryIndustry.0" }, "validationConditions": { "overallOperation": "ALL", "conditions": [] } }
Please note: Replace '<Your ZoomInfo username>' and '<Your ZoomInfo password>' with your ZoomInfo username and password.
API Endpoint
API URL: https://api.zoominfo.com/enrich/contact
Method: post
Verify SSL Peer: Yes
Send As JSON: Yes
Headers
Authorization: Bearer ##token##
OAuth
URL: https://api.zoominfo.com/authenticate
Access Token Key: jwt
Access Token Expire Key: expires_in
Method: post
Username: <Your ZoomInfo username>
Password: <Your ZoomInfo password>
Please note: We currently support only username-password authentication for ZoomInfo. PKI-based authentication is not yet supported.
Mapping
In this example, we’ll enrich leads using their email addresses.
We’ll retrieve address details, phone number, and company information. For the full list of available fields, refer to the 'Output Fields' section in the ZoomInfo Contact Enrich endpoint documentation.
matchPersonInput:
0:
emailAddress: email
outputFields:
0: street
1: city
2: region
3: zipCode
4: phone
5: companyEmployeeCount
6: companyRevenue
7: companyPrimaryIndustry
Please note:
- Match person input fields must always be defined under element 0
- Output fields must start at 0 and continue sequentially (1, 2, 3, etc.)
Result Mapping
This will map ZoomInfo data to lead data fields like 'zi_street', 'zi_city', etc. in the Universal Connector scope:
zi_street: data.result.0.data.0.street
zi_city: data.result.0.data.0.city
zi_region: data.result.0.data.0.region
zi_postal_code: data.result.0.data.0.zipcode
zi_phone: data.result.0.data.0.phone
zi_company_employee_size: data.result.0.data.0.company.employeeCount
zi_company_revenue: data.result.0.data.0.company.revenue
zi_company_industry: data.result.0.data.0.company.primaryIndustry.0
Please note:
- In this example, only the first primary industry returned by ZoomInfo will be stored.
- ZoomInfo may return some fields as nested values. For instance, the 'companyEmployeeCount' output will appear as the 'employeeCount' field within the 'company' element. See the example response in the ZoomInfo Contact Enrich endpoint documentation.
Validation Conditions
Adjust validation conditions as needed.
Examples:
Use default settings to avoid failing leads when ZoomInfo returns no data:
Mark the job as failed if ZoomInfo company revenue is missing:
Configuring Delivery of Enriched Lead Data
We can integrate ZoomInfo enrichment data into the customer backend platforms along with the other lead data.
- Go to Processr > Integration
- Click the 'Add' button to add new integration job or edit the existing integration job
- Add required fields to the Mapping section of the integration job configuration
This will deliver enriched phone data under ‘zoomInfoPhone’ and company revenue data under ‘zoomInfoCompanyRevenue’ fields:
zoomInfoPhone: job_data[1173][core.data.0.zi_phone]
zoomIngoCompanyRevenue: job_data[1173][core.data.0.zi_company_revenue]
Please note:
- The format 'job_data[1173][core.data.0.zi_phone]' accesses lead data stored in the Universal Connector (job #1173) scope. Here, 'zi_phone' matches the field name from the left side of the Universal Connector’s ‘Mapping’ section
- Your backend platform may need configuration to properly accept these fields