InfoSpace - Click Tracking
SDK Home | Client Side Results SDK - Home
Page last modified: 24 Apr 2017

Click Tracking in Search Results

Goal

Gain deeper insights to user behavior on an InfoSpace search experience with our Site Tracking solution. InfoSpace enables partners to receive data related to a click event for reporting and analysis.

How it works

The partner provides a click handler URL that the InfoSpace click handler calls every time a click event occurs. This URL may contain custom data via query string parameters that a partner needs with every click, (e.g. Token) that will be passed back every time the URL is called. In addition to any custom data, the InfoSpace click handler will add the following parameters to the query string of the partner click URL for consumption by the partner click handler:

  • insp - This will have data that Infospace collects in the process of a click request
  • httpheaders - This will have data taken directly from the http headers of the click request

The value for each of these parameters will be a collection of parameters that are also formatted as a query string, then URL encoded. To consume these, parse the original query string to get the value for insp and the value for httpheaders, then URL decode those values and parse each of them as a query string.

The sub query string parameters will be:

insp
  • segment -The partner segment data related to this search experience
  • position -The absolute position of the link (ad or search result) that was clicked.
  • region - The current values for ads are topnav, bottomnav.
  • enduserip - The IP that initiated the search.­
httpheaders
  • user-agent - User agent string from the http request headers.
  • x-forwarded-for - List of IP addresses directly from the http request headers.

Notes:

  • The position value has a fix coming in a release Jan 1st week with regards to how it calculates the absolute position.
  • The enduserip update will be coming in a release Jan 1st week.This will always be the IP that initiated the search. In most cases, if IPs exist in the x-forwarded-for array of IPs, the first IP address will be the same as the endUserIP. This may not be the case if the search was done from one IP but the click occurred at a later point in time from a different internet connection thereby using a different IP.
  • A provider ID (e.g., Google, or Yahoo) will be added when an ad is clicked. This will be in a future release.

Getting Started

To begin, pass the URL in as the clickTrackingUrl parameter in doSearch() call. If you are a hosted partner, provide your partnership manager with your click handler URL.

A sample doSearch() call with the clickTrackingUrl parameter looks like this:

        insp.search.doSearch({
            query: '<%= HttpUtility.JavaScriptStringEncode(Keywords) %>',
            signature: '<%: Signature %>',
            accessId: 'partner.accessId',
            page: <%: PaginationCursor %>,
            containers: {
                'top': { id: 'top' },
                'main': { id: 'main' },
                'bottom': { id: 'bottom' },
                'related': { id: 'related' }
            },
            clickTrackingUrl: 'http://[insert your URL here]'
        });

A sample URL used to forward the click to the partner click handler looks like this (The example below is for documentation purposes only, and is not intended to be used):

http://partner.clickserver.com/ClickHandler?partnerCustomParameter=value1&secondParameter=value2&insp=segment%3partnerSegment%26position%3d1%26region%3dtopnav&httpheaders=User-Agent%3dMozilla%252f5.0%2b(Windows%2bNT%2b6.1%253b%2bWOW64)%2bAppleWebKit%252f537.36%2b(KHTML%252c%2blike%2bGecko)%2bChrome%252f31.0.1650.63%2bSafari%252f537.36%26X-Forwarded-For%3d=