Menus
Working with menus in Menuflow
The Menuflow platform menu system uses an MSIM (menu, section, item, modifier) design and approach. As such our API calls are structured to match the MSIM design. The diagram below shows this in a visual form.
The following API calls are available to retrieve menus, sections, items, and modifiers.
Menus
Call to retrieve menus for a specific location.
Menu Request
GET
https://api.menuflow.dev/go/menu/{lid}
curl --location 'https://api.menuflow.dev/go/menus/{
location_id}'
--header 'x-api-key: YOUR-API-KEY'
Path Parameters
location_id*
integer
location_id for which menus should be returned.
{
"status": 200,
"location_id": 1220,
"records": 2,
"result": [
{
"id": 3706,
"total_items": 12,
"title": "Food Menu",
"description": "Evening weekday food menu"
},
{
"id": 3707,
"total_items": 24,
"title": "Drinks Menu",
"description": "Evening weekday drinks list"
}
]
}
Sections
Call to retrieve all sections for a specific menu.
Section Request
GET
https://api.menuflow.dev/go/menu/{mid}/sections
curl --location 'https://api.menuflow.dev/go/menus/{
menu_id}/sections'
--header 'x-api-key: YOUR-API-KEY'
Path Parameters
menu_id*
integer
menu_id for which sections should be returned.
{
"status": 200,
"menu_id": 3706,
"records": 4,
"result": [
{
"section_id": 15651,
"title": "Appetizers"
},
{
"section_id": 15652,
"title": "Entrees"
},
{
"section_id": 15653,
"title": "Snacks"
},
{
"section_id": 15654,
"title": "Deserts"
}
]
}
Items
Call to retrieve all items for a specific section.
Item Request
GET
https://api.menuflow.dev/go/menu/{sid}/items
curl --location 'https://api.menuflow.dev/go/menus/{
section_id}/items'
--header 'x-api-key: YOUR-API-KEY'
Path Parameters
section_id
integer
section_id for which items should be returned.
{
"status": 200,
"section_id": 15651,
"records": 3,
"result": [
{
"item_id": 155198,
"name": "Tempura Prawns",
"description": "Beautifully succulent and crispy tempura prawns served with sweet chilli sauce.\r\n",
"calories": 0,
"indicators": "",
"price1_label": "",
"price_1": 0.0
},
{
"item_id": 155197,
"name": " Smoked Beef Loin and Salo ",
"description": "Thinly sliced beef loin and cured pork fat with black bread",
"calories": 0,
"indicators": "",
"price1_label": "",
"price_1": 14.0
},
{
"item_id": 155199,
"name": "Baked Brie",
"description": "Two squares of brie baked inside a pastry and topped with your jam choice: (Choose up to 2) Wine Poached Pear Jam, Shallot Jam, Tomato Bacon Jam",
"calories": 0,
"indicators": "",
"price1_label": "",
"price_1": 11.0
}
]
}
Modifiers
Call to retrieve all modifiers for a specific item.
Modifier Request
GET
https://api.menuflow.dev/go/menu/{item_id/modifiers
curl --location 'https://api.menuflow.dev/go/menus/{item_id}/modifiers'
--header 'x-api-key: YOUR-API-KEY'
Path Parameters
item_id*
integer
item_id for which modifiers should be returned.
{
"status": 200,
"item_id": 69,
"records": 2,
"result": [
{
"modifier_id": 1
},
{
"modifier_id": 2
}
]
}
Modifier Details Request
GET
https://api.menuflow.dev/go/menu/{modifier_id}/modifier_details
curl --location 'https://api.menuflow.dev/go/menus/{
modifier_id}/modifier_details'
--header 'x-api-key: YOUR-API-KEY'
Path Parameters
modifier_id*
integer
modifier_id for which details should be returned.
{
"status": 200,
"modifier_id": 1,
"records": 1,
"result": [
{
"detail_id": 1,
"name": "How would you like your steak to be cooked?",
"min": 1,
"max": 1
}
]
}
Modifier Options Request
GET
https://api.menuflow.dev/go/menu/{modifier_id/modifier_options
curl --location 'https://api.menuflow.dev/go/menus/{
modifier_id}/modifier_items'
--header 'x-api-key: YOUR-API-KEY'
Path Parameters
modifier_id*
integer
modifier_id for which items should be returned.
{
"status": 200,
"modifier_id": 1,
"records": 5,
"result": [
{
"option_id": 5,
"name": "Well Done",
"price": 0,
"is_selected": 0
},
{
"option_id": 4,
"name": "Medium-Well",
"price": 0,
"is_selected": 0
},
{
"option_id": 3,
"name": "Medium",
"price": 0,
"is_selected": 0
},
{
"option_id": 2,
"name": "Medium-Rare",
"price": 0,
"is_selected": 0
},
{
"option_id": 1,
"name": "Rare",
"price": 0,
"is_selected": 0
}
]
}
Last updated