The Menu Ordering Settings API allows you to retrieve and manage menu ordering settings for a restaurant operation.
Menu ordering settings define the availability of menus for ordering. They allow you to:
With the Menu Ordering Settings API, you can:
Menu ordering setting objects are created automatically for each menu when the Wix Restaurants Orders (New) app is installed, or subsequently when a new menu is created. Each menu can only be associated with one restaurant operation. Each menu ordering settings object has an operationID
that refers to its associated operation. By default, every menu ordering settings object is assigned the ID of the first operation created on the Wix site. This can be changed later.
Likewise, when a menu is deleted, its associated menu ordering setting object is deleted automatically.
The following table shows field support for filters and sorting for the menu ordering settings object:
Field | Supported Filters | Is Sortable |
---|---|---|
id | $eq , $ne , $in , $nin , $startsWith | Sortable |
createdDate | $eq , $ne , $in , $nin , $startsWith , $lt , $lte , $gt , $gte | Sortable |
updatedDate | $eq , $ne , $in , $nin , $startsWith , $lt , $lte , $gt , $gte | Sortable |
operationId | $eq , $ne , $in , $nin , $startsWith , $exists | Sortable |
menuId | $eq , $ne , $in , $nin , $startsWith | Sortable |
onlineOrderingEnabled | $eq , $ne , $in , $nin | |
availability.type | $eq , $ne , $in , min , $startsWith |
Related content: API Query Language, Query Menu Ordering Settings
Create and manage menu ordering settings.
Menu ordering settings object ID.
Revision number. Increments by 1 each time the menu ordering settings object is updated. To prevent conflicting changes, the existing revision must be specified when updating a menu ordering settings object.
Date and time the menu ordering settings object was created in ISO-8601 format.
Date and time the menu ordering settings object was last updated in ISO-8601 format.
ID of the restaurant operation the menu belongs to. (See the Restaurants Operations API for more information.)
ID of the menu these settings apply to.
Whether online ordering is enabled for the menu.
Menu availability settings.
Extended fields.
{
"menuOrderingSettings": {
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"createdDate": "2024-07-08T13:44:00.443Z",
"updatedDate": "2024-07-08T13:50:08.572Z",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
"onlineOrderingEnabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"timeZone": "Asia/Jerusalem"
}
}
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Retrieves a menu ordering settings entity.
ID of the menu ordering settings entity to retrieve.
The requested menu ordering settings entity.
curl -X GET https://www.wixapis.com/menu-ordering-settings/v1/menu-ordering-settings/48605ac5-53fc-49b4-96b2-87f7636f5ce0 \
-H 'Authorization: <AUTH>'
{
"menuOrderingSettings": {
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"createdDate": "2024-07-08T13:44:00.443Z",
"updatedDate": "2024-07-08T13:50:08.572Z",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
"onlineOrderingEnabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"timeZone": "Asia/Jerusalem"
}
}
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Upserts a menu ordering settings entity for a given menuId
.
Try to create a menu ordering settings, in case it already exists - update the menu ordering settings
You can only call this method when authenticated as a Wix app or Wix user identity.
ID of the menu these settings apply to.
Details of the menu ordering settings entity to be created or updated.
The created or updated menu ordering settings entity.
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Updates a menu ordering settings entity.
Each time the menu ordering settings entity is updated, revision
increments by 1. The current revision
must be specified when updating the menu ordering settings entity.
This ensures you're working with the latest entity and prevents unintended overwrites.
You can only call this method when authenticated as a Wix app or Wix user identity.
Menu ordering settings object ID.
Details of the menu ordering settings entity to update.
Updated menu ordering settings entity.
curl -X PATCH https://www.wixapis.com/menu-ordering-settings/v1/menu-ordering-settings/48605ac5-53fc-49b4-96b2-87f7636f5ce0 \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'Authorization: <AUTH>' \
--data-raw '{
"menuOrderingSettings": {
{
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
"onlineOrderingEnabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"timeZone": "Asia/Jerusalem"
},
}
}
}'
{
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"createdDate": "2024-07-08T13:44:00.443Z",
"updatedDate": "2024-07-08T13:50:08.572Z",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
"onlineOrderingEnabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"timeZone": "Asia/Jerusalem"
}
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Retrieves a list of menu ordering settings entities given the specified paging, filtering, and sorting. Up to 100 entities can be returned per request.
For a detailed list of supported operations, see the Supported Filters and Sorting article. To learn how to query menu ordering settings entities, see API Query Language.
WQL expression.
List of menu ordering settings entities.
Paging metadata
curl -X POST https://www.wixapis.com/menu-ordering-settings/v1/menu-ordering-settings/query \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>' \
--data-raw '{
"query": {
"sort": [],
"filter": {
"name": {
"$startsWith": "ASAP"
}
}
}
}'
{
"menu_ordering_settings": [
{
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"createdDate": "2024-07-08T13:44:00.443Z",
"updatedDate": "2024-07-08T13:50:08.572Z",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
"onlineOrderingEnabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"timeZone": "Asia/Jerusalem"
}
}
]
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Updates multiple menu ordering settings entities at once.
Each time a menu ordering settings entity is updated, revision
increments by 1. The existing revision must be specified when updating the menu ordering settings entity. This ensures you're working with the entity's latest information, and it prevents unintended overwrites.
You can only call this method when authenticated as a Wix app or Wix user identity.
Menu ordering settings entities to update.
Whether to receive the entity in the response.
Results of bulk menu ordering settings entities update.
Metadata for the API call.
curl -X PATCH https://www.wixapis.com/menu-ordering-settings/v1/bulk/menu-ordering-settings/update \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'Authorization: <AUTH>' \
--data-raw '{
"return_full_entity": true,
"menuOrderingSettings":[
{
"menuOrderingSettings": {
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
},
"mask": {
"paths": [
"operationId",
"menuId",
]
}
}
]
}'
{
"results": [
{
"itemMetadata": {
"itemId": "f83c385c-1485-4daa-9bba-bc332e12c8ce"
},
"menuOrderingSettings": {
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"createdDate": "2024-07-08T13:44:00.443Z",
"updatedDate": "2024-07-08T13:50:08.572Z",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
"onlineOrderingEnabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"timeZone": "Asia/Jerusalem"
}
}
}
],
"bulkActionMetadata": {
"totalSuccesses": 1,
"totalFailures": 0,
"undetailedFailures": 0
}
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Retrieves a list of a menu's availability statuses for a given time slot and restaurant operation. (See the Restaurants Operations API for more information.) Returns the availability status for the given time slot per menu.
The start time of the time slot in ISO-8601 format.
The end time of the time slot in ISO-8601 format.
The ID of the restaurant operation whose menus will be checked. (See the Restaurants Operations API for more information.)
Maximum number of items to return in the results.
Pointer to the next or previous page in the list of results.
Pass the relevant cursor token from the pagingMetadata
object in the previous call's response.
Not relevant for the first request.
The retrieved menus' availability statuses.
The metadata of the paginated results.
curl -X GET 'https://www.wixapis.com/restaurants/v1/menu-ordering-settings/menus-availability-status'
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>'
--data-raw '{
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"timeSlot": {
"startTime": "2024-07-16T00:00:00Z",
"endTime": "2024-07-16T00:00:00Z"
}
}'
{
"menus_availability_status": [
{
"menuId": "bbb65621-6338-4837-8fdd-aebc654523e0",
"availabilityStatus": "AVAILABLE"
},
{
"menuId": "8d02b27d-a73f-41de-a538-deb934d55088",
"availabilityStatus": "AVAILABLE"
},
{
"menuId": "74dbb400-4f56-4bb0-8d55-cf23e0485495",
"availabilityStatus": "AVAILABLE"
}
],
"pagingMetadata": {
"count": 3,
"cursors": {
"next": null,
"prev": null
},
"hasNext": false
}
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Updates extended fields of a menu ordering settings entity without incrementing its revision.
You can only call this method when authenticated as a Wix app or Wix user identity.
ID of the entity to update.
Identifier for the app whose extended fields are being updated.
Data to update. Structured according to the schema defined when the extended fields were configured.
The updated menu ordering settings entity.
curl -X POST https://www.wixapis.com/menu-ordering-settings/v1/menu-ordering-settings/84cd5bac-2094-4ed1-8dbd-92074fee0a2/update-extended-fields \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'Authorization: <AUTH>' \
--data-raw '{
"id": "84cd5bac-2094-4ed1-8dbd-92074fee0a2b",
"namespace": "@restaurants/orders",
"namespaceData": {
"productDescription": "some product"
}
}'
{
"menuOrderingSettings": {
"id": "84cd5bac-2094-4ed1-8dbd-92074fee0a2b",
"revision": "1",
"createdDate": "2024-08-27T16:54:42.395Z",
"updatedDate": "2024-08-27T16:54:42.395Z",
"operationId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menuId": "6c10c8d4-db5a-4d67-af00-8ff321bbf4a5",
"onlineOrderingEnabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"timeZone": "Asia/Jerusalem"
},
"extendedFields": {
"namespaces": {
"@restaurants/orders": {
"productDescription": "some product"
}
}
}
}
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.restaurants.menu_settings.v1.menu_ordering_settings
.
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.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.restaurants.menu_settings.v1.menu_ordering_settings_created",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
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 ordering settings entity is updated.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.restaurants.menu_settings.v1.menu_ordering_settings
.
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.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.restaurants.menu_settings.v1.menu_ordering_settings_updated",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"id": "bd299c88-f4a7-4930-beec-8cc168e374dc",
"entityFqdn": "wix.restaurants.menu_settings.v1.menu_ordering_settings",
"slug": "updated",
"entityId": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"updatedEvent": {
"currentEntity": {
"id": "f83c385c-1485-4daa-9bba-bc332e12c8ce",
"revision": "3",
"created_date": "2024-07-08T13:44:00.443Z",
"updated_date": "2024-07-08T13:50:08.572Z",
"operation_id": "48605ac5-53fc-49b4-96b2-87f7636f5ce0",
"menu_id": "bbb65621-6338-4837-8fdd-aebc654523e0",
"online_ordering_enabled": true,
"availability": {
"type": "ALWAYS_AVAILABLE",
"time_zone": "Asia/Jerusalem"
}
}
},
"eventTime": "2024-03-17T13:05:51.620048116Z",
"triggeredByAnonymizeRequest": false,
"entityEventSequence": "2"
}