Info API (Beta)
POST /info serves every read-only query — market metadata, balances, positions, orders, the book, fees, and history. Reads need no signature. The body's type field selects the query, and each type has its own page with a Try it panel. The TypeScript SDK wraps them in typed calls.
{ "type": "l2Book", "coin": "4" }coin is the instrument's numeric id as a string — the index from perpMeta, or an Outcome market's instrument_id from outcomeMeta. Outcome reads that take instrumentId / instrumentIds want it as an integer. The node matches type case-insensitively, but send the camelCase spelling shown here. Every type goes to the same host, even those answered by the API service rather than the node — see Networks.
Request types
Shared
Reads that are not tied to one instrument type. clearinghouseState picks the sub-account with accountType (perp or outcome), and getMaxPositions takes a perp or an Outcome instrument. The history types are served from an index and can briefly lag the latest block; most are paged — see Paged history.
| Type | Use it to |
|---|---|
l2Book | Take a one-off order-book snapshot for one instrument. |
clearinghouseState | Load the Positions panel: every position plus the margin summary, for the perp or outcome sub-account. |
frontendOpenOrders | Render the Open Orders tab, including trigger and TP/SL fields. Outcome orders appear only with exchangeId: 1 or "all". |
userFees | Show the maker / taker rate a user currently pays. |
feeTierInfo | Render the static fee-tier ladder (volume thresholds → rates). |
feeTierRates | Show effective rates for an account type, including the user’s tier and referral discount. |
builderState | Read a builder’s on-chain claimable balance and fee eligibility before claimBuilderRewards. |
referral | Render the Referral page: referrer, rewards, referrer stage. |
agentOwner | Check whether an agent key is still authorized, and for which account. |
approvedAgents | List the agent keys an account has approved (e.g. an API-key management page). |
getLatestBlockNumber | Check node liveness or read the current block height. |
epochHistory | Map block numbers to consensus epochs. |
candleSnapshot | Seed a candlestick chart; then keep the last bar live with candle. |
historicalOrders | Render the Order History tab (limit / market orders). |
historicalTpslOrders | Render the TP/SL tab of Order History. |
historicalTriggerOrders | Render the Trigger tab of Order History. |
twapHistory | Render the TWAP tab of Order History (finished or cancelled TWAPs). |
orderDetails | Open an order-detail view from one orderId. |
userFills | Render Trade History / reconcile executions (maker or taker fills). |
userTwapSliceFills | List the individual child fills of a user’s TWAP orders. |
userFundings | Render Funding History (collected and paid settlements). |
userNonFundingLedgerUpdates | Render the Deposits & Withdrawals / transfer ledger. |
getMaxPositions | Compute the max buy / sell size at a price the user typed into the order ticket. |
Account
Pre-trade checks, so you know what to prompt for before a user signs anything. These two
are the one exception to the endpoint above: they are sent to POST /account-status, not
/info, on the same host. Both answer 400 for a malformed user.
They are pre-checks, not authorities — POST /exchange does the binding
validation and still rejects an order from an account that cannot trade.
| Type | Use it to |
|---|---|
accountStatus | Decide whether to prompt for a deposit or an access code before a user signs anything. |
accessCodeStatus | Decide whether to show an access-code prompt before approveAgent. |
Deposits & withdrawals
Served by the API service, not the node.
| Type | Use it to |
|---|---|
settings | Look up the Bridge2 contract address before a native Arbitrum USDC deposit. |
depositWithPermit | Deposit Arbitrum USDC for a user who holds no ETH for gas (signs an EIP-2612 permit). |
Builder
Analytics for a builder's own dashboard. Pass the builder wallet address as user.
| Type | Use it to |
|---|---|
builderMeOverview | Headline numbers for a builder dashboard: users, volume, fees, rank. |
builderMeDailySeries | Plot a builder’s daily fees or user count. |
builderMeShare | Break a builder’s fees down by trading user or by instrument. |
builderMeEarned | List a builder’s earnings, one row per order. |
builderMeClaimed | List a builder’s past reward claims. |
builderMeClaimable | Show claimable vs. lifetime earned / claimed on a builder dashboard. |
Perpetuals
Market metadata, positions, margin, and the order types only perpetuals accept (triggers and TP/SL).
| Type | Use it to |
|---|---|
perpMeta | Resolve perp symbols to the numeric coin id every other call takes. Cache at startup. |
perpMetaDetail | Show margin tiers and max leverage for one base asset (BTC, not BTC-USDC). |
activeAssetCtx | Show a perp market header: mark, oracle, funding rate, open interest. |
perpClearinghouseState | Show token balances held in the perp sub-account. |
activeAssetData | Fill the order ticket: the user’s leverage, max tradeable size, and available margin on one instrument. |
triggerOrders | List a user’s pending trigger (stop) orders, with any TP/SL children. |
tpslOrders | List all of a user’s pending take-profit / stop-loss orders. |
positionTpslOrders | Show the TP/SL pairs bound to one open position (position row → its TP/SL). |
tpslOrderPosition | Resolve a TP/SL child order id back to the position it protects (order → position). |
getLiquidationPrices | Preview the estimated liquidation price before the user submits an order. |
Outcome
Event and market metadata, market context, positions, and open orders, plus the timeline and price-window data of recurring crypto markets. The metadata, context, timeline, price, and probability types are API-service aggregations. The book and the balance come from the shared l2Book and clearinghouseState.
| Type | Use it to |
|---|---|
outcomeMeta | Build the Outcome discovery feed or an event page: events, nested markets, live prices, settlement state. |
outcomeNavTags | Build the Outcome category bar and tag menu; each node carries the category / tag to pass to outcomeMeta. |
outcomeAssetCtxs | Fill 24h volume / price-change columns in an Outcome market grid. |
outcomeSeriesTimeline | Render the past / current / upcoming window strip of a recurring crypto Outcome series. |
cryptoPrice | Show the price-to-beat and settlement price of a crypto Outcome window. |
cryptoPriceHistory | Seed the underlying-asset price chart on a crypto Outcome market. |
outcomeProbability | Backfill a YES-probability chart; append live closes from candle. |
outcomePositions | List a user’s Outcome positions with event title and outcome names attached. |
outcomeFrontendOpenOrders | Render resting Outcome orders with event title, slug, and outcome names attached. |
Paged history
The order, fill, funding, and ledger history types share one paging scheme. candleSnapshot, orderDetails, and userTwapSliceFills do not use it.
| Response | data is { data, hasMore, total? }: the rows, whether more exist, and the total when known |
| Paging | offset / limit — default 300, max 2000, newest first |
| Filters | user, startTimeMs / endTimeMs, accountType, contract (all / active), coin, side |
| Side | Buy / Sell on the request; responses use B / A |