- Created by Andrey Veprikov, last modified on Jun 26, 2024
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 3 Next »
Product View
Method Objective
REQUIRED The method gives the system an understanding of the product viewed by the user.
Syntax and parameters
val view = Params() view .put(Params.Item(product_id)) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.{type}, type_value)); sdk.track(Params.TrackEvent.VIEW, view);
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | The ID of the current product |
{type} | string | required is some cases | Types of recommendation source. Available values (case sensitive):
|
type_value | string | required is some cases | This parameter can contain one of the values:
|
Examples of use
// from a recommender widget val view = Params(); view .put(Params.Item("100500")) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.RECOMMENDATION, "b934b6ba2eb6202b8922d6a3fb8b3271")); sdk.track(Params.TrackEvent.VIEW, view); // from the Instant Search val view = Params(); view .put(Params.Item("146")) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.INSTANT_SEARCH, "shoes")); sdk.track(Params.TrackEvent.VIEW, view); // from the Full Search val view = Params(); view .put(Params.Item("1978")) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.FULL_SEARCH, "jacket")); sdk.track(Params.TrackEvent.VIEW, view);
Category View
Method Objective
REQUIRED The method gives the system an understanding of the category viewed by the user.
The API will respond with an error for categories unknown to the system. The system only knows the categories from the product feed (XML) or the HTTP import of the category list.
Syntax and parameters
sdk.track(Params.TrackEvent.CATEGORY, (Params()).put(Params.Parameter.CATEGORY_ID, category_id));
Name | Type | Requirement | Description |
---|---|---|---|
category_id | string | required | The ID of the current category. |
Example of use
sdk.track(Params.TrackEvent.CATEGORY, Params().put(Params.Parameter.CATEGORY_ID, "146"));
Adding a product to the cart
Method Objective
REQUIRED The method gives the system an understanding of the product added to the cart by the user.
Syntax and parameters
val cart = Params(); cart .put(Params.Item(product_id) .set(Params.Item.COLUMN.AMOUNT, amount) ) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.{type}, type_value)); sdk.track(Params.TrackEvent.CART, cart);
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | The ID of the product added to the cart |
amount | string | optionally | The total value of the amount of product added to the cart. Default: 1. For example:
|
{type} | string | required in some cases | Types of recommendation source. Available values (case sensitive):
|
type_value | string | required in some cases | This parameter can contain one of the values:
|
Examples of use
// from a recommender widget val cart = Params(); cart .put(Params.Item("100500") .set(Params.Item.COLUMN.AMOUNT, 2) ) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.RECOMMENDATION, "b934b6ba2eb6202b8922d6a3fb8b3271")); sdk.track(Params.TrackEvent.CART, cart); // from the Instant Search val cart = Params(); cart .put(Params.Item("146") .set(Params.Item.COLUMN.AMOUNT, 3) ) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.INSTANT_SEARCH, "shoes")); sdk.track(Params.TrackEvent.CART, cart); // from the Full Search val cart = Params(); cart .put(Params.Item("1978") .set(Params.Item.COLUMN.AMOUNT, 1) ) .put(Params.RecommendedBy(Params.RecommendedBy.TYPE.FULL_SEARCH, "jacket")); sdk.track(Params.TrackEvent.CART, cart);
Removing a product from the cart
Method Objective
REQUIRED The method gives the system an understanding of the product removed from the cart by the user.
Syntax and parameters
sdk.track(Params.TrackEvent.REMOVE_FROM_CART, product_id);
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | The ID of the product removed from the cart |
Example of use
sdk.track(Params.TrackEvent.REMOVE_FROM_CART, "100500");
Update the current cart
Method Objective
REQUIRED The method updates the whole cart on the system side.
This method is required for use on the cart page when the user does certain actions there: when the user visits the page, changes the quantity of a product in the cart, removes a product from the cart, or clears the cart completely.
This method can be used on the product page as an alternative to the "Add to cart" and "Remove from cart" methods if you have access to the entire cart on the product page.
Syntax and parameters
val full_cart = Params(); full_cart .put(Params.Parameter.FULL_CART, true) .put(Params.Item(product_id) .set(Params.Item.COLUMN.AMOUNT, amount) ) .put(Params.Item(product_id) .set(Params.Item.COLUMN.AMOUNT, amount) ); sdk.track(Params.TrackEvent.CART, full_cart);
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | The ID of the product added to the cart |
amount | string | optionally | Quantity of product. Default: 1. |
Example of use
val full_cart = Params(); full_cart .put(Params.Parameter.FULL_CART, true) .put(Params.Item("146") .set(Params.Item.COLUMN.AMOUNT, 2) ) .put(Params.Item("100500") .set(Params.Item.COLUMN.AMOUNT, 3) ); sdk.track(Params.TrackEvent.CART, full_cart);
Successful checkout
Method Objective
REQUIRED The method gives the system information about the successful checkout, its products, and other information related to the checkout.
Syntax and parameters
val purchase = Params(); purchase .put(Params.Item(product_id).set(Params.Item.COLUMN.AMOUNT, amount).set(Params.Item.COLUMN.PRICE, price)) .put(Params.Parameter.ORDER_ID, order_id) .put(Params.Parameter.ORDER_PRICE, order_price) .put(Params.Parameter.DELIVERY_ADDRESS, delivery_address) .put(Params.Parameter.DELIVERY_TYPE, delivery_type) .put(Params.Parameter.PROMOCODE, promocode) .put(Params.Parameter.PAYMENT_TYPE, payment_type) .put(Params.Parameter.TAX_FREE, tax_free); sdk.track(Params.TrackEvent.PURCHASE, purchase);
Request parameters
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | Product ID |
amount | number | required | Product quantity |
price | number | optionally | Product price |
order_id | string | optionally | Internal store Order ID. If not specified, the system will create its internal ID. Synchronization of order statuses, in this case, won't be available. Please note that order IDs in UUID format aren't displayed in the dashboard. Instead of UUDI, "---" will be displayed. To avoid this, add any prefix to this. |
order_price | number | optionally | The final order value, including all discounts. If not specified, the system will calculate the order value based on prices from the product feed. |
delivery_address | string | optionally | Delivery address. Any text. |
delivery_type | string | optionally | Delivery Type, e.g. "courier", "self_pickup", "delivery", "pickup_point", etc. |
promocode | string | optionally | Promo code that was used. If a promo code from the list uploaded to the account has been used, it'll be marked as used. |
payment_type | string | optionally | Payment method. Any string value. For example: "cash", "card", "wire". |
tax_free | boolean | optionally | It sets whether the order was placed with Tax-Free or not. |
Example of use
val purchase = Params(); purchase .put(Params.Item("37").set(Params.Item.COLUMN.AMOUNT, 3).set(Params.Item.COLUMN.PRICE, 140.55)) .put(Params.Item("187").set(Params.Item.COLUMN.AMOUNT, 1).set(Params.Item.COLUMN.PRICE, 328.35)) .put(Params.Parameter.ORDER_ID, "N100500") .put(Params.Parameter.ORDER_PRICE, 750) .put(Params.Parameter.PROMOCODE, "BIRTHDAY") .put(Params.Parameter.DELIVERY_TYPE, "delivery") .put(Params.Parameter.PAYMENT_TYPE, "cart"); sdk.track(Params.TrackEvent.PURCHASE, purchase);
Search Request
Method Objective
The method gives the system an understanding of the user's search queries.
Syntax and parameters
sdk.track(Params.TrackEvent.SEARCH, Params().put(Params.Parameter.SEARCH_QUERY, search_query));
Request parameters
Name | Type | Requirement | Description |
---|---|---|---|
search_query | string | required | Search query phrase. |
Example of use
sdk.track(Params.TrackEvent.SEARCH, Params().put(Params.Parameter.SEARCH_QUERY, "to be or not to be"));
Adding a product to the wishlist
Method Objective
The method gives the system an understanding the user has added a product to the wishlist.
Syntax and parameters
sdk.track(Params.TrackEvent.WISH, product_id);
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | The ID of the product added to the wishlist |
Example of use
sdk.track(Params.TrackEvent.WISH, "100500");
Removing a product from the wishlist
Method Objective
The method gives the system an understanding the user has removed a product from the wishlist.
Syntax and parameters
sdk.track(Params.TrackEvent.REMOVE_FROM_WISH, product_id);
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | The ID of the product removed from the wishlist |
Example of use
sdk.track(Params.TrackEvent.REMOVE_FROM_WISH, "100500");
Update the current wishlist
Method Objective
The method updates the whole wishlist on the system side.
Syntax and parameters
val full_wish = Params(); full_wish .put(Params.Parameter.FULL_WISH, true) .put(Params.Item(product_id)) .put(Params.Item(product_id)); sdk.track(Params.TrackEvent.WISH, full_wish);
Name | Type | Requirement | Description |
---|---|---|---|
product_id | string | required | The ID of the product added to the wish |
Example of use
val full_wish = Params(); full_wish .put(Params.Parameter.FULL_WISH, true) .put(Params.Item("146")) .put(Params.Item("100500")); sdk.track(Params.TrackEvent.WISH, full_wish);
Custom event
Method Objective
The method gives the system an understanding that some user event has happened.
Before you can use custom events, you must create them in the PersonaClick account: Settings > Custom events.
Syntax and parameters
sdk.track(custom_event_key, category, label, value);
Name | Type | Requirement | Description |
---|---|---|---|
custom_event_key | string | required | Unique custom event key. Must be pre-created in the PersonaClick account: Settings > Custom events. |
category | string | optionally | A category is a name that you supply as a way to group some event's properties. |
label | string | optionally | With labels, you can provide additional information for events that you need. |
value | number | optionally | The value property can be any integer and can be used to send a specific value in an event. |
Examples of use
sdk.track("my_event");
sdk.track("my_event", "my_category", "my_label", 100500);
Page Navigation
Related Pages
-
Page:
-
Page:
-
Page:
-
Page:
-
Page:
-
Page:
-
Page:
- No labels