Skip to content

Menu API (1.0)

This API allows apps to retrieve menus for a given location

Overview
Languages
Servers
Production
https://api.tyro.com/connect

Request latest menu

Request

This endpoint starts the process of generating the latest published menu

Security
JWT
Path
tcLocationIdstringrequired

Tyro Connect Location Id for which menu should be retrieved

Headers
Authorizationstringrequired
Default Bearer {$$.env.access_token}
curl -i -X GET \
  'https://api.tyro.com/connect/menus/{tcLocationId}/app/sync' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

No body content

Fetch Latest Menu

Request

Used to fetch the latest published menu

Security
JWT
Path
tcLocationIdstringrequired

Tyro Connect Location Id for which menu should be retrieved

Headers
Authorizationstringrequired
Default Bearer {$$.env.access_token}
curl -i -X GET \
  'https://api.tyro.com/connect/menus/{tcLocationId}/app/published' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

The published menu response

Bodyapplication/json
itemsArray of objects(item)required

A list of objects that describe the different items available within the menu

items[].​idstringuniquerequired

ID for the item that is unique to the menu.

Example: "0f448ac1-862a-4c7b-bdb4-a3b7cdbf6149"
items[].​namestringrequired

Customer facing name or short description of the item.

Example: "Beef Burger"
items[].​skustringrequired

SKU or PLU for the item in the POS.

Example: "BFB-001"
items[].​descriptionstring

Customer facing, long description of the item.

Example: "two patty beef burgers"
items[].​containsAlcoholbooleanrequired

Indicates whether or not the item contains alcohol

items[].​energyobject

Energy content of each standard item (expressed in kilojoules 'kJ')

items[].​priceobjectrequired

The amount and currency of the item

items[].​price.​amountnumberrequired
items[].​price.​currencystringrequired
items[].​imagesobject

A URL pointing to an image, which could either be a default image or an override image. To avoid any issues with copyright over images, we have provided the ability to supply a default image as well as the ability to override the default image with a different image for a specific partner. Set the 'default' field to be the URL used by default for all Apps. Provide additional fields for Apps where the default URL should be overridden. For example providing a URL for a field named "doordash" will mean that menus published to DoorDash will use that URL instead of the 'default' URL. The complete list of Apps that you can nominate are:

  • DOORDASH
  • HUBSTER
  • GOOGLE
Example: {"DEFAULT":"https://validdefaulturl-to-image.com/image.png","DOORDASH":"https://validurl-to-image.com/image.png"}
items[].​optionsArray of objects

A list of objects describing modifier categories that are available for this item

sectionsArray of objects(section)required

A list of objects that describe the different sections of the menu

sections[].​idstringuniquerequired

A unique id that represents the section within the menu

sections[].​namestringrequired

A name describing the section

sections[].​descriptionstring
sections[].​availableTimeSlotsArray of stringsrequired

A list of ids referencing the timeslots that this section will be available within

sections[].​itemsArray of stringsrequired

A list of ids referencing the menu items that are available within this section - only parent items will be referenced here, not items that are used as modifiers

sections[].​modifierGroupsArray of strings

A list of ids that reference the modifierGroups that are used in this section. Any item contained within the 'option' of another item will exist within a modifierGroup that belongs to the same section of that parent item

timeSlotsArray of objects(time-slot)required

A list of objects that describe the time periods that different sections of the menu can be made available within

timeSlots[].​idstringuniquerequired

A unique id that represents the time slot within the menu

timeSlots[].​descriptionstring
timeSlots[].​startTimestringrequired

A valid time formatted value

timeSlots[].​endTimestringrequired

A valid time formatted value

timeSlots[].​daysArray of strings>= 1required
Items Enum"Monday""Tuesday""Wednesday""Thursday""Friday""Saturday""Sunday"
modifierGroupsArray of objects(modifier-group)required

A list of objects that describe the different modifier groups that will be available to the merchant within the portal to apply to different sections

modifierGroups[].​idstringrequired

A unique id that represents the modifier group within the menu

modifierGroups[].​descriptionstring
modifierGroups[].​namestringrequired

The name of the modifier group will correspond to the name of any item.options that reference items contained within the modifier group

modifierGroups[].​minnumber

This number represents the minimum number of items within this modifier group that a user will have to select if they are applied to an item

Default 0
modifierGroups[].​maxnumber>= 1
modifierGroups[].​itemsArray of objects>= 1required

A list of objects whose id's reference items that belong to this modifierGroup

modifierGroups[].​items[].​idstringuniquerequired
modifierGroups[].​items[].​minnumber>= 0required

The minimum quantity of this modifier that needs to be selected by the customer

modifierGroups[].​items[].​maxnumber>= 1required

The maximum quantity of this modifier that can be selected by the customer

Response
application/json
{ "items": [ {} ], "sections": [ {} ], "timeSlots": [ {} ], "modifierGroups": [ {} ] }