Errors

Our reference API uses HTTP response codes to indicate the success or failure of an API request. The client library provides exceptions that wrap these response codes.

  • 2xx indicates success.
  • 4xx indicates an error on the client side. Represented as a BentoClientError.
  • 5xx indicates an error with Databento's servers. Represented as a BentoServerError.

The full list of the response codes and associated causes is as follows:

Code
Message
Cause
200
OK
Successful request.
400
Bad Request
Invalid request. Usually due to a missing, malformed or unsupported parameter.
401
Unauthorized
Invalid username or API key.
403
Forbidden
The API key has insufficient permissions to perform the request.
404
Not Found
A resource is not found, or a requested symbol does not exist.
422
Unprocessable Entity
The request is well formed, but we cannot or will not process the contained instructions.
429
Too Many Requests
API rate limit exceeded.
500
Internal Server Error
Unexpected condition encountered in our system.
503
Service Unavailable
Data gateway is offline or overloaded.
504
Gateway Timeout
Data gateway is available but other parts of our system are offline or overloaded.
API method
1
2
3
4
class databento.BentoError(Exception)
class databento.BentoHttpError(databento.BentoError)
class databento.BentoClientError(databento.BentoHttpError)
class databento.BentoServerError(databento.BentoHttpError)
Example usage
1
2
3
4
5
6
7
8
import databento as db

client = db.Reference("INVALID_API_KEY")

try:
    print(client.security_master.get_last("TEST"))
except db.BentoClientError as e:
    print(e)
Example response
1
2
3
400 auth_invalid_username_in_basic_auth
Invalid username in Basic auth ('INVALID_API_KEY').
documentation: https://databento.com/docs