Sandbox version
For experimental use only. Proceed with caution.
accounts
List current portfolio balances + XRP-equivalent value
get
/accounts/{address}/balances
operationId: account-getPortfolio

Consolidated 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.

Unlock protected endpoints

Enter your Bearer token once to enable every protected route in this API reference.

HTTP bearer

Saved for this browser tab only. The credential is never sent until you test an endpoint.

Authorizations
NameLocationDetails
BearerAuthAuthorization header · bearerJWT issued by the Honeycluster auth service for the `indexer` audience. Present as `Authorization: Bearer <token>`.
Path Parameters
NameTypeDefaultDescription
address
required
string
Account to list balances for.
Responses
200
application/json
Successful response
FieldTypeDescription
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.name
object
metadata.category
object
metadata.verified
boolean
metadata.iconUrl
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[].assetRef
string
Asset reference: `XRP`, `<currency>.<issuer>` for IOU, 48-char hex for MPT, `LP:<amm_id>` for AMM LP positions.
perAsset[].kind
enum<string>
Asset kind discriminator.
Available
XRPIOUMPTLP
perAsset[].currentBalance
string
Current on-ledger balance in the asset's native units.
perAsset[].currentXrpValue
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[].priced
boolean
True when an XRP-equivalent price was found for this asset; false means `currentXrpValue` and `valueDelta.*` are NULL.
perAsset[].metrics
object
perAsset[].metrics.delta
object
Net signed delta of this asset balance per window (decimal string in asset-native units).
perAsset[].metrics.delta.last_5m
object
perAsset[].metrics.delta.last_1h
object
perAsset[].metrics.delta.last_6h
object
perAsset[].metrics.delta.last_24h
object
perAsset[].metrics.delta.last_7d
object
perAsset[].metrics.delta.last_30d
object
perAsset[].metrics.valueDelta
object
Net XRP-equivalent value change per window. NULL on rows where the asset has no XRP-paired price source.
perAsset[].metrics.valueDelta.last_5m
object
perAsset[].metrics.valueDelta.last_1h
object
perAsset[].metrics.valueDelta.last_6h
object
perAsset[].metrics.valueDelta.last_24h
object
perAsset[].metrics.valueDelta.last_7d
object
perAsset[].metrics.valueDelta.last_30d
object
perAsset[].metrics.inflow24h
string
Sum of positive deltas in the trailing 24h (decimal string). 0 when no events landed.
perAsset[].metrics.outflow24h
string
Sum of absolute negative deltas in the trailing 24h.
perAsset[].metrics.events24h
integer
Event count in the trailing 24h.
perAsset[].metrics.lastEventAt
object
Timestamp of the most recent balance event for this asset, Unix-seconds.
Example
Json
{
  "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
      }
    }
  ]
}
400
application/json
Invalid input data
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}
401
application/json
Authorization not provided
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}
403
application/json
Insufficient access
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}
404
application/json
Not found
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "NOT_FOUND",
  "message": "Not found",
  "issues": []
}
500
application/json
Internal server error
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}