Event Collection API Payload Field References

Prev Next

This document explains all Event Collection API payload fields across all event types. It shows where to get each value from: your rendered page (DOM), the Search/Merchandising API request, the API response, or other sources.

All Fields

The table below shows every Event Collection API field, where to get its value, and a link to the detailed reference. The "By API Request" and "By API Response" columns refer to the Search API (or Category Merchandising API) you are already using to fetch products.

Value Sources:

  • By DOM: Value read from your rendered page (input fields, pagination, URL bar, etc.)

  • By API Request: Value from the Search/Merchandising API request param you sent.

  • By API Response: Value from the Search/Merchandising API response you received

  • Other: Static values, values you generate, or your app state

Field

By DOM

By API Request

By API Response

Other

eventType

-

-

-

Static:

"search", "product-list-view", "product-click", "add-to-cart", or "purchase"

source

Your page type

-

-

"search-listing", "search-popup", "category-listing", or "brand-listing"

userId

-

Param u

-

Or localStorage.getItem('spUID') / Insider.getUserId()

platform

navigator.userAgent → desktop-web, mobile-web, etc.

Or your app context

integrationType

-

-

-

Static: always "api"

searchSessionId

No

Deprecated. Use product.traceId instead. Bidirectional fallback with product.traceId. No spaces.

sessionId

-

-

-

Web: gassid from localStorage. Mobile: generate your own. Optional.

referrer

window.location.href

-

-

-

createdAt

-

-

-

Current timestamp (RFC 3339). Optional, defaults to server time

campId

-

-

-

Campaign ID. Optional, defaults to 999999

attributionWindow

-

-

-

Calculated: time windows since original search/listing. e.g. ["session", "7", "30"]

variationId

-

-

-

A/B test variation ID. Optional, defaults to 999999

strategyId

-

Param sid

data.appliedSearchStrategy

Optional

query

Search input field value

Param q

-

For click/cart/purchase: reuse from original search

listValue

Breadcrumb text, tilde-separated

Param cv

-

For click/cart/purchase: reuse from original listing

traceId

-

-

-

Generated: Base64({userId}+{query}+{timestamp}) for search, any unique string for listing. For click/cart/purchase: reuse from original event.

sorting

Selected value of sorting dropdown

Param st

data.sortings[] where selected: true

-

resultCount

Total results text

-

data.navigation.totalItems

For click/cart/purchase: reuse from original event

itemsPerPage

Number of product cards on page

Param ps

data.navigation.itemPerPage

-

totalPages

Last page number in pagination

-

data.navigation.totalPages

For click/cart/purchase: reuse from original event

currentPage

Active page in pagination

-

data.navigation.currentPage

-

facets

Selected filter values → [{ field, label, values }]

-

data.aggregations[] for field/label

-

products[].id

-

-

data.items[].itemId

-

products[].price

-

-

data.items[].itemProperties.item_card.price.{currency}

-

products[].currency

-

param c

-

-

products[].groupCode

-

-

data.items[].itemProperties.item_card.groupCode

-

products[].displayPosition

Index of product card on the grid (1-indexed)

-

Item order in data.items[]

Keep from first display; do not update after sorting/filter

products[].clickPosition

Position of product when clicked

-

-

May differ from displayPosition after sorting

products[].convertedPrice

-

-

data.items[].itemProperties.item_card.convertedPrice

Falls back to price

products[].preferredCurrency

-

-

-

Your site's main currency. Falls back to currency

products[].isMerchandisedItem

-

-

data.items[].isMerchandisedItem

Default false

products[].quantity

Quantity selector value

-

-

Defaults to 1

orderId

-

-

-

Your checkout system: unique order ID

allPurchasedProducts

-

-

-

Your checkout system: ALL product IDs in the order (including non-Eureka)

For click, add-to-cart, and purchase events:

query is used when source is search-popup/search-listing; listValue is used when source is category-listing/brand-listing. Do not mix them.

For search and listing events, products is an array. For click and add-to-cart, product is a single object. For purchase, products is an array where each product can have its own source and traceId.

Field Availability by Event Type

Field

search

product-list-view

product-click

add-to-cart

purchase

eventType

source

userId

platform

integrationType

referrer

traceId

✓(event)

✓(event)

✓(product)

✓(product)

✓(product)

query

✓(event)

-

✓(product)

✓(product)

✓(product)

listValue

-

✓(event)

✓(product)

✓(product)

✓(product)

sorting

✓(product)

✓(product)

✓(product)

resultCount

 ✓

✓(product)

✓(product)

✓(product)

itemsPerPage

✓(product)

✓(product)

✓(product)

totalPages

✓(product)

✓(product)

✓(product)

currentPage

✓(product)

✓(product)

✓(product)

facets

✓(product)

✓(product)

✓(product)

displayPosition

✓(product)

✓(product)

✓(product)

✓(product)

✓(product)

clickPosition

-

-

✓(product)

✓(product)

✓(product)

quantity

-

-

-

✓(product)

✓(product)

attributionWindow

-

-

-

orderId

-

-

-

-

allPurchasedProducts

-

-

-

-

Search API Request and Response

You are already calling the Eureka Search API (or Category Merchandising API) to fetch products and render your pages. Below is a reference for the request/response structure. For further details, refer to the Eureka Search API.

Search API request example

GET https://ineureka.api.useinsider.com/api/web/search
  ?q=queryA            ← Search query
  &p=10000001          ← Your Partner ID
  &l=en_GB             ← Your Locale
  &c=USD               ← Currency
  &u=userA             ← User ID (from localStorage key "spUID")
  &ps=10               ← Page size (items per page)
  &pf=0                ← Page from (0-based offset, for pagination)
  &st=Relevancy        ← Sorting type

Search API response (simplified) example

{
  "status": "Success",
  "data": {
    "items": [
      {
        "itemId": "prod-001",
        "itemProperties": {
          "item_card": {
            "price": { "USD": 299.99 },
            "original_price": { "USD": 349.99 },
            "groupCode": "group-1",
            "product_image_url": "https://example.com/images/prod-001.jpg",
            "name": "Product A",
            "url": "https://example.com/product/prod-001",
            "in_stock": 1,
            "product_attributes": {
              "review_count": 120,
              "product_brand": "brandA"
            }
          }
        },
        "itemVariants": []
      }
    ],
    "navigation": {
      "totalItems": 42,
      "totalPages": 5,
      "currentPage": 1,
      "itemPerPage": 10
    },
    "aggregations": [
      {
        "name": "brand_en",
        "label": "Brand",
        "style": "Checkboxes",
        "items": [
          { "name": "brandA", "selected": false, "documentCount": 15 },
          { "name": "brandB", "selected": false, "documentCount": 8 }
        ],
        "sequence": 1,
        "itemOrderType": "CountDesc"
      }
    ],
    "sortings": [
      { "type": "Relevancy", "label": "Relevancy", "selected": true }
    ],
    "noResultPageText": "No results found"
  },
  "redirection": null,
  "partnerResources": {},
  "error": null,
  "validations": null,
  "appliedSearchStrategy": "UCxQUA=="
}