| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
RapidX-specific asset data: This endpoint provides detailed assets, margin and transfer-limit information across RapidX Portfolios. It complements Account Assets V2; it is not replaced by that API family and remains supported.
Retrieve all asset balances for the current user across every RapidX portfolio, including both:
- Main portfolio
- All associated sub portfolios
For each Portfolio, this endpoint returns the same per-asset structure as Get Portfolio Assets Details, grouped by portfolioId. This is useful for building a global user asset overview across multiple portfolios and venues.
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 | Asset records across the Main Portfolio and its Sub Portfolios. |
| Sub-user Level API key | No | Not supported by this endpoint. |
| Dedicated Sub Portfolio API key | No | Not supported by this endpoint. |
Rate Limit: 20 requests per 1 second.
Request Parameters
This endpoint does not require any request parameters and does not use pagination.
The result contains Portfolio asset records, not a complete Portfolio directory. A Portfolio without asset records may be absent. Use Get Portfolio or Get Trading Account List V2 when you need the Portfolio list.
Response Fields
Top-level:
| Field | Type | Description |
|---|---|---|
code | Integer | Business status code. 200000 means success. |
message | String | Text message for the response. |
data | Object | Map of portfolioId → asset list. |
Data object:
data is a dictionary whose keys are portfolioId strings. Each key maps to an array of asset records for that portfolio.
- Key: String — portfolio ID (main or sub)
- Value: Array of asset records for that portfolio
Example structure:
"data": {
"1726371398908000": [ { ...asset record... }, ... ],
"2082325504644932": [ { ...asset record... }, ... ]
}Asset record (data[portfolioId][]):
Each asset record has the same structure as GET /api/v1/trading/portfolio/assets:
| Field | Type | Description |
|---|---|---|
portfolioId | String | ID of the RapidX portfolio (main or sub) that owns this asset. |
coin | String | Asset symbol, e.g. USDT, BTC, ADA. |
exchangeType | String | Exchange / venue where this asset is held, e.g. BINANCE, OKX, EDX. |
balance | String | Total quantity of this asset in this portfolio on this venue. |
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 locked (e.g. in open orders or pending operations). |
debt | String | Debt amount for this asset (for margin environments). 0 if no borrowing. |
equity | String | Asset equity in units of the asset itself. |
createAt | String | Record creation time, Unix timestamp in milliseconds. |
updateAt | String | Last update time, Unix timestamp in milliseconds. |
borrow | String | Current borrowed amount of this asset, if any. |
overdraw | String | Overdrawn amount (if negative balance logic applies). Usually 0. |
indexPrice | String | Reference index price for this asset (e.g. in USDT), used for valuation and risk. |
marginValue | String | Margin value contributed by this asset, generally equity * indexPrice after haircuts. |
virtualBorrow | String | Synthetic / virtual borrow amount used by the risk engine, if applicable. |
upnl | String | Unrealized P&L associated with this asset. 0 if not tracked at asset level. |
debtMargin | String | Margin requirement or value associated 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": {
"1726371398908000": [
{
"portfolioId": "1726371398908000",
"coin": "USDT",
"exchangeType": "BINANCE",
"balance": "10",
"available": "10",
"frozen": "0",
"debt": "0",
"equity": "10",
"createAt": "1764761133799",
"updateAt": "1764761133799",
"borrow": "0",
"overdraw": "0",
"indexPrice": "1",
"marginValue": "9.999",
"virtualBorrow": "0",
"upnl": "0",
"debtMargin": "0",
"perpMargin": "0",
"maxTransferable": "10",
"equityValue": "10"
}
],
"2082325504644932": [
{
"portfolioId": "2082325504644932",
"coin": "USDT",
"exchangeType": "BINANCE",
"balance": "48.55626345",
"available": "48.55626345",
"frozen": "0",
"debt": "0",
"equity": "48.55626345",
"createAt": "1764761133799",
"updateAt": "1764761133799",
"borrow": "0",
"overdraw": "0",
"indexPrice": "1",
"marginValue": "48.551407823655",
"virtualBorrow": "0",
"upnl": "0",
"debtMargin": "0",
"perpMargin": "0",
"maxTransferable": "48.55626345",
"equityValue": "48.55626345"
}
]
}
}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.
