Inventory
Authorization
oauth2 inventory:readOAuth2 client-credentials grant.
In: header
Scope: inventory:read
Query Parameters
0 < value10 < value <= 50020Matches skuCode, name, or barcode.
length <= 100length <= 50"asc"Value in
- "asc"
- "desc"
Value in
- "true"
- "false"
Value in
- "true"
- "false"
Value in
- "true"
- "false"
Header Parameters
Scope results to one client (brand). Resolve a client name to its id via GET /api/clients/lookup. Validated against the credential's tenant; ignored by a client-pinned credential.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/inventory/skus"{ "success": true, "data": [ { "id": "string", "clientId": "string", "skuCode": "string", "name": "string", "description": "string", "barcode": "string", "weight": 0, "length": 0, "width": 0, "height": 0, "sizeCategory": "SMALL", "imageUrl": "string", "price": 0, "customsValue": "string", "customsCurrency": "string", "customsDescription": "string", "countryOfManufacture": "string", "tariffCode": "string", "vendorPartNumber": "string", "vendorName": "string", "isKit": true, "kitBuildType": "ON_DEMAND", "nonPhysical": true, "autoBreakPack": true, "isActive": true, "reorderPoint": 0, "reorderTargetQty": 0, "lotTracked": true, "expiryRequired": true, "minShelfLifeDays": 0, "pickStrategy": "FEFO", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "client": { "id": "string", "name": "string", "code": "string" }, "inventoryItems": [ { "quantity": 0, "lot": { "expiresAt": "2019-08-24T14:15:22Z", "status": "ACTIVE" }, "bin": { "zone": { "warehouse": { "name": "string" } } } } ], "kitComponents": [ { "componentSkuId": "string", "quantity": 0 } ], "kitMemberships": [ { "kitSkuId": "string" } ], "storageRequirements": [ { "attributeId": "string" } ], "totalStock": 0, "sellableStock": 0, "unsellableStock": 0, "allocated": 0, "available": 0, "backordered": 0, "locationCount": 0, "warehouses": [ "string" ], "isKitComponent": true, "dailyVelocity": 0, "daysOfStock": 0 } ], "pagination": { "page": 0, "limit": 0, "total": 0, "totalPages": 0 }}Authorization
oauth2 inventory:readOAuth2 client-credentials grant.
In: header
Scope: inventory:read
Path Parameters
SKU id
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/inventory/skus/string"{ "success": true, "data": { "id": "string", "clientId": "string", "skuCode": "string", "name": "string", "description": "string", "barcode": "string", "weight": 0, "length": 0, "width": 0, "height": 0, "sizeCategory": "SMALL", "imageUrl": "string", "price": 0, "customsValue": "string", "customsCurrency": "string", "customsDescription": "string", "countryOfManufacture": "string", "tariffCode": "string", "vendorPartNumber": "string", "vendorName": "string", "isKit": true, "kitBuildType": "ON_DEMAND", "nonPhysical": true, "autoBreakPack": true, "isActive": true, "reorderPoint": 0, "reorderTargetQty": 0, "lotTracked": true, "expiryRequired": true, "minShelfLifeDays": 0, "pickStrategy": "FEFO", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "client": { "id": "string", "name": "string", "code": "string", "defaultPickStrategy": "FEFO" }, "inventoryItems": [ { "id": "string", "clientId": "string", "skuId": "string", "binId": "string", "uomId": "string", "quantity": 0, "lotId": "string", "lotNumber": "string", "expiresAt": "2019-08-24T14:15:22Z", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "bin": { "id": "string", "zoneId": "string", "warehouseId": "string", "label": "string", "type": "SHELF", "isActive": true, "isPickable": true, "isSellable": true, "zone": { "id": "string", "name": "string", "type": "RECEIVING", "warehouse": { "id": "string", "name": "string" } } }, "lot": { "expiresAt": "2019-08-24T14:15:22Z", "status": "ACTIVE" }, "uom": { "id": "string", "code": "EACH", "displayName": "string", "baseQty": 0 } } ], "uoms": [ { "id": "string", "clientId": "string", "skuId": "string", "code": "EACH", "displayName": "string", "baseQty": 0, "barcode": "string", "weight": 0, "length": 0, "width": 0, "height": 0, "isBase": true, "isActive": true, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "storageRequirements": [ { "attributeId": "string" } ], "totalStock": 0, "sellableStock": 0, "unsellableStock": 0, "allocated": 0, "available": 0, "backordered": 0, "stockByForm": [ { "code": "EACH", "displayName": "string", "baseQty": 0, "eaches": 0, "units": 0 } ], "effectivePickStrategy": "FEFO", "locationCount": 0, "locations": [ { "inventoryItemId": "string", "binId": "string", "binLabel": "string", "binType": "SHELF", "zoneName": "string", "warehouseId": "string", "warehouseName": "string", "quantity": 0, "uomId": "string", "uomCode": "EACH", "uomBaseQty": 0, "isPickable": true, "lotId": "string", "lotNumber": "string", "expiresAt": "2019-08-24T14:15:22Z", "sellable": true } ] }}Tenant-wide credentials only. A credential pinned to one client is refused (403), as that client's portal users are; use a tenant-wide credential with X-Client-Id. The adjustment ledger for one skuId, aggregated by cause over a window (since / until, default 7 days, clamped to 90): net change, units in and out, the causes ranked by size with their actors, and the largest individual movements.
Authorization
oauth2 inventory:readOAuth2 client-credentials grant.
In: header
Scope: inventory:read
Query Parameters
1 <= lengthDefault: 7 days before until; never more than 90.
date-timeDefault: now.
date-timeHeader Parameters
Scope results to one client (brand). Resolve a client name to its id via GET /api/clients/lookup. Validated against the credential's tenant; ignored by a client-pinned credential.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/inventory/stock-changes?skuId=string"{ "success": true, "data": { "sku": { "id": "string", "skuCode": "string", "name": "string" }, "window": { "from": "2019-08-24T14:15:22Z", "to": "2019-08-24T14:15:22Z", "days": 0 }, "onHandNow": 0, "netChange": 0, "unitsAdded": 0, "unitsRemoved": 0, "changeCount": 0, "causes": [ { "adjustmentType": "RECEIVE", "reason": "string", "referenceType": "string", "changeCount": 0, "unitsAdded": 0, "unitsRemoved": 0, "netChange": 0, "actors": [ "string" ] } ], "largestChanges": [ { "at": "2019-08-24T14:15:22Z", "quantityChange": 0, "adjustmentType": "RECEIVE", "reason": "string", "referenceType": "string", "referenceId": "string", "binLabel": "string", "performedBy": "string" } ], "truncated": true }}Tenant-wide credentials only. A credential pinned to one client is refused (403), as that client's portal users are; use a tenant-wide credential with X-Client-Id.
Authorization
oauth2 inventory:readOAuth2 client-credentials grant.
In: header
Scope: inventory:read
Query Parameters
0 < value10 < value <= 50020Matches skuCode, SKU name, or bin label.
length <= 100length <= 50"asc"Value in
- "asc"
- "desc"
Value in
- "true"
Only with skuId: sellable lots in bins with no open discrepancy.
Value in
- "true"
Value in
- "storage"
- "nonstorage"
Also return zero-quantity rows, with lastMovementAt.
Value in
- "true"
Header Parameters
Scope results to one client (brand). Resolve a client name to its id via GET /api/clients/lookup. Validated against the credential's tenant; ignored by a client-pinned credential.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/api/inventory/stock"{ "success": true, "data": [ { "inventoryItemId": "string", "binId": "string", "binLabel": "string", "binType": "SHELF", "zoneId": "string", "zoneName": "string", "zoneType": "RECEIVING", "warehouseId": "string", "warehouseName": "string", "skuId": "string", "skuCode": "string", "skuName": "string", "skuImageUrl": "string", "quantity": 0, "uomId": "string", "uomCode": "EACH", "uomBaseQty": 0, "isPickable": true, "lotId": "string", "lotNumber": "string", "expiresAt": "2019-08-24T14:15:22Z", "sellable": true, "pickPriority": 0, "clientId": "string", "clientName": "string", "clientCode": "string", "lastMovementAt": "2019-08-24T14:15:22Z" } ], "pagination": { "page": 0, "limit": 0, "total": 0, "totalPages": 0 }}