Update Inventory

The Inventory Endpoint is the quantity-aware evolution of the Update Unavailabilities endpoint. Where unavailabilities lets you mark an item as available or unavailable, the inventory endpoint lets you set a precise per-item stock count (the number of units in stock at a given site).

Stock counts let Deliveroo enforce per-item ordering caps in the consumer app — for example, if a site has 3 units of an item in stock, the customer can only add 3 to their basket. An item with quantity: 0 is effectively unavailable; partners not on this endpoint continue to drive availability through Update Unavailabilities without behavioural change.

Since stock can differ for every site, both the Catalogue ID (provided during catalogue upload) and the specific Site ID are required when using this endpoint.

Please note that this API is currently being rolled out gradually. Before launching with this integration, please contact your Deliveroo Technical Integration Manager for approval and enablement support, as the integration will not work until access has been granted.

Item IDs not found

This endpoint accepts partial success. Item IDs that exist in the catalogue are updated; item IDs that are unknown to Deliveroo are returned as per-item errors in a 207 Multi-Status response so a single bad ID does not reject the whole request. Pre-upstream failures (auth, validation, brand or site not found) still return a single 4xx with an error field.

Request shape

  • version is required and currently must be inventory-v2.
  • items is a list of up to 500 entries per request. Item IDs must be unique within a request.
  • Each quantity is a non-negative integer count of in-stock units.
  • last_sold_at (optional, RFC 3339 format) records the date and time when the item was last sold at the store through any sales channel. Deliveroo stores it verbatim and surfaces it on subsequent Get Inventory and Lookup Inventory responses.

Rate Limit

This endpoint is rate-limited to ensure optimal performance:

  • Site level: 10 requests per second per site.
  • Brand level: 100* requests per second per brand.

* Subject to change if needed.

Changing Inventory During Catalogue Upload

Stock-count updates that target items still being created or modified by an in-progress catalogue upload will fail with per-item ITEM_NOT_FOUND errors in the 207 response (the items don't exist in the catalogue yet from the inventory service's point of view). Wait until the catalogue upload's success webhook fires before updating stock counts for newly-added items.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
string
required
string
required
Body Params
string
enum
required

Version of the inventory request shape. inventory-v2 is the current version; the v2 reflects that this endpoint is the natural evolution of unavailabilities-v1, which was binary-only.

Allowed:
items
array of objects
required
length between 1 and 500

List of items to update stock counts for. Item IDs must be unique within a request.

items*
string
required
length between 1 and 256

The partner-provided item ID. Must already exist in the catalogue.

integer
required
≥ 0

In-stock unit count. 0 means the item is sold out.

date-time

Optional RFC 3339 timestamp of when the partner last observed a sale of this item. Stored verbatim and surfaced on subsequent reads; no other behavioural use today.

Responses

Language
Credentials
OAuth2
URL
LoadingLoading…
Response
Choose an example:
application/json