Olympus

API Reference

Complete REST API reference for Olympus, auto-generated from the OpenAPI specification.

Interactive API documentation for all Olympus endpoints. Each page includes request/response schemas, parameter details, and example payloads.

Endpoints

Health

Trading

  • Place OrderPOST /api/v1/order — Submit one or more orders (market or limit)
  • Cancel OrderDELETE /api/v1/order — Cancel one or more orders

Market Data

  • DepthGET /api/v1/depth?symbol=AAPL-USD&limit=20 — Order book depth
  • Exchange InfoGET /api/v1/exchangeInfo — All instruments with filters
  • Book TickerGET /api/v1/ticker/bookTicker?symbol=AAPL-USD — Best bid/ask

Bridge

  • DepositPOST /api/v1/bridge/deposit — Lock core balance and mint ERC-20 on EVM (EIP-712 signed)

Account

  • BalanceGET /api/v1/balance — Account balances (session token required in production)
  • Open OrdersGET /api/v1/openOrders — Resting orders (session token required in production)

History

  • My TradesGET /api/v1/myTrades?symbol=ETH-USD — Account trade history (session token required)
  • All OrdersGET /api/v1/allOrders — Account order + bridge + gift history (session token required). symbol parameter is optional — omit to get all events.
  • KlinesGET /api/v1/klines?symbol=ETH-USD&interval=1h — Kline/candlestick data (public)

WebSocket

  • WebSocketGET /ws — Real-time market data and private account streaming (full docs)

    Public channels: depthUpdate, trade, kline, allMids. Private channel: accountUpdate (balances, open orders, order events — requires authentication). See the WebSocket API page for protocol details.

Admin

  • Credit AccountPOST /api/v1/admin/accounts/{address}/credit — Credit assets to an account
  • Force UnlockPOST /api/v1/admin/accounts/{address}/force-unlock — Unlock stuck bridged funds
  • Distribute OLPPOST /api/v1/admin/distribute-olp — Send native OLP from bridge signer to any address
  • Add InstrumentPOST /api/v1/admin/instruments — Register a new trading pair
  • Halt InstrumentPOST /api/v1/admin/instruments/{id}/halt
  • Resume InstrumentPOST /api/v1/admin/instruments/{id}/resume
  • Clear BookPOST /api/v1/admin/instruments/{id}/clear-book — Cancel all resting orders
  • Pause BridgePOST /api/v1/admin/bridge/pause
  • Resume BridgePOST /api/v1/admin/bridge/resume

Authentication

Trading endpoints (/api/v1/order, /api/v1/bridge/deposit) use EIP-712 typed data signatures. In dev mode, the X-Account-Address header can bypass signature verification.

Account & history endpoints (/api/v1/balance, /api/v1/openOrders, /api/v1/allOrders, /api/v1/myTrades) require X-Account-Address + X-Session-Token headers in production. The session token is obtained via WebSocket authentication (challenge-response with EIP-191 personal_sign) and persisted in localStorage for 24 hours. In dev mode, only X-Account-Address is required.

WebSocket auth uses a challenge-response flow. On first authentication, new wallets receive a welcome faucet (10,000 USD + 1 OLP). See the WebSocket API for details.

Admin endpoints (/api/v1/admin/*) require the X-Admin-Key header.

Base URL

http://localhost:3000

On this page