We have launched our new documentation. Please head here to read it.

  • Browse
    • Search
    • Recs
Menu
  • Browse
    • Search
    • Recs
Generic selectors
Exact matches only
Search in title
Search in content
Search in posts
Search in pages
  • Browse
    • Search
    • Recs
Menu
  • Browse
    • Search
    • Recs
  • Browse
    • Search
    • Recs
Menu
  • Browse
    • Search
    • Recs
Generic selectors
Exact matches only
Search in title
Search in content
Search in posts
Search in pages
  • Get started
  • Documentation
  • Integration Docs
  • FAQ
Menu
  • Get started
  • Documentation
  • Integration Docs
  • FAQ

Down Arrow up_Arrow_active Feed

Feed Creation

  • Prepare your Schema
  • Prepare your Catalog
  • Upload your Feed

Feed API

  • Full Feed Upload
  • Delta Feed Upload
  • Check Product Count

Down Arrow up_Arrow_active Analytics

Introduction

Browser Integration

  • JavaScript Based Integration
  • HTML Based Integration

GTM Integration

  • Introduction to GTM
  • Requirements

Analytics API

  • Introduction
  • Events
  • API Integration

Down Arrow up_Arrow_active Deploy Unbxd

Browse API

  • Browse Endpoint
  • Authentication
  • Header
  • Request Parameter
  • Response Components
  • Explanation Request Parameter

PDP API

  • PDP API Format

Taxonomy API

  • Taxonomy API Format
  • Taxonomy Feed API

Android SDK

  • System Requirements
  • Install SDK
  • Initialize SDK
  • Unbxd Commerce Search
  • Integrating Unbxd Autosuggest
  • Unbxd Analytics
  • Unbxd Browse
  • Unbxd Recommendations
  • Sample App

iOS SDK

  • Installation
  • Unbxd Analytics
  • Unbxd Commerce Search
  • Unbxd Autosuggest
  • Unbxd Browse
  • Unbxd Recommendations
  • Sample iOS App

Javascript SDK

  • Libraries
  • Quickstart
  • Authentication
  • Types of Pages to Render
  • Configuring the Page
  • Callback Functions
  • Helper Functions
  • Available Configurations

Down Arrow up_Arrow_active Platform Integration

Shopify

  • Installation
  • Configuration
  • Components

Magento 2

  • Composer
  • Direct Plugin Feed Upload
  • Authentication
  • General Settings
  • Configuration
  • Catalog Sync
  • Catalog Sync Information
  • Product Feed Generator
  • Feed View
  • Indexing Queue View
  • Analytics Integration
  • Upgrade
  • Uninstall

SAP Hybris

  • Installation
  • Configuration
  • Configure Feed
  • Cron Job
  • Features
  • Uninstall

Analytics API

Introduction

Whether you’re a large enterprise or an SME (small-to-medium enterprise) online store owner, your resources are finite. As your business grows, your shoppers are looking for a retail experience that is intuitive and personalized.

 

Tracking visitor analytics and behaviour anonymously is critical to provide accurate and visitor-specific search and category page results.

 

To help us analyse and understand your shoppers better, Unbxd captures information for every visitor anonymously by creating the following three sets of cookies:

  • userId: An identifier for the shopper. This cookie never expires. For generating userId value, the below logic needs to be used to generate and store userId value in cookie.
    This will ensure that it is generated in the right format and of correct length. UserId is a unique identifier for a shopper on a particular device which is generated only for a new user and should remain the same unless a user explicitly deletes this cookie.
    var date = new Date();
    var uid =  ‘uid-’ + date.getTime() + ‘-’ + Math.floor(Math.random() * 100000);
    
  • visitId – An identifier for the session/visit. This cookie expires when the shopper is idle for more than 30 minutes. If it is not defined for a new user, it should be created as per the logic mentioned in below code. Just modify the object name from Unbxd accordingly to what you want to use in the below code:
    Unbxd.getVisitId = function getVisitId() {
          var visitId = Unbxd.readCookie(Unbxd.cookies.visitId);
          var now = new Date().getTime();
          var expire = new Date(now + 30 * 60000);
          if (!visitId) {
            visitId = 'visitId-' + now + '-' + Math.floor(Math.random() * 100000);
            Unbxd.setCookie(Unbxd.cookies.visitId, visitId, expire);
          } else {
            // extend visitId expire time if exists
            // visitId should expire on more than 30min inactivity
            Unbxd.setCookie(Unbxd.cookies.visitId, visitId, expire);
          }
          return visitId;
    };
    
    As mentioned above, visitId can be reset after shopper is idle for 30 mins and they should fire the visitor event again as in the below code for expire condition.
    Note: It is mandatory is that you need to fire visitor event for Analytics, whenever the visitId is reset based on the expire logic.
  • visit – This stores whether the visitor is a ‘first_time’ or ‘repeat’ shopper. This cookie expires when the shopper is idle for more than 30 minutes.

