https://exclusivo.one/api/v1 · scopes inventory:read, inventory:write
Only products with trackInventory: true appear here. A product with tracking
off never sells out and isn’t listed.
Read stock
This one doesn’t paginate — you get every tracked product with a count.
threshold only affects the lowStock flag and the low_stock filter.
Adjust stock
Needs inventory:write. Send product_id, plus either adjustment or
set.
Which one to use
Use adjustment for anything that might run concurrently. It applies as an
atomic increment, so two adjustments arriving together both land.set overwrites. Two concurrent set calls means one silently wins, and a
set racing a customer’s purchase can put back stock that was just sold.Keep set for stocktakes, where overwriting is what you actually mean.
Stock never goes below zero — both paths clamp at 0.
The log
Every adjustment records the previous value, the new one, the reason, the source
and which key made it. That’s what you use to work out why stock is wrong.
The low-stock webhook
Crossing the threshold downwards fires inventory.low.
It fires on the crossing, not on every decrement below it — so you get one
alert, not a stream. That webhook threshold is a fixed 10, independent of the
threshold parameter on the read endpoint.
→ Webhooks
Errors