Auth: X-Agent-Key: sq_agt_*. Scopes: read_inventory (reads), write_inventory (writes). Quantity states (Shopify-parity): available, committed, on_hand, incoming, reserved.

Locations

  • GET /locations · POST /locations · GET /locations/{id} · PUT /locations/{id} · DELETE /locations/{id}

Inventory levels

  • GET /inventory_levels?location_id=&variant_id=
  • POST /inventory_levels/set{ "sku":"TSHIRT-RED-L", "available":10, "location_id":"loc_…" } (or name for another state)
  • POST /inventory_levels/adjust{ "sku":"…", "available_delta":-2 }
  • POST /inventory_levels/move{ "sku":"…", "from":"on_hand"→ rejected; use available↔reserved etc., "quantity":3, "location_id":"…" }
set/adjust accept sku or variant_id and default to the tenant’s default location and the available state. Emits the inventory_levels/update webhook.