Base URL
http://api.example.com
Broker Integration Overview
This API enables institutional brokers to integrate with our order book exchange platform.
Architecture
sequenceDiagram
participant Broker
participant Gateway as API Gateway
participant Engine as Order Book Engine
participant MD as Market Data
participant WS as WebSocket Stream
Note over Broker,WS: Authentication (Keyed BLAKE2b)
Note over Broker: Sign request with Keyed BLAKE2b-256<br/>Headers: PRE-ACCESS-KEY, PRE-ACCESS-SIGNATURE, PRE-ACCESS-TIMESTAMP
Note over Broker,WS: Order Management (REST)
Broker->>Gateway: POST /orders (create)<br/>+ Auth headers + Idempotency-Key
Gateway->>Engine: Submit order
Engine-->>Gateway: Order accepted
Gateway-->>Broker: 201 Order created
Broker->>Gateway: PATCH /orders/:id (replace)<br/>+ Auth headers + Idempotency-Key
Gateway->>Engine: Modify order
Engine-->>Gateway: Order modified
Gateway-->>Broker: 201 Order updated
Broker->>Gateway: DELETE /orders/:id (cancel)<br/>+ Auth headers + Idempotency-Key
Gateway->>Engine: Cancel order
Engine-->>Gateway: Order cancelled
Gateway-->>Broker: 201 Order cancelled
Note over Broker,WS: Real-time Streams (WebSocket)
Broker->>WS: Connect /orders stream
WS-->>Broker: Order updates (real-time)
Broker->>WS: Connect /market-data stream
WS-->>Broker: Book snapshots/diffs + Trades
Note over Engine,MD: Internal Flow
Engine->>MD: Publish events to WAL
MD->>WS: Project market data
Communication Patterns
REST API
- Synchronous request/response for order operations
- Idempotent via
Idempotency-Keyheader - Atomic operations with immediate feedback
WebSocket Streams
- Real-time order status updates
- Real-time market data (order book + trades)
- Resumable streams with sequence numbers
- Idempotent delivery (client-side deduplication)
Key Features
- Exactly-once semantics via Write-Ahead Log (NATS JetStream)
- Deterministic processing for reproducibility
- Low latency order execution (p99 < 5ms)
- Market data with monotonic sequence numbers per market
- Keyed BLAKE2b-256 authentication for secure API access
API Specifications
- REST API: See
./private-api-broker-openapi.yaml - WebSocket Streams: See
./private-api-broker-asyncapi.yaml
This is version 1.0.0 of this API documentation. Last update on May 15, 2026.