...
Info |
---|
The menu content is mostly managed on a brand/market-level whereas pricing & availability is more granularly managed on restaurant-level. The Brand Menu refers to the global menu in a given brand/market for content, whereas store menu the Store Menu refers to the restaurant-level menu for pricing & availability. |
API Actions - Brand Menu
GET Brand Menu
...
Endpoint
The GET Brand Menu endpoint is used to retrieve the full brand-menu for a given channel. The brand-menu is not store specific, but it is the source of menu content used to generate the store-menu. Differently from Different than the store-menu, the brand-menu does not have any price and availability information.pricing & availability information.
This endpoint is used when the vendor needs the menu content for populating various touchpoints. Some examples of these touchpoints are the aggregator platforms and Kiosk.
The menu response after calling this endpoint has a flat JSON, that means it doesn't have nested structures. All fields are root level properties, so you can refer to them simply by ID. The below example is a walk-through from menu to modifier.
Tenders example | Type | ID | Name |
---|---|---|---|
Menu | Group | menu_1 | Menu |
Section | Group | 4763b543-2d04-40a6-8b95-d55750ec554a | Tenders |
Picker | Group | xdgrygmaqSf78Pjdh6UrTF | 3Pc Tenders Meal |
picker_pickerAspect | Group | xdgrygmaqSf78Pjdh6UrTF-76b9c2d3-536e-46bb-a060-f805a63b0063 | Choose a Size |
picker_pickerAspectOption | Group | xdgrygmaqSf78Pjdh6UrTF-medium | Large Combo |
picker_pickerAspect_pickerAspectOption_pickerAspect | Group | xdgrygmaqSf78Pjdh6UrTF-76b9c2d3-536e-46bb-a060-f805a63b0063-medium-b376ee07-5ba9-464d-a3b0-e79ad3643e2a | Choice of Tenders Preparation |
picker_pickerAspectOption_pickerAspectOption2 | Group | xdgrygmaqSf78Pjdh6UrTF-medium-spicy | Spicy |
combo | Combo | 00cc6fc6-5ce7-4361-aa95-9d6d726b5bbd | 3Pc Tenders Medium Combo - Spicy |
comboSlot | Group | group_item_40961 | Main Item |
comboSlotOption | Group | option_group_item_40961 | N/A |
item | Item | item_40961 | 3Pc Tenders - Spicy |
modifierGroup | Group | ModifierGroup_60 | Sauces - 1 Included |
modifier | Modifier | modifierMultiplier_1-00-163758 |
Default entry: For each Picker & Modifier Group, each group will have a property, “defaultSelection”. DefaultSelection will have an ID for an entry that is default for that group
Groups: The menu has four types: Combo, Item, Group and Modifier. The group type exists to wrap relevant references to walk through the menu. Only Combo, Item and Modifier will be passed to and committed to POS in Cart.
Types of Groups | Description | Display type |
---|---|---|
Menu | Group of Sections | List |
Section | Section is a broad container. It can contain pickers, items , combos as well as other sections | List |
Picker | Pickers allows an step by step selection process that ultimate resolve in Combos or Item. Pickers have only one immediate child, a reference to the first aspect. | Single entry |
Picker Aspect | Group of Picker Aspect Options | Select |
Picker Aspect Option | Group of picker Options - References the next aspect for the picker. The picker options of the last aspect reference the final selection result (combo/item) | Single entry |
Combo Slot | Group of Combo Slot Options | Select |
Combo Slot Option | References Combo Slot Option | Single entry |
Modifier Group | Group of Modifiers | Multi-select |
Group display type | Description |
---|---|
List | Group of Sections & Pickers(subsections) |
Single-Entry | One option that maps to options to select from (Size, Choice of Prep) |
Select | Group with Single Selection Option |
Multi-Select | Group with Multiple Selection Options |
Menu Content Updated Webhook
Menu Content Updated events are dispatched when there are changes to content in the CMS (Sanity). This webhook provides information with what ids were created, updated or deleted considering the menu entries, configOffersEntries, systemWideOffersEntries and rewardEntries.
It will also provide a versionId field so when retrieving the menu, you can compare it against the menu's metadata. This will let consumers know if the version they're consuming is up to date with the latest webhook call.
Info |
---|
Since the content is not store nor serviceMode specific, the storeId/serviceMode aren’t present in the payload. |
API Actions - Store Menu
To ensure guests are seeing the correct pricing and availability, the POS must send us the PLU-price key/value pair, indicating whether PLU is available or not for the specific store and service mode (delivery or pickup). Receiving data for each service mode is needed even for POS where availability of menu items are not managed differently for service modes on restaurant-level.
...
Info |
---|
Note that the in-restaurant menu uses the same PLUs as what’s being referred to as Pick-Up menu in the API documentation. Pick-up Service Mode Group is the same as In-restaurant. |
...