Skip to main content
Bravado will ship typed client libraries for TypeScript and Python covering the Trade, Copytrade, and Data APIs. The SDKs are generated from the OpenAPI spec, so every endpoint documented on this site is available as a typed method.
The official Bravado SDKs are in development. This page and its sub-pages describe the planned surface. If you need typed access today, generate a client from the OpenAPI spec (see below) or use the REST endpoints directly.

Languages

TypeScript

Node.js and modern browsers. Full type coverage of requests and responses.

Python

Sync and async clients. Pydantic-typed request and response models.

Design principles

Both SDKs share the same design:
  • 1:1 endpoint coverage. Every REST endpoint has a method with the same name.
  • Strong types on numeric fields. Prices, sizes, and PnL values are exposed as Decimal (Python) and string in TypeScript with a helper to convert to arbitrary-precision math. Numbers are never returned as floats. See Numeric conventions.
  • Automatic idempotency. Every mutating method accepts an optional idempotency_key. If omitted, the SDK generates one and passes it through. Retries reuse the key automatically. See Idempotency.
  • Retry with backoff. Built-in exponential backoff with jitter on 429 and 5xx responses. Retry-After headers are honored.
  • Configurable base URL. Point at production, staging, or a local mock.

Generating a client today

Until the official SDKs ship, you can generate a client from the OpenAPI spec using the generator of your choice. Once the spec is available, standard generators work: