List warehouses
Operation ID: warehouses
Group: Inventory › Warehouses
Open in the interactive reference
GET /inventory/warehouses
Read-only: Reads and returns; changes nothing.
Lists warehouses. The fields are the same as on GET inventory/warehouses/:id and POST inventory/warehouses/search. The owning legal entity and the warehouse type each come back as both an id and a name.
To filter by name, city, country, or region, use POST inventory/warehouses/search.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
Api-Version |
header | string · v1 | yes | The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1. |
Query surface
id— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likelocationCode— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likeinventoryLocationType— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likeisActive— filter by eq, ne, gt, gte, lt, lte, in, notIn, betweenisPrimaryReceiving— filter by eq, ne, gt, gte, lt, lte, in, notIn, betweenentityId— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likewarehouseTypeId— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likelastModifiedDate— filter by eq, ne, gt, gte, lt, lte, in, notIn, between- Orderable: id, locationCode, entityId, warehouseTypeId, inventoryLocationType, isActive, isPrimaryReceiving, lastModifiedDate
- Selectable: id, locationCode, name, inventoryLocationType, isActive, isPrimaryReceiving, addressLine1, addressLine2, city, stateProvince, postalCode, countryCode, region, entityId, entityName, warehouseTypeId, warehouseTypeName, lastModifiedDate
page[size]— Page sizepage[cursor]— Opaque continuation cursor
Response
200 Success
Under data, an array of warehousesRow:
| Field | Type | Required | Filter | Sort | Description |
|---|---|---|---|---|---|
id |
string | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The unique identifier for the warehouse. Example: "e1d84c07-5b39-4a26-9f70-2c8b613ad495". |
locationCode |
string | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The location code of the warehouse, for example 'WH-01'. It is unique within the tenant. Example: "WH-01". |
name |
string | no | no | no | The site name of the warehouse, for example 'Rotterdam Distribution Center'. Example: "Rotterdam Distribution Centre". |
inventoryLocationType |
string | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The kind of location. Example: "WAREHOUSE". |
isActive |
boolean | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | Whether the warehouse can be selected on new inventory documents. When false, existing stock and history keep pointing at it and new documents cannot select it. Example: true. |
isPrimaryReceiving |
boolean | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | Whether this is the entity's primary receiving warehouse. Open purchase-order on-order quantity for the entity is attributed here for replenishment. At most one warehouse per entity is the primary receiving warehouse. Example: true. |
addressLine1 |
string | null | no | no | no | The first address line: street number and name, or PO box. Absent when unset. Example: "Waalhaven 12". |
addressLine2 |
string | null | no | no | no | The second address line: apartment, suite, unit, building or floor. Absent when unset. |
city |
string | null | no | no | no | The city or locality. Absent when unset. Example: "Rotterdam". |
stateProvince |
string | null | no | no | no | The state, province or region. Absent when unset. |
postalCode |
string | null | no | no | no | The postal or ZIP code. Absent when unset. Example: "3087 BM". |
countryCode |
string | null | no | no | no | The country of the address. Format ISO 3166-1 alpha-2, for example 'NL'. Absent when unset. Example: "NL". |
region |
string | null | no | no | no | A free-text business region grouping, independent of country and state. Absent when unset. Example: "Benelux". |
entityId |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The unique identifier for the legal entity that owns this warehouse. See id on GET base/entities. Example: "81e8beb1-1415-4012-9012-8138580f43dc". |
entityName |
string | null | no | no | no | The name of the legal entity that owns this warehouse. Example: "Acme GmbH". |
warehouseTypeId |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The unique identifier for the warehouse type, which limits the document types the warehouse allows. Absent when the warehouse allows every type. There is no endpoint for it. |
warehouseTypeName |
string | null | no | no | no | The name of the warehouse type. Absent when the warehouse allows every document type. |
lastModifiedDate |
date-time | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | The date and time the warehouse record last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. Example: "2026-05-12T09:30:00.000Z". |
{
"data": [
{
"id": "e1d84c07-5b39-4a26-9f70-2c8b613ad495",
"locationCode": "WH-01",
"name": "Rotterdam Distribution Centre",
"inventoryLocationType": "WAREHOUSE",
"isActive": true,
"isPrimaryReceiving": true,
"addressLine1": "Waalhaven 12",
"addressLine2": "<addressLine2>",
"city": "Rotterdam",
"stateProvince": "<stateProvince>",
"postalCode": "3087 BM",
"countryCode": "NL",
"region": "Benelux",
"entityId": "81e8beb1-1415-4012-9012-8138580f43dc",
"entityName": "Acme GmbH",
"warehouseTypeId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"warehouseTypeName": "<warehouseTypeName>",
"lastModifiedDate": "2026-05-12T09:30:00.000Z"
}
],
"pagination": {
"hasMore": true,
"nextCursor": "<nextCursor>"
}
}
Statuses
400— Invalid request or business failure401— The request carries no valid access token.403— Not authorized404— Not found429— Too many requests from this client address. The response has no body and noRetry-Afterheader.500— Internal server error