-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Recommendation API Profile Specific Parameters #1130
Comments
I wouldn't worry too much about the differences in the result set when you transition the brands and categories to be profile-specific. The current global setting will have very little affect on similar and cross sell recommendations. In extreme edge cases where there are no good similar or cross-sell results for an item, the existence of a brand or category parameter will default to show brand-trending or category-trending results instead of site-wide trending. That should not be affecting a significant number of the pages showing those results, because the vast majority of pages should have good crowd and genomic recommendations and not have to resort to trending items. Those that do should be fine showing site-wide trending instead. |
This is turning out to be not as straightforward as initially thought - need to determine best path forward. Option 1:New script block interface, identified by a new type:
Requires maintaining two script integration interfaces and multiple API types. Option 2:Lift all recommendation context options (current and new) to be global (except profile specific contained in a new "profile" section).
Would need to empty out parameters that have been lifted globally (as needed). API would need to:
Option 3:Each script block ONLY provides profile specific options (no globals) - we could add support for defining globals. Would likely cause many breaking changes to existing integrations.
API would need to:
|
Option 1:
|
Merged into |
The Recommendation API has undergone some changes that open up the ability to specify profile specific parameters when using the POST request.
We will be removing the GET request to this API altogether due to complications in transformation of the requests formats.
API Details
Profile specific parameters:
limit
,categories
,brands
,dedupe
,filters
,searchTerm
Example POST request (apparently parameter names are not case sensitive, because we have never used capitalized params):
Snap Integration
Of the profile specific parameters, only
dedupe
andsearchTerm
are new.The new
dedupe
parameter allows for profiles to NOT dedupe if they requestfalse
for this param - this allows us to no longer need to "unbatch" profiles to prevent de-duplication. Because of backwards compatibility we will have to keep the "batched" functionality, but will adddedupe
as an option that can be set in the script context (or via controller configuration).The new
searchTerm
parameter allows for adding a "query" to the request to further filter out the result set.Considering how existing batched requests work we may have to find a clever way to move to this new API without disturbing existing implementations. For example, as site may have a batched request for 'similar' and 'brand' profiles, the brand profile currently may be the only one that has a
brand
script context option set, but the batched request will considerbrand
for both profiles. If we move completely over to using the new API we might cause a difference in the result set that is expected.The text was updated successfully, but these errors were encountered: