Skip to main content

Inventory and Stock

This guide explains how to retrieve stock levels through the API. There are two stock endpoints:

EndpointUse it forKeyed by
GET /stock/base-productsCatalog items (blank textiles) you can use for your productsbase_product_sku
GET /stock/productsYour own products and your warehouse products, e.g. to sync stock into your shopintegration_sku / warehouse reference

Both endpoints return the stock of all items in a single request. Pass skus with a comma separated list to restrict the result to specific items. There is no pagination.

Table of Contents​

Stock of Base Products​

Retrieve the stock of all base product variants available to you:

GET https://cockpit.shirtigo.com/api/stock/base-products

Or only for specific variants:

GET https://cockpit.shirtigo.com/api/stock/base-products?skus=SK-1234-M,SK-1234-L

The SKUs are the base_product_sku values returned by the Catalog-API (GET /base-products/{id}).

{
"SK-1234-M": {
"local_stock": 40,
"wholesale_stock": 1000,
"wholesale_delivery_duration": "2-3",
"inbound_date": null
},
"SK-1234-L": {
"local_stock": 0,
"wholesale_stock": 0,
"wholesale_delivery_duration": "2-3",
"inbound_date": "2026-10-20"
}
}

Stock of Your Products​

Retrieve the stock of all variants of your products and of all your warehouse products:

GET https://cockpit.shirtigo.com/api/stock/products

Or only for specific SKUs:

GET https://cockpit.shirtigo.com/api/stock/products?skus=c48211.a3f9e1,WV-8F3K2Q

  • Product variants are keyed by their integration_sku. This is the SKU your products carry in your connected shops, and the sku of each size returned by the Product-API (GET /products/{id}).
  • Warehouse products (goods you store with us) are keyed by their warehouse reference (WV-...). They only have a local_stock, which is the exact number of items in stock.
{
"c48211.a3f9e1": {
"base_product_sku": "SK-1234-M",
"local_stock": 7,
"wholesale_stock": 1000,
"wholesale_delivery_duration": "2-3",
"inbound_date": null
},
"WV-8F3K2Q": {
"base_product_sku": null,
"local_stock": 143,
"wholesale_stock": null,
"wholesale_delivery_duration": null,
"inbound_date": null
}
}

To look up the stock of a SKU, read the entry with that SKU as key. To get the total number of items available, add local_stock and wholesale_stock.

Response Fields​

FieldDescription
base_product_skuThe base product variant of your product. null for warehouse products. Only returned by /stock/products.
local_stockItems in our own warehouse, ready for immediate production.
wholesale_stockItems available at the wholesaler. These are ordered on demand, which adds wholesale_delivery_duration to the delivery time.
wholesale_delivery_durationAdditional delivery days for items that are not in our warehouse.
inbound_dateExpected date the item is available again. Only set while the wholesaler is out of stock.

A value of null means that no stock information is available for this item at the moment.

Good to Know​

  • Unknown SKUs are omitted from the result instead of causing an error. If none of the requested SKUs is known, the response is an empty object {}.
  • Long SKU lists: The skus list is part of the URL, which is limited to about 8 KB (roughly 400 SKUs). If you need more, request everything without skus and pick the entries you need.
  • Update frequency: Our warehouse stock is updated whenever it changes, wholesale stock several times a day. Requesting the stock once per hour is sufficient.
  • Alternatives: Stock is also available as part of other responses, e.g. GET /base-products/{id}?include_stock=true or GET /products/{id}?include_stock=true. The stock endpoints are the recommended way, as they return everything in one request.