Menu

Information about a menu configured for this restaurant.

availability
object

An Availability object with information about the days and times this menu is available. If the menu is available 24 hours per day, 7 days per week, this Availability object contains a single value, alwaysAvailable, that is set to TRUE. If the menu is not available 24 hours per day, 7 days per week, the alwaysAvailable value is set to FALSE and the object will also contain a schedule value that provides detailed information about the specific days and times this menu is available.

Important The orders API does not validate against the availability settings of a menu, meaning it is possible to submit an order for an item on a menu when it is not currently available. For this reason, it is particularly important that you check a menu’s availability value before placing an order from it.

description
string

An optional short description for this menu.

guid
string

A unique identifier for this menu, assigned by the Toast POS system.

highResImage
string or null

The URL to a high resolution image that has been uploaded for this menu. The image file must be in JPG, PNG, or SVG format. The highResImage value is only available if the Toast Kiosk module has been enabled for this restaurant. This value is null if no high resolution image has been specified.

image
string or null (Image)

The URL to an image that has been uploaded for this menu entity. This value is null if no image has been specified.

masterId
integer <int64> (MasterId)

This value is deprecated. Instead of masterId, use multiLocationId.

An identifier that is used to identify and consolidate menu entities that are versions of each other.

Array of objects (MenuGroup) >= 0 items

An array of the MenuGroup objects contained in this menu.

multiLocationId
string (MultiLocationId)

An identifier that is used to identify and consolidate menu entities that are versions of each other.

multiLocationId replaces masterId. multiLocationId and masterId always have the same value.

Menu entities can be versioned. Those versions can be assigned to specific restaurant locations, or groups of locations, in a management group. For example, you could have two versions of a burger, one for a Boston location and another for a New York City location. Versioned menu entities share the majority of, but not all of, their data. For example, the Boston version is called the Minuteman Burger and has pickles, while the New York City version is called the Empire Burger and does not.

You use the multiLocationId to identify menu entities that are versions of each other. To continue the example above, the Minuteman Burger in the JSON returned for the Boston location has the same multilocationId as the Empire Burger in the JSON returned for the New York City location. These matching multlocationId values indicate that the two items are related versions of the same item. In Toast reports, this allows a restaurant to track sales of the burger across both locations.

The Toast POS system ensures that once a multilocationId value is assigned to a set of versions within a management group, that multiLocationId is not used for any other version sets in the same management group. It does not guarantee, however, that the multiLocationId is not used by another management group to identify a set of versions within it.

See Toast identifiers in the Toast Developer Guide for more information on the multiLocationId and its relationship to other Toast identifiers.

See Enterprise module overview in the Toast Platform Guide for more information on the enterprise module and versioning.

name
string

A descriptive name for this menu, for example, "Food" or "Drinks".

posButtonColorDark
string (PosButtonColorDark)

The color of the menu entity's button on the Toast POS app, when the app is running in dark mode.

When an employee configures a POS button's color, they select a color pairing that consists of two colors, one for light mode and one for dark mode. posButtonColorDark contains the HEX code for the dark mode color.

posButtonColorDark defaults to #1a1c23, the HEX code when the WHITE color pairing is chosen.

The following list shows the possible HEX codes for posButtonColorDark, with the associated color pairing in parentheses.

  • #1a1c23 (WHITE)
  • #7e635d (TERRACOTTA_1)
  • #74504D (TERRACOTTA_2)
  • #722e25 (TERRACOTTA_3)
  • #561408 (TERRACOTTA_4)
  • #8f5f3d (ORANGE_1)
  • #7e4116 (ORANGE_2)
  • #803500 (ORANGE_3)
  • #682d03 (ORANGE_4)
  • #7e6b44 (YELLOW_1)
  • #7b5f27 (YELLOW_2)
  • #7c5000 (YELLOW_3)
  • #633d09 (YELLOW_4)
  • #657552 (GRASS_1)
  • #556e34 (GRASS_2)
  • #37570a (GRASS_3)
  • #113a00 (GRASS_4)
  • #637486 (SKY_1)
  • #4d6074 (SKY_2)
  • #2a456b (SKY_3)
  • #213554 (SKY_4)
  • #78668a (LAVENDER_1)
  • #5e4776 (LAVENDER_2)
  • #402960 (LAVENDER_3)
  • #25174f (LAVENDER_4)
  • #6c6c6c (GRAY_1)
  • #5f5f5f (GRAY_2)
  • #474747 (GRAY_3)
  • #404040 (GRAY_4)
