Versions Compared
compared with
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Method Objective
The method returns an API response when requesting product recommendations.
Syntax and parameters
Code Block | ||||
---|---|---|---|---|
| ||||
PersonaClicksdk.recommend(code, params,params) { callback); } |
Name | Type | Requirement | Description |
---|
params | enum | required | Request parameters. |
callback | function | required | A callback function, to which the API response will be passed. |
Request parameters
Name | Type | Requirement | Description | ITEM|
---|---|---|---|---|
blockId | string | required | Unique code of the recommendation block. See this value in the "data-recommender-code" attribute of the block created in PersonaClick account. | |
currentProductId | string | required in some cases | Product ID. This This parameter is mandatory for the requests of blocks with algorithms that use the algorithms depend on the current product. Algorithms: "Similar" and "Also bought". | CATEGORY_ID, "Products usually purchased with this product", "Store recommendations", etc. |
currentCategoryId | string | required in some cases | Category ID. This parameter is mandatory for all blocks set on category pages. | |
SEARCH_QUERY | string | required in some cases | The text of the search query. This parameter is mandatory for the requests of blocks that use the "Search" algorithm. | |
LIMIT | string | optionally | A maximum number of products in the API response. | |
LOCATIONS | string | optionally | String with location IDs separated by comma. If used, the API response will return products available in the listed locations. | |
BRANDS | string | optionally | String with brand names separated by comma. If used, only the products of the listed brands will be returned in the API response. | |
EXCLUDE_BRANDS | string | optionally | String with brand names separated by comma. If used, the API response will exclude the products of the listed brands. | |
CATEGORIES | string | optionally | String with category IDs separated by comma. If used, the API response will only return products that are included in the listed categories. | |
DISCOUNT | boolean | optionally | If used with "true" value, then only those products, the value of which is less than the "oldprice" value, will be returned in the API response. | |
EXTENDED | boolean | optionally | Allows getting extended data in the "recommeds" property of the API response. |
API response properties
The parameter allows filtering products by a specified category, for example for the "Popular" algorithm in a category. |
API response properties
Name | Type | Description |
---|---|---|
html | string | HTML-code of the block with products. The template is customized in the PersonaClick account. |
title | string | The block title. Corresponds to the value of the "Action" element in the block rules. |
recommends | Object Array | An array of objects with product information. Each object has the following properties:
|
id | number | Unique block identifier. Corresponds to the block ID in the list of blocks in the PersonaClick account. |
Examples of use
For blocks with algorithms that require the "Product ID"without any additional parameters:
Code Block | ||||
---|---|---|---|---|
| ||||
Params recommender_params = new Params(); recommender_params.put(Params.Parameter.ITEM, "100500"); PersonaClick.recommend("1fd1b3495137bc3c9299816026acf36f", recommender_params, new Api.OnApiCallbackListener(sdk.recommend(blockId: "1fd1b3495137bc3c9299816026acf36f") { @Override public void onSuccess(JSONObject response) { recommendResult in // the functionality of rendering a block of product recommendations } }); |
For blocks with algorithms that require the "
CategoryProduct ID":
Code Block | ||||
---|---|---|---|---|
| ||||
Params recommender_params = new Params(); recommender_params.put(Params.Parameter.CATEGORY_ID, "146"); PersonaClick.recommend(sdk.recommend(blockId: "1fd1b3495137bc3c9299816026acf36f", recommender_params, new Api.OnApiCallbackListener(currentProductId: "100500") { recommendResult in @Override public void onSuccess(JSONObject response) { // the functionality of rendering a block of product recommendations } }); |
Filtering by category:
Code Block | ||||
---|---|---|---|---|
| ||||
Params recommender_params = new Params(); recommender_params.put(Params.Parameter.SEARCH_QUERY, "To be or not to be"); PersonaClick.recommend("sdk.recommend(blockId: "1fd1b3495137bc3c9299816026acf36f", recommender_params, new Api.OnApiCallbackListener(currentCategoryId: "146") { @Override public void onSuccess(JSONObject response) { recommendResult in // the functionality of rendering a block of product recommendations } }); |
Full example:
Code Block | ||||
---|---|---|---|---|
| ||||
Params recommender_params = new Params();
recommender_params.put(Params.Parameter.ITEM, "100500");
recommender_params.put(Params.Parameter.SEARCH_QUERY, "To be or not to be");
recommender_params.put(Params.Parameter.CATEGORY_ID, "146");
recommender_params.put(Params.Parameter.LIMIT, "15");
recommender_params.put(Params.Parameter.BRANDS, "Alas,poor,Yorick");
recommender_params.put(Params.Parameter.CATEGORIES, "1,146,100500");
PersonaClick.recommend("1fd1b3495137bc3c9299816026acf36f", recommender_params, new Api.OnApiCallbackListener() {
@Override
public void onSuccess(JSONObject response) {
// the functionality of rendering a block of product recommendations
}
}); |
} |
Column | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Page Navigation
Related Pages
|