Errors
Errors can and will occur for a variety of reasons.
This guide is meant to help application developers determine the appropriate workflow for a given error.
¶ HTTP response statuses
While calling our API, it is possible to receive errors associated with the following HTTP status codes.
| HTTP Status | Meaning |
|---|---|
400 |
This status code is typically associated with a “bad request” when something is inherently wrong or malformed. The error message will typically provide details on the specific issue. |
401 |
Often this is a result of attempting a forbidden action. The request is likely properly formed, but our system is refusing to take action. |
404 |
The requested places could not be found. |
409 |
This indicates that there is a conflict with a resource, or that resource has expired. |
429 |
Rate limit exceeded. |
500 |
This generically indicates that a hard server error occurred during the request. |
¶ Error format
Error responses are consistently formed as a JSON body.
The keys may include:
| Field | Type | Description |
|---|---|---|
code |
string |
Uber specific machine-readable code for error such as bad_request_error. |
message |
string |
Human-readable message that provides more context and possible instructions on how to resolve the error. |
shouldRetry |
bool |
Boolean value that identifies whether an application should retry the call. |