/accounts/{address}/balancesaccount-getPortfolioConsolidated portfolio view for an XRPL address. Returns the current XRP balance (balance, decimal XRP — not drops), the total XRP-equivalent of every priced asset (total), curated account metadata, and a per-asset breakdown (perAsset[]). Each asset row carries: the on-ledger currentBalance (sourced from account_data.current_balance_drops for XRP, token_trustlines.balance for IOUs, mpt_holders.balance for MPTs, and the LP-token trustline row for AMM LP positions); the latest XRP-equivalent value (currentXrpValue, NULL when the asset has no XRP-paired ohlcv source — priced=false); and window metrics across 5m / 1h / 6h / 24h / 7d / 30d — both the asset-native net delta and the XRP-equivalent value change. Unpriced positions are excluded from total (filter on priced=true to enumerate the priced subset). metadata is null-safe across the board: untracked / uncurated addresses get name:null, category:null, verified:false, iconUrl:null.
| Name | Location | Details |
|---|---|---|
BearerAuth | Authorization header · bearer | JWT issued by the Honeycluster auth service for the `indexer` audience. Present as `Authorization: Bearer <token>`. |
| Name | Type | Default | Description |
|---|---|---|---|
addressrequired | string | Account to list balances for. |
| Field | Type | Description |
|---|---|---|
address | string | Echoed input address. |
metadata | object | Curated account metadata, sourced from `account_metadata`. All fields nullable / default false when no curation exists for this address. |
metadata. | object | |
metadata. | object | |
metadata. | boolean | |
metadata. | object | |
balance | string | Current XRP balance of the account (decimal string XRP, not drops). Source: `account_data.current_balance_drops` ÷ 1e6. |
total | string | Sum across the portfolio of `currentXrpValue` for every priced asset. Unpriced positions are excluded from the total — see the per-asset `priced` flag to identify them. |
perAsset | object[] | |
perAsset[]. | string | Asset reference: `XRP`, `<currency>.<issuer>` for IOU, 48-char hex for MPT, `LP:<amm_id>` for AMM LP positions. |
perAsset[]. | enum<string> | Asset kind discriminator. Available XRPIOUMPTLP |
perAsset[]. | string | Current on-ledger balance in the asset's native units. |
perAsset[]. | object | XRP-equivalent of `currentBalance` at the latest available quote price. NULL when the asset has no XRP-paired ohlcv source (`priced` is also `false` in that case). |
perAsset[]. | boolean | True when an XRP-equivalent price was found for this asset; false means `currentXrpValue` and `valueDelta.*` are NULL. |
perAsset[]. | object | |
perAsset[]. | object | Net signed delta of this asset balance per window (decimal string in asset-native units). |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | Net XRP-equivalent value change per window. NULL on rows where the asset has no XRP-paired price source. |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | object | |
perAsset[]. | string | Sum of positive deltas in the trailing 24h (decimal string). 0 when no events landed. |
perAsset[]. | string | Sum of absolute negative deltas in the trailing 24h. |
perAsset[]. | integer | Event count in the trailing 24h. |
perAsset[]. | object | Timestamp of the most recent balance event for this asset, Unix-seconds. |
{
"address": "string",
"metadata": {
"name": "string",
"category": "string",
"verified": false,
"iconUrl": "string"
},
"balance": "string",
"total": "string",
"perAsset": [
{
"assetRef": "string",
"kind": "XRP",
"currentBalance": "string",
"currentXrpValue": "string",
"priced": false,
"metrics": {
"delta": {
"last_5m": "string",
"last_1h": "string",
"last_6h": "string",
"last_24h": "string",
"last_7d": "string",
"last_30d": "string"
},
"valueDelta": {
"last_5m": "string",
"last_1h": "string",
"last_6h": "string",
"last_24h": "string",
"last_7d": "string",
"last_30d": "string"
},
"inflow24h": "string",
"outflow24h": "string",
"events24h": 0,
"lastEventAt": 1745798400
}
}
]
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "NOT_FOUND",
"message": "Not found",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}