LogoLogo
Support
Front End Tracking
Front End Tracking
  • Introduction to front-end tracking
  • Setup guide
    • Prerequisites
    • FHR activities
    • XO Search activities
    • XO Recommendations activities
  • Implementation guide
    • SDK
    • Google Tag Manager
    • REST API
  • Identities
    • User object
    • Working with identities
  • Activities
    • Activity object
    • View
    • Click
    • Add to cart
    • Remove from cart
    • Purchase
    • Custom actions
  • AI Scores
    • Setup
    • Usage
  • Best practice
  • Data handling
  • Acronyms and abbreviations
Powered by GitBook

Copyright @ 2024 Crownpeak Technology, Inc. All rights reserved.

On this page
  • Implementation and flow
  • Retrieving a user cluster
  • Versioning in Fredhopper​
  1. AI Scores

Usage

PreviousSetupNextBest practice

Last updated 3 months ago

Implementation and flow

The flowchart below illustrates a user journey on your website, where user identity and behavior are processed to retrieve cluster data and display a personlized PLP ranked with AI scored depending on the implementation method.

The AI Score cluster that the user is assigned to will change as the user performs activities on the site.​

As a cluster may expire during a user session, the version of the user cluster (designated by the generation timestamp) must be aligned with the version of the displayed clusters.

Retrieving a user cluster

Depending on whether you're using the API or the SDK, you can retrieve clusters as follows:

Clusters from API responses

When implementing tracking the response of the activity call will look as follows:

{ ​
  "profiles": ​{        ​
    "customerid#live1#sessionid#a4c2386e-b19": ​{ ​
      "clusters": ​{
        "5f11b72aa6b7e52e94b8a6cf": ​{ ​ // Algorithm Id
          "1634504597142": 2, // key: Timestamp, value: Cluster Number for profile
          "1634591034702": 10 ​
        } ​
      } ​
    } ​
  } 
}

Clusters from dedicated endpoint

Retrieve the Cluster of the user with following call:

GET https://collect-eu.attraqt.io/:trackerKey:/users/:idRepository:/:id:/clusters

Path Parameters

Name
Type
Description

trackerKey*

string

Your account/tenant tracker key. Example: f5c09cdc-5c02-4520-8293-b1b12f44f417

idRepository*

string

The identity repository you are using to identify the user.

Example: sessionid

id*

string

The id of this user for this identity repository.

Example: 5a664160-784e-444c-a6d3-337a2d4af0a6

Example response:

{
   "data": {
     "5ce2a8dbd8c622244f5d1130": {
       "1586436731840": 9,
       "1586307414486": 7
     }
   }
}

The method for retrieving the current user's clusters is as follows

CODE FROM OLD DOC

xo.activity.getUserClusters();

This returns the user's current clusters that were stored in the local storage by the previous sending of activities, or call the endpoint if the clusters are not yet known.

CODE FROM OLD DOC

{
   "5ce2a8dbd8c622244f5d1130": {
     "1586436731840": 9,
     "1586307414486": 7
   }
}

This feature is only available from version 2.0.0 of the SDK

Versioning in Fredhopper​

AI Scores are versioned to prevent shopper/cluster mismatches when a new update has been processed. Cluster objects returned by activities or by calling the cluster API contain two generation timestamps. Each timestamp has an associated cluster value.

When the front-end generates the query string request to Fredhopper, it should use the cluster ID for the model version that matches that in the local ‘current model version’ variable​.

A new display field will be enabled on the published endpoint which the front-end can use to determine the current cluster value (Epoch timestamp) that is loaded and should be used.

​

Fore more information on the various types of identity repositories, see .

here
Fredhopper Versioning