NOTE: Session cookies have an inactivity timer. Sessions expire when they are idle for more than 30 minutes.

The information within these cookies are used to create a non-identifiable persona that allows us to analyze your shopper’s past click-through behaviors, shopping history, and product preferences, in real time. We use this information to provide site-level aggregate reporting.

 

Unique tracking codes within site interactions help us measure the performance user interactions anonymously. 

 

Anonymous shopper profiles help fetch personalized search results. It also helps in generating detailed reports.

 

In other words, information is aggregated and analysed for two purposes:

  • Providing relevant and personalised search & category pages results
  • Generating reports

As a merchandiser or product manager you can make informed decisions and make your shopper’s experience a delightful one.

Events

Events are any action a visitor takes on your eCommerce store. Once deployed, the JS code tracks shopper events, using information stored within a cookie titled ‘unbxd.userId’. This file tracks, stores, and relays useful session-based information to Unbxd.

 

This section helps you understand more about the session-based events we track, like:

  • Visitor: Identifies new and returning shoppers
  • Category Page: Category pages are the product listing pages, a visitor visits while browsing on the ecommerce website. For example, pages for categories such as Women -> Dresses, Men ->Shirts, etc on the website. These are also called browse or navigation pages. This event tracks the number of visits for a particular category page.
  • Category Page impressions: Is every time the category pages is loaded. It further helps us improve suggestions and results by tracking product’s uniqueId.
  • Product Click: Is when a shopper clicks on a product in the PLP.
  • Product View: Is the number of times a shopper has visited a specific Product Details Page (PDP)
  • Add to Cart: Is the number of times shoppers have added products to a cart. This event can be fired from both PDP and PLP.
  • Cart Removal: Is the number of times a shopper has removed a product from the cart.
  • Orders: Is the number of orders that have been successfully completed.

API Integration

In this method, you integrate the API references for every event that you want Unbxd to track.

NOTE: In case you are using a web browser, it is recommended that you use the Browser-based integration.

The calls have to be in the form of an HTTP GET request to the URL:

tracker.unbxdapi.com/v2/1p.jpg

Some of the common attributes used in the APIs are described below:

 

  • referrer: The url of the previous page, will be empty if the user opened that particular url directly.
  • uid: The unique identifying number for shoppers. Usually we set the “uid” for a particular user in a particular browser. The “uid” is stored within the “uid” cookie, and we store this ID every time we need user-specific event information.

Every request needs to be passed with the following HTTP headers:

  • X-Forwarded-For
  • user-agent

Visitor

The Visitor event is the first event that gets created when a shopper visits your site. 

There are two types of shoppers we track: 

  • First-time shoppers
  • Repeat shoppers

All shopper events are tracked against an anonymous User ID that is allotted to every shopper visiting your site.  Site-level information, like the “userID”, “siteName”, and “visitType” parameter, are stored in two cookies titled ‘unbxd.userId’ and ‘visitId’. 

 

Both these files are created for the first time when a shopper visits your site for the first time. When a shopper does not have the ‘userID’ cookie or if the shopper has cleared the cookie from their device, that shopper is called as a ‘first-time shopper’. Conversely, when a shopper already has the ‘userID’ cookie, that shopper is a ‘repeat shopper’. 

 

User ID is a random numerical value with the timestamp of the visit and is device/browser-specific.

For instance, a shopper accessing your site on Google Chrome and Mozilla Firefox on the same computer will have two sets of cookies for each browser. 

NOTE: The ‘visitID’ cookie is set to expire after 30 continuous minutes of inactivity. If a shopper returns to your site after the cookie expires, that shopper will be a ‘first-time shopper’.

Here’s how a Visitor API will look like.

 

https://tracker.unbxdapi.com/v2/1p.jpg?data={"url":"{{url-of-the-website}}","referrer":"{{reference-link}}","visit_type":"{{first-or-repeat}}","visitId":"{{visitId}}"}&UnbxdKey={{unbxd_sitekey}}&action=”visitor”&uid=”uid-1642414737751-2003”&t=”1662364656435|0.29442892143527755”

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘visitor’

url

string

Website url where search is performed

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

t

 

This timestamp parameter should be according to the formula shared below


t : current_time | random number between 0 to 1


t = new Date().getTime() + ‘|’ + Math.random();

referrer

string

link from where the page is opened(optional)

Category Page

A category page event is tracked to understand the browse/category interests of your visitors, as in which all category pages are visited by the user. Each browse results page is tracked to enable per category page analytics of the visitor. Add the script below on categoryPage before Unbxd analytics library is loaded.

 

Here’s how a Category Page API will look like.

 

