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

Wallet Data

Accounts, positions, trades, etc.

Get wallet accounts

get
Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Responses
200

List of accounts

application/json
accountIdintegerRequiredExample: 12345
namestringRequiredExample: Margin Account 1
typestring · enumRequired

SPOT = account that can only trade spot, MAINPERP = main perp account, SUBPERP = sub perp account

Possible values:
Other propertiesanyOptional
get/wallet/{address}/accounts
GET /v2/wallet/{address}/accounts HTTP/1.1
Accept: */*
[
  {
    "accountId": 12345,
    "name": "Margin Account 1",
    "type": "MAINPERP",
    "ANY_ADDITIONAL_PROPERTY": "anything"
  }
]

Get wallet execution busts

get

Returns up to 100 execution busts (failed fills) for a given wallet, covering both spot and perp markets. Use the symbol suffix to distinguish spot from perp busts.

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Query parameters
startTimeintegerOptional

Return results at or after this time (inclusive lower bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt.

Example: 1756733379000
endTimeintegerOptional

Return results at or before this time (inclusive upper bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt. Results are returned newest-first and capped at a maximum that varies by endpoint. Because this bound is inclusive, passing the oldest timestamp from the previous page can repeat boundary rows; clients can deduplicate overlap or subtract 1ms when same-ms boundary ties are not relevant.

Example: 1756733679000
Responses
200

List of execution busts

application/json
Other propertiesanyOptional
get/wallet/{address}/executionBusts
GET /v2/wallet/{address}/executionBusts HTTP/1.1
Accept: */*
{
  "data": [
    {
      "symbol": "BTCRUSDPERP",
      "takerAccountId": 12345,
      "exchangeId": 1,
      "makerAccountId": 67890,
      "takerOrderId": "63552420354981888",
      "makerOrderId": "63552420037263360",
      "qty": "1.0",
      "side": "B",
      "price": "43000.00",
      "reason": {
        "reasonName": "InvalidSignature"
      },
      "timestamp": 1747927089946,
      "sequenceNumber": 152954,
      "fillId": "42",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    }
  ],
  "meta": {
    "limit": 100,
    "count": 50,
    "endTime": 1756733579000,
    "startTime": 1756733679000,
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "ANY_ADDITIONAL_PROPERTY": "anything"
}

Get wallet perp executions

get

Returns up to 100 perp executions for a given wallet.

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Query parameters
startTimeintegerOptional

Return results at or after this time (inclusive lower bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt.

Example: 1756733379000
endTimeintegerOptional

Return results at or before this time (inclusive upper bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt. Results are returned newest-first and capped at a maximum that varies by endpoint. Because this bound is inclusive, passing the oldest timestamp from the previous page can repeat boundary rows; clients can deduplicate overlap or subtract 1ms when same-ms boundary ties are not relevant.

Example: 1756733679000
typestring · enumOptional

Filter perp executions by their exact response type. Omit to return executions of all types.

Example: LIQUIDATIONPossible values:
Responses
200

List of perpetual executions

application/json
Other propertiesanyOptional
get/wallet/{address}/perpExecutions
GET /v2/wallet/{address}/perpExecutions HTTP/1.1
Accept: */*
{
  "data": [
    {
      "exchangeId": 1,
      "symbol": "BTCRUSDPERP",
      "takerAccountId": 12345,
      "makerAccountId": 67890,
      "takerOrderId": "63552420354981888",
      "makerOrderId": "63552420037263360",
      "qty": "1.0",
      "side": "B",
      "price": "43000.00",
      "takerFee": "0.50",
      "protocolFeeCredit": "0.30",
      "referrerFeeCredit": "0.05",
      "takerRebateCredit": "0.10",
      "poolFeeCredit": "0.05",
      "makerFee": "-0.10",
      "takerOpeningFee": "0.25",
      "makerOpeningFee": "-0.05",
      "type": "ORDER_MATCH",
      "timestamp": 1747927089946,
      "sequenceNumber": 152954,
      "fillId": "42",
      "takerRealizedPnl": "12.50",
      "makerRealizedPnl": "-12.50",
      "takerPriceVariationPnl": "15.00",
      "makerPriceVariationPnl": "-15.00",
      "takerFundingPnl": "-2.50",
      "makerFundingPnl": "2.50",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    }
  ],
  "meta": {
    "limit": 100,
    "count": 50,
    "endTime": 1756733579000,
    "startTime": 1756733679000,
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "ANY_ADDITIONAL_PROPERTY": "anything"
}

Get wallet spot executions

get

Returns up to 100 spot executions for a given wallet.

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Query parameters
startTimeintegerOptional

Return results at or after this time (inclusive lower bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt.

Example: 1756733379000
endTimeintegerOptional

Return results at or before this time (inclusive upper bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt. Results are returned newest-first and capped at a maximum that varies by endpoint. Because this bound is inclusive, passing the oldest timestamp from the previous page can repeat boundary rows; clients can deduplicate overlap or subtract 1ms when same-ms boundary ties are not relevant.

Example: 1756733679000
Responses
200

List of spot executions

application/json
Other propertiesanyOptional
get/wallet/{address}/spotExecutions
GET /v2/wallet/{address}/spotExecutions HTTP/1.1
Accept: */*
{
  "data": [
    {
      "exchangeId": 1,
      "symbol": "BTCRUSDPERP",
      "takerAccountId": 12345,
      "makerAccountId": 67890,
      "takerOrderId": "63552420354981888",
      "makerOrderId": "63552420037263360",
      "side": "B",
      "qty": "1.0",
      "price": "43000.00",
      "takerFee": "0.0",
      "type": "ORDER_MATCH",
      "timestamp": 1747927089946,
      "sequenceNumber": 152954,
      "fillId": "42",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    }
  ],
  "meta": {
    "limit": 100,
    "count": 50,
    "endTime": 1756733579000,
    "startTime": 1756733679000,
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "ANY_ADDITIONAL_PROPERTY": "anything"
}

Get wallet order history

get

Returns up to 100 historical order state updates for a wallet, newest first. Each row is one Order update for one of the wallet's accounts, across spot and perp markets.

History is limited and may be unavailable for high-volume accounts. This endpoint is for account-history views; it is not a complete audit log. Market makers should maintain their own order history from the orderChanges WebSocket stream and reconcile against current open orders after a disconnect.

startTime and endTime are millisecond Unix timestamps matched against lastUpdateAt. Results are newest-first: meta.startTime is the newest returned timestamp and meta.endTime is the oldest. endTime is inclusive, so passing the previous meta.endTime may repeat boundary rows; deduplicate using Order.sequenceNumber. Clients that do not need to preserve same-millisecond boundary ties may page backward with endTime = meta.endTime - 1.

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Query parameters
startTimeintegerOptional

Return results at or after this time (inclusive lower bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt.

Example: 1756733379000
endTimeintegerOptional

Return results at or before this time (inclusive upper bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt. Results are returned newest-first and capped at a maximum that varies by endpoint. Because this bound is inclusive, passing the oldest timestamp from the previous page can repeat boundary rows; clients can deduplicate overlap or subtract 1ms when same-ms boundary ties are not relevant.

Example: 1756733679000
Responses
200

Paginated list of order state updates

application/json
Other propertiesanyOptional
get/wallet/{address}/orderHistory
GET /v2/wallet/{address}/orderHistory HTTP/1.1
Accept: */*
{
  "data": [
    {
      "exchangeId": 1,
      "symbol": "BTCRUSDPERP",
      "accountId": 12345,
      "orderId": "490346525705109504",
      "sequenceNumber": 152954,
      "clientOrderId": "123456789",
      "qty": "1.0",
      "execQty": "0.5",
      "cumQty": "0.5",
      "avgFillPx": "3450.25",
      "firstFillId": "7205759403792794624",
      "fillCount": 2,
      "side": "B",
      "limitPx": "43000.00",
      "orderType": "TAKE_PROFIT",
      "triggerPx": "50000.0",
      "triggered": false,
      "timeInForce": "GTC",
      "expiresAfter": 1676923200,
      "reduceOnly": false,
      "postOnly": false,
      "status": "OPEN",
      "createdAt": 1747927089946,
      "lastUpdateAt": 1747927089946,
      "cancelReason": "NO_LIQUIDITY",
      "cancelReasonMessage": "Order cancelled because it would have matched your own resting order",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    }
  ],
  "meta": {
    "limit": 100,
    "count": 50,
    "endTime": 1756733579000,
    "startTime": 1756733679000,
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "ANY_ADDITIONAL_PROPERTY": "anything"
}

Get wallet positions

get
Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Responses
200

List of positions

application/json
exchangeIdintegerRequiredExample: 1
symbolstringRequired

Trading symbol (e.g., BTCRUSDPERP, WETHRUSD)

Example: BTCRUSDPERPPattern: ^[A-Za-z0-9]+$
accountIdintegerRequiredExample: 12345
qtystringRequiredExample: 1.5Pattern: ^\d+(\.\d+)?([eE][+-]?\d+)?$
sidestring · enumRequired

Order side (B = Buy/Bid, A = Ask/Sell)

Possible values:
avgEntryPricestringRequiredExample: 43000.00Pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$
avgEntryFundingValuestringRequired

Average of funding values at the entry times of currently open exposure, which serves as a baseline from which to compute the accrued funding in the position: units x (fundingValue - avgEntryFundingValue)

Example: 100.25Pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$
lastTradeSequenceNumberintegerRequired

Sequence number of last execution taken into account for the position.

Example: 152954
Other propertiesanyOptional
get/wallet/{address}/positions
GET /v2/wallet/{address}/positions HTTP/1.1
Accept: */*
[
  {
    "exchangeId": 1,
    "symbol": "BTCRUSDPERP",
    "accountId": 12345,
    "qty": "1.5",
    "side": "B",
    "avgEntryPrice": "43000.00",
    "avgEntryFundingValue": "100.25",
    "lastTradeSequenceNumber": 152954,
    "ANY_ADDITIONAL_PROPERTY": "anything"
  }
]

Get wallet account balances

get

Returns all account real balances for a wallet.

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Responses
200

List of account balances

application/json
accountIdintegerRequiredExample: 12345
assetstringRequiredExample: WSTETHPattern: ^[A-Za-z0-9]+$
realBalancestringRequired

Sum of account net deposits (transfers, deposits and withdrawals) and realized pnl from closed positions. Realized pnl only applies to RUSD given it is the only settlement asset

Example: 1.25Pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$
balanceDEPRECATEDstringRequired

Sum of account net deposits (transfers, deposits and withdrawals). This field is deprecated and will be removed in a future release

Example: 1.25Pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$
Other propertiesanyOptional
get/wallet/{address}/accountBalances
GET /v2/wallet/{address}/accountBalances HTTP/1.1
Accept: */*
[
  {
    "accountId": 12345,
    "asset": "WSTETH",
    "realBalance": "1.25",
    "balanceDEPRECATED": "1.25",
    "ANY_ADDITIONAL_PROPERTY": "anything"
  }
]

Get wallet transfers

get

Return settled collateral movements for every account of a wallet, newest first. The streaming walletTransfers channel delivers the same entries as live updates.

Coverage

Each entry belongs to one account and asset, with amount signed from that account's perspective. Moving 100 rUSD between two accounts of the same wallet produces two entries: -100 for the sending account and +100 for the receiving account.

This is a history of net deposits, not a complete balance or PnL history. Realized PnL, funding, and ADL cashflows are excluded; closing a profitable position shows its fee movements, not its profit. Use accountBalances.realBalance for realized balance and positions / perpExecutions for position and execution PnL.

Zero-amount entries are excluded. Historical coverage varies by environment; movements before the available history begins are absent. Returned entries do not change.

Transfer types

type describes the purpose of a movement, not its direction; use the sign of amount for direction. The following meanings apply to REST and WebSocket entries.

Type
Meaning

DEPOSIT / WITHDRAWAL

Collateral entering or leaving the protocol.

TRANSFER

Transfer between margin accounts of the same owner.

POOL_STAKE / POOL_UNSTAKE

Passive-pool staking or unstaking; entries cover the asset and share token.

PERP_TAKER_FEE

Gross fee paid by the taker on a perp fill.

PERP_REFERRER_REBATE

Rebate for the taker's referrer.

PERP_TAKER_REBATE

Rebate returned to the taker.

PERP_POOL_REBATE

Rebate credited to the passive pool.

PERP_FEE

Perp fee recorded in older execution history.

SPOT_EXECUTION

Token movements from a spot trade, recorded separately per asset.

AUTO_EXCHANGE / AUTO_EXCHANGE_INSURANCE_FEE

Auto-exchange movements and the associated insurance-fund fee.

LIQUIDATION_INSURANCE_FEE

Liquidation fee for the insurance fund.

LIQUIDATION_BACKSTOP_FEE

Liquidation fee for the backstop liquidity provider.

LIQUIDATION_LIQUIDATOR_REWARD / LIQUIDATION_KEEPER_REWARD

Liquidator or keeper reward.

LIQUIDATION_BID_FEE

Bid fee for a ranked liquidation.

INSURANCE_FUND_COVERAGE / POOL_MERGE

Insurance coverage or pool consolidation transfer.

OTHER

Unclassified movement; the reported amounts remain exact.

Pagination

  • Results are ordered newest first by sequenceNumber. limit defaults to 100 and is capped at 100 entries per page.

  • Omit cursor for the first page. Pass the returned meta.nextCursor unchanged for the next page, keeping the same filters. Stop when nextCursor is absent.

  • Cursor traversal visits each matching entry once, including when entries share a block timestamp. Use cursors rather than timestamps to advance between pages.

  • startTime and endTime filter the block timestamp in milliseconds. type filters by a comma-separated list of TransferType values; omit it to include all types.

Reconciliation

For a complete history of one account and asset, process entries in chronological order: previous netDepositsAfter + amount = netDepositsAfter. Do not use a type-filtered or incomplete history to check that equality. netDepositsAfter is not the account's realBalance and should not be displayed as its complete balance.

Use sequenceNumber to merge and deduplicate REST history, the WebSocket snapshot, and live entries. Use fillId or spotExecutionSequenceNumber, when present, to associate movements with executions. Optional fields and historical availability are documented on Transfer; see walletTransfers for snapshot and live-frame delivery.

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Query parameters
limitintegerOptional

Maximum number of entries per page. The default and the maximum are both 100; larger values are clamped to 100.

Example: 100
cursorstringOptional

Opaque page cursor from the previous response's meta.nextCursor. Omit for the first page; otherwise pass it unchanged. Do not construct or parse cursor values.

Example: djEuNTQ2MzY3NzA2LjA
startTimeintegerOptional

Return results at or after this time (inclusive lower bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt.

Example: 1756733379000
endTimeintegerOptional

Return results at or before this time (inclusive upper bound). Millisecond POSIX timestamp, matched against the endpoint's record timestamp. Execution and bust endpoints use on-chain block timestamps; orderHistory uses the order event timestamp exposed as lastUpdateAt. Results are returned newest-first and capped at a maximum that varies by endpoint. Because this bound is inclusive, passing the oldest timestamp from the previous page can repeat boundary rows; clients can deduplicate overlap or subtract 1ms when same-ms boundary ties are not relevant.

Example: 1756733679000
Responses
200

Page of transfer entries, newest first

application/json
Other propertiesanyOptional
get/wallet/{address}/transfers
GET /v2/wallet/{address}/transfers HTTP/1.1
Accept: */*
{
  "data": [
    {
      "sequenceNumber": 273183852,
      "accountId": 12345,
      "asset": "RUSD",
      "amount": "-0.50",
      "netDepositsAfter": "1024.25",
      "type": "DEPOSIT",
      "counterpartyAccountId": 1,
      "symbol": "BTCRUSDPERP",
      "spotExecutionSequenceNumber": 9911,
      "fillId": "42",
      "timestamp": 1747927089946,
      "transactionHash": "0x1dfdfed33589363842c4d8e5cfa1b3a9782ec07cb9a5ab5236ad1e1c224b64ea",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    }
  ],
  "meta": {
    "limit": 100,
    "count": 50,
    "nextCursor": "djEuNTQ2MzY3NzA2LjA",
    "ANY_ADDITIONAL_PROPERTY": "anything"
  },
  "ANY_ADDITIONAL_PROPERTY": "anything"
}

Get wallet open orders

get

Returns all pending orders for a wallet.

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Responses
200

List of open orders

application/json

Order state returned by openOrders, orderChanges, and orderHistory. Event streams and history can contain multiple updates for the same order. Field descriptions specify snapshot/event availability; see OrderStatus for lifecycle states.

exchangeIdintegerRequiredExample: 1
symbolstringRequired

Trading symbol (e.g., BTCRUSDPERP, WETHRUSD)

Example: BTCRUSDPERPPattern: ^[A-Za-z0-9]+$
accountIdintegerRequiredExample: 12345
orderIdstringRequiredExample: 490346525705109504
sequenceNumberintegerOptional

Monotonic order-event sequence. Present on orderHistory REST rows and orderChanges WS event rows; omitted on openOrders and other resting-order snapshots. Use it to deduplicate inclusive orderHistory page-boundary overlap and to splice orderHistory with the orderChanges live stream.

Example: 152954
clientOrderIdstringOptional

Client-provided order ID, as a decimal string (uint64). Present when the order has a non-zero client id; omitted otherwise.

Example: 123456789
qtystringOptionalExample: 1.0Pattern: ^\d+(\.\d+)?([eE][+-]?\d+)?$
execQtystringOptional

Executed quantity in the current order update.

Example: 0.5Pattern: ^\d+(\.\d+)?([eE][+-]?\d+)?$
cumQtystringOptional

Total Executed quantity across all fills where the order is involved.

Example: 0.5Pattern: ^\d+(\.\d+)?([eE][+-]?\d+)?$
avgFillPxstringOptional

Quantity-weighted average execution price across all fills of the order so far (both maker and taker), excluding fees. Corresponds to cumQty, not execQty. Rounded half-up to at most 9 decimal places from exact cumulative executed notional. Preserved across amendments of the same order and cancellation. Exposed on create/modify responses, orderChanges, openOrders and orderHistory after the first fill; omitted when cumQty is zero.

Example: 3450.25Pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$
firstFillIdstringOptional

Identifier of the first fill this update represents. Together with fillCount it identifies the fills as a contiguous ID range [firstFillId, firstFillId + fillCount - 1]. For a taker update, the first fill of its matching round; for a maker update, its single fill. Present only on fill updates; absent for non-fill updates and resting-order snapshots.

Example: 7205759403792794624
fillCountintegerOptional

Number of fills this update represents — the length of the contiguous nonce range starting at firstFillId. For a taker update, the fills produced in its matching round; for a maker update, 1. Present only on fill updates; absent otherwise (so it is >= 1 whenever present).

Example: 2
sidestring · enumRequired

Order side (B = Buy/Bid, A = Ask/Sell)

Possible values:
limitPxstringRequiredExample: 43000.00Pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$
orderTypestring · enumRequired

Order type aligned with the on-chain OrderDetails.orderType enum: LIMIT = limit order, STOP_LOSS = stop-loss trigger order, TAKE_PROFIT = take-profit trigger order.

Example: TAKE_PROFITPossible values:
triggerPxstringOptional

Price at which TP/SL orders will be triggered, should not be set for other order types.

Example: 50000.0Pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$
triggeredbooleanOptional

For protective stops, false means armed and true means fired; never true for LIMIT orders. Fired children are cancel-only. Omitted on orderHistory, where absence means unknown: use openOrders or walletOrderChanges to distinguish phases. On those two surfaces, omission on older deployments can be treated as false. See POST /v2/createOrder for firing and child-order behavior.

Example: false
timeInForcestring · enumOptional

Order time in force. For a LIMIT order it shapes execution directly. For a STOP_LOSS / TAKE_PROFIT it is the time in force the child order takes on when the trigger fires: IOC fills what the book offers and cancels the remainder, GTC and GTT rest the remainder in the book.

Example: GTCPossible values:
expiresAfterintegerOptional

Unix seconds. Signed GTT expiry (OrderDetails.expiresAfter); omitted for GTC and IOC. For a protective stop, the same expiry covers both the armed stop and its fired child; firing does not start a new lifetime. The stop or its resting child can be cancelled before this timestamp to allow settlement, with cancelReason: GTT_EXPIRED.

Example: 1676923200
reduceOnlybooleanOptional

Whether this is a reduce-only order, exclusively used for LIMIT IOC orders. STOP_LOSS / TAKE_PROFIT orders and the children they fire into are reduce-only by construction — they close the position and can never open one — yet still report false here, because this field mirrors the signed on-chain OrderDetails.reduceOnly. Do not read false on a stop as permission to open a position.

Example: false
postOnlybooleanOptional

Whether this is a post-only (maker-only) order. Mirrors CreateOrderRequest.postOnly; updated by modifyOrder.

Example: false
statusstring · enumRequired

OPEN includes partially filled resting orders, armed protective stops, and their resting children. FILLED and CANCELLED are terminal states. Use Order.triggered to distinguish armed stops from fired children. Requests rejected before order creation return errors, not order-status rows.

Possible values:
createdAtintegerRequired

Creation timestamp (milliseconds)

Example: 1747927089946
lastUpdateAtintegerRequired

Last update timestamp in milliseconds. For orderChanges WebSocket events and orderHistory REST rows this is the order event timestamp used by orderHistory startTime/endTime filters.

Example: 1747927089946
cancelReasonstring · enumOptional

Machine-readable reason the order was cancelled. Present only when status is CANCELLED; absent otherwise.

Possible values:
cancelReasonMessagestringOptional

Human-readable explanation of cancelReason. Present only when cancelReason is present.

Example: Order cancelled because it would have matched your own resting order
Other propertiesanyOptional
get/wallet/{address}/openOrders
GET /v2/wallet/{address}/openOrders HTTP/1.1
Accept: */*
[
  {
    "exchangeId": 1,
    "symbol": "BTCRUSDPERP",
    "accountId": 12345,
    "orderId": "490346525705109504",
    "sequenceNumber": 152954,
    "clientOrderId": "123456789",
    "qty": "1.0",
    "execQty": "0.5",
    "cumQty": "0.5",
    "avgFillPx": "3450.25",
    "firstFillId": "7205759403792794624",
    "fillCount": 2,
    "side": "B",
    "limitPx": "43000.00",
    "orderType": "TAKE_PROFIT",
    "triggerPx": "50000.0",
    "triggered": false,
    "timeInForce": "GTC",
    "expiresAfter": 1676923200,
    "reduceOnly": false,
    "postOnly": false,
    "status": "OPEN",
    "createdAt": 1747927089946,
    "lastUpdateAt": 1747927089946,
    "cancelReason": "NO_LIQUIDITY",
    "cancelReasonMessage": "Order cancelled because it would have matched your own resting order",
    "ANY_ADDITIONAL_PROPERTY": "anything"
  }
]

Get wallet configuration

get

Returns trading configuration for a wallet

Path parameters
addressstringRequiredExample: 0x6c51275fd01d5dbd2da194e92f920f8598306df2Pattern: ^0x[a-fA-F0-9]{40}$
Responses
200

Wallet configuration

application/json
feeTierIdintegerRequired

Fee tier identifier

Example: 1
ogStatusbooleanRequired

OG status

Example: true
affiliateStatusbooleanRequired

Affiliate status

Example: false
refereeStatusbooleanRequired

Referee status

Example: false
Other propertiesanyOptional
get/wallet/{address}/configuration
GET /v2/wallet/{address}/configuration HTTP/1.1
Accept: */*
{
  "feeTierId": 1,
  "ogStatus": true,
  "affiliateStatus": false,
  "refereeStatus": false,
  "ANY_ADDITIONAL_PROPERTY": "anything"
}

Last updated