About Item Modifier Groups

The Item Modifier Groups API allows you to manage your item modifier groups. Item modifier groups gather individual menu items (or item modifiers) that can be used to modify, enhance, or specify existing menu items in an order. For example, a modifier group is called "Pizza toppings" and has the following modifier items: "extra cheese", "pepperoni", "mushrooms".

With the Item Modifier Groups API, you can:

  • Create, delete, and update item modifier groups.
  • Retrieve the information about item modifier groups.

Before you begin

It's important to note the following point before starting to code:

  • The Item Modifier Groups API only works with the Wix Restaurants Menus (New) app. Make sure you downloaded 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.
  • Item modifier: Type of menu item that serves as an addition to an existing menu item. For example, "Almond milk" could be an item modifier that can be applied to a coffee order.
Did this help?

Item Modifier Groups: 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 menu 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 new item modifier group called "Extra Toppings", this change also needs to be reflected on other sites.

To update the pizza menu across all sites:

  1. Call Get Modifier Group on the site where you updated the menu.
  2. Extract the modifierGroup.name and modifierGroup.modifiers field values.
  3. Call Create Modifier Group for your other sites and pass the new item modifier group to each.
  4. Call Update Item and add new modifier group ID to the item.modifierGroups array.
Did this help?

Item Modifier Groups: Supported Filters and Sorting

The following table shows field support for filters and sorting for the item modifier groups object:

FieldSupported FiltersSortable
id$eq, $ne, $in, $ninSortable
createdDate$eq, $ne, $gt, $lt, $gte, $lteSortable
updatedDate$eq, $ne, $gt, $lt, $gte, $lteSortable
name$eq, $ne, $in, $nin, $startsWithSortable
modifiers$existsSortable
modifiers.id$in, $nin, $hasSomeSortable
modifiers.modifiers.priceInfo.additionalCharge$eq, $ne, $in, $nin, $hasSomeSortable
modifiers.preSelected$eq, $ne, $in, $ninSortable
rule$existsSortable
rule.required$eq, $ne, $in, $ninSortable
rule.minSelections$eq, $neSortable
rule.maxSelections$eq, $neSortable

Related content: API Query Language, Query Modifiers.

Did this help?

Item Modifier Group Object


Properties
idstringRead-onlyformat GUID

Modifier group ID.


revisionintegerRead-onlyformat int64

Revision number, which increments by 1 each time the modifier group is updated. To prevent conflicting changes, the current revision must be passed when updating the modifier group. Ignored when creating a modifier group.


createdDatestringRead-onlyformat date-time

Date and time the modifier group was created.


updatedDatestringRead-onlyformat date-time

Date and time the modifier group was updated.


namestringminLength 1maxLength 100

Modifier group name.


modifiersArray <Modifier>minItems 0maxItems 25

Group of item modifiers.


ruleRule

Modifier group details.


extendedFieldsExtendedFields

Extended fields.

ModifierGroup
JSON
{ "id": "116a2e4d-1ddd-4947-8050-4aea8d0af2b4", "revision": "1", "createdDate": "2023-12-04T08:20:38.784Z", "updatedDate": "2023-12-04T08:20:38.784Z", "name": "Topping", "modifiers": [ { "id": "481135f7-1392-4a2e-ac6b-12fb0ef398b7", "additionalChargeInfo": { "additionalCharge": "2.50" } } ], "rule": { "mandatory": false, "minSelections": 0, "maxSelections": null }, "extendedFields": null }
Did this help?

GET

List Modifier Groups


Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Note: The Item Modifier Groups API only works with the Wix Restaurants Menus (New) app. Make sure you downloaded this app from Wix App Market.

Retrieves a list of up to 100 modifier groups.

Permissions
Manage Bookings Services and Settings
Manage Events
Manage Portfolio
Access Verticals by Automations
Set Up Automations
Manage Restaurants - all permissions
Learn more about app permissions.
Endpoint
GET
https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups

Query Params
modifierGroupIdsArray <string>

Modifier group IDs.


paging.limitintegerminimum 0maximum 100format int32

Number of items to load.


paging.cursorstring

Pointer to the next or previous page in the list of results.

You can get the relevant cursor token from the pagingMetadata object in the previous call's response. Not relevant for the first request.

Response Object
modifierGroupsArray <ModifierGroup>

Retrieved modifier groups.


metadataMetadata

The metadata of the paginated results.