https://tracker.unbxdapi.com/v2/1p.jpg?data={"page":"categoryPathId:\"117>119\"","page_type":'{{category-page-type}}',"url":"{{url-of-the-website}}","referrer":"","visit_type":"{{first_or_repeat}}","requestId":"{{unx-request-id}}","visitId":"{{visit-id}}"}&UnbxdKey={{unbxd-sitekey}}&action=categoryPage&uid={uid}}&t=1662366067115|0.6477022776525343

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘categoryPage’

pid

string

Unique id for the product, to be taken from API response, if relevantDocumentType=”parent”,

In search api response, or null

url

string

Website url where search is performed

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

page*

string

Category path used for category api call (value of “p” parameter).

page_type*

string

Page type for category path, BOOLEAN or CATEGORY_PATH based on page.

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

t

 

This timestamp parameter should be according to the formula shared below


t : current_time | random number between 0 to 1


t = new Date().getTime() + ‘|’ + Math.random();

referrer

string

Link from where the page is opened (Optional)

Category Page Impression

A category page impression event is fired when results of the category page loads for the first time, and whenever the results change on applying pagination, autoscroll, sort, and filters.For each of these actions, unique Ids of the products visible on the category page should be tracked. 

 

Here’s how a Category Page API will look like.

 

https://tracker.unbxdapi.com/v2/1p.jpg?data={"page":"categoryPathId:\"117>119\"","page_type":'{{category-page-type}}',"pids_list":"{{list-of-products-uniqueId}}","url":"{{url-of-the-website}}","referrer":"","visit_type":"{{first_or_repeat}}","requestId":"{{unx-request-id}}","visitId":"{{visit-id}}"}&UnbxdKey={{unbxd-sitekey}}&action=browse_impression&uid={uid}}&t=1662366068017|0.9865798147898728

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be browse_impression

pid

string

Unique id for the product, to be taken from API response, if relevantDocumentType=”parent”,

In search api response, or null

url

string

Website url where search is performed

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

page*

string

Category path used for category api call (value of “p” parameter).

page_type*

string

Page type for category path, BOOLEAN or CATEGORY_PATH based on page.

referrer

string

Link from where the page is opened (Optional)

Product Click

The Product Click event is generated every time a shopper clicks on a product in a Product Listing Page (PLP) or in a recommendation widget. This helps us understand your shoppers’ search preferences. This information is analyzed to list and promote ‘Popular Products’ in the autosuggest dropdown  and display personalized ‘Recommended For You’ recommendations.

 

Here’s how a Product Click API will look like.

 

https://tracker.unbxdapi.com/v2/1p.jpg?data={"page":"categoryPathId:\"117>119\"","page_type":'{{category-page-type}}',"pid":"{{uniqueId-of-the-product}}","pr":"","requestId":"{{unx-request-id}}","url":"{{url-of-the-website}}","referrer":"","visit_type":"{{first_or_repeat}}","visitId":"{{visit-id}}"}&UnbxdKey={{unbxd-sitekey}}&action=click&uid={uid}}&t=1662365583875|0.7442797542869459

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘click’

pid

string

Unique id for the product, to be taken from API response, if relevantDocumentType=”parent”,

In search api response, or null

url

string

Website url where search is performed

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

page*

string

Category path used for category api call (value of “p” parameter).

page_type*

string

Page type for category path, BOOLEAN or CATEGORY_PATH based on page.

referrer

string

Link from where the page is opened (Optional)

Product View

The Product Details Page (PDP) view indicates the total number of times a product has been visited by shoppers irrespective of the source; search result page, category page, search engine, email, marketing campaigns and so on. 

 

Here’s how a PDP API will look like:

 

https://tracker.unbxdapi.com/v2/1p.jpg?data={"pid":"{{uniqueid-of-the-product}}","referrer":"","url":"{{url-of-the-website}}","visit_type":"{{first-or-repeat}}","requestId":”{{request-id}},”UnbxdKey”=”{{unbxd-sitekey}}&action=product_view,”uid”:”{{uid}}”&t={{time-spent}}

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘product_view’

url

string

URL of product display page (PDP), on which product is viewed.

pid

string

Unique id of the product viewed.

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

t

 

This timestamp parameter should be according to the formula shared below


t : current_time | random number between 0 to 1


t = new Date().getTime() + ‘|’ + Math.random();

referrer

string

Link from where the page is opened (Optional)

Add to Cart

The Add to Cart (or known as Cart) event is generated when a shopper adds a product to the shopping cart.

https://tracker.unbxdapi.com/v2/1p.jpg?data={"pid":"{{uniqueid-of-the-product}}","qty":”{{no-of-units}}","variantId":"{{variantId-of-the-variant}}","url":"{{url-of-the-website}}","referrer":"","visit_type":"{{first-or-repeat}}","requestId":"{{request-id}}"&UnbxdKey=”{{unbxd-sitekey}}&action=cart&uid={{uid}}&t={{time-spent}}

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘cart’

