Index events

Overview

Webhook events related to indexing data.

Available events

Event typeEvent schema
index-item.updated
Copy
Copied
{
  "availability": "Object",
  "available": "Boolean",
  "categoryAssignments": ["Object"],
  "code": "String",
  "id": "String",
  "medias": [
    {"Object"}
  ],
  "mixins": "Object",
  "popularity": "Number",
  "prices": [
    {
      "currency": "String",
      "effectiveAmount": "Number",
      "id": "String",
      "itemId": {
        "id": "String",
        "itemType": "String",
        "name": {"Object"}
      },
      "location": {
        "countryCode": "String"
      }
      "originalAmount": "Number",
      "priceModel": {
        "description": {"Map"},
        "id": "String",
        "includesTax": "Boolean",
        "measurementUnit": {
          "quantity": "Integer",
          "unitCode": "String"
        },
        "name": {"Object"},
        "tierDefinition":{
          "tierType": "String",
          "tiers": [
            {
              "id": "String",
              "minQuantity": {
                "quantity": "Integer",
                "unitCode": "String"
              }
            }
          ]
        }
      },
      "priceModelId": "String",
      "restrictions": {
        "siteCodes": ["String"]
      },
      "siteCode": "String",
      "tierValues": [
        {
          "id": "String",
          priceValue": "Number"
        }
      ]
    }
  ],
  "published": "Boolean",
  "siteCode": "String",
  "tags": ["String"]
}
index-item.deleted
Copy
Copied
{
  "id": "String",
  "siteCode": "String"
}
note

Learn about the index.item-updated event's specific behavior

The index.item-updated webhook event is emitted whenever there is a change on an item in the system - the index is updated with the new information. For the event to be triggered, a product must have at least one defined price, as it is the price that determines products indexing on a specific site. Bear in mind all the events are site-specific, which means that they are linked to activities happening on particular sites. The prices are also site-specific, and a single price can be associated with multiple sites. The number of events triggered in the system depends on the number of sites assigned to a specific product’s prices, with one event emitted per each site.

Example:

productidprice with associated sitesnumber of emitted eventssites the event was emitted to
123$10 - sites A, B2A, B
234$10 - site A, $15 - sites A, B, C3A, B, C
345no price0none
  • A product 123 has one assigned price of $10, associated with two sites A and B. When you update the product 123, the number of emitted index.item-updated events is 2 as there are two sites associated with the product price.
  • A product 234 has two assigned prices: $10 associated with site A and $15 associated with site A, B, and C. So when you update the product 234, the index.item-updated event runs 3 times, as there are three sites affected.
  • A product 345 has no defined price. So when you update the 345 product, the index.item-updated is not emitted as no site is associated with the product.