bookmark

  • Used when a user bookmarks a product.

  • A pseudo-unique substitute for the User Id. We use anonymous_id to identify a visitor who has not signed in. anonymous_id can be implemented using mechanisms such as cookies or browser localStorage. If anonymous_id is not given, we will default it to SHA1(<API key>:<IP address>:<user agent>:<date>). When a visitor signs in and the user_id and anonymous_id are both present, the anonymous_id will be linked to the user_id along with the past interactions associated with it.

  • Dictionary of extra information that provides useful context about an interaction. We use context information to make recommendations tailored not only for each user, but also for their current browsing context. For example, a user browsing on a desktop may have different browsing behavior than a user browsing on mobile phone. As another example, a user who gets to the site via a certain campaign you run on Facebook may have very different interests than a user who visits your site directly.

    Context information is also useful for personalization for entirely new visitors, as we can immediately personalize their experiences based on their context alone (e.g. the referrer or the campaign they clicked through).

    Example:

    {"context": {
        "campaign":
        {
            "name": "spring_sale",
            "source": "Google",
            "medium": "cpc",
            "term": "running+shoes",
            "content": "textlink"
        },
        "truncated_ip": "1.1.1.0",
        "locale": "en-US",
        "region": "US East",
        "page":
            {
                "url": "https://example.com/miso-tshirt-123ABC",
                "referrer": "https://example.com/",
                "title": "My Product Page"
            },
            "user_agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0)"
        },
        "custom_context": {
            "other_context_var_1": "value_1",
            "other_context_var_2": "value_2"
        }
    }
    
    Properties: 7
  • Miso-generated unique Id for each recommendation or search result. Maintaining this Id for subsequent page views is important to Miso's performance, as we use miso_id to track and fine-tune the performance of personalization and search results. When a user clicks on a recommendation or search result, you should pass the associated miso_id to the next page view, and associate the miso_id with the interactions that take place on the page (e.g. product_detail_page_view, add_to_cart, add_to_collection, like, etc.). In this way, Miso will learn which recommendations work and which didn't.

    Example:

    {"misoId": "123e4567-e89b-12d3-a456-426614174000"}
    
  • The product groups the user is interacting with. You only need this field if you model product variants using product_id and product_group_id (see Product API). If so, you should use this field, when a user is interacting with a product group rather than a specific product variant, for example, when the user is viewing the master page of a T-shirt (i.e. a product group), but has not selected the specific size or color (i.e. a product variant) yet.

    In such situations, the product_id is not applicable because we only know the user is interested in this T-shirt (a product group), but don't know which particular product variant the user is interested in. Therefore, we use product_group_ids to capture such interactions in place of product_ids.

    In the situations where specific product_ids are available, for example, when user selected a particular size of the T-Shirt, use product_ids instead.

    Example:

    {"product_group_ids": ["123ABC"]}
    
  • Products or content the user is interacting with. This field is required by almost all the interaction types. We use product_ids to refer to the product / content records that you upload to Miso. Therefore, it is important to keep this consistent between the two datasets.

    Example:

    {"product_ids": ["123ABC-BLACK", "123EFG-YELLOW"]}
    
  • The ISO-8601 timestamp specifying when the interaction occurred. If the interaction just happened, leave it out and we will default to the server's time. If you're importing data from the past, make sure you provide a timestamp. It is recommended to include milliseconds in the timestamp to provide a higher time resolution.

    Example:

    {"timestamp": "2018-11-07T00:25:00.073876Z"}
    
  • Identifies the signed-in user who performed the interaction. We will use user_id to link Interaction records to your User records. Therefore, it is important to keep this consistent between the two datasets.For visitors who have not signed in, see anonymous_id.