posButtonColorLight
string (PosButtonColorLight)

The color of the menu entity's button on the Toast POS app, when the app is running in light mode.

When an employee configures a POS button's color, they select a color pairing that consists of two colors, one for light mode and one for dark mode. posButtonColorLight contains the HEX code for the light mode color.

posButtonColorLight defaults to #f7f7f7, the HEX code when the WHITE color pairing is chosen.

The following list shows the possible HEX codes for posButtonColorLight, with the associated color pairing in parentheses.

  • #f7f7f7 (WHITE)
  • #ffe6e9 (TERRACOTTA_1)
  • #efa49f (TERRACOTTA_2)
  • #f07166 (TERRACOTTA_3)
  • #e45a4e (TERRACOTTA_4)
  • #fbd9b6 (ORANGE_1)
  • #f7be6e (ORANGE_2)
  • #f98c1f (ORANGE_3)
  • #e56f1a (ORANGE_4)
  • #fbf5b6 (YELLOW_1)
  • #fed850 (YELLOW_2)
  • #e9b10c (YELLOW_3)
  • #c78605 (YELLOW_4)
  • #e8f7d4 (GRASS_1)
  • #afe26c (GRASS_2)
  • #71b314 (GRASS_3)
  • #32a206 (GRASS_4)
  • #e3f0fb (SKY_1)
  • #9fc5f0 (SKY_2)
  • #77a5e4 (SKY_3)
  • #558edd (SKY_4)
  • #f1e3fd (LAVENDER_1)
  • #dab2f7 (LAVENDER_2)
  • #b26ee2 (LAVENDER_3)
  • #a270db (LAVENDER_4)
  • #d0d0d0 (GRAY_1)
  • #c3c3c3 (GRAY_2)
  • #b1b1b1 (GRAY_3)
  • #989898 (GRAY_4)
posName
string (PosName)

The button label name that appears for this menu entity in the Toast POS app. posName contains an empty string if a posName has not been defined for the menu entity and the name value is used for the button label instead.

visibility
Array of strings (Visibility)

An array of strings that indicate where this menu entity is visible:

  • POS: The menu entity is visible in the Toast POS app.

  • KIOSK: The menu entity is visible on a Toast kiosk.

  • TOAST_ONLINE_ORDERING: The menu entity is visible in the Toast online ordering site for this restaurant.

  • ORDERING_PARTNERS: The restaurants wants this menu entity to be visible on online ordering sites that integrate with the Toast POS system using the orders API.

  • GRUBHUB: Deprecated. The menu entity is included during a menu sync to Grubhub and will be visible on the Grubhub online ordering service after a menu sync has completed. Note: Conceptually, the Grubhub configuration option that was associated with the GRUBHUB string in this array has been replaced by the more general Online orders: Ordering partners configuration option and restaurants that used the Grubhub option have been automatically migrated to the new Online orders: Ordering partners option. This means that any menu entity that had the Grubhub option set to Yes will now have the Online orders: Ordering partners option enabled and the ORDERING_PARTNERS enum will be present in the visibility array for it. To support backwards compatibility, the visibility array for these entities will also continue to contain the GRUBHUB enum for a short period of time. See Menu Visibility Enhancements (Rolled Out) for more information.

The visibility array is empty if the menu entity is not configured to be visible for any of the use cases listed above.

Items Enum: "POS" "KIOSK" "GRUBHUB" "TOAST_ONLINE_ORDERING" "ORDERING_PARTNERS"
{
  • "name": "string",
  • "guid": "string",
  • "multiLocationId": "string",
  • "masterId": 0,
  • "description": "string",
  • "posName": "string",
  • "posButtonColorLight": "string",
  • "posButtonColorDark": "string",
  • "highResImage": "string",
  • "image": "string",
  • "visibility": [
    ],
  • "availability": { },
  • "menuGroups": [
    ]
}