Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

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.

TypeUse it to
l2BookTake a one-off order-book snapshot for one instrument.
clearinghouseStateLoad the Positions panel: every position plus the margin summary, for the perp or outcome sub-account.
frontendOpenOrdersRender the Open Orders tab, including trigger and TP/SL fields. Outcome orders appear only with exchangeId: 1 or "all".
userFeesShow the maker / taker rate a user currently pays.
feeTierInfoRender the static fee-tier ladder (volume thresholds → rates).
feeTierRatesShow effective rates for an account type, including the user’s tier and referral discount.
builderStateRead a builder’s on-chain claimable balance and fee eligibility before claimBuilderRewards.
referralRender the Referral page: referrer, rewards, referrer stage.
agentOwnerCheck whether an agent key is still authorized, and for which account.
approvedAgentsList the agent keys an account has approved (e.g. an API-key management page).
getLatestBlockNumberCheck node liveness or read the current block height.
epochHistoryMap block numbers to consensus epochs.
candleSnapshotSeed a candlestick chart; then keep the last bar live with candle.
historicalOrdersRender the Order History tab (limit / market orders).
historicalTpslOrdersRender the TP/SL tab of Order History.
historicalTriggerOrdersRender the Trigger tab of Order History.
twapHistoryRender the TWAP tab of Order History (finished or cancelled TWAPs).
orderDetailsOpen an order-detail view from one orderId.
userFillsRender Trade History / reconcile executions (maker or taker fills).
userTwapSliceFillsList the individual child fills of a user’s TWAP orders.
userFundingsRender Funding History (collected and paid settlements).
userNonFundingLedgerUpdatesRender the Deposits & Withdrawals / transfer ledger.
getMaxPositionsCompute 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.

TypeUse it to
accountStatusDecide whether to prompt for a deposit or an access code before a user signs anything.
accessCodeStatusDecide whether to show an access-code prompt before approveAgent.

Deposits & withdrawals

Served by the API service, not the node.

TypeUse it to
settingsLook up the Bridge2 contract address before a native Arbitrum USDC deposit.
depositWithPermitDeposit 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.

TypeUse it to
builderMeOverviewHeadline numbers for a builder dashboard: users, volume, fees, rank.
builderMeDailySeriesPlot a builder’s daily fees or user count.
builderMeShareBreak a builder’s fees down by trading user or by instrument.
builderMeEarnedList a builder’s earnings, one row per order.
builderMeClaimedList a builder’s past reward claims.
builderMeClaimableShow 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).

TypeUse it to
perpMetaResolve perp symbols to the numeric coin id every other call takes. Cache at startup.
perpMetaDetailShow margin tiers and max leverage for one base asset (BTC, not BTC-USDC).
activeAssetCtxShow a perp market header: mark, oracle, funding rate, open interest.
perpClearinghouseStateShow token balances held in the perp sub-account.
activeAssetDataFill the order ticket: the user’s leverage, max tradeable size, and available margin on one instrument.
triggerOrdersList a user’s pending trigger (stop) orders, with any TP/SL children.
tpslOrdersList all of a user’s pending take-profit / stop-loss orders.
positionTpslOrdersShow the TP/SL pairs bound to one open position (position row → its TP/SL).
tpslOrderPositionResolve a TP/SL child order id back to the position it protects (order → position).
getLiquidationPricesPreview 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.

TypeUse it to
outcomeMetaBuild the Outcome discovery feed or an event page: events, nested markets, live prices, settlement state.
outcomeNavTagsBuild the Outcome category bar and tag menu; each node carries the category / tag to pass to outcomeMeta.
outcomeAssetCtxsFill 24h volume / price-change columns in an Outcome market grid.
outcomeSeriesTimelineRender the past / current / upcoming window strip of a recurring crypto Outcome series.
cryptoPriceShow the price-to-beat and settlement price of a crypto Outcome window.
cryptoPriceHistorySeed the underlying-asset price chart on a crypto Outcome market.
outcomeProbabilityBackfill a YES-probability chart; append live closes from candle.
outcomePositionsList a user’s Outcome positions with event title and outcome names attached.
outcomeFrontendOpenOrdersRender 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.

Responsedata is { data, hasMore, total? }: the rows, whether more exist, and the total when known
Pagingoffset / limit — default 300, max 2000, newest first
Filtersuser, startTimeMs / endTimeMs, accountType, contract (all / active), coin, side
SideBuy / Sell on the request; responses use B / A