Deliveroo Catalogue API

The Deliveroo Catalogue API is part of the Retail Platform Suite and manages master grocery catalogues of up to 30,000 items per merchant. Retailers use it to publish product data, variations, and availability across one or more retail sites operating on Deliveroo.

OpenAPI Specification

deliveroo-catalogue-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Deliveroo Catalogue 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: Catalogue
paths:
  /brands/{brand_id}/catalogue/{catalogue_id}:
    get:
      operationId: getCatalogue
      summary: Deliveroo Get Catalogue
      description: Retrieve the latest uploaded catalogue for a brand by catalogue ID. Rate limited to 95 requests per catalogue per minute.
      tags:
      - Catalogue
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      parameters:
      - name: brand_id
        in: path
        required: true
        description: The brand identifier.
        schema:
          type: string
        example: gb-12345
      - name: catalogue_id
        in: path
        required: true
        description: The catalogue identifier.
        schema:
          type: string
        example: gb-12345
      responses:
        '200':
          description: The requested catalogue.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catalogue'
              examples:
                GetCatalogue200Example:
                  summary: Default getCatalogue 200 response
                  x-microcks-default: true
                  value:
                    catalogue_id: gb-12345
                    name: Example
                    items:
                    - id: gb-12345
                      name: Example
                      price: 0
        '404':
          description: Catalogue not found.
        '429':
          description: Too many requests.
        '500':
          description: Server error.
components:
  schemas:
    Catalogue:
      title: Catalogue
      description: 'A master catalogue of retail items for a brand. x-schema-source: documentation x-source-url: https://api-docs.deliveroo.com/reference/getcatalogue'
      type: object
      properties:
        catalogue_id:
          type: string
          description: The catalogue identifier.
          example: gb-12345
        name:
          type: string
          description: The catalogue name.
          example: Example
        items:
          type: array
          description: The products in the catalogue (up to 30,000 per brand).
          items:
            type: object
            properties:
              id:
                type: string
                description: The item identifier.
              name:
                type: string
                description: The product name.
              price:
                type: integer
                description: The price in minor currency units.
  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.