openapi: 3.0.3 info: title: Deliveroo Catalogue Orders API description: Part of the Deliveroo Retail Platform Suite. The Catalogue API lets grocery and non-food retailers manage a master catalogue of up to 30,000 items per brand, publish product data and availability across retail sites, and override item prices at the site level. Authentication uses an OAuth 2.0 client credentials bearer token. version: v1 x-generated-from: documentation x-last-validated: '2026-06-02' contact: name: Kin Lane email: kin@apievangelist.com servers: - url: https://api.developers.deliveroo.com description: Production - url: https://api-sandbox.developers.deliveroo.com description: Sandbox security: - bearerAuth: [] tags: - name: Orders paths: /order/v1/orders/{order_id}: patch: operationId: updateOrderStatus summary: Deliveroo Update Order Status description: Accept, reject, or confirm an order. The order must be in the PLACED status to be accepted or rejected. ASAP orders not accepted within 10 minutes (7 minutes for the Kuwait and UAE markets) are rejected automatically. Rate limited to 5 requests per minute per order. tags: - Orders x-microcks-operation: delay: 0 dispatcher: FALLBACK parameters: - name: order_id in: path required: true description: The unique identifier of the Deliveroo order. schema: type: string example: gb:1234abcd-5678-90ef-ghij-klmnopqrstuv example: gb:1234abcd-5678-90ef-ghij-klmnopqrstuv requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/OrderStatusUpdate' examples: UpdateOrderStatusRequestExample: summary: Default updateOrderStatus request x-microcks-default: true value: status: accepted reject_reason: busy notes: example responses: '204': description: The order was successfully accepted, rejected, or confirmed. '400': description: Bad request, often a missing required parameter or incorrect content type. '401': description: The API key and token combination is invalid or the integration is disabled. '409': description: Conflict, for example the status was already sent or a timeout occurred. '500': description: Server error. Retry later. /signature/v1/orders: post: operationId: createOrder summary: Deliveroo Create a New Order description: Create a new order for fulfillment by Deliveroo. It is recommended to create a quote first; the quote must be valid (created within the last 5 minutes) when the order is placed. tags: - Orders x-microcks-operation: delay: 0 dispatcher: FALLBACK requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/OrderRequest' examples: CreateOrderRequestExample: summary: Default createOrder request x-microcks-default: true value: quote_id: gb-12345 pickup: address: 123 Example Street, London latitude: 1.0 longitude: 1.0 dropoff: address: 123 Example Street, London latitude: 1.0 longitude: 1.0 responses: '200': description: The created order. content: application/json: schema: $ref: '#/components/schemas/Order' examples: CreateOrder200Example: summary: Default createOrder 200 response x-microcks-default: true value: order_id: gb-12345 status: active '400': description: Bad request. '500': description: Server error. components: schemas: Location: title: Location description: A pickup or dropoff location. type: object properties: address: type: string description: The location address. example: 123 Example Street, London latitude: type: number description: The location latitude. example: 1.0 longitude: type: number description: The location longitude. example: 1.0 OrderRequest: title: Order Request description: 'Request body for creating a Signature order. x-schema-source: documentation x-source-url: https://api-docs.deliveroo.com/reference/create-order-v1' type: object properties: quote_id: type: string description: The identifier of a valid quote. example: gb-12345 pickup: $ref: '#/components/schemas/Location' dropoff: $ref: '#/components/schemas/Location' Order: title: Order description: A created Signature order. type: object properties: order_id: type: string description: The identifier of the created order. example: gb-12345 status: type: string description: The current order status. example: active OrderStatusUpdate: title: Order Status Update description: 'Request body for updating an order''s status. x-schema-source: documentation x-source-url: https://api-docs.deliveroo.com/reference/patch-order-1' type: object required: - status properties: status: type: string enum: - accepted - rejected - confirmed description: The new status for the order. example: accepted reject_reason: type: string nullable: true enum: - closing_early - busy - ingredient_unavailable - other description: Required when status is rejected. The reason for rejection. example: busy notes: type: string nullable: true description: Free-text notes accompanying the status change. example: example securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth 2.0 client credentials access token obtained from https://auth.developers.deliveroo.com/oauth2/token. Tokens expire after 5 minutes; no refresh tokens are issued.