Froomle event specification This page gives a full overview of all the tracking events supported by Froomle. Visit the integration handbook for guidelines on how the share them and which events to share in which use case. Tracking event types Tracking events are events that can be used across all types of website or apps. The event types you can record as users make use of your website are: User Event Name User Action detail_pageview Views an item detail page item_interaction Interacts with an item e.g. product like, favorite, … user_interaction User interactions not covered by one of our other events. page_visit Views a generic page (home, category, other) Integration event types Integration events are all user interactions with recommendations on your website. These are the Froomle integration event types that you can record as users interact with recommendations on your website: User Event Name User Action impression Views a personalized recommendation click_on_recommendation Clicks on a given recommendation Industry specific - Media events For an optimal media Froomle integration checkpoints are a great addition to improve the model. Checkpoints provide information about the progress a user has made while watching, reading or listening to content. In order to optimize your conversion, Froomle also needs information on when users subscribe or cancel any subscriptions. User Event Name User Action checkpoint Passes a certain checkpoint in the content user_interaction Hit a paywall - "interaction_type:paywall"` start_subscription Start a subscription plan cancel_subscription Cancel a subscription plan Batch event types Batch integration events are all user interactions with recommendations that were generated in bulk and not at the user’s request. These are the Froomle batch integration event types that you can record as users interact with these types of recommendations: User Event Name User Action batch_impression Views a personalized recommendation batch_click_on_recommendation Clicks on a given recommendation batch_open Opens the email, notification, … Industry specific - E-commerce events Retail events are all events specific to e-commerce use cases. Froomle tracks the following events in the e-commerce conversion funnel: User Event Name User Action add_to_cart Adds item to cart remove_from_cart Removes item from cart purchase Completes a purchase Session event types When recommendations will be provided in an interactive session, such as a chatbot, we refer to this as a session integration. In an interactive recommendation context, every user session will be seen as independent of prior session. User Event Name User Action session_impression Views a personalized recommendation session_click_on_recommendation Clicks on a given recommendation Tracking events Website tracking events can be used on any website, be it a webshop or streaming platform. Detail pageview The user views an item detail page. Examples are article pages, video pages or product detail pages. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly detail_pageview. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. action_item* string Required. The identifier of the item which is being viewed by the user. action_item_type* string Required. Type of the item interacted with. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "detail_pageview", "page_type": "article_detail", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "action_item": "the_action_item_id", "action_item_type": "article", "channel": "www-desktop" } ] } Page visit A page visit represents the viewing of a generic page, which cannot be linked a single item. Common examples are a view of a home page or category page. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly page_visit. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "page_visit", "page_type": "home", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "channel": "www-desktop" } ] } Item interaction The item interaction event represents any item interaction event that is not explicitly covered in the Froomle specification language for events. Examples are product likes or add-to-wishlists. If your website has item interactions that are not covered by specific events, contact us at support@froomle.com to discuss whether it is useful to track them. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly item_interaction. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. interaction_type* string Required. The type of interaction, e.g. like, save, share, … . action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "item_interaction", "page_type": "article_detail", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "interaction_type": "product_like", "action_item": "the_action_item_id", "action_item_type": "product", "channel": "www-desktop" } ] } User interaction The user interaction event represents any non-item interaction event that is not explicitly covered in the Froomle specification language for events, e.g. a user fills in a review form on your website, a user starts a session with an interactive chatbot, etc. If your website has user interactions that are not covered by specific events, contact us at support@froomle.com to discuss whether it is useful to track them. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly user_interaction. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. interaction_type* string Required. The type of interaction, e.g. like, save, share, … . channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "user_interaction", "page_type": "article_detail", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "interaction_type": "submit_review", "channel": "www-desktop" } ] } Integration events Integration events track the interactions of users with froomle recommendations. The benefits of integration events are: Measuring performance, for example through CTR = click_on_recommendation / impression. Improving recommendations through reinforcement learning and impressions discounting methods. Click on recommendation This event should be triggered whenever a user clicks on a Froomle recommendation. It is our expectation that after a click, a user is redirected to the detail page corresponding to the clicked item. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly click_on_recommendation. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. list_name* string Required. Title of the list to which the recommendation belongs. Should match the title of the list. action_item* string Required. The identifier of the item which was recommended and clicked by the user. action_item_type* string Required. Type of the item interacted with. request_id* string Required. Either the Froomle-generated request identifier if Froomle generated the displayed recommendations, or your own request identifier if you generated the recommendations yourself. The Froomle request identifier is included in the recommendation response that generated the recommendations. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. user_group* string Required. User_group identifies who provided the recommendation. This can be "froomle", your own personalization solution, or simply "cms" for static content. This can be found in the response body of the recommendation request in case the recommendation was generated by Froomle. { "events": [ { "event_type": "click_on_recommendation", "page_type": "home", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "list_name": "The list name", "action_item": "the_action_item_id-123", "action_item_type": "article", "request_id": "6461", //This can be found in the response body of the recommendation request in case the recommendation was generated by Froomle. "channel": "mobile-app", "user_group": "froomle" //This can be found in the response body of the recommendation request in case the recommendation was generated by Froomle. } ] } Impression An impression event is triggered when the user is shown a Froomle recommendation. When a user receives their recommendations in a carousel, only the ones that have been shown should be considered impressed. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly impression. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. list_name* string Required. Title of the list to which the recommendation belongs. Should match the title of the list. action_item* string Required. The identifier of the item which was recommended and shown to the user. action_item_type* string Required. Type of the item interacted with. request_id* string Required. Either the Froomle-generated request identifier if Froomle generated the displayed recommendations, or your own request identifier if you generated the recommendations yourself. The Froomle request identifier is included in the recommendation response that generated the recommendations. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. user_group* string Required. User_group identifies who provided the recommendation. This can be "froomle", your own personalization solution, or simply "cms" for static content. This can be found in the response body of the recommendation request in case the recommendation was generated by Froomle. { "events": [ { "event_type": "impression", "page_type": "home", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "list_name": "The list name", "action_item": "the_action_item_id-123", "action_item_type": "article", "request_id": "6461", //This can be found in the response body of the recommendation request in case the recommendation was generated by Froomle. "channel": "mobile-app", "user_group": "froomle" //This can be found in the response body of the recommendation request in case the recommendation was generated by Froomle. } ] } Subscription & Media events Start subscription A start_subscription event represents that the user has started a subscription to a newspaper, a streaming service, … Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly start_subscription. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. subscription_type string Optional. Type of the started subscription, if applicable. If there are multiple possible subscription levels, these can be represented here. E.g. online, physical, … context_item string Optional. Identifier of the item in context (not interacted with). Serves as support for analysis purposes, or as history. context_item_type string Optional. Type of the item in context (not interacted with). channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "start_subscription", "page_type": "article_detail", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "subscription_type": "physical", "context_item": "the_context_item_id-123", "context_item_type": "article", "channel": "www-mobile" } ] } Cancel subscription A cancel_subscription event represents that the user has canceled a subscription to a newspaper, a streaming service, … Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly cancel_subscription. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. subscription_type string Optional. Type of the canceled subscription, if applicable. If there are multiple possible subscription levels, these can be represented here. E.g. online, physical, … channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "cancel_subscription", "page_type": "article_detail", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "subscription_type": "physical", "channel": "www-mobile" } ] } Checkpoint A checkpoint event represents that the user has reached a specific point in the consumed media. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly checkpoint. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. checkpoint_type* string Required. Type of the reached checkpoint in the media entity. E.g. Start, Pause, Complete, Progress, … progress number Optional. The progress of the reached checkpoint in the media entity if applicable to the type. E.g. 0.5 would correspond to 50% of the media content consumed. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "checkpoint", "page_type": "video_detail", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "action_item": "the_action_item_id-123", "checkpoint_type": "Progress", "progress": 0.1, "action_item_type": "episode", "channel": "www-mobile" } ] } E-Commerce events Add to cart An add to cart event is triggered when a user adds an item to their cart/basket. It also identifies a user’s intention to buy, without the certainty of purchase. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly add_to_cart. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. amount* integer Required. Number of items added to the cart. basket_content Array<Item> Optional. The current items in the user’s basket, including the added item. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "add_to_cart", "page_type": "article_detail", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "action_item": "the_action_item_id-123", "action_item_type": "product", "amount": 10, "channel": "www-mobile", "basket_content": [ { "id": "the_item_added_earlier" }, { "id": "the_action_item_id-123" } ] } ] } Remove from cart A remove from cart event is triggered when a customer removes an item from their basket/cart. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly remove_from_cart. device_id* string Required. Device identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Optional. User identifier of the logged-in user. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. amount* integer Required. Number of items removed from the shopping cart. basket_content Array <Item> Optional. The current items of the user’s basket, after removal of the current item. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "remove_from_cart", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "action_item": "the_action_item_id-123", "action_item_type": "product", "amount": 10, "channel": "www-mobile", "basket_content": [ { "id": "the_item_left_in_basket" } ] } ] } Purchase A purchase event represents the action of buying a product on the webpage, in a physical store or on a mobile application. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly purchase. device_id* string Required. Device identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Optional. User identifier of the logged-in user. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. amount* integer Required. Number of purchased items. original_price float Optional. Original price of the item (in case a reduction was applied). purchased_price* float Required. The price paid by the customer for the item. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "purchase", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "action_item": "the_action_item_id-123", "action_item_type": "product", "amount": 10, "original_price": 29.99, "purchased_price": 9.99, "channel": "www-mobile" } ] } Batch events Batch events are expected to be sent when recommendations are requested in bulk. When a batch of recommendations was generated for all users, we refer to this as a campaign. An example of this is an email integration, where all users receive a certain campaign email. Batch open The batch open events represent a user opening the message that contains the recommendations. An example is when a user opens an email. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly batch_open. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. campaign_id* string Required. Identifier of the campaign for which the batch recommendations were generated. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "batch_open", "page_type": "email", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "campaign_id": "the_campaign_id-123", "channel": "www-mobile" } ] } Batch click on recommendation This event should be triggered whenever a user clicks on a recommendation in a campaign. It is our expectation that after a click, a user is redirected to the detail page corresponding to the clicked item. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly batch_click_on_recommendation. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. list_name* string Required. Title of the list to which the recommendation belongs. Should match the title of the list. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. request_id* string Required. Either the Froomle-generated request identifier if Froomle generated the displayed recommendations, or your own request identifier if you generated the recommendations yourself. The Froomle request identifier is included in the recommendation response that generated the recommendations. campaign_id* string Required. Identifier of the campaign for which the batch recommendations were generated. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "batch_click_on_recommendation", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "list_name": "The list name", "action_item": "the_action_item_id-123", "action_item_type": "article", "request_id": "6461", "campaign_id": "the_campaign_id-123", "channel": "mobile-app" } ] } Batch impression An impression event is triggered when the user is shown a recommendation. It is common to request more recommendations than will be shown when requesting recommendations in bulk. Only those used in the campaign should result in an impression. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly batch_impression. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. device_id* string Required. User identifier stored in a cookie. Use the value "no-consent" for users that wish to remain anonymous. user_id* string Required. User identifier of the logged in user. list_name* string Required. Title of the list to which the recommendation belongs. Should match the title of the list. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. request_id* string Required. Either the Froomle-generated request identifier if Froomle generated the displayed recommendations, or your own request identifier if you generated the recommendations yourself. The Froomle request identifier is included in the recommendation response that generated the recommendations. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. campaign_id* string Required. Identifier of the campaign for which the batch recommendations were generated. { "events": [ { "event_type": "batch_impression", "device_id": "the_device_id-123", "user_id": "the_user_id-123", "list_name": "The list name", "action_item": "the_action_item_id-123", "action_item_type": "article", "request_id": "6461", "channel": "mobile-app", "campaign_id": "the_campaign_id-123" } ] } Session events Session events are expected to be sent when you’ve integrated Froomle in an interaction recommendation context, such as a chatbot. In contrast to other events, recommendations in a sessions do not require an identifiable user, but instead a unique session ID. Session click on recommendation This event should be triggered whenever a user clicks on a recommendation in an interactive session. Specification Example Field Description event_type* string Required. Defines the type of the specified event, has to be exactly session_click_on_recommendation. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. session_id* string Required. Unique identifier of this session. list_name* string Required. Title of the list to which the recommendation belongs. Should match the title of the list. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. request_id* string Required. Either the Froomle-generated request identifier if Froomle generated the displayed recommendations, or your own request identifier if you generated the recommendations yourself. The Froomle request identifier is included in the recommendation response that generated the recommendations. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "session_click_on_recommendation", "session_id": "the_session_id-123", "list_name": "The list name", "action_item": "the_action_item_id-123", "action_item_type": "article", "request_id": "6461", "channel": "mobile-app" } ] } Session impression A session_impression event is triggered when the user is shown a recommendation in an interactive session. Specification Example event_type* string Required. Defines the type of the specified event, has to be exactly session_impression. page_type* string Required. Page from which the event originated. Standard page_types are: home, category, article_detail, product_detail, video_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. session_id* string Required. Unique identifier of this session. list_name* string Required. Title of the list to which the recommendation belongs. Should match the title of the list. action_item* string Required. Identifier of the item interacted with. Is the item that you currently perform an action on if your "action" = viewing a page, then the item you view is the action item. If your action is clicking a recommendation, the item you clicked is the action item. If the action is impressing an item, the action_item is impression. action_item_type* string Required. Type of the item interacted with. request_id* string Required. Either the Froomle-generated request identifier if Froomle generated the displayed recommendations, or your own request identifier if you generated the recommendations yourself. The Froomle request identifier is included in the recommendation response that generated the recommendations. channel* string Required. The channel the user is currently using. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. { "events": [ { "event_type": "session_impression", "session_id": "the_session_id-123", "list_name": "The list name", "action_item": "the_action_item_id-123", "action_item_type": "article", "request_id": "6461", "channel": "mobile-app" } ] }