Skip to main content

Download OpenAPI Spec

Complete OpenAPI 3.0 specification. Import into Postman, generate client SDKs, or browse the schema directly.

API Structure

Is divided into three main sections:

Market Data

Public, Read-onlyReal-time and historical market data. No authentication required.

Account Queries

Public, UnsignedQuery account state without signatures.

Trading

Authenticated, SignedState-mutating operations requiring Ed25519 signatures. Use bulk-keychain (Node, browser, Python, Rust) for signing.

Base URLs

Mainnet and testnet are separate networks. Signed transactions must use the matching signature domain.

Quick Start

1

Query Market Data

No authentication required - start exploring immediately.
2

Check Your Account

Query your positions and orders (no signature needed).
3

Get Testnet Funds

Request testnet funds through the testnet endpoint. The faucet is not available on mainnet. See Request Faucet for details.
4

Place Your First Order

Sign and submit a transaction with the official bulk-keychain library (Node, browser, Python, Rust) or see Transaction Signing for the protocol details.

Field Notation

Bulk uses compact field names to minimize bandwidth :

Order Types

Timestamp Format

All timestamps are in milliseconds since Unix epoch (int64) for both HTTP and WebSocket APIs.
Nonce for Signed Transactions: Use nanoseconds for the nonce field: BigInt(Date.now()) * 1_000_000n

Resources

API Changelog

View API updates and version history

bulk-keychain

Official signing library for Node.js, browser, Python, and Rust