About Menus
With the Menus API you can display restaurant menus on your site.
Menus are divided by sections, such as "Appetizers", "Mains", "Desserts", "Drinks" and so on. The sections contains dishes (or items) with their labels and price variants. Additionally, you can upgrade your menu by adding item modifier groups, such as "Extra Toppings" or "Sides".
With the Menus API, you can:
- Create, delete, and update menus.
- Retrieve the information about menu.
Before you begin
It's important to note the following point before starting to code:
- The Menus API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Use cases
Terminology
Menu: A list of food and beverage items available for purchase at a restaurant, café, or other dining establishment.
Menu: Sample Use Cases & Flows
This article presents possible use cases and corresponding sample flows that your app can support. It provides a useful starting point as you plan your app's implementation.
Sync pizza menus across all sites
If you have several pizzeria sites that use your app you might need to sync menu across those sites. For example, if there's a completely new menu called "Build-Your-Own-Pizza", this change also needs to be reflected on other sites.
To sync the pizza menu across all sites:
- Call Get Menu on the site where you created a new menu.
- Extract the whole
menu
object. - Call Create Menu for your other sites and pass the new menu to each.
Menu: Supported Filters and Sorting
The following table shows field support for filters and sorting for the menu object:
Field | Supported Filters | Sortable |
---|---|---|
id | $eq , $ne , $in , $nin | Sortable |
createdDate | $eq , $ne , $gt , $lt , $gte , $lte | Sortable |
updatedDate | $eq , $ne , $gt , $lt , $gte , $lte | Sortable |
name | $eq , $ne , $in , $nin , $begins | Sortable |
description | $eq , $ne , $in , $nin , $empty , $begins | Sortable |
urlQueryParam | $eq , $ne , $in , $nin , $begins | Sortable |
sectionIds | $hasSome | Sortable |
Related content: API Query Language, Query Menus.
Menu ID.
Revision number, which increments by 1 each time the menu is updated. To prevent conflicting changes, the current revision must be passed when updating the menu. Ignored when creating a menu.
Date and time the menu was created.
Date and time the menu was updated.
Menu name.
Menu description.
Is the menu visible to site visitors.
Menu section IDs.
Extended fields.
Part of the site URL, that redirects to the menu. For example, in the URL www.mywebsite.com/our-menus/dinner-menu, dinner-menu is the field value.
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Retrieves a list of up to 500 menus.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menus API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Creates a menu.
To create multiple menus at once, use Bulk Create Menus.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Creates multiple menus at once.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Retrieve a menu by ID.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Deletes a menu.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Retrieves a list of menus given the provided paging, filtering, and sorting. Up to 500 menus can be returned per request.
For a detailed list of supported operations, see the Supported Filters and Sorting article. To learn how to query menus, see API Query Language.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Updates a menu.
To update multiple menus at once, use Bulk Update Menu.
Each time a menu is updated, revision increments by 1. The existing revision must be included when updating a menu. This ensures you're working with the latest menu information, and it prevents unintended overwrites.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Updates multiple menus at once.
Each time a menu is updated, revision increments by 1. The existing revision must be included when updating the menu. This ensures you're working with the latest menu information, and it prevents unintended overwrites.
Permission Scopes
For app development, you must have one of the following permission scopes:This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Note: The Menu API only works with the Wix Restaurants Menus (New) app. Make sure you have installed this app from Wix App Market.
Updates only the extendedFields
field.
Updates only the extendedFields
field.
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Permission Scopes
For app development, you must have one of the following permission scopes:Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.restaurants.menus.v1.menu.
Event name. Expected created.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Triggered when a menu is updated.
Permission Scopes
For app development, you must have one of the following permission scopes:Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.restaurants.menus.v1.menu.
Event name. Expected updated.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Triggered when a menu is deleted.
Permission Scopes
For app development, you must have one of the following permission scopes:Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.restaurants.menus.v1.menu.
Event name. Expected deleted.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.