Three lines

Uber

Developers

Getting Started

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.

Prerequisites

Before starting the integration development process ensure you have:

  • Created your application through our Developer Dashboard. Don’t have an application yet? Create a developer account via sign in the top right.
  • Returned a completed NDA and API licensing agreement through our Developer Dashboard.
  • Reached out to your Uber Eats partner manager (if applicable) about POS integration and received confirmation to begin development.
  • Reviewed the Quality & Performance Standards.

Please complete any missing steps before proceeding. If you need assistance, reach out to your Uber Eats partner manager or raise your request directly through our -Integration Tech Support Request Form.

Process Overview

Read through and follow the steps on each page in the “Guides” section. Consult the reference pages for each API accordingly. If you have any questions, utilize the technical support channels shared with you by your Uber Eats partner manager or raise your request directly through our Integration Tech Support Form

An integration process, from test account setup to launch of the first integrated stores, typically ranges from 4-8 weeks. Please try to adhere to the recommended timelines. However, it is ultimately up to your team to define the pace of development.

Here’s a high-level overview of our full end-to-end integration process and timelines for a general Eats Marketplace integration.

I. Set-up (Week 0 - 1)

You must create your developer application and sign an API agreement before kicking off with this step as you will need your application’s Client ID to proceed.

  1. Complete developer application setup - refer to our Authentication section for scopes enablement.

    a. Set up your webhook URL

  2. Review each of the guides for each of the APIs to implement, including Webhook Guides.

In this step, you will also need to raise two requests through our Integration Tech Support Form by selecting the ‘Test Stores & Production Validation’ category:

  1. Request ‘Add scopes to test application’
  2. Second request to ‘Set up test stores’

Please note we have an estimated resolution time of 24-48 hours for test stores and scope requests support requests.

II. Integration Configuration Guide (Week 1 - 2)

  1. Perform successfully end-to-end testing on updating integration details by following our Integration Configuration Guide

III. Store Integration Guide (Week 2 - 3)

  1. Perform successfully end-to-end testing on updating and configuring store integration details from our Store Integration Guide

IV. Menu Integration (Week 3 - 4)

  1. Create and update your test store Menu via the Menu API endpoints
  2. Update Menu Items via the Menu API endpoints Follow details on our Menu Integration Guide

V. Order Integration (Week 4-6)

  1. Perform end-to-end testing by placing orders on your test store and testing each of the available endpoints, detailed on our Order Integration Guide

VI. Going Live Guide (Week 6 - 8)

  1. Once you’ve finalized integration and performed end-to-end testing for each of the APIs and made sure you’ve followed the steps on our Going Live Guide, you may proceed to request a Production Validation Session with Uber, through our Tech Support Form

    a. Keep track of your validated endpoints for your testing session

    b. Set up your production developer account

  2. Provision and launch 1 to 10 pilot stores

  3. Once validated your production flows, you may roll out additional stores.

We highly recommend keeping track of our new API features and updates to Uber Eats APIs on our API Change Log to be able to upgrade and develop any new API features that could benefit partners’ operation.

Tools & Resources

The resources listed below will be essential for the development process. These tools are referenced throughout the integration guides but can be used effectively in many additional capacities not explicitly mentioned. If you are unsure which tool to use, refer back to this table.

Resource What is it? Use Cases
Developer Dashboard Uber portal for developers Access application credentials, set webhook url, and enable scopes for your developer application.
Uber Eats Orders Uber Eats in-store Merchant order management app (web browser version) Check test store status, view store/holiday hours, view test orders.
ubereats.com Consumer-facing Uber Eats site View test store menu on web and place test orders.
Uber Eats mobile app Consumer-facing Uber Eats app View test store menu on mobile and place test orders. (Needed for specific endpoints testing)
Test Accounts

To request test store accounts you must first have your Test Application ID created through our developer dashboard.

Submit a request for the creation of test stores. These must be generated by Uber Eats and you will not be able to begin development without these test accounts. Make sure to save your login credentials for easy access.

Test stores behave very similarly to production stores, but are only visible using the login credentials provided to you. No payment information is required and no couriers are dispatched for orders placed in test stores.

Completing Test Application Setup

Once you’ve created your developer account navigate to Developer Dashboard and click on the name of your test application. You will be directed to your application details Setup page.

In the Authentication section, set the Redirect URI to http://localhost and add the URL to your company’s privacy policy.

Now, on the menu on the left select Access Token and then select Client Credentials on the top right of the dashboard. You should see six scopes allow-listed for your app. Check the box next to all six scopes (eats.order, eats.pos_provisioning, eats.report, eats.store, eats.store.orders.read, and eats.store.status.write). Continue scrolling down to the bottom of the page and click SAVE.

Not seeing these scopes available for your app? Submit a technical support request and share the client_id for your test application to request access.

Familiarizing Yourself with Developer Dashboard

The Developer Dashboard contains important information about your app. Throughout the development process we will be referencing information from the dashboard, so take some time to bookmark and familiarize yourself with it now.

Access your client credentials and manage scopes in the Auth section. Use the Settings tab to view and update your webhook url (this will be explained more in depth later in the Webhooks guide). The Debug Console provides a dashboard to view errors in case Uber is unable to send a notification to your webhook url.

Note that only one application should be created per developer account. If you discover the need for additional test applications later in the development cycle, you can submit a technical support request.

Testing with Postman

Postman is an API development environment that simplifies running and testing API requests. With Postman, you won’t have to copy and paste data from one endpoint to another.

Run In Postman

To set up Postman:

  1. Download and install Postman.
  2. Uber’s Eats Marketplace APIs are available at https://www.postman.com/uber.
  3. Select the Uber Eats Marketplace APIs environment, and configure the following environment variables:
  • uber_api_client_id and uber_api_client_secret from your test application
  • eats_store_id (location UUID) from your test store
  • base_url appropriate sandbox vs production.
Next Steps

Review the Authentication guide for information on scopes and accessing the Eats APIs.

Uber

Developers
© 2023 Uber Technologies Inc.