Retrieve all modifier groups
Request
cURL
curl -X GET https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups \ -H 'Authorization: <AUTH>'
Response
JSON
{ "modifierGroups": [ { "id": "02042f01-58ab-441c-b5db-55f51c855a62", "revision": "1", "createdDate": "2023-12-03T21:23:33.861Z", "updatedDate": "2023-12-03T21:23:33.861Z", "name": "Topping", "modifiers": [ { "id": "481135f7-1392-4a2e-ac6b-12fb0ef398b7", "additionalChargeInfo": { "additionalCharge": "2.50" } }, { "id": "68eddbbf-da8b-4b24-ac74-a5f6b38b6de6", "additionalChargeInfo": { "additionalCharge": "0.00" } } ], "rule": { "mandatory": false, "minSelections": 0, "maxSelections": null } }, { "id": "0517e5d4-8fd3-4b28-a743-68cf631e534a", "revision": "1", "createdDate": "2023-12-03T21:23:33.861Z", "updatedDate": "2023-12-03T21:23:33.861Z", "name": "Topping", "modifiers": [ { "modifierId": "ef7dc1ed-06df-481a-8ecc-ad87ef9b6b0c", "additionalChargeInfo": { "additionalCharge": "1.00" } }, { "modifierId": "869315e7-f1c8-428b-aff0-68bf2d7af067", "additionalChargeInfo": { "additionalCharge": "1.50" } }, { "modifierId": "b719995f-fed6-469d-9330-4b9ea9662edf", "additionalChargeInfo": { "additionalCharge": "2.00" } } ], "rule": { "mandatory": false, "minSelections": 0, "maxSelections": null } }, { "id": "1c1ca051-b460-4064-b7a2-5f9df47f2d3c", "revision": "1", "createdDate": "2023-12-03T21:23:33.861Z", "updatedDate": "2023-12-03T21:23:33.861Z", "name": "Sauces", "modifiers": [ { "modifierId": "ef7dc1ed-06df-481a-8ecc-ad87ef9b6b0c", "additionalChargeInfo": { "additionalCharge": "0.00" } }, { "modifierId": "869315e7-f1c8-428b-aff0-68bf2d7af067", "additionalChargeInfo": { "additionalCharge": "0.00" } }, { "modifierId": "b719995f-fed6-469d-9330-4b9ea9662edf", "additionalChargeInfo": { "additionalCharge": "2.00" } } ], "rule": { "mandatory": true, "minSelections": 1, "maxSelections": 1 } } ], "pagingMetadata": { "count": 3, "cursors": {}, "hasNext": false } }
Errors

This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.

Did this help?

POST

Create Modifier Group


Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Note: The Item Modifier Groups API only works with the Wix Restaurants Menus (New) app. Make sure you downloaded this app from Wix App Market.

Creates a modifier group.

To create multiple modifier groups at once, use Bulk Create Modifiers.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Restaurants - all permissions
Learn more about app permissions.
Endpoint
POST
https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups

Body Params
modifierGroupModifierGroupRequired

Modifier group details.

Response Object
modifierGroupModifierGroup

Modifier group.

Create Modifier Group Example 1
Request
cURL
Title: Create Modifier Group
Response
JSON
curl -X POST https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups \ -H 'Authorization: <AUTH>' \ --data-binary '{ "modifierGroup": { "name": "Topping", "modifiers": [ { "id": "481135f7-1392-4a2e-ac6b-12fb0ef398b7", "additionalChargeInfo": {"additionalCharge": "2.50"} }, { "id": "68eddbbf-da8b-4b24-ac74-a5f6b38b6de6", "additionalChargeInfo": {"additionalCharge": "0.00"} } ], "rule": { "mandatory": false, "minSelections": 0, "maxSelections": null } } }'
Errors

This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.

Event TriggersThis method triggers the following events:
Did this help?

GET

Get Modifier Group


Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Note: The Item Modifier Groups API only works with the Wix Restaurants Menus (New) app. Make sure you downloaded this app from Wix App Market.

Retrieves a modifier group by the ID.

Permissions
Manage Bookings Services and Settings
Manage Events
Manage Portfolio
Access Verticals by Automations
Set Up Automations
Manage Restaurants - all permissions
Learn more about app permissions.
Endpoint
GET
https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups/{modifierGroupId}

Path Params
modifierGroupIdstringRequired

Modifier group ID.

Response Object
modifierGroupModifierGroup

Modifier group.

Retrieve a modifier group
Request
cURL
curl -X GET https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups/02042f01-58ab-441c-b5db-55f51c855a62 \ -H 'Authorization: <AUTH>'
Response
JSON
{ "modifierGroup": { "id": "02042f01-58ab-441c-b5db-55f51c855a62", "revision": "1", "createdDate": "2023-12-03T21:23:33.861Z", "updatedDate": "2023-12-03T21:23:33.861Z", "name": "Topping", "modifiers": [ { "id": "481135f7-1392-4a2e-ac6b-12fb0ef398b7", "additionalChargeInfo": { "additionalCharge": "2.50" } }, { "id": "68eddbbf-da8b-4b24-ac74-a5f6b38b6de6", "additionalChargeInfo": { "additionalCharge": "0.00" } } ], "rule": { "mandatory": false, "minSelections": 0, "maxSelections": null } } }
Errors

This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.

Did this help?

DELETE

Delete Modifier Group


Developer Preview

This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.

Note: The Item Modifier Groups API only works with the Wix Restaurants Menus (New) app. Make sure you downloaded this app from Wix App Market.

Deletes a modifier group.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Restaurants - all permissions
Learn more about app permissions.
Endpoint
DELETE
https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups/{modifierGroupId}

Path Params
modifierGroupIdstringRequired

Modifier group ID.

Response Object
Returns an empty object.
Delete Modifier Group Example 1
Request
cURL
Title: Delete a modifier group
Response
JSON
curl -X DELETE https://www.wixapis.com/restaurants/item-modifier-group/v1/modifier-groups/cbbf4358-292c-4e9e-a820-7e75b4551120 \ -H 'Authorization: <AUTH>'
Errors

This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.

Event TriggersThis method triggers the following events:
Did this help?