Inventory API
Scopes: inventory.read / inventory.write
List levels
GET /v1/inventory/levels?sku=BOTTLE-500&location_id=sloc_main
Set absolute quantity (preferred)
PUT /v1/inventory/levels
Idempotency-Key: inv_BOTTLE-500_sloc_main_20260801T1200
{
"sku": "BOTTLE-500",
"location_id": "sloc_main",
"quantity": 120,
"updated_at": "2026-08-01T12:00:00Z"
}
Stale updated_at / version may yield 409 CONFLICT.
Adjust (use sparingly)
POST /v1/inventory/levels/adjust
{ "sku": "BOTTLE-500", "location_id": "sloc_main", "delta": -1, "reason": "damage" }
Prefer absolute sets from WMS. Webhook: inventory.changed.