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

Inventory Sync

Stock levels change far more often than catalog data (every sale moves them), so an inventory integration usually needs a different shape than Catalog Sync: more frequent polling, and usually only for a subset of products.

Same core pattern as catalog sync: full paginated fetch of GET /v1/inventory/stock on first run, then updatedSince on every run after, upserting by productId. Record availability alongside stockQuantity if your integration cares about the enum specifically (a low-stock dashboard usually does) - see Inventory Stock for the four values.

Terminal window
curl "https://dev-api.theprioryshop.co.uk/v1/inventory/stock?pageSize=100&page=1&updatedSince=2026-08-27T00%3A00%3A00.000Z" \
-H "Authorization: Bearer epos_dev_sk_example_not_real"

If all you need is “what’s currently low or out of stock,” lowStockOnly=true is cheaper than syncing everything and filtering client-side:

Terminal window
curl "https://dev-api.theprioryshop.co.uk/v1/inventory/stock?storeId=clx1store0000001&lowStockOnly=true" \
-H "Authorization: Bearer epos_dev_sk_example_not_real"

This still only returns availability: "low_stock" rows - it does not include out_of_stock (see Inventory Stock for the exact threshold logic). If you want both, either make two calls or fetch unfiltered and split client-side by availability.

There’s no push notification for a stock change - see Events & Webhooks. Pick an interval that matches how time-sensitive your use case is (a “still in stock?” check before checkout needs to be much fresher than a weekly stock report), and see Rate Limits for backoff guidance if you’re polling aggressively.