qty

string

The number of units added to the cart. This should be the string value of the quantity added. For example, if 2 quantities of a product is added then its value would be “2” (instead of 2).

url

string

Url of the page where product is added to cart.

pid

string

Unique id of the product viewed.

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

t

 

This timestamp parameter should be according to the formula shared below


t : current_time | random number between 0 to 1


t = new Date().getTime() + ‘|’ + Math.random(); 

referrer

string

Link from where the page is opened (Optional)

Cart Removal

The Remove From Cart event tracks every instance a product is removed from cart as well. Information it helps us better understand the visitor’s preferences.

 

When a product with variants is removed from the cart, here’s how the API will look like.

 

https://tracker.unbxdapi.com/v2/1p.jpg?data={"pid":"{{uniqueId-of-the-product}}","variantId":"{{variantId-of-the-variant}}","qty":"{{no_of_units}}","url":"{{url-of-the-website}}","requestId":"{{unx-request-id}}","referrer":"","visit_type":"{{first_or_repeat}}","ver":"4.0.28","_uf":1187461382,"visitId":"{{visit-id}}"}&UnbxdKey={{unbxd-sitekey}}&action=cartRemoval&uid={uid}}&t=1662365583875|0.7442797542869459 

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘cartRemoval’

url

string

Url of the page where product is removed from cart.

pid

string

Unique id of the product viewed.

variantId

string

VariantId of the variant-product.It is necessary only if variants are present. (optional)

qty

string

Quantity being removed by the user as string.

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

variantId

string

VariantId of the variant-product.It is necessary only if variants are present. (optional)

referrer

string

link from where the page is opened (Optional)

Orders

The Orders event is generated every time a shopper places an order successfully on your site.

 

Here’s how an Order API will look like.

 

https://tracker.unbxdapi.com/v2/1p.jpg?data={"pid":"{{uniqueId-of-the-product}}","qty":"{{quantity-selected}}","price":"{{unit-price-for-product}}","url":"{{url-of-the-website}}","referrer":"","visit_type":"{{first_or_repeat}}","requestId":"{{unx-request-id}}","visitId":"{{visit-id}}"}&UnbxdKey={{unbxd-sitekey}}&action=order&uid={{uid}}1658904085468-92302&t=1662367087116|0.07798836811209986

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘order’

query

string

The search query entered by user

pid

string

Unique id for the product, to be taken from API response, if relevantDocumentType=”parent”,

In search api response, or null

price

string

Unit price of the product (variant, if variant is selected)

url

string

Url of the order success page where the API for order event is fired

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers

referrer

string

Link from where the page is opened (Optional)

Facets

A Facet event tracks the guided navigation on the Browse/Category Page. The category api will list the specific filters the shopper has selected to narrow down the results on the browse results page.

 

Here’s how an Order API will look like.

 

http://tracker.unbxdapi.com/v2/1p.jpg?data={"page":"categoryPathId:\"117>119\"","page_type":'{{category-page-type}}',"facets":{“facet-name”:[value],},"url":"{{url-of-the-website}}","referrer":"","requestId":"{{unx-request-id}}","visit_type":"{{first_or_repeat}}","visitId":"{{visit-id}}"}&UnbxdKey={{unbxd-sitekey}}&action=search&uid={{uid}}5&t=1662365253141|0.6835012308821242

NOTE: Action for this event will be “search”, as in the API above and does not need to be changed.

Payload details:

Attribute Name

Datatype

What value to be passed

action

string

Indicates the type of event. In this case, the value will be ‘search’

page*

string

Category path used for category api call (value of “p” parameter).

page_type*

string

Page type for category path, BOOLEAN or CATEGORY_PATH based on page.

pid

string

Unique id for the product, to be taken from API response, if relevantDocumentType=”parent”,

In search api response, or null

url

string

Website url where search is performed

requestId

string

To be extracted from Unbxd search api response headers, from unx-request-id

visit_type

string

Can be either “first_time” or “repeat”

UnbxdKey

string

UnbxdSitekey value

uid

string

Need to be extracted from cookie, unbxd.userId.
This is the unique identifying number for shoppers.

t

 

This timestamp parameter should be according to the formula shared below


t : current_time | random number between 0 to 1


t = new Date().getTime() + ‘|’ + Math.random();

referrer

string

Link from where the page is opened (Optional)

  • Did this answer your question?
  • No…

    I have some feedback

    Feedback is submitted

On this Section

  • To create a Query Rule
  • To Edit a Query Rule
  • Delete a Query Rule
  • Campaign States
  • Create Campaigns
  • Edit Campaigns
  • Preview Campaigns
  • Duplicate Campaigns
  • Delete Campaigns

Copyright 2020 © Unbxd Inc, All Rights Reserved. Privacy Policy