Overview
ZoomInfo WebSights API enables you to easily identify your anonymous visitors on your website so you can serve more targeted content and close more named accounts. ZoomInfo WebSights API returns full company firmographics details and integrates seamlessly with Web Personalization Personas. With ZoomInfo WebSights API, you'll be able to further personalize your website experience such as:
-
Target custom experience for named accounts
-
Personalize content based on firmographics data such as industry, company size, etc.
-
Show offers only to visitors who match specific criteria
Requirements
-
You must have an active ZoomInfo WebSights API account
-
Your Custom Web Personalization Code must be installed on your website
-
Your Web Personalization account must be "Live"
Integration Setup
1. Insert the following snippet either via your tag manager or directly on your website. The snippet should ideally load as early as possible, and before your existing Web Personalization tag.
NOTE: You must update the CUSTOMER_API_TOKEN value with an active ZoomInfo access token.
<!-- BEGIN Web Personalization-ZoomInfo Integration plugin -->
<script type="application/javascript" src="https://api.ipify.org?format=jsonp&callback=getIP"></script>
<script>
(function() {
function verifySessionStorage() {
try {
var t = "__ss_test__";
window.sessionStorage.setItem(t, t);
window.sessionStorage.removeItem(t);
return true;
} catch (e) {
return false;
}
}
})();
function getIP(json) {
var ipData = JSON.parse(json);
ipData.ipAddress = ipData.ip;
delete ipData.ip;
var zoominfo_data = null;
var isSessionStorageAvailable = verifySessionStorage();
if (isSessionStorageAvailable) {
zoominfo_data = window.sessionStorage.getItem("custom_vars_data");
}
if (isSessionStorageAvailable && zoominfo_data === null) {
var url = "https://api.zoominfo.com/enrich/ip"
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.setRequestHeader('Content-Type', 'application/json');
// Replace CUSTOMER_API_KEY with ZoomInfo access token
xhr.setRequestHeader('Authorization', 'Bearer CUSTOMER_API_KEY');
xhr.responseType = 'json';
xhr.onload = function() {
if (xhr.readyState == xhr.DONE) {
if (xhr.status === 200) {
var response = xhr.response;
window.sessionStorage.setItem("custom_vars_data", JSON.stringify(response));
}
else if (xhr.status !== 200) {
console.log("Request status code: "+ xhr.status + "\nMessage " + JSON.stringify(xhr.response));
}
}
};
xhr.onerror= function(e) {
console.log("Error fetching " + url + "\nError:\n" + e);
};
xhr.send(ipData);
}
}
</script>
<!-- End Web Personalization-ZoomInfo Integration plugin -->
2. Go to the Web Personalization Studio and select the Personas option from the left nav:
3. Click the + button to create a new Persona.
4. Click the Settings icon next to Custom Variables.
5. A pop up window will appear where you can add the variable keys and values you’d like to define for your persona. Once complete, click the Save & Close button.
NOTE: The keys are defined using a "." notation. Please refer to example below.
Below is a sample of the returned company information from ZoomInfo. Please refer to the ZoomInfo Company Attributes page for a full list of attributes.
{
"success": true,
"data": {
"outputFields": [
[
"city",
"country",
"employeeCount",
"id",
"industries",
"name",
"revenue",
"state",
"street",
"ticker",
"website",
"zipCode"
]
],
"result": [
{
"input": [
"73.142.173.46"
],
"data": {
"geoLocation": {
"location_long": -71.06616,
"location_lat": 42.45843,
"country_code": "US",
"province": "Massachusetts"
},
"ispInfo": {
"domain": "comcast.com",
"ip_hi_string": "73.143.255.255",
"ip_lo_string": "73.142.0.0",
"name": "Comcast Cable Communications, Inc.",
"type": "isp"
}
}
}
]
}
}
6. Once your variables have been added in the settings, close the pop up window and click on the word ‘Custom Variables’.
7. Select the variables you’d like to include/exclude in your Persona, then save the Persona so it can be used in your reaction.
8. Create your new reaction and include the persona you created. The reaction will now only appear for visitors matching your persona criteria.
Troubleshoot
Please contact Web Personalization Support via our online chat or email support@metadata.io if you require any assistance with your integration setup.
Comments
0 comments
Article is closed for comments.