For the complete documentation index, see llms.txt. This page is also available as Markdown.

Read market data

Read markets, prices, order books, and your own positions over POST /info — no signing required.

Every read is a POST /info call, unauthenticated, dispatched on a top-level type. This guide points you at the query for each task; the full response shapes are in the POST /info reference. Query responses carry query_height and app_hash so you know which committed state you read. /info is rate-limited to 1 request/second per IP — poll within that budget and back off on 429 (see rate limits).

Examples use mainnet; swap in https://api-test.native.org for testnet — see environments.

Don't want to poll? The same market data and account state stream over a WebSocket connection — books, trades, fills, and order updates pushed as they happen. Stream over WebSocket is the walkthrough.

Discover markets

Before you can sign an order you need the market_id and the market's precision.

curl -sS -X POST "$API_URL/info" -H 'content-type: application/json' \
  -d '{"type":"markets"}'
  • marketsmarket_id, price_decimals, base_quantity_decimals, max_price_sig_figs for every pair.

  • assets — asset ids, symbols, balance_decimals.

  • quoteAssets — the per-quote-asset minimum notional an order must clear.

Prices and the book

  • l2Book — aggregated bids/asks for one market (optional depth, default 20).

  • markPrices — mark prices (all, or filtered by asset_ids).

  • oracleStatus — whether oracle marks are fresh.

Your account

Pass your owner address as user (not the API-wallet address).

Next steps

Last updated