List bin inventory levels

Per-bin inventory levels at the chosen granularity. granularity=VARIANT (default) returns one row per
(location, variant, bin); BATCH and SERIAL_NUMBER break rows down further by the matching
traceability axis. Each row carries three decimal-string quantities: quantity_in_stock,
quantity_committed, quantity_expected.

A null bin_location_id, batch_id, or serial_number_id denotes stock whose traceability on that
axis has not been set (unassigned bin, unbatched stock, untraced serial). Pass ?<param>=null to
target those rows.

Rows are removed once all three quantities reach zero; absence implies zero across the board. This
prevents the dataset from accumulating stale entries for every combination ever touched —
(location, variant, bin), (location, variant, bin, batch), or
(location, variant, bin, serial_number) depending on granularity — and keeps pagination focused on
positions with non-zero stock, commitments, or expected receipts.

Bin inventory levels are computed asynchronously and are eventually consistent — recent stock
movements may not be reflected immediately.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
string
enum
Defaults to VARIANT

Row granularity. Defaults to VARIANT.

Allowed:
integer

Filter by location id.

integer

Filter by variant id.

string
^(\d+|null)$

Filter by bin location id. Pass null to target unassigned-bin rows.

string
^(\d+|null)$

Filter by batch id. Only valid when granularity=BATCH. Pass null to target unbatched rows.

string
^(\d+|null)$

Filter by serial number id. Only valid when granularity=SERIAL_NUMBER. Pass null to target untraced rows.

string

Used for pagination (default is 50)

string

Used for pagination (default is 1)

Responses

Language
Credentials
Bearer
LoadingLoading…
Response
Choose an example:
application/json