Skip to content
DEV preview — API version 1.0.0 — not the public production site — Development API: dev-api.theprioryshop.co.uk

List inventory stock

GET
/v1/inventory/stock

Paginated, filterable list of exact stock levels for the authenticated tenant and allowed stores. Returns stock visibility only - no cost/margin/supplier/movement-history data. Required scope: inventory.stock.read.

X-Request-Id
string

Optional client-supplied request ID (^[A-Za-z0-9_.:-]{1,80}$). Echoed back on the X-Request-Id response header and inside any error body’s requestId field. If omitted or invalid, the server generates one (req_...).

page
number
default: 1 >= 1
Example
1

1-indexed page number.

pageSize
number
default: 50 >= 1 <= 100
Example
50

Rows per page.

storeId
string
Example
clx1store0000001

Restrict to one store. Must be a store this IntegrationClient is allowed to access; otherwise 404.

productId
string
Example
clx1product000001
sku
string
Example
SKU-ALPHA-BREAD
barcode
string
Example
5000000000001
categoryId
string
Example
clx1category000001
updatedSince
string format: date-time
Example
2026-08-01T00:00:00.000Z

Only return products updated at or after this instant.

lowStockOnly
boolean

When true, only products with availability=low_stock are returned.

activeOnly
boolean
default: true

When true (default), only active products are returned.

object
rows
required
Array<object>
object
productId
required
string
Example
clx1product000001
storeId
required
string
Example
clx1store0000001
sku
required
string
Example
SKU-ALPHA-BREAD
barcode
required
object
Example
5000000000001
name
required
string
Example
Alpha Bread 800g
trackStock
required

Whether this product’s stock level is tracked at all. When false, availability is always not_tracked.

boolean
stockQuantity
required

Exact current stock quantity, as a decimal string.

string
Example
6.000
minimumStockLevel
required

Informational only - mirrored from reorderLevel on save, not independently used for the availability calculation.

string
Example
0.000
reorderLevel
required

The threshold actually used to compute low_stock.

string
Example
5.000
availability
required

Not_tracked when trackStock is false. Otherwise: out_of_stock (<=0), low_stock (>0 and <= reorderLevel), in_stock (> reorderLevel).

string
Allowed values: in_stock low_stock out_of_stock not_tracked
Example
in_stock
updatedAt
required
string format: date-time
Example
2026-08-27T17:51:41.976Z
page
required

1-indexed current page.

number
Example
1
pageSize
required

Rows per page (max 100).

number
Example
50
total
required

Total rows matching the filters, independent of pagination.

number
Example
479
totalPages
required

Ceil(total / pageSize), minimum 1.

number
Example
10

Validation_failed - the request query/params failed validation.

object
error
required
object
code
required

Stable machine-readable error code. See the Error codes table in the API reference.

string
Allowed values: validation_failed unauthorized scope_denied not_found payload_too_large rate_limited internal_error
Example
validation_failed
message
required

Human-readable message. Safe to show to a developer, not localized, not guaranteed to be stable text - match on code, not this string.

string
Example
Request validation failed.
details
required

Additional machine-readable detail, shape depends on code (e.g. validation errors, required scopes). Empty object when there is nothing more to add.

object
key
additional properties
any
Example
{}
requestId
required

Request ID for this response - same value as the X-Request-Id response header. Include this when reporting a problem.

string
Example
req_AbCdEfGh12345678

Unauthorized - missing, malformed, expired or revoked API key, or the owning IntegrationClient is disabled/revoked.

object
error
required
object
code
required

Stable machine-readable error code. See the Error codes table in the API reference.

string
Allowed values: validation_failed unauthorized scope_denied not_found payload_too_large rate_limited internal_error
Example
validation_failed
message
required

Human-readable message. Safe to show to a developer, not localized, not guaranteed to be stable text - match on code, not this string.

string
Example
Request validation failed.
details
required

Additional machine-readable detail, shape depends on code (e.g. validation errors, required scopes). Empty object when there is nothing more to add.

object
key
additional properties
any
Example
{}
requestId
required

Request ID for this response - same value as the X-Request-Id response header. Include this when reporting a problem.

string
Example
req_AbCdEfGh12345678

