Grubhub Marketplace API

website·Indexed 43 days ago

https://developer.grubhub.com/

Developer documentation for the Grubhub Marketplace API, including guides for order management, merchant schedules, onboarding, and reporting. Features technical resources for integration testing, webhook configuration, menu examples, and a Postman collection for Grubhub Connect.

Tokens
49.9K
Snippets
153
Records
346
Agent score
59%

What's inside Grubhub

  1. Overview of Grubhub Connect Webhooks

    Grubhub Connect uses webhooks to push real-time data to integration systems, eliminating the need for constant polling. The following webhooks are available:

    • Delivery Refund Update: Provides updates on refund request acceptance or rejection, including decision details and the refund amount.
    • Delivery Status Updates: Provides updates on delivery events such as driver assignment, order cancellation, courier location updates, and ETA updates, as well as courier details (name and delivery method).
  2. Overview of the Rapid Onboarding process

    Rapid Onboarding is an optional alternative for partners unable to implement the full Onboarding API. It allows partners to partially self-serve the onboarding process, reducing manual coordination with Grubhub. To fully implement Rapid Onboarding, a partner must integrate the following set of webhooks and API endpoints:

    • Merchant Configuration (Webhook)
    • Menu Ingestion (API endpoint)
    • Menu Ingestion Status (Webhook)
    • IntegrationLive (API endpoint)
    • IntegrationLive Status (API endpoint)
    • Set Merchant Status (API endpoint)
    • Merchant Status (Webhook)
  3. Overview of available Grubhub webhooks

    Grubhub provides webhooks to push real-time data to POS integrations, eliminating the need for constant polling. The available webhooks are categorized by functional area:

    • Onboarding:
      • Merchant Configuration: Notifies when a merchant is ready for integration.
      • Merchant Activation: Notifies when merchant activation is complete (requires Onboarding API support).
    • Menu:
      • Menu Ingestion Status: Updates on job success, failure, or validation issues during ingestion.
      • Menu Schedule Overrides (86ing): Updates on menu item availability changes.
    • Orders:
      • Order Status Updates: Notifications for order submission or status changes.
      • Order Adjustments: Notifications for adjustments to confirmed orders (triggered by subscription to the CONFIRMED event).
      • Order Validation: Real-time feedback from the restaurant's POS for diners.
    • Delivery:
      • Grubhub Delivery Updates: Updates on driver status, assignments, or location changes.
      • Just-In-Time (JIT) Preparation: Notifications when a driver is within a specific prep distance (for quick-service restaurants).
    • Merchants:
      • Merchant Configuration: Notifies when a merchant is ready for integration.
      • Merchant Availability: Notifications when locations are paused.
    • Reporting:
      • Report Status Webhook: Notifications on the status of reports requested via the Reporting API.
  4. Overview of the Grubhub Merchant Onboarding API

    The Merchant Onboarding API allows Partners to provide self-service integration onboarding to merchants. By using OAuth for secure authentication, it eliminates manual intervention from Grubhub or the Partner, reducing the onboarding timeline from 7-10 days to approximately 5-10 minutes. Key capabilities include merchant discovery, eligibility validation, automated activation, and deactivation management.
  5. Overview of Grubhub Partner APIs

    Grubhub's Partner APIs allow Point-of-Sale (POS) systems, third-party online ordering providers, or merchants to manage menus, catalogs, merchant data, schedules, and orders. To implement a full online ordering integration, the following build components are required: Menus, Merchant Data, Merchant Schedules, Orders, and Webhooks.
  6. Overview of Scheduled Team Orders (STO)

    Scheduled Team Orders (STO) are a specific order type for corporate clients. These orders are typically sent to restaurant partners with a 2-hour lead time (e.g., sent at 10am for a 12pm fulfillment). STOs use the same menu as standard Grubhub customers but require the integration partner to handle multiple diner names within a single order payload so that restaurants can label items individually for each diner.
  7. Overview of available Grubhub webhooks

    Grubhub provides webhooks to push real-time data to POS integrations, eliminating the need for constant polling. Available webhooks are categorized by functional area:

    • Onboarding: Merchant Configuration (notifications when a merchant can be integrated) and Merchant Activation (notifications when activation completes). Note: Requires Onboarding API support.
    • Menu: Menu Ingestion Status (success, failure, or validation issues) and Menu Schedule Overrides/86ing (updates on item availability).
    • Orders: Order Status Updates (submission or status changes), Order Adjustments (triggered by subscription to the CONFIRMED event), and Order Validation (real-time POS feedback for diners).
    • Delivery: Grubhub Delivery Updates (driver status/location) and Just-In-Time (JIT) Preparation (notifications when driver is within prep distance).
    • Merchants: Merchant Configuration and Merchant Availability (notifications when locations are paused).
    • Reporting: Report Status Webhook (status of reports requested via the Reporting API).
  8. Grubhub Reporting API Overview and Constraints

    The Grubhub Reporting API allows merchants to programmatically retrieve data on orders, transactions, and deposits. All requests must use HMAC authorization. The API is only available for merchant IDs that are mapped, onboarded, and authorized in the system.

    Key Constraints:

    • Data Range: Each report can include a maximum of one year of data.
    • Report Types: Only one report type can be requested at a time.
    • Merchant ID Limit: A maximum of 25,000 merchant IDs can be included per report request. If more are needed, create separate requests.
    • Data Latency: Data may have a one to two day lag time.
    • Processing Time: Most reports are available within minutes, but larger datasets may take longer to generate.
  9. Understand the Just-In-Time (JIT) order workflow

    Just-In-Time (JIT) is a workflow that delays sending a restaurant order to the POS/KDS until the assigned driver is within a predetermined time window (based on traffic data) from the restaurant. This prevents food from sitting too long or being prepared before a driver is nearby, reducing friction between couriers and staff and maintaining food quality.