Documentation‎ > ‎

1. Profile API


Usage

   * The Profile API is called via a Javascript request upon a visitor's arrival to one or more pages of a given website, and returns the Bizographics of the user in 150 milliseconds or less.
   * The Profile API is used for ad servers that support key value targeting and by web site personalization solutions to drive personalized visitor experiences. 

Profile Request Format


   * http://api.bizographics.com/v2/profile.xml?api_key=XXXX

   * The URL is described as follows:
         o The values for the profile are xml or json and define the format of the API response
         o The API key is a security code tied to the client's domain.  For instructions on accessing your API key click here, or contact your Bizo representative.
         o We recommend you cache the data (this can be done for up to an hour) to eliminate the need for multiple calls per user session.

Formats

xml, json

HTTP Method

get

Parameters

   * api_key: Required
   * profile: Required (xml or json)
   * callback: Optional.  Only available for the json format.  If supplied the response will use the JSONP format with the callback of the
     given name. 

Callback

   * A callback is an optional function written by the Bizo customer and is generally the easiest method to integrate with the Bizo API.
   * The client's callback function takes the API response data in JSONP format and does something with it such as append the users Bizographics to your site personalization or web analytics data collection mechanisms.
   * When the callback parameter is used, the client's callback function is called with the API response is returned.
   * Please refer to the Taxonomy section for a full list of the callback values.
   * The following is an example using jquery (a popular javascript library):
  
       $.getJSON("http://api.bizographics.com/v2/profile.json?api_key=XXXX",
         function (data) {
           // this function will get called with the response
         });
       });

Response


See full list in the Taxonomy API section.

XML Example

<result>
  <bizographics>
   <company_size>
     <segment>
       <code>F500</code>
       <name>Fortune 500</name>
     </segment>
   </company_size>
   <seniority>
      <segment>
       <code>executive</code>
       <name>Executive</name>
     </segment>
   </seniority>
   <functional_area>
     <segment>
       <code>csuite</code>
       <name>C Suite</name>
     </segment>
     <segment>
       <code>marketing</code>
       <name>Marketing</name>
     </segment>
   </functional_area>
   <industry>
     <segment>
       <code>pharma</code>
       <name>Pharmaceuticals</name>
     </segment>
     <segment>
       <code>biotech</code>
       <name>biotech</name>
     </segment>
   </industry>
  </bizographics>
  <usage>1</usage>
</result>


JSON Example

{"bizographics": {
  "company_size":{"code":"F500", "name":"Fortune 500"},
  "seniority":{"code":"executive", "name":"Executive"},
  "functional_area":[{"code":"csuite", "name":"C Suite"},{"code":"marketing", "name":"Marketing"}],
  "industry":[{"code":"healthcare","name":"Healthcare"},{"code":"pharmaceuticals","name":"Pharmaceuticals","parent_code":"healthcare"}]
},
"usage":1
}
Code Examples

Generic Profile API

<html>
<head>
<title>Example Bizo Integration</title> 
</head>
<body>

<script type="text/javascript">
// API Example: Append Bizo Company Size to Ad Tag Base Url

function load_ad_callback(bizo_data) {
  var ad_tag_base_url = "http://ads.example.com/getads?";
  // append company size data to url -- similar code for functional area/seniority/industry
  if(bizo_data.bizographics.company_size) {
    ad_tag_base_url += "bizo.cs="+bizo_data.bizographics.company_size.code;
  }
  // doc.write ad tag
  document.write("<script src=\""+ad_tag_base_url+"\" type=\"text/javascript\"><\/script>");
}
var bizo_ad_key = "YOUR_BIZO_API_KEY"; 
// make the api request that calls the "load_ad_callback" method
document.write("<script src=\"http://api.bizographics.com/v2/profile.json?callback=load_ad_callback&api_key="+bizo_ad_key+"\" type=\"text/javascript\"><\/script>");
</script>

</body>
</html>

Advanced Profile API

<html>
<head>
<title>Example Bizo Integration</title> 
</head>
<body>

