Three lines

Uber

Developers

Introduction to Eats APIs

Access to These APIs May Require Written Approval From Uber

Uber’s APIs are always under development and as such are subject to changes according to our Versioning & Upgrade policy. As part of Uber’s ongoing privacy improvements, we’ve updated our Developer API program with new scope access policies for third party applications. For further information, please refer to our Getting Started guides.

The Eats APIs enable partners to programmatically manage stores, menus and orders on the Uber Eats platform.

Overview

Use the Store API to onboard; manage; or enumerate merchant store information and temporal store status (pausing; unpausing; and holiday hour overrides). These APIs can also be used to manage app access and integration details on a store level.

The Menu API provides the ability to manage menus as well as regular store hours.

Ingest and manage incoming orders from Uber Eats with the Order API. The API includes webhooks for incoming order notifications and cancellations from Uber Eats. Retrieve, accept, deny, and cancel orders with the Order API endpoints.

Use the Reporting API to request and access standardized reporting. The API includes a notification webhook once a report is completed.

Menu API Reporting API
API Endpoints
  • GET Menu
    Retrieve existing store menu.
  • PUT Menu
    Create, update, delete menu and menu items.
  • POST Update Item
    Update item availability and pricing.
API Endpoint
  • POST Report
    Request reporting.

Webhook Notifications
  • Report Success Webhook
    Notification event for completed report job.
Store Management Order Workflow Management
API Endpoints
  • GET Store Details
    Retrieve store information.
  • GET List All Stores
    Retrieve all stores provisioned to developer.
  • GET/POST Restaurant Status
    Retrieve store availability status and set stores on/offline.
  • GET POS Status
    Check if stores are order-integrated.
  • POST POS Data
    Activate store integration.
  • DELETE POS Data
    Remove store integration.
  • PATCH Update POS Status
    Disable or enable order integration.
  • GET/POST Holiday Hours
    Retrieve and set date-specific store hours.

API Endpoints
  • GET Order
    Retrieve order details.
  • POST Order Acceptance
    Accept order.
  • POST Order Denial
    Deny order.
  • POST Cancel Order
    Cancel accepted orders.
  • GET Active Created Orders
    Retrieve orders awaiting in CREATED state.
  • GET Latest Canceled Orders
    Retrieve orders cancelled within the last 2 hours.
  • PATCH Cart
    Update the order’s cart.

Webhook Notifications
  • New Order Webhook
    Notification event for incoming Eats order.
  • Cancelled Order Webhook
    Notification event for cancelled Eats order.
Point-of-Sale (POS) Integrations

Get the most value out of the APIs by setting them up to synchronize your store menu from your store’s POS system.

Once this is set up, you can inject Eats orders straight to the POS. This eliminates the need for manual and duplicate processes between Eats and the POS, such as marking items as sold out or transposing order details from tablets.

Next steps

Before starting an integration, we first suggest reviewing the following page(s):

  • Versioning & Upgrade Timelines
    To ensure you can accomodate our upgrade schedules and that your integration is built to be resilient to non-breaking changes.
  • Quality & Performance Standards
    To ensure your integration is built in a way that can meet the standards and performance criteria outlined in this document.

Once you are ready, visit our Getting Started page to begin the integration process.

Uber

Developers
© 2023 Uber Technologies Inc.