{"endpoints":[{"description":"Basic health check","method":"GET","path":"/health"},{"description":"Get current server time in nanoseconds","method":"GET","path":"/v1/time"},{"description":"Get fee tier configuration","method":"GET","path":"/v1/feeTiers"},{"description":"Get referral commission rate schedule (per-tier T1, flat T2/T3)","method":"GET","path":"/v1/commissionRates"},{"description":"Get mid prices for all markets (from orderbook snapshots)","method":"GET","path":"/v1/mids"},{"description":"Get live oracle / mark prices for all markets (keyed by marketId)","method":"GET","path":"/v1/prices"},{"description":"Get all markets with details (optional: ?market=BTC-USD)","method":"GET","path":"/v1/markets"},{"description":"Get candles (params: market, timeframe, count)","method":"GET","path":"/v1/candles"},{"description":"Get recent public trades for a market (params: market, count, from, to)","method":"GET","path":"/v1/trades"},{"description":"Get the caller's compliance posture (geo restrictions + address screening)","method":"GET","path":"/v1/compliance"},{"description":"CMC contracts snapshot (B1+B2)","method":"GET","path":"/v1/cmc/contracts"},{"description":"CoinGecko contracts snapshot (B1+B2)","method":"GET","path":"/v1/coingecko/contracts"},{"description":"CoinGecko orderbook snapshot (B3)","method":"GET","path":"/v1/coingecko/orderbook"},{"description":"Perp volume stats (hourly UTC, per market)","method":"GET","path":"/v1/stats/perp/volume/hourly"},{"description":"Perp volume stats (daily UTC, per market)","method":"GET","path":"/v1/stats/perp/volume/daily"},{"description":"Perp fees and revenue stats (hourly UTC)","method":"GET","path":"/v1/stats/perp/fees/hourly"},{"description":"Perp fees and revenue stats (daily UTC)","method":"GET","path":"/v1/stats/perp/fees/daily"},{"description":"Perp open interest stats (daily UTC EOD)","method":"GET","path":"/v1/stats/perp/open-interest/daily"},{"description":"Perp activity stats (daily UTC)","method":"GET","path":"/v1/stats/perp/activity/daily"},{"description":"Get open orders","method":"GET","path":"/v1/openOrders"},{"description":"Get all orders (open, pending, filled, canceled)","method":"GET","path":"/v1/orders"},{"description":"Get fills","method":"GET","path":"/v1/fills"},{"description":"Get funding payment history (params: address, from, to, limit)","method":"GET","path":"/v1/funding"},{"description":"Get historical funding rates (params: market, from, to, limit)","method":"GET","path":"/v1/fundingRates"},{"description":"Get portfolio summary for account","method":"GET","path":"/v1/portfolio"},{"description":"Get current rate-limit pool usage for account","method":"GET","path":"/v1/rateLimit"},{"description":"Get account transfer updates (deposits, withdrawals, transfers)","method":"GET","path":"/v1/accountTransferUpdates"},{"description":"Get positions for account","method":"GET","path":"/v1/positions"},{"description":"Get effective leverage per market for an account","method":"GET","path":"/v1/leverages"},{"description":"Get account info (scoped by ?address=)","method":"GET","path":"/v1/account"},{"description":"List API keys for an account","method":"GET","path":"/v1/apiKeys"},{"description":"Place single order","method":"POST","path":"/v1/placeOrder"},{"description":"Place batch orders (up to 100)","method":"POST","path":"/v1/batchPlaceOrders"},{"description":"Cancel order by ID or clientId","method":"POST","path":"/v1/cancelOrder"},{"description":"Cancel batch orders (up to 100)","method":"POST","path":"/v1/batchCancelOrders"},{"description":"Cancel all open orders for an account","method":"POST","path":"/v1/cancelAllOrders"},{"description":"Set per-(account, market) leverage","method":"POST","path":"/v1/setLeverage"},{"description":"Grant/refresh/revoke ALP membership for the calling account","method":"POST","path":"/v1/alp/membership"},{"description":"Get an ALP's live per-segment capacity (params: address, accountIndex)","method":"GET","path":"/v1/alp/capacity"},{"description":"Get aggregate + per-ALP capacity for a market segment (param: segment)","method":"GET","path":"/v1/alp/segmentCapacity"},{"description":"Modify order quantity","method":"POST","path":"/v1/modifyOrder"},{"description":"Batch modify orders (stub: returns 501 until implemented)","method":"POST","path":"/v1/batchModifyOrders"},{"description":"Create API key for account (creates account if needed)","method":"POST","path":"/v1/createApiKey"},{"description":"Revoke (remove) an API key. Signed with the master wallet private key.","method":"POST","path":"/v1/revokeApiKey"},{"description":"Submit a withdrawal. Signed with the master wallet private key (withdraw-to-self in v0).","method":"POST","path":"/v1/withdraw"},{"description":"Submit an internal transfer between two account indexes of the same wallet. Signed with the master wallet private key.","method":"POST","path":"/v1/transfer"},{"description":"Get account stats (trading fee tier and windowed/lifetime volume \u0026 fees) for an address","method":"GET","path":"/v1/account/stats"},{"description":"Get affiliate info for an address","method":"GET","path":"/v1/affiliate/info"},{"description":"Get the referral code for an address (lightweight; 200 with empty code for non-affiliates)","method":"GET","path":"/v1/affiliate/code"},{"description":"Get list of referees for an affiliate","method":"GET","path":"/v1/affiliate/referees"},{"description":"Get the referrer for the calling address","method":"GET","path":"/v1/affiliate/myReferrer"},{"description":"Get affiliate leaderboard","method":"GET","path":"/v1/affiliate/leaderboard"},{"description":"Get the all-traders leaderboard (window=all|30d|24h, sortBy=volume|pnl|fees)","method":"GET","path":"/v1/leaderboard"},{"description":"Get commission history for an affiliate","method":"GET","path":"/v1/affiliate/commissions"},{"description":"Get claimable commission records","method":"GET","path":"/v1/affiliate/claims"},{"description":"Get claim status for an affiliate","method":"GET","path":"/v1/affiliate/claimStatus"},{"description":"Check whether a referral code is available","method":"GET","path":"/v1/affiliate/codeAvailable"},{"description":"Create a referral code","method":"POST","path":"/v1/affiliate/createCode"},{"description":"Register as an affiliate","method":"POST","path":"/v1/affiliate/registerAffiliate"},{"description":"Update kickback percentage for referees","method":"POST","path":"/v1/affiliate/kickback"},{"description":"Revoke a referral code","method":"POST","path":"/v1/affiliate/revokeCode"},{"description":"Claim accrued affiliate commissions","method":"POST","path":"/v1/affiliate/claim"},{"description":"List the caller's earned invite codes with redemption status (signed)","method":"GET","path":"/v1/affiliate/inviteCodes"},{"description":"Redeem an invite code: binds the caller as referee of the code's owner and grants perps trading access","method":"POST","path":"/v1/affiliate/redeemInvite"},{"description":"Get order status by orderId","method":"GET","path":"/v1/order/:orderId"},{"description":"Get L2 orderbook snapshot for a market","method":"GET","path":"/v1/l2OrderBook/:market"},{"description":"CMC orderbook snapshot (B3)","method":"GET","path":"/v1/cmc/orderbook/:tickerId"},{"description":"Get best bid/offer for a market","method":"GET","path":"/v1/bbo/:market"},{"description":"Get a single trade by tradeId (requires ?market=)","method":"GET","path":"/v1/trade/:tradeId"}],"service":"api-gateway","status":"running","version":"9d85b3f"}