| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Retrieve the per-asset balance details for the current RapidX main or sub portfolio. This endpoint returns, for each coin and exchange:
- Wallet-style balances:
balance,available,frozen,debt - Margin-related values:
marginValue,equity,equityValue,upnl,debtMargin,perpMargin,virtualBorrow,overdraw - Risk-related values:
maxTransferable,indexPrice
The result is paginated, and each record corresponds to one asset on one exchange under the current portfolio.
Available versus transferable amounts
available is the quantity usable for operations within the account. It may equal the transferable or withdrawable amount, but this should not be assumed. Positions, open orders and margin requirements can make it differ from maxTransferable.
For a transfer, use maxTransferable for the matching Portfolio, coin and exchange. This is the transferable amount at query time; the transfer request is checked again when processed. Withdrawal eligibility, limits and fees are separate checks.
API key access
Requires a signed LTP Open API request with READ permission.
| API key type | Can call | Scope |
|---|---|---|
| Main User Level API key (also the main Portfolio key) | Yes | The Main Portfolio only. |
| Sub-user Level API key | No | Not supported by this endpoint. |
| Dedicated Sub Portfolio API key | Yes | The Portfolio associated with this key only. |
The API key determines the Portfolio. This endpoint has no parameter for selecting another Portfolio; use Get All Portfolio Assets with a Main User Level key for a cross-Portfolio view.
Rate Limit: 20 requests per 1 second.
Request Parameters
All parameters are optional. If omitted, the system will return all supported exchanges for the current portfolio, paginated.
| Field | Type | Necessary | Description |
|---|---|---|---|
exchangeType | String | N | Filter by exchange / venue, e.g. BINANCE, OKX, EDX. If omitted, return assets across all exchanges bound to this portfolio. |
page | Integer | N | Page number, starting from 1. Default is 1. |
pageSize | Integer | N | Number of records per page. Default is 1000. |
Response Fields
Top-level:
| Field | Type | Description |
|---|---|---|
code | Integer | Business status code. 200000 indicates success. |
message | String | Text message for the response. |
data | Object | Pagination information and asset list. |
Data object:
| Field | Type | Description |
|---|---|---|
page | Integer | Current page index, starting from 1. |
pageSize | Integer | Page size used for this query. |
pageNum | Integer | Total number of pages. |
totalSize | Integer | Total number of records matching the filters. |
list | Array | List of asset records. Each element represents one coin on one exchange. |
When no asset records match, the request succeeds with data.list=[], data.totalSize=0 and data.pageNum=0.
Asset record (data.list[]):
| Field | Type | Description |
|---|---|---|
portfolioId | String | ID of the RapidX portfolio (main or sub) to which this asset belongs. |
coin | String | Asset symbol, e.g. USDT, BTC. |
exchangeType | String | Exchange / venue where the asset is held, e.g. BINANCE, OKX, EDX. |
balance | String | Total quantity of this asset in the portfolio on this exchange (including available + frozen + any debt-related offsets as per venue rules). |
available | String | Quantity available for operations within the current account, in units of the currency. It does not necessarily equal the transferable or withdrawable quantity. |
frozen | String | Quantity currently locked (e.g. in open orders, pending withdrawals, or other holds). |
debt | String | Debt amount of this asset (for margin environments). 0 if no borrowing. |
equity | String | Asset equity in units of the asset itself. |
createAt | String | Record creation time as Unix timestamp in milliseconds. |
updateAt | String | Last update time as Unix timestamp in milliseconds. |
borrow | String | Currently borrowed quantity of this asset (if supported by the venue/account type). |
overdraw | String | Overdrawn amount (if the portfolio supports overdraw / negative balance logic). Usually 0 in normal cases. |
indexPrice | String | Reference index price for this asset (typically in USDT or quote currency), used for valuation and margin calculations. |
marginValue | String | Margin value contributed by this asset, usually equity * indexPrice adjusted for margin haircuts, expressed in the risk base currency (e.g. USDT). |
virtualBorrow | String | Synthetic / virtual borrow amount used by the risk engine, if any. Normally 0 when not applicable. |
upnl | String | Unrealized P&L associated with this asset (if the venue / account type maps it at asset level). 0 when not applicable. |
debtMargin | String | Margin requirement or value associated specifically with the debt portion of this asset. |
perpMargin | String | Margin allocated from this asset for perpetual / derivatives positions. |
maxTransferable | String | Maximum quantity of this asset transferable out of this Portfolio on this exchange at the time of the query, after margin and risk constraints. Use this field, not available, to determine the transferable amount. |
equityValue | String | Asset equity value converted into the risk base currency (e.g. USDT), typically equity * indexPrice. |
Example Response
{
"code": 200000,
"message": "Success",
"data": {
"page": 1,
"pageSize": 1000,
"pageNum": 1,
"totalSize": 1,
"list": [
{
"portfolioId": "17xxxxxxxxxxxxxx",
"coin": "USDT",
"exchangeType": "BINANCE",
"balance": "33.970877268901446313",
"available": "33.970877268901446313",
"frozen": "0",
"debt": "0",
"equity": "33.970877268901446313",
"createAt": "1776008971034",
"updateAt": "1776008971034",
"borrow": "0",
"overdraw": "0",
"indexPrice": "1",
"marginValue": "33.9674801811745561683687",
"virtualBorrow": "0",
"upnl": "0",
"debtMargin": "0",
"perpMargin": "0",
"maxTransferable": "33.970877268901446313",
"equityValue": "33.970877268901446313"
}
]
}
}All asset-record fields, including portfolioId, decimal amounts and millisecond timestamps, are returned as strings. A Sub-user Level key returns application code 100003 (invalid user type). Check the application code even when HTTP status is 200. See Error codes.