Scope_denied - the API key is valid but the IntegrationClient does not hold the scope this route requires.

object
error
required
object
code
required

Stable machine-readable error code. See the Error codes table in the API reference.

string
Allowed values: validation_failed unauthorized scope_denied not_found payload_too_large rate_limited internal_error
Example
validation_failed
message
required

Human-readable message. Safe to show to a developer, not localized, not guaranteed to be stable text - match on code, not this string.

string
Example
Request validation failed.
details
required

Additional machine-readable detail, shape depends on code (e.g. validation errors, required scopes). Empty object when there is nothing more to add.

object
key
additional properties
any
Example
{}
requestId
required

Request ID for this response - same value as the X-Request-Id response header. Include this when reporting a problem.

string
Example
req_AbCdEfGh12345678

Not_found - the resource does not exist, or exists but is outside the IntegrationClient’s tenant/allowed stores. Both cases return the same generic 404 deliberately, to avoid confirming a resource exists to a caller not allowed to see it.

object
error
required
object
code
required

Stable machine-readable error code. See the Error codes table in the API reference.

string
Allowed values: validation_failed unauthorized scope_denied not_found payload_too_large rate_limited internal_error
Example
validation_failed
message
required

Human-readable message. Safe to show to a developer, not localized, not guaranteed to be stable text - match on code, not this string.

string
Example
Request validation failed.
details
required

Additional machine-readable detail, shape depends on code (e.g. validation errors, required scopes). Empty object when there is nothing more to add.

object
key
additional properties
any
Example
{}
requestId
required

Request ID for this response - same value as the X-Request-Id response header. Include this when reporting a problem.

string
Example
req_AbCdEfGh12345678

Payload_too_large - request exceeded the configured body size limit.

object
error
required
object
code
required

Stable machine-readable error code. See the Error codes table in the API reference.

string
Allowed values: validation_failed unauthorized scope_denied not_found payload_too_large rate_limited internal_error
Example
validation_failed
message
required

Human-readable message. Safe to show to a developer, not localized, not guaranteed to be stable text - match on code, not this string.

string
Example
Request validation failed.
details
required

Additional machine-readable detail, shape depends on code (e.g. validation errors, required scopes). Empty object when there is nothing more to add.

object
key
additional properties
any
Example
{}
requestId
required

Request ID for this response - same value as the X-Request-Id response header. Include this when reporting a problem.

string
Example
req_AbCdEfGh12345678

Rate_limited - too many requests. See the Retry-After response header. Current numeric limits are an operational policy, not a contractual guarantee, and may change - implement retry/backoff rather than hardcoding a specific limit.

object
error
required
object
code
required

Stable machine-readable error code. See the Error codes table in the API reference.

string
Allowed values: validation_failed unauthorized scope_denied not_found payload_too_large rate_limited internal_error
Example
validation_failed
message
required

Human-readable message. Safe to show to a developer, not localized, not guaranteed to be stable text - match on code, not this string.

string
Example
Request validation failed.
details
required

Additional machine-readable detail, shape depends on code (e.g. validation errors, required scopes). Empty object when there is nothing more to add.

object
key
additional properties
any
Example
{}
requestId
required

Request ID for this response - same value as the X-Request-Id response header. Include this when reporting a problem.

string
Example
req_AbCdEfGh12345678
Retry-After
integer
Example
42

Seconds to wait before retrying.

Internal_error - unexpected server error. The response body is deliberately generic; use requestId when reporting the problem.

object
error
required
object
code
required

Stable machine-readable error code. See the Error codes table in the API reference.

string
Allowed values: validation_failed unauthorized scope_denied not_found payload_too_large rate_limited internal_error
Example
validation_failed
message
required

Human-readable message. Safe to show to a developer, not localized, not guaranteed to be stable text - match on code, not this string.

string
Example
Request validation failed.
details
required

Additional machine-readable detail, shape depends on code (e.g. validation errors, required scopes). Empty object when there is nothing more to add.

object
key
additional properties
any
Example
{}
requestId
required

Request ID for this response - same value as the X-Request-Id response header. Include this when reporting a problem.

string
Example
req_AbCdEfGh12345678