Inventory Item
read_inventory access scope.read_inventory access scope.:Subscribe to field-level changes on the InventoryItem GraphQL Admin API object. You can subscribe to create, delete, and update events, as well as changes to specific fields.
Each topic corresponds to a commerce resource (for example, an inventory item) that can exist independently within its domain. Child entities that depend on a parent within the same domain don't have their own topic. Instead, changes to child entities trigger a delivery on the parent topic. Calculated fields, derived fields, auto-updated timestamps, and cross-domain fields aren't available as triggers.
shopify.app.toml
Anchor to Supported triggersSupported triggers
Field-level triggers for InventoryItem subscriptions.
All triggers require the read_inventory access scope, and those triggers that require additional scopes are documented where relevant. Deprecated triggers are listed last.
Subscriptions can include multiple triggers. Use the shopify-webhook-id header for deduplication when handling duplicate deliveries.
Custom queries aren't limited to InventoryItem. They can query the full GraphQL Admin API.
Anchor to list-of-topics-inventoryItem.*inventoryItem .*
Fires when events involve the object.
The "create" and "delete" actions are only relevant within the context of this parent topic. Use to follow or replicate impacted data after a delete event. Define a custom query to retrieve specific fields from create events.
is a parent trigger. Subscribing with the "update" action receives events for all supported triggers under , including nested triggers. Use a more specific trigger to limit events to the fields you need.
Variables:
Anchor to list-of-topics-inventoryItem.countryCodeOfOrigininventoryItem .countryCodeOfOrigin
Fires when the field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The field represents the ISO 3166-1 alpha-2 country code of where the item originated from.
Variables:
Anchor to list-of-topics-inventoryItem.harmonizedSystemCodeinventoryItem .harmonizedSystemCode
Fires when the field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The field represents the harmonized system code of the item.
Variables:
Anchor to list-of-topics-inventoryItem.inventoryLevel.*inventoryItem .inventoryLevel .*
Fires when the field on the object changes.
is a parent trigger. Subscribing with the "update" action receives events for all supported triggers under , including nested triggers. Use a more specific trigger to limit events to the fields you need.
Include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The field represents the inventory item's quantities at the specified location.
Variables: ,
Anchor to list-of-topics-inventoryItem.inventoryLevel.isActiveinventoryItem .inventoryLevel .isActive
Fires when the field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The field indicates whether the inventory level is active.
Variables: ,
Anchor to list-of-topics-inventoryItem.inventoryLevel.quantities.*inventoryItem .inventoryLevel .quantities .*
Fires when the quantities field on the object changes.
is a parent trigger. Subscribing with the "update" action receives events for all supported triggers under , including nested triggers. Use a more specific trigger to limit events to the fields you need.
Include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The quantities field represents the quantity of an inventory item at a specific location, for a quantity name.
Variables: , ,
Anchor to list-of-topics-inventoryItem.inventoryLevel.quantities.quantityinventoryItem .inventoryLevel .quantities .quantity
Fires when the quantity field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The quantity field represents the quantity of an inventory item at a specific location, for a quantity name.
Variables: , ,
Anchor to list-of-topics-inventoryItem.measurement.*inventoryItem .measurement .*
Fires when the measurement field on the object changes.
is a parent trigger. Subscribing with the "update" action receives events for all supported triggers under , including nested triggers. Use a more specific trigger to limit events to the fields you need.
Include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The measurement field represents the packaging dimensions of the inventory item.
Variables:
Anchor to list-of-topics-inventoryItem.measurement.weight.*inventoryItem .measurement .weight .*
Fires when the weight field on the object changes.
is a parent trigger. Subscribing with the "update" action receives events for all supported triggers under , including nested triggers. Use a more specific trigger to limit events to the fields you need.
Include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The weight field represents the weight of the inventory item.
Variables:
Anchor to list-of-topics-inventoryItem.measurement.weight.unitinventoryItem .measurement .weight .unit
Fires when the unit field on the Weight object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The unit field represents the unit of measurement for value.
Variables:
Anchor to list-of-topics-inventoryItem.measurement.weight.valueinventoryItem .measurement .weight .value
Fires when the value field on the Weight object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The value field represents the weight value using the unit system specified with unit.
Variables:
Anchor to list-of-topics-inventoryItem.provinceCodeOfOrigininventoryItem .provinceCodeOfOrigin
Fires when the field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The field represents the ISO 3166-2 alpha-2 province code of where the item originated from.
Variables:
Anchor to list-of-topics-inventoryItem.requiresShippinginventoryItem .requiresShipping
Fires when the field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The field indicates whether the inventory item requires shipping.
Variables:
Anchor to list-of-topics-inventoryItem.skuinventoryItem .sku
Fires when the sku field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
Inventory item SKU.
Variables:
Anchor to list-of-topics-inventoryItem.trackedinventoryItem .tracked
Fires when the tracked field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The tracked field indicates whether inventory levels are tracked for the item.
Variables:
Anchor to list-of-topics-inventoryItem.trackedEditableinventoryItem .trackedEditable
Fires when the field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The field indicates whether the value of the tracked field for the inventory item can be changed.
Variables:
Anchor to list-of-topics-inventoryItem.unitCostinventoryItem .unitCost
Anchor to list-of-topics-inventoryItem.variantsinventoryItem .variants
Fires when the variants field on the object changes.
Subscribe to this trigger with the "update" action and include the field in a custom query to retrieve updated data from the payload.
You can trace the field in subsequent requests using .
The variants field represents a paginated list of the variants that reference this inventory item.
Variables: ,