Skip to main content

InventoryItem

Requires 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.


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 InventoryItem object.

The "create" and "delete" actions are only relevant within the context of this parent topic. Use fields_changed to follow or replicate impacted data after a delete event. Define a custom query to retrieve specific fields from create events.

Collect details about changes to the object by subscribing to the trigger along with the "update" action, though it's recommended that you narrow your subscription to one of the other triggers below.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.countryCodeOfOrigin
inventoryItem.countryCodeOfOrigin

Fires when the countryCodeOfOrigin field on the InventoryItem 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 fields_changed.

The countryCodeOfOrigin field represents the ISO 3166-1 alpha-2 country code of where the item originated from.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.harmonizedSystemCode
inventoryItem.harmonizedSystemCode

Fires when the harmonizedSystemCode field on the InventoryItem 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 fields_changed.

The harmonizedSystemCode field represents the harmonized system code of the item.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.inventoryLevel
inventoryItem.inventoryLevel

Fires when the inventoryLevel field on the InventoryItem 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 fields_changed.

The inventoryLevel field represents the inventory item's quantities at the specified location.

Variables: inventoryItemId, inventoryLevelId

Anchor to list-of-topics-inventoryItem.inventoryLevel.isActive
inventoryItem.inventoryLevel.isActive

Fires when the isActive field on the InventoryLevel 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 fields_changed.

The isActive field indicates whether the inventory level is active.

Variables: inventoryItemId, inventoryLevelId

Anchor to list-of-topics-inventoryItem.inventoryLevel.quantities
inventoryItem.inventoryLevel.quantities

Fires when the quantities field on the InventoryLevel 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 fields_changed.

The quantities field represents the quantity of an inventory item at a specific location, for a quantity name.

Variables: inventoryItemId, inventoryLevelId, quantitiesName

Anchor to list-of-topics-inventoryItem.inventoryLevel.quantities.quantity
inventoryItem.inventoryLevel.quantities.quantity

Fires when the quantity field on the InventoryQuantity 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 fields_changed.

The quantity field represents the quantity of an inventory item at a specific location, for a quantity name.

Variables: inventoryItemId, inventoryLevelId, quantitiesName

Anchor to list-of-topics-inventoryItem.measurement
inventoryItem.measurement

Fires when the measurement field on the InventoryItem 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 fields_changed.

The measurement field represents the packaging dimensions of the inventory item.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.measurement.weight
inventoryItem.measurement.weight

Fires when the weight field on the InventoryItemMeasurement 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 fields_changed.

The weight field represents the weight of the inventory item.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.measurement.weight.unit
inventoryItem.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 fields_changed.

The unit field represents the unit of measurement for value.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.measurement.weight.value
inventoryItem.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 fields_changed.

The value field represents the weight value using the unit system specified with unit.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.provinceCodeOfOrigin
inventoryItem.provinceCodeOfOrigin

Fires when the provinceCodeOfOrigin field on the InventoryItem 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 fields_changed.

The provinceCodeOfOrigin field represents the ISO 3166-2 alpha-2 province code of where the item originated from.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.requiresShipping
inventoryItem.requiresShipping

Fires when the requiresShipping field on the InventoryItem 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 fields_changed.

The requiresShipping field indicates whether the inventory item requires shipping.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.sku
inventoryItem.sku

Fires when the sku field on the InventoryItem 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 fields_changed.

Inventory item SKU.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.tracked
inventoryItem.tracked

Fires when the tracked field on the InventoryItem 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 fields_changed.

The tracked field indicates whether inventory levels are tracked for the item.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.trackedEditable
inventoryItem.trackedEditable

Fires when the trackedEditable field on the InventoryItem 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 fields_changed.

The trackedEditable field indicates whether the value of the tracked field for the inventory item can be changed.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.unitCost
inventoryItem.unitCost

Fires when the unitCost field on the InventoryItem 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 fields_changed.

Unit cost associated with the inventory item.

Variables: inventoryItemId

Anchor to list-of-topics-inventoryItem.variants
inventoryItem.variants

Fires when the variants field on the InventoryItem 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 fields_changed.

The variants field represents a paginated list of the variants that reference this inventory item.

Variables: inventoryItemId, variantsId


Was this page helpful?