This guide will be removed on April 29, 2022. Please use our new, easier-to-use Toast technical documentation site. All updated content is on the new site.

Menus API Returns Fully Resolved JSON

The Toast platform's menu structure is a hierarchical structure where menu entities can inherit properties from other entities in the hierarchy. For example, menu items may inherit their prices from a parent menu group or modifier options may inherit a price from their underlying item reference.

The menus API returns JSON that is as fully resolved as possible. This means, whenever possible, menu data is resolved down to the menu item or modifier option level. For example, if a menu item inherits its price from a menu group, that price is returned as part of the menu item's JSON data, not as part of the menu group's data.

In some cases, it is not possible to resolve price data down to the menu item or modifier option level because the price depends on some unknown context, for example, the particular size of a menu item when it is ordered or the specific time a menu item is ordered. In these cases, you must calculate prices for the menu items or modifier options using additional pricing data returned by the menus API. See Using PricingRules and PricingStrategy to Calculate Prices for more information.