Overview

Provider Enablement / Provider Enablement

Overview

We work with brands, point of sale companies and online ordering providers to power an ordering experience in Grubhub Marketplace and within restaurant-branded iOS, Android and web experiences. This documentation describes the normalized endpoints required for ingesting menu content and facilitating order transmission.

We also provide endpoints which will facilitate the development of your integration. See “Developer Endpoints” below.

Expected Endpoints:

We expect all integrations to include Location Index, Show Menu, Create Order Validation and Create Order Submission endpoints. Integrations to POS or online ordering providers may include an optional Merchants Index endpoint.

  1. Merchants Index: Return a list of all merchants (and their unique identifiers) available. Required endpoint.

  2. Locations Index: Return all locations belonging to that brand. Required endpoint.

  3. Get Location: Return an individual location belonging to that brand. Optional endpoint.

  4. Get Menu Status by Location: Return a list of merchants and locations with menu and Marketplace menu ingestion data. Optional endpoint.

  5. Show Menu: For a given location, return the menu. Required endpoint.

  6. Get Unavailable Menu Components: For a given menu, return the items and options that are currently unavailable. Optional endpoint.

  7. Create Order Validation: For a given location and menu items, return details about the order including the final amount, amount of tax, and soonest available ready time.

  8. Create Order Submission: For a given location and menu items, submit the order to the merchant and return details about the order including the final amount, amount of tax, and expected ready time.

The Merchant Index, Location Index and Show Menu calls will not be used in real-time. The second two calls be used in real-time, and are expected to be reasonably fast as they impact user experience. For each of these calls, you may return a metadata attribute in your response, which we will store and then return with later requests for that user and the order session.

Developer Endpoints:

To aid in the development of your integration, we have built a set of endpoints that will accept a sample menu, and return a list of validation errors.

  1. Create Menu Validation: Starts a menu validation.

  2. Show Menu Validation: Shows the current stauts of a menu validation, and any errors.