User segment rules are a powerful tool to adjust result ranking for classes of queries. The concept operates on tags assigned to user requests at query time.
Example use cases include:
- Adjusting result ranking for users in a particular a/b test segment.
- Boosting a particular brand for users with an affinity for it (such as identified by an outside data or loyalty platform).
- Boosting ice cream for requests happening at night.
API endpoints
- Retrieve refined tag
- Retrieve refined tags
- Create or replace refined tag
- Update refined tag
- Delete refined tag
Tagging requests
Currently, user segments are applied by passing a value in with the us
query parameter (user segment). In the future automatically generated user segments will be exposed in this endpoint, so that rules can be generated based on location, time-of-day and other parameters. The goal is to give customer teams similar optimization abilities as applied automatically by Constructor.
Custom user segments may be supplied to search or behavioral tracking endpoints using the us
argument: &us=segment1
. This then gives one the ability to define behavior on the basis of tag_name
, user_segment
, and tag_value
segment1
.
Types of rules
Note that user segment rules only support boost and bury rules for the time being to increase or decrease ranking of products matching a given condition for requests with the given tag.
Slotting, blacklisting and whitelisting rule types are not yet supported.
Rule limits
A maximum of 50 boost rules may be applied to a given key-value pair.
Applying rules
If a rule has not been defined for a particular user segment, default ranking behavior will be applied. In other words, you can safely pass user segments that have not yet been defined.
If conditions from several rules apply to a given request their boost values will be summed up.