Skip to main content
mutation

Requires write_inventory access scope. Also: The user must have a permission to activate an inventory item.

Activates an inventory item at a Location by creating an InventoryLevel that tracks stock quantities. This enables you to manage inventory for a ProductVariant at the specified location.

When you activate an inventory item, you can set its initial quantities. The available argument sets the quantity that's available for sale. onHand argument sets the total physical quantity at the location. If you don't specify quantities, then available and onHand default to zero.


Caution

As of version 2026-01, this mutation supports an optional idempotency key using the @idempotent directive. As of version 2026-04, the idempotency key is required and must be provided using the @idempotent directive. For more information, see the idempotency documentation.


Learn more about managing inventory quantities and states.

Int

The initial available quantity of the inventory item being activated at the location.

ID!
required

The ID of the inventory item to activate.

ID!
required

The ID of the location of the inventory item being activated.

Int

The initial on_hand quantity of the inventory item being activated at the location.

Anchor to stockAtLegacyLocationstockAtLegacyLocation
Boolean
Default:false

Allow activation at or away from fulfillment service location with sku sharing off. This will deactivate inventory at all other locations.


Was this section helpful?

Anchor to InventoryActivatePayload returnsInventoryActivatePayload returns

InventoryLevel

The inventory level that was activated.

[UserError!]!
non-null

The list of errors that occurred from executing the mutation.


Was this section helpful?