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 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) |