<script type="text/javascript">
// API Example: 
// Define custom mappings from Bizo Segments to Custom Segment
// Append key value pairs to Ad Tag Base Url

// Assuming Partner wants a "Sales and Marketing" segment 
// that has a segment id of "custom_sales_and_marketing"
var bizo_codes_to_custom_segments = {    
    "marketing":"custom_sales_and_marketing",
    "sales":"custom_sales_and_marketing"
}
 
var load_ad = function(bizo_data) {

  var base_ad_url = "http://ads.example.com/getads?";
  
  if(bizo_data.bizographics.company_size) {
    // append company size bizographic
    base_ad_url += "bizo.cs="+bizo_data.bizographics.company_size.code;
  }
  // handle functional area mapping
  var fa_segments = {}; // use hash for uniqueness
  if(bizo_data.bizographics.functional_area) {
    for(var i = 0; i < bizo_data.bizographics.functional_area.length; i++) {
      var bizo_code = bizo_data.bizographics.functional_area[i].code;
      var bizo_parent_code = bizo_data.bizographics.functional_area[i].parent_code;
      
      // look up custom segment by parent code
      // any code with a parent code of "sales" or "marketing" should get the
      // "custom_sales_and_marketing" segment
      var custom_segment = bizo_codes_to_custom_segments[bizo_parent_code];
      if(custom_segment != null) {
        // append custom segment if it exists
        fa_segments[custom_segment] = custom_segment;
      } else {
        // otherwise just append bizo code
        fa_segments[bizo_code] = bizo_code;
      }
    }
    // append fa keys to ad url
    for(var fa_key in fa_segments) {
      base_ad_url += "&bizo.fa="+fa_key;
    }
  }

  document.write("<script type=\"text\/javascript\" src=\"" + base_ad_url + "\"><\/script>");
}

var _bizo_api_key = "YOUR_BIZO_API_KEY"; 
//make the api request that calls the "load_ad" method
document.write("<script src=\"http://api.bizographics.com/v2/profile.json?callback=load_ad&api_key="+_bizo_api_key+"\" type=\"text/javascript\"><\/script>");

</script>

</body>
</html>

Domain Restrictions

   * The Profile Method restricts requests by the HTTP referrer.
         o Note: Requests to the API outside of the registered domain will not return bizographics due to this restriction

Network IP Ranges

The following IP Ranges must NOT be blocked from a partner's internal network.  Blocking any of the following IPs may result in service outages on the network on which they are blocked.

216.182.224.0/20 (216.182.224.0 - 216.182.239.255) 
72.44.32.0/19 (72.44.32.0 - 72.44.63.255) 
67.202.0.0/18 (67.202.0.0 - 67.202.63.255) 
75.101.128.0/17 (75.101.128.0 - 75.101.255.255) 
174.129.0.0/16 (174.129.0.0 - 174.129.255.255) 
204.236.192.0/18 (204.236.192.0 - 204.236.255.255) 
184.73.0.0/16 (184.73.0.0 – 184.73.255.255) 
184.72.128.0/17 (184.72.128.0 - 184.72.255.255)
184.72.64.0/18 (184.72.64.0 - 184.72.127.255) 
50.16.0.0/15 (50.16.0.0 - 50.17.255.255)
204.236.128.0/18 (216.236.128.0 - 216.236.191.255)
184.72.0.0/18 (184.72.0.0 – 184.72.63.255)
50.18.0.0/18 (50.18.0.0 - 50.18.63.255) 
79.125.0.0/17 (79.125.0.0 - 79.125.127.255) 
46.51.128.0/18 (46.51.128.0 - 46.51.191.255)
46.51.192.0/20 (46.51.192.0 - 46.51.207.255)
175.41.128.0/18 (175.41.128.0 - 175.41.191.255)

Subpages (1): a. Profile Redirect API

Sign in  |  Recent Site Activity  |  Terms  |  Report Abuse  |  Print page  |  Powered by Google Sites