Skip to content
Navigation

Get the menu

Categories and products for an order type. A restaurant can run menu plans that change prices or show some products only at certain times. The menu, the product and the quote all follow the plan of the pickup or delivery moment, exactly as the order is charged.

Categories are in display order; hidden and empty categories are left out. Products not offered for orderType are left out.

GET
https://api.unipage.eu/storefront/v1/menu

Authorization

  • publicKey
    optional
    API key in header
  • secretKey
    optional
    HTTP

Query parameters

  • orderType
    TAKEOUT
    or
    DELIVERY
    required

    The order type to read for.

  • at
    optional
    integer

    Unix seconds of the chosen slot, default now. Prices and visibility follow the menu plan of that moment.

Returns

200

The menu.

JSON
  • categories
    optional
    array of
    object

    In display order. Hidden and empty categories are left out.

    • id
      optional
      string
    • name
      optional
      string
    • description
      optional
      string | null
    • image
      optional
      string | null
    • products
      optional
      array of
      object
      • id
        optional
        string
      • name
        optional
        string
      • description
        optional
        string | null
      • price
        optional
        number
      • priceType
        optional
        PER_UNIT

        Products priced by weight are not supported.

      • image
        optional
        string | null

        Image URL.

      • available
        optional
        boolean

        false means not orderable right now: show it greyed out.

      • soldOut
        optional
        boolean

        true means out of stock.

      • hasOptions
        optional
        boolean

        Get the product to read its option groups.

      • maxPerOrder
        optional
        integer | null
      • allergens
        optional
        array of
        gluten
        or
        crustaceans
        or
        eggs
        or
        fish
        or
        peanuts
        or
        soybeans
        +8 more
      • allergenSources
        optional
        map of
        array<string>

        The specific cereal (wheat, spelt, khorasan, rye, barley, oats) or nut (almonds, hazelnuts, walnuts, cashews, pecans, brazil_nuts, pistachios, macadamia) per allergen, when the restaurant recorded it. EU food-information rules ask you to show it before the order is placed: "gluten (wheat)".

401

A missing, unknown or revoked key (UNAUTHENTICATED).
JSON
  • error
    object
    required
    • code
      UNAUTHENTICATED
      or
      FORBIDDEN
      or
      NOT_FOUND
      or
      METHOD_NOT_ALLOWED
      or
      VALIDATION
      or
      SLOT_UNAVAILABLE
      +6 more
      required
    • message
      string
      required

      Human readable.

    • fields
      optional
      map of
      string

      Only present when the error belongs to specific request fields.

403

A public key on a secret route, or used from an origin that is not registered for it (FORBIDDEN).
JSON
  • error
    object
    required
    • code
      UNAUTHENTICATED
      or
      FORBIDDEN
      or
      NOT_FOUND
      or
      METHOD_NOT_ALLOWED
      or
      VALIDATION
      or
      SLOT_UNAVAILABLE
      +6 more
      required
    • message
      string
      required

      Human readable.

    • fields
      optional
      map of
      string

      Only present when the error belongs to specific request fields.

422

The request is not valid, see fields (VALIDATION).
JSON
  • error
    object
    required
    • code
      UNAUTHENTICATED
      or
      FORBIDDEN
      or
      NOT_FOUND
      or
      METHOD_NOT_ALLOWED
      or
      VALIDATION
      or
      SLOT_UNAVAILABLE
      +6 more
      required
    • message
      string
      required

      Human readable.

    • fields
      optional
      map of
      string

      Only present when the error belongs to specific request fields.

429

Too many requests (RATE_LIMITED). Wait Retry-After seconds.
JSON
  • error
    object
    required
    • code
      UNAUTHENTICATED
      or
      FORBIDDEN
      or
      NOT_FOUND
      or
      METHOD_NOT_ALLOWED
      or
      VALIDATION
      or
      SLOT_UNAVAILABLE
      +6 more
      required
    • message
      string
      required

      Human readable.

    • fields
      optional
      map of
      string

      Only present when the error belongs to specific request fields.

Type to search…

↑↓ navigate↵ selectEsc close