Overview
Sensefuel provides powerful targeting capabilities to control when and to whom specific Showcases (Search and/or Navigation PLP) and Recommendations are displayed.
Unlike traditional personalization systems, Sensefuel targeting is not directly connected to your CRM or e-commerce platform. Instead, it relies on a flexible concept of user context, which can either be:
- Detected automatically by Sensefuel (via JavaScript integration), or
- Explicitly provided to Sensefuel (via API requests)
This approach ensures maximum flexibility and compatibility with any data source, as long as the relevant information can be exposed to Sensefuel.
What is "User Context"?
A user context is any piece of information describing the current visitor. It is defined as a set of key-value pairs, where:
-
Key = targeting attribute (e.g.,
isLogged,segment) -
Value = corresponding value (e.g.,
true,premium)
Examples of user context
User context can originate from multiple sources:
-
CRM segments (for logged-in users)
- e.g.,
segment = premium,csp = high_income,hasKids= true
- e.g.,
-
Traffic acquisition data
- e.g.,
campaign = summer_sale,source = meta_ads
- e.g.,
-
Behavioral data
- e.g.,
MostVisitedCategory = sneakers,cartValue = high
- e.g.,
-
Custom business logic
- Any data available on your website or app
The only requirement:
The targeting key and value must be accessible to Sensefuel, either via the JS integration or API.
Targeting with JavaScript Integration (Plug & Play)
When using the Sensefuel JavaScript tag, user context must be detectable by Sensefuel from your front-end environment.
Supported data sources
Sensefuel can read context data from:
- dataLayer
- Cookies or Local Storage
- JavaScript variables or functions
- DOM elements (HTML)
Implementation steps
-
Expose the data
Ensure your targeting data is available in one of the supported sources above. -
Declare targeting keys
Work with your Sensefuel CSM to describe how to retrieve this targeting keys so Sensefuel can configure them in the platform to make them available for you. -
Configure values in Sensefuel
When setting up:- a Showcase
- a Recommendation rule (within a slot)
You can define in the step 2 conditions using values that must match the detected segment/context.
- a Showcase
Note that you can also have multiple conditions for your targeting criterias in your configuration.
Example use cases
- Display a showcase only to logged-in users:
isLogged = true
- Promote premium offers:
segment = premium
Targeting with API Integration
When using Sensefuel via API, the user context must be explicitly passed in each request.
How to send context
User context is provided in the segments field of the API request:
POST https://api.sensefuel.live/discovery/{instance-id}/search
{
"query": {
"terms": {
"expression": "sneakers"
},
"store_id": "dummySeller",
"segments": [
{
"key": "isLogged",
"value": "true"
}
]
}
}Key points
- Each segment corresponds to a
key/valuepair - Multiple segments can be sent in a single request
- Values must match those configured in the Sensefuel platform
Required setup
Even with API integration:
-
Targeting keys must be declared in advance
→ via your Sensefuel CSM -
Values must match API input
→ consistency is required between API payload and platform configuration
Special Case: Offer Mode (Offres)
If you are using Sensefuel Offer Mode:
- The user context linked to the offer is automatically available in the platform
- No additional configuration is required
- You can directly use this context to trigger the display of :
- Showcases
- Recommendation rules
Best Practices
✅ Use clear and consistent naming for keys (e.g., isLogged, userSegment)
✅ Ensure data availability at runtime (especially for JS-based detection)
✅ Align API values and platform configuration
✅ Limit the number of targeting keys to what is actually useful
✅ Test targeting scenarios thoroughly (logged vs non-logged, segments, campaigns)
Summary
Sensefuel targeting is built around a simple but powerful concept:
If a piece of user context can be exposed to Sensefuel, it can be used for targeting.
- JS integration → context is detected
- API integration → context is provided
- Platform configuration → context is activated
This flexible model allows you to implement advanced personalization without tight coupling with your backend systems.