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 /api/v1/trading/portfolio/assets, grouped by portfolioId. This is useful for building a global user asset overview across multiple portfolios and venues.
Permission: Only RapidX main portfolio API keys are allowed. Read-only permission is sufficient.
Rate Limit: 20 requests per 1 second.
Request Parameters
This endpoint does not require any request parameters.
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 of this asset that is freely available for trading / transfer. |
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 that can be safely transferred out, considering margin and risk constraints. |
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"
}
]
}
}
