Get Guest Trip Estimates
POSThttps://api.uber.com/v1/guests/trips/estimates
¶ Use case
Use this endpoint to get an estimated fare for a trip and to identify which products are available between a given trip origin and destination.
¶ Authorization
OAuth 2.0 Bearer token with the guests.trips
scope.
¶ Request
¶ Example Request
curl -X POST \
-H "authorization: Bearer <access_token>" \
-H 'content-type: application/json' \
-d '{
"pickup":{
"latitude":40.7484,
"longitude":-73.9857
},
"dropoff":{
"latitude":40.750568,
"longitude":-73.993519
}
}' \
'https://api.uber.com/v1/guests/trips/estimates'
Header name | Description |
---|---|
x-uber-organizationuuid |
An U4B organization UUID under which you need to obtain estimate information. |
x-uber-sandbox-runuuid |
Run UUID of the run you created using create run endpoint in sandbox. Used when fetching estimate against a given sandbox run ID. [Required for sandbox estimate API calls] |
Accept-Language |
Affects the language of the value for product.short_description field. If translation for product description are needed in the response of this call, please add the header Accept-Language and specify the value (for example, to translate to French, use “FR” as the value for this header) Defaults to ‘en’. |
¶ Request body parameters
Field | Type | Description |
---|---|---|
pickup.latitude |
float |
Latitude of the starting location of the trip (required). |
pickup.longitude |
float |
Longitude of the starting location of the trip (required). |
dropoff.latitude |
float |
Latitude of the end location of the trip (required). |
dropoff.longitude |
float |
Longitude of the end location of the trip (required). |
scheduling.pickup_time |
int |
The timestamp (in milliseconds) the request is scheduled for (optional). |
scheduling.dropoff_time |
int |
The timestamp (in milliseconds) the request is scheduled for (optional). |
deferred_ride_options.pickup_day |
string |
This is used for a flexible trip type. The pickup day (YYYY-MM-DD) the request is set up for (optional). |
If both scheduling.pickup_time
and deferred_ride_options.pickup_day
are blank, the estimate will be for an on-demand ride.
Scheduling requires one of the two fields: pickup_time
or dropoff_time
.
Use scheduling.pickup_time
to get an estimate for a trip at that specified time.
Use scheduling.dropoff_time
to get an estimate for a trip at that specified time based on a predicted pickup_time
.
Use deferred_ride_options.pickup_day
to get an estimate for a trip where the user picks the ride time on a set day.
¶ Response
¶ Example response with fare
{
"etas_unavailable": false,
"fares_unavailable": false,
"product_estimates": [
{
"estimate_info": {
"fare": {
"currency_code": "USD",
"display": "$11.96",
"expires_at": 1558147984,
"fare_breakdown": [
{
"name": "Base Fare",
"type": "base_fare",
"value": 11.96
}
],
"fare_id": "6e642142-27b8-49df-82e0-3d4a8633e79d",
"value": 11.96
},
"fare_id": "6e642142-27b8-49df-82e0-3d4a8633e79d",
"pickup_estimate": 4,
"trip": {
"distance_estimate": 0.44,
"distance_unit": "mile",
"duration_estimate": 927,
"travel_distance_estimate": 0.45
}
},
"product": {
"advance_booking_type" : "SCHEDULED",
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_x_bg.png",
"capacity": 4,
"description": "Affordable rides, all to yourself",
"display_name": "UberX",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_x_fg.png",
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"product_group": "uberx",
"product_id": "b8e5c464-5de2-4539-a35a-986d6e58f186",
"scheduling_enabled": true,
"shared": false,
"short_description": "UberX",
"upfront_fare_enabled": true,
"vehicle_view_id": 39,
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"fulfillment_indicator": "GREEN"
},
{
"estimate_info": {
"fare": {
"currency_code": "USD",
"display": "$11.96",
"expires_at": 1558147984,
"fare_breakdown": [
{
"name": "Base Fare",
"type": "base_fare",
"value": 11.96
}
],
"fare_id": "c143d9ab-57c5-4d35-981f-7a356a2f22e9",
"value": 11.96
},
"fare_id": "c143d9ab-57c5-4d35-981f-7a356a2f22e9",
"pickup_estimate": 8,
"pricing_explanation": "Fares are higher due to increased demand",
"trip": {
"distance_estimate": 0.44,
"distance_unit": "mile",
"duration_estimate": 1178,
"travel_distance_estimate": 0.45
}
},
"product": {
"advance_booking_type" : "SCHEDULED",
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_wav_bg.png",
"capacity": 4,
"description": "Wheelchair-accessible rides",
"display_name": "WAV",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_wav_fg.png",
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"product_group": "uberx",
"product_id": "3bca1cd3-df15-49d8-bd4f-93e014fc26ff",
"scheduling_enabled": true,
"shared": false,
"short_description": "WAV",
"upfront_fare_enabled": true,
"vehicle_view_id": 10000936,
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"fulfillment_indicator": "YELLOW"
},
{
"estimate_info": {
"fare": {
"currency_code": "USD",
"display": "$28.00",
"expires_at": 1574718553,
"fare_breakdown": [
{
"name": "Base Fare",
"type": "base_fare",
"value": 28
}
],
"fare_id": "bbdce077-4088-449e-a898-a34df5c293c4",
"value": 28
},
"fare_id": "bbdce077-4088-449e-a898-a34df5c293c4",
"no_cars_available": true,
"trip": {
"distance_estimate": 0.44,
"distance_unit": "mile",
"duration_estimate": 1126,
"travel_distance_estimate": 0.45
}
},
"product": {
"advance_booking_type" : "RESERVE",
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_blackCar_bg.png",
"capacity": 4,
"description": "Premium rides in luxury cars",
"display_name": "Black",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_blackCar_fg.png",
"parent_product_type_id": "f1faedb7-5825-484f-b236-24e2cd95ec23",
"product_group": "uberblack",
"product_id": "0e9d8dd3-ffec-4c2b-9714-537e6174bb88",
"scheduling_enabled": true,
"shared": false,
"short_description": "Black",
"upfront_fare_enabled": true,
"vehicle_view_id": 4,
"reserve_info": {
"enabled": true,
"scheduled_threshold_minutes": 120,
"free_cancellation_threshold_minutes": 60,
"free_cancellation_threshold_minutes": 60,
"valid_until_timestamp": 1574718553,
},
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"fulfillment_indicator": "GREEN"
},
{
"estimate_info": {
"fare_id": "f9f5d23e-3148-4632-8f61-727f654a265e",
"fare": {
"fare_id": "f9f5d23e-3148-4632-8f61-727f654a265e",
"value": 135.32,
"currency_code": "USD",
"display": "$135.32",
"expires_at": 1698073761,
"fare_breakdown": [
{
"type": "base_fare",
"value": 135.32,
"name": "Base Fare"
}
],
"hourly": {
"tiers": [
{
"amount": 135.32,
"time_in_mins": 120,
"distance": 30,
"distance_unit": "mile",
"formatted_time_and_distance_package": "2 hrs/30 miles"
},
{
"amount": 195.32,
"time_in_mins": 180,
"distance": 45,
"distance_unit": "mile",
"formatted_time_and_distance_package": "3 hrs/45 miles"
},
{
"amount": 255.32,
"time_in_mins": 240,
"distance": 60,
"distance_unit": "mile",
"formatted_time_and_distance_package": "4 hrs/60 miles"
}
],
"overage_rates": {
"overage_rate_per_temporal_unit": 1.4,
"overage_rate_per_distance_unit": 3.55,
"temporal_unit": "TEMPORAL_UNIT_MINUTE",
"distance_unit": "mile",
"pricing_explainer": "Extra time will be charged to you at $1.40 per minute. Extra distance will be charged to you at $3.55 per mi."
}
}
},
"trip": {
"distance_unit": "mile",
"distance_estimate": 2.71,
"duration_estimate": 0,
"travel_distance_estimate": 2.71
}
},
"product": {
"product_id": "aad1febe-9780-4b91-a92f-8f7c58d5cf54",
"display_name": "Black Hourly",
"description": "Luxury rides by the hour with professional drivers",
"short_description": "Black Hourly",
"product_group": "",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/haloProductImages/v1.1/Black_v1.png",
"upfront_fare_enabled": true,
"shared": false,
"capacity": 4,
"scheduling_enabled": true,
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/haloProductImageBackgrounds/imageBackground@3x_v0.png",
"vehicle_view_id": 20035361,
"parent_product_type_id": "5354dad7-2f82-405b-b99a-9ff8acd70223",
"reserve_info": {
"enabled": true,
"scheduled_threshold_minutes": 120,
"free_cancellation_threshold_minutes": 60,
"add_ons": [],
"valid_until_timestamp": 1698097557000
},
"advance_booking_type": "RESERVE",
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
}
},
...
]
}
¶ Example response with estimate
{
"fares_unavailable": false,
"etas_unavailable": false,
"product_estimates": [
{
"product": {
"advance_booking_type" : "SCHEDULED",
"product_id": "a1111c8c-c720-46c3-8534-2fcdd730040d",
"display_name": "UberX",
"description": "Affordable rides, all to yourself",
"short_description": "UberX",
"product_group": "uberx",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_x_fg.png",
"upfront_fare_enabled": false,
"shared": false,
"capacity": 4,
"scheduling_enabled": true,
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_x_bg.png",
"vehicle_view_id": 8,
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"estimate_info": {
"fare_id": "bf61912a-9a2d-48c1-8889-c464839e6eb0",
"pickup_estimate": 3,
"estimate": {
"display": "$13-16",
"low_estimate": 13,
"high_estimate": 16,
"currency_code": "USD"
},
"trip": {
"distance_unit": "mile",
"distance_estimate": 1.41,
"duration_estimate": 1140,
"travel_distance_estimate": 1.45
}
},
"fulfillment_indicator": "GREEN"
},
{
"product": {
"advance_booking_type" : "SCHEDULED",
"product_id": "57c0ff4e-1493-4ef9-a4df-6b961525cf92",
"display_name": "Select",
"description": "Premium rides in high-end cars",
"short_description": "Select",
"product_group": "uberx",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_select_fg.png",
"upfront_fare_enabled": false,
"shared": false,
"capacity": 4,
"scheduling_enabled": true,
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_select_bg.png",
"vehicle_view_id": 2930,
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"estimate_info": {
"fare_id": "e78b9da0-a59a-4d6e-92ee-f5bb241e5482",
"no_cars_available": true,
"estimate": {
"display": "$24-29",
"low_estimate": 24,
"high_estimate": 29,
"currency_code": "USD"
},
"trip": {
"distance_unit": "mile",
"distance_estimate": 1.41,
"duration_estimate": 1209,
"travel_distance_estimate": 1.45
}
},
"fulfillment_indicator": "GREEN"
},
{
"product": {
"advance_booking_type" : "SCHEDULED",
"product_id": "3bb777a3-7072-4d8c-a8b6-0cd9dcfe650e",
"display_name": "Comfort",
"description": "Newer cars with extra legroom",
"short_description": "Comfort",
"product_group": "",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/Taxi_Italy_fg.png",
"upfront_fare_enabled": false,
"shared": false,
"capacity": 4,
"scheduling_enabled": true,
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_bag_x_bg.png",
"vehicle_view_id": 20017885,
"parent_product_type_id": "4cefa6a0-efb5-41dc-a8bb-870f2c3212ba",
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"estimate_info": {
"fare_id": "3320de14-43c9-4410-8418-8f82c23e2a90",
"no_cars_available": true,
"estimate": {
"display": "$17-21",
"low_estimate": 17,
"high_estimate": 21,
"currency_code": "USD"
},
"trip": {
"distance_unit": "mile",
"distance_estimate": 1.41,
"duration_estimate": 1209,
"travel_distance_estimate": 1.45
}
},
"fulfillment_indicator": "GREEN"
},
{
"product": {
"advance_booking_type" : "FLEXIBLE",
"product_id": "ff5ed8fe-6585-4803-be13-3ca541235de3",
"display_name": "Assist",
"description": "Special assistance from certified drivers",
"short_description": "Assist",
"product_group": "uberx",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_assist_fg.png",
"upfront_fare_enabled": false,
"shared": false,
"capacity": 4,
"scheduling_enabled": false,
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_assist_bg.png",
"vehicle_view_id": 4651,
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"estimate_info": {
"fare_id": "5f2ec6f2-4d24-442b-a2f9-481fd270e07b",
"no_cars_available": true,
"estimate": {
"display": "$13-16",
"low_estimate": 13,
"high_estimate": 16,
"currency_code": "USD"
},
"trip": {
"distance_unit": "mile",
"distance_estimate": 1.41,
"duration_estimate": 1209,
"travel_distance_estimate": 1.45
}
},
"fulfillment_indicator": "GREEN"
},
{
"product": {
"advance_booking_type" : "FLEXIBLE",
"product_id": "2832a1f5-cfc0-48bb-ab76-7ea7a62060e7",
"display_name": "WAV",
"description": "Wheelchair accessible rides",
"short_description": "WAV",
"product_group": "uberx",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_wav_fg.png",
"upfront_fare_enabled": false,
"shared": false,
"capacity": 4,
"scheduling_enabled": false,
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_wav_bg.png",
"vehicle_view_id": 1930,
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"estimate_info": {
"fare_id": "d460ec4a-3410-49c7-a0b9-a315b64e581f",
"no_cars_available": true,
"estimate": {
"display": "$13-16",
"low_estimate": 13,
"high_estimate": 16,
"currency_code": "USD"
},
"trip": {
"distance_unit": "mile",
"distance_estimate": 1.41,
"duration_estimate": 1209,
"travel_distance_estimate": 1.45
}
},
"fulfillment_indicator": "GREEN"
},
{
"product": {
"advance_booking_type" : "SCHEDULED",
"product_id": "821415d8-3bd5-4e27-9604-194e4359a449",
"display_name": "UberXL",
"description": "Affordable rides for groups up to 6",
"short_description": "UberXL",
"product_group": "uberxl",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_xl_fg.png",
"upfront_fare_enabled": false,
"shared": false,
"capacity": 6,
"scheduling_enabled": true,
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_xl_bg.png",
"vehicle_view_id": 942,
"parent_product_type_id": "60b76812-c307-4076-b83b-fcb36e75da07",
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"estimate_info": {
"fare_id": "4897f607-f233-4987-94ec-4884ad20fff2",
"pickup_estimate": 5,
"estimate": {
"display": "$16-19",
"low_estimate": 16,
"high_estimate": 19,
"currency_code": "USD"
},
"trip": {
"distance_unit": "mile",
"distance_estimate": 1.41,
"duration_estimate": 1215,
"travel_distance_estimate": 1.45
}
},
"fulfillment_indicator": "GREEN"
},
...
]
}
¶ Response body parameters
Field | Type | Description |
---|---|---|
product_estimates |
array |
Array of product estimate objects containing all available products and corresponding fare estimates for the given route. |
product_estimates[].product |
object |
Root object containing product information. See below for more details. |
product_estimates[].estimate_info |
object |
Root object containing fare estimate information. See below for more details. |
product_estimates[].fulfillment_indicator |
string |
GREEN/YELLOW/RED color classification which indicates the confidence of a trip being fulfilled. |
etas_unavailable |
bool |
True for scheduled/flexible rides or when etas are temporarily unavailable. Means estimate_info.pickup_estimate will be null for every product. |
fares_unavailable |
bool |
True when fare estimates are temporarily unavailable. See When fare estimates are unavailable below section for more information. |
¶ product
parameters
Field | Type | Description |
---|---|---|
advance_booking_type |
string |
Specifies whether a trip is scheduled, reserve, or flexible. For on-demand requests, advance_booking_type will not be returned. |
product_id |
string |
Unique string identifier representing a specific product for a given latitude & longitude. For example, uberX in San Francisco will have a different product_id than uberX in Los Angeles |
vehicle_view_id |
int |
Unique int identifier representing a specific product for a given latitude & longitude. For example, uberX in San Francisco will have a different vehicle_view_id than uberX in Los Angeles |
display_name |
string |
Display name of product |
description |
string |
Description of product |
short_description |
string |
An abbreviated description of the product. Localized according to Accept-Language header. |
product_group |
string |
The product group that this product belongs to. One of rideshare, uberx, uberxl, uberblack, suv, or taxi. |
parent_product_type_id |
string |
ID of the product_group . Can be used in place of product_group to identify the top-level product type. |
image |
string |
Image URL representing the product |
background_image |
string |
URL for a background image that image can be overlaid on top of. |
scheduling_enabled |
bool |
Specifies whether this product supports scheduling rides in advance. |
upfront_fare_enabled |
bool |
Specifies whether this product allows upfront fares. |
shared |
bool |
Specifies whether this product allows for the pickup and dropoff of other riders during the trip. |
capacity |
int |
Capacity of product. For example, 4 people. |
reserve_info.enabled |
bool |
Specifies whether this product supports Uber Reserve. |
reserve_info.scheduled_threshold_minutes |
int |
Specifies the number of minutes in advance the trip must be booked to be an Uber Reserve trip. |
reserve_info.free_cancellation_threshold_minutes |
int |
Specifies the number of minutes before the scheduled pickup time an Uber Reserve trip must be cancelled for no cancellation fee. |
reserve_info.valid_until_timestamp |
int |
Specifies the timestamp until which if trip is requested, the ride would be considered a reserve ride. After the timestamp, it will be a scheduled ride. |
cancellation.min_cancellation_fee |
float |
Specifies the minimum cancellation fee to be charged after the grace period ends for rider-initiated cancels. |
cancellation.cancellation_grace_period_threshold_sec |
int |
Specifies the number of seconds in which the rider is able to cancel, after a driver accepts the trip, without incurring any fee. |
¶ estimate_info
parameters
Field | Type | Description |
---|---|---|
fare_id |
string |
Unique identifier of the fare estimate. Can be null if fares are unavailable (see section below). |
pickup_estimate |
int |
The estimated time of vehicle arrival in minutes. null if ETAs are currently unavailable or when no_cars_available is true. |
no_cars_available |
bool |
True when there are currently no cars available at the pickup location. |
pricing_explanation |
string |
Explanation of the price. Will only be included when surge pricing is above a certain level. |
trip |
object |
Object with information about the trip. |
trip.distance_unit |
string |
Unit of distance used in the distance_estimate . Possible values are mile and km . |
trip.distance_estimate |
float |
Total is estimated based on haversine distance of the trip, either in mile or km as specified in the distance_unit . |
trip.duration_estimate |
int |
Total estimated time of the trip, in seconds. Can be null if fares are unavailable (see section below). |
trip.travel_distance_estimate |
float |
This is estimated based on turn-by-turn distance that may be covered during a trip, either in miles or km as specified in the distance_unit . |
trip.pickup_time |
int |
The timestamp (in milliseconds) the request is scheduled for (required one pickup_time or dropoff_time for scheduled rides and Reserve pickups). |
trip.dropoff_time |
int |
The timestamp (in milliseconds) the request is scheduled for (required one pickup_time or dropoff_time for scheduled rides and Reserve pickups). |
fare |
object |
Root fare object containing the details of an upfront fare. Either a fare or estimate can be present, so you should be able to handle either. The fare object will be populated in geographies where upfront fares are enabled. Can be null if fares_unavailable in the root object is set to true . See below for more details. |
estimate |
object |
Root estimate object containing the details of a fare estimate. Either a fare or estimate can be present, so you should be able to handle either. The estimate object will be populated in geographies where upfront fares are disabled. Can be null if fares_unavailable in the root object is set to true . See below for more details. |
¶ estimate
parameters
Field | Type | Description |
---|---|---|
currency_code |
string |
ISO 4217 currency code. |
display |
string |
The price estimate range displayable to the end user. |
low_estimate |
int |
Lower bound of the total estimate. |
high_estimate |
int |
Upper bound of the total estimate. |
surge_multiplier |
float |
The surge pricing multiplier (if greater than 1.0) used to calculate the increased price of a trip request. |
¶ fare
parameters
Field | Type | Description |
---|---|---|
fare_id |
string |
A unique upfront fare identifier. |
value |
float |
The total upfront fare value. |
currency_code |
string |
ISO 4217 currency code used for all prices in this fare object. |
display |
string |
Formatted string of estimate in local currency. |
expires_at |
int |
The fare_id expiration as a Unix timestamp. |
fare_breakdown |
array |
A breakdown of the different parts of an upfront fare. |
fare_breakdown[].type |
string |
The type of breakdown this object represents. Can be base_fare or promotion. |
fare_breakdown[].value |
string |
The value of this portion of the fare. This can be a negative or positive value. |
fare_breakdown[].name |
string |
A string that can be displayed to the user representing this portion of the fare. |
fare_breakdown[].notice |
string |
A notice to show to the trip when a fare is higher than normal due to increased demand. |
hourly |
object |
This is used for hourly products. Root object containing hourly fare information. |
hourly.tiers |
array |
This is used for hourly products. Array of hourly.tier objects containing pricing, time and distance information. See below for more details. |
hourly.overage_rates |
object |
This is used for hourly products. Object containing hourly overage rates. See below for more details. |
¶ hourly.tier
parameters
Field | Type | Description |
---|---|---|
amount |
float |
Price of this hourly tier. |
time_in_mins |
int |
Included time, in minutes, of this hourly tier. |
distance |
int |
Included distance of this hourly tier. |
distance_unit |
string |
Unit of distance used in distance . Possible values are mile and km . |
formatted_time_and_distance_package |
string |
Formatted string of hourly tier time and distance information, such as “2 hrs/30 miles”. |
¶ hourly.overage_rates
parameters
Field | Type | Description |
---|---|---|
overage_rate_per_temporal_unit |
float |
Overage rate per temporal unit. |
temporal_unit |
string |
Temporal unit used in overage_rate_per_temporal_unit . Possible values are TEMPORAL_UNIT_{YEAR,MONTH,WEEK,DAY,HOUR,MINUTE,SECOND,MILLISECOND,MICROSECOND,NANOSECOND} . |
overage_rate_per_distance_unit |
float |
Overage rate per distance unit. |
distance_unit |
string |
Distance unit used in overage_rate_per_distance_unit . Possible values are mile and km . |
pricing_explainer |
string |
Formatted string of overage rates, such as “Extra time will be charged to you at $1.40 per minute. Extra distance will be charged to you at $3.55 per mi.”. |
¶ When fare estimates are unavailable
In rare scenarios, it’s possible for fare estimates to be temporarily unavailable.
This results in a 200 response with fares_unavailable
set to true
and within each product_estimate.estimate_info
, the fare
and estimate
will both be null (as well as the fare_id
and trip.duration_estimate
).
Hence, developers should handle this case to avoid any potential nil dereferences or unexpected errors.
Rides can still be requested without any of those fields, as the fare_id
is not strictly required.
Sometimes, a product will have "no_cars_available": true
. This means that this product type is not currently available for the given coordinates and a trip may not be fulfilled.
{
"etas_unavailable": false,
"fares_unavailable": true,
"product_estimates": [
{
"estimate_info": {
"estimate": null,
"fare": null,
"fare_id": null,
"pickup_estimate": 4,
"trip": {
"distance_estimate": 1.122,
"distance_unit": "mile",
"duration_estimate": null,
"travel_distance_estimate": 1.14
}
},
"product": {
"advance_booking_type" : "SCHEDULED",
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_x_bg.png",
"capacity": 4,
"description": "Affordable rides, all to yourself",
"display_name": "UberX",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_x_fg.png",
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"product_group": "uberx",
"product_id": "b8e5c464-5de2-4539-a35a-986d6e58f186",
"scheduling_enabled": true,
"shared": false,
"short_description": "UberX",
"upfront_fare_enabled": true,
"vehicle_view_id": 39,
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"fulfillment_indicator": "GREEN"
},
{
"estimate_info": {
"estimate": null,
"fare": null,
"fare_id": null,
"pickup_estimate": 4,
"trip": {
"distance_estimate": 1.122,
"distance_unit": "mile",
"duration_estimate": null,
"travel_distance_estimate": 1.14
}
},
"product": {
"advance_booking_type" : "SCHEDULED",
"background_image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImageBackgrounds/package_wav_bg.png",
"capacity": 4,
"description": "Wheelchair-accessible rides",
"display_name": "WAV",
"image": "https://d1a3f4spazzrp4.cloudfront.net/car-types/productImages/package_wav_fg.png",
"parent_product_type_id": "6a8e56b8-914e-4b48-a387-e6ad21d9c00c",
"product_group": "uberx",
"product_id": "3bca1cd3-df15-49d8-bd4f-93e014fc26ff",
"scheduling_enabled": true,
"shared": false,
"short_description": "WAV",
"upfront_fare_enabled": true,
"vehicle_view_id": 10000936,
"cancellation": {
"min_cancellation_fee": 5,
"cancellation_grace_period_threshold_sec": 120
}
},
"fulfillment_indicator": "GREEN"
},
...
}
¶ Terms and Conditions for Hourly Trips
- Tolls and surcharges: Any additional charges will be billed after your trip is complete.
- Non-refundable fare: You’ll be charged for the full cost of the ride, even if the trip is shorter than what you originally requested.