Inventory

Query and manage warehouse inventory including inventory levels, product locations, and inventory items.

Inventory Transaction Types

Inventory changes are recorded as transactions with the following types:

Value Type Description
1 Adjustment Manual quantity adjustments (corrections, write-offs)
2 Transfer Inventory moved between locations within the warehouse
3 Receive Inventory received into the warehouse (from inward consignments)
4 Hold Inventory placed on hold
5 Pick Inventory picked for outward consignments
6 Dispatch Inventory dispatched from warehouse

Endpoints Overview

Method Endpoint Description
GET /v1/inventory Get inventory page
GET /v1/inventory/{warehouseProductId}/items Get inventory product items

Get Inventory Page

Retrieve a paginated list of inventory records with optional filters.

Endpoint: GET /v1/inventory

Query Parameters

Parameter Type Required Description
PageIndex integer No Page number (default: 1)
PageSize integer No Items per page (default: 25, max: 500)
SearchText string No Filter by product code, name, batch, or SSCC
PartnerId uuid No Filter by partner ID
PartnerProductId uuid No Filter by partner product ID
WarehouseId uuid No Filter by warehouse ID
WarehouseZoneId uuid No Filter by warehouse zone ID
WarehouseLocationId uuid No Filter by warehouse location ID
IncludeDepleted boolean No Include zero-quantity items (default: false)
DgHazardClassId uuid No Filter by DG hazard class ID
DgHazardCategoryId uuid No Filter by DG hazard category ID

Request Example

curl -X GET "https://api.consignlyhq.com/v1/inventory?PageIndex=1&PageSize=50&WarehouseId=550e8400-e29b-41d4-a716-446655440000&IncludeDepleted=false" \
  -H "Authorization: Bearer ACCESS_TOKEN"

Response Example

{
  "index": 1,
  "total": 250,
  "inventory": [
    {
      "logisticUnit": {
        "warehouseLogisticUnitId": "550e8400-e29b-41d4-a716-446655441000",
        "partnerId": "550e8400-e29b-41d4-a716-446655441001",
        "partnerName": "Example Client Ltd",
        "logisticUnitNumber": "LU-001",
        "referenceNumber": "REF-001",
        "ssccNumber": "123456789012345678",
        "warehouseLocationId": "550e8400-e29b-41d4-a716-446655441002",
        "warehouseLocationName": "A-01-01",
        "warehouseLocationType": 1,
        "warehouseId": "550e8400-e29b-41d4-a716-446655441003",
        "warehouseName": "Main Warehouse",
        "availableQuantity": 100,
        "availableVolumeM3": 2.5,
        "availableWeightKG": 500,
        "onHandQuantity": 100,
        "onHandVolumeM3": 2.5,
        "onHandWeightKG": 500
      },
      "products": [
        {
          "warehouseProductId": "550e8400-e29b-41d4-a716-446655441010",
          "partnerId": "550e8400-e29b-41d4-a716-446655441001",
          "partnerName": "Example Client Ltd",
          "partnerProductId": "550e8400-e29b-41d4-a716-446655441011",
          "partnerProductCode": "PROD-A",
          "partnerProductName": "Product A - Premium",
          "isSerialRequired": false,
          "serialTrackingMode": 0,
          "isDangerousGood": false,
          "batch": "BATCH-2024-001",
          "bestBeforeDate": "2025-06-30",
          "expiryDate": "2025-12-31",
          "warehouseLocationId": "550e8400-e29b-41d4-a716-446655441002",
          "warehouseLocationName": "A-01-01",
          "warehouseLocationType": 1,
          "warehouseId": "550e8400-e29b-41d4-a716-446655441003",
          "warehouseName": "Main Warehouse",
          "availableQuantity": 100,
          "availableVolumeM3": 2.5,
          "availableWeightKG": 500,
          "onHandQuantity": 100,
          "onHandVolumeM3": 2.5,
          "onHandWeightKG": 500,
          "attributes": [
            {
              "id": "550e8400-e29b-41d4-a716-446655441020",
              "productAttributeId": "550e8400-e29b-41d4-a716-446655441021",
              "name": "Color",
              "description": "Blue"
            }
          ]
        }
      ]
    }
  ]
}

Inventory Response Fields

Logistic Unit Fields

Field Type Description
warehouseLogisticUnitId uuid Warehouse logistic unit ID
partnerId uuid Partner ID
partnerName string Partner name
logisticUnitNumber string Logistic unit number
referenceNumber string Reference number
ssccNumber string SSCC barcode number
warehouseLocationId uuid Warehouse location ID
warehouseLocationName string Location name (e.g., "A-01-01")
warehouseLocationType integer Location type
warehouseId uuid Warehouse ID
warehouseName string Warehouse name
availableQuantity number Quantity available for allocation
availableVolumeM3 number Available volume in m³
availableWeightKG number Available weight in kg
onHandQuantity number Total quantity on hand
onHandVolumeM3 number Total volume on hand in m³
onHandWeightKG number Total weight on hand in kg

Product Fields

Field Type Description
warehouseProductId uuid Warehouse product ID
partnerProductId uuid Partner product ID
partnerProductCode string Product code
partnerProductName string Product name
isSerialRequired boolean Whether serial tracking is required
serialTrackingMode integer Serial tracking mode
isDangerousGood boolean Whether product is a dangerous good
dgUnNumber integer UN number (if dangerous good)
dgHazchemFireCode integer Hazchem fire code
dgHazchemSafetyCode integer Hazchem safety code
dgHazchemEvacuate boolean Whether hazchem evacuation applies
batch string Batch number
bestBeforeDate date Best before date
expiryDate date Expiry date
packagingDate date Packaging date
productionDate date Production date
sellByDate date Sell by date
attributes array Product attributes

Warehouse Location Types

Value Type Description
1 Racking Racking storage location
2 Bulk Bulk storage location
3 Quarantine Quarantine area
4 Transitional Transitional area

Serial Tracking Modes

Value Mode Description
1 None No serial tracking
2 FullCapture Serial captured at receive and dispatch
3 ReleaseCapture Serial captured at dispatch only

Get Inventory Product Items

Retrieve individual items for an inventory product (for serial-tracked products).

Endpoint: GET /v1/inventory/{warehouseProductId}/items

Path Parameters

Parameter Type Required Description
warehouseProductId uuid Yes The warehouse product ID

Query Parameters

Parameter Type Required Description
PageIndex integer No Page number (default: 1)
PageSize integer No Items per page (default: 25, max: 500)

Request Example

curl -X GET "https://api.consignlyhq.com/v1/inventory/550e8400-e29b-41d4-a716-446655441010/items?PageIndex=1&PageSize=50" \
  -H "Authorization: Bearer ACCESS_TOKEN"

Response Example

{
  "index": 1,
  "total": 100,
  "items": [
    {
      "warehouseProductItemId": "550e8400-e29b-41d4-a716-446655441100",
      "serial": "SN-2024-001",
      "availableQuantity": 1,
      "availableVolumeM3": 0.025,
      "availableWeightKG": 5,
      "transferableQuantity": 1,
      "transferableVolumeM3": 0.025,
      "transferableWeightKG": 5,
      "onHandQuantity": 1,
      "onHandVolumeM3": 0.025,
      "onHandWeightKG": 5
    },
    {
      "warehouseProductItemId": "550e8400-e29b-41d4-a716-446655441101",
      "serial": "SN-2024-002",
      "availableQuantity": 1,
      "availableVolumeM3": 0.025,
      "availableWeightKG": 5,
      "transferableQuantity": 1,
      "transferableVolumeM3": 0.025,
      "transferableWeightKG": 5,
      "onHandQuantity": 1,
      "onHandVolumeM3": 0.025,
      "onHandWeightKG": 5
    }
  ]
}

Item Response Fields

Field Type Description
warehouseProductItemId uuid Warehouse product item ID
serial string Serial number
availableQuantity number Quantity available for allocation
availableVolumeM3 number Available volume in m³
availableWeightKG number Available weight in kg
transferableQuantity number Quantity available for transfer
transferableVolumeM3 number Transferable volume in m³
transferableWeightKG number Transferable weight in kg
onHandQuantity number Total quantity on hand
onHandVolumeM3 number Total volume on hand in m³
onHandWeightKG number Total weight on hand in kg

Understanding Available vs On-Hand Quantities

  • On-Hand Quantity: Total physical quantity in the warehouse
  • Available Quantity: Quantity available for allocation (on-hand minus reserved/allocated)

The difference represents inventory that is:

  • Allocated to outward consignments
  • Reserved for specific orders
  • On hold or quarantined