Three lines

Uber

Developers

Ingest Courier Live Location

POSThttps://api.uber.com/v1/eats/byoc/restaurants/orders/event/location

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.

This endpoint handles the ingestion of live location of the courier for BYOC partner.

Authorization

OAuth 2.0 Bearer token with the eats.byoc.position scope. For more information, see Authentication.

Request Body Parameters
Name Required Type Description
orderworkflow_uuid Yes String Unique identifier of Uber’s order
restaurant_uuid Yes String Unique identifier for restaurant
is_batched_order No Boolean Flat to determine if the order is batched?
location_events Yes Array[Location_Event] Array of location_event
Request Body Parameters - Location Event
Name Required Type Description
eta_in_minutes No Number Estimated delivery time in minutes
position_event Yes Position_Event Object of Position Event
Request Body Parameters - Position Event
Name Required Type Description
point Yes Point Point Object
time Yes Number Time in epochMillis
horizontal_accuracy No Number An industry-standard quantity which relates the latitude and longitude estimate with an ideal circular probability distribution, asserting one-sigma (68%) confidence that the real horizontal position lies within so many meters of the estimate. In meters
vertical_accuracy No Number An industry-standard quantity that relates the altitude estimate with an ideal probability distribution, asserting one-sigma (68%) confidence that the real altitude lies within so many meters of the estimate. In meters
course No Number The momentary direction of travel of the sensing device
speed No Number The momentary speed of the sensing device in meters per second
Request Body Parameters - Point
Name Required Type Description
latitude Yes Number Industry Standard GPS latitude
longitude Yes Number Industry Standard GPS longitude
altitude No Number Industry Standard GPS altitude
Request Example
{
  "location_request": {
    "order_workflow_uuid": "96057115-4fb3-474a-bbeb-dd65b7405a80",
    "restaurant_uuid": "e561d370-08af-4457-82f1-f316b52bd803",
    "is_batched_order": false,
    "location_events": [
      {
        "position_event": {
          "point": {
            "latitude": -10.1125,
            "longitude": -12
          },
          "time": {
            "epochMillis": 1657643612000
          }
        }
      }
    ]
  }
}
Response Example
{
  "statusCode": 200,
  "body": {
    "message": "success"
  }
}

Endpoint Specific Errors

Standard API Errors are defined here

Http Status Code Code Message
400 bad_request The message body could not be deserialized or is malformed in some way.
401 unauthorized No authentication provided or Invalid OAuth 2.0 credentials provided or The developer does not have the required scope
403 forbidden The user attempts to trigger a notification on an entity they don’t manage
404 not_found The specified event trigger could not be found
429 rate_limited Exceeded rate limit
500 internal_server_error We have experienced a problem
503 service_unavailable Service unavailable

Uber

Developers
© 2023 Uber Technologies Inc.