/xrpl/metricsxrpl-tokenMetricsReturns the data-indexer-style metrics rollup for an XRPL IOU (or XRP), denominated in the requested currency. Includes price, price_change and volume and txn over trailing windows (5m / 1h / 6h / 24h / 7d), plus 24h volume dominance vs the rest of the XRPL DEX. Sourced from the 1m OHLCV CAGG (ohlcv_1m) bridged per-bucket through cex_consensus_ohlcv_1m (same path as /xrpl/quote/ohlcv). Trustlines / holders / supply / market_cap / fdv / tvl / vesting / takers / buy_sell / quality_score are NOT included — those come from the data-indexer's metadata pipeline rather than our trade feed.
| Name | Location | Details |
|---|---|---|
BearerAuth | Authorization header · bearer | JWT issued by the Honeycluster auth service for the `oracle` audience. Present as `Authorization: Bearer <token>`. |
| Name | Type | Default | Description |
|---|---|---|---|
currency | string | ||
issuer | object | ||
tokenSlug | string | ||
denomination | string | "USD" |
| Field | Type | Description |
|---|---|---|
asset | string | Echoed asset (currency code). |
issuer | object | Echoed issuer, or `null` for XRP. |
pair | object | Resolved XRPL trade pair the token was found in. |
pair. | string | |
pair. | string | |
pair. | object | |
pair. | string | |
pair. | object | |
pair. | string | |
pair. | string | |
inverted | boolean | True when the source pair stored XRP on the base side. The metrics are always reported in IOU-quoted units regardless. |
denomination | string | Echoed denomination. |
bridgeBase | object | Same semantics as `/xrpl/quote.bridgeBase`. `null` when `denomination=XRP`. |
asOf | integer | Bucket-open of the most recent 1m row used to anchor `price` and the windows, Unix-seconds. |
price | object | Latest denominated price (decimal string), or `null` when no recent bucket exists. |
price_change | object | |
price_change. | object | |
price_change. | object | Absolute price change over the window in `denomination` units (decimal string). `null` when no price exists at the window start. |
price_change. | object | Percent price change over the window (decimal string, e.g. `2.835`). `null` when no price exists at the window start or it was zero. |
price_change. | boolean | Only set on `last_24h` and `last_7d`. `true` when the trade pair is younger than the window — the change is anchored at the first trade rather than `now − window`. |
price_change. | object | |
price_change. | object | Absolute price change over the window in `denomination` units (decimal string). `null` when no price exists at the window start. |
price_change. | object | Percent price change over the window (decimal string, e.g. `2.835`). `null` when no price exists at the window start or it was zero. |
price_change. | boolean | Only set on `last_24h` and `last_7d`. `true` when the trade pair is younger than the window — the change is anchored at the first trade rather than `now − window`. |
price_change. | object | |
price_change. | object | Absolute price change over the window in `denomination` units (decimal string). `null` when no price exists at the window start. |
price_change. | object | Percent price change over the window (decimal string, e.g. `2.835`). `null` when no price exists at the window start or it was zero. |
price_change. | boolean | Only set on `last_24h` and `last_7d`. `true` when the trade pair is younger than the window — the change is anchored at the first trade rather than `now − window`. |
price_change. | object | |
price_change. | object | Absolute price change over the window in `denomination` units (decimal string). `null` when no price exists at the window start. |
price_change. | object | Percent price change over the window (decimal string, e.g. `2.835`). `null` when no price exists at the window start or it was zero. |
price_change. | boolean | Only set on `last_24h` and `last_7d`. `true` when the trade pair is younger than the window — the change is anchored at the first trade rather than `now − window`. |
price_change. | object | |
price_change. | object | Absolute price change over the window in `denomination` units (decimal string). `null` when no price exists at the window start. |
price_change. | object | Percent price change over the window (decimal string, e.g. `2.835`). `null` when no price exists at the window start or it was zero. |
price_change. | boolean | Only set on `last_24h` and `last_7d`. `true` when the trade pair is younger than the window — the change is anchored at the first trade rather than `now − window`. |
volume | object | |
volume. | object | |
volume. | object | Total denominated volume in the window (decimal string), or `null` when no buckets exist for the pair in the window. Distinguishes "no recent activity" (`null`) from "active token with zero in this window" (genuine `0` — uncommon since `ohlcv_1m` only stores buckets that had trades). |
volume. | object | `value` minus the prior-window volume. `null` when either window has no data. |
volume. | object | `change_absolute / prior_window_volume × 100` (decimal string). `null` when prior was zero or either window is missing. |
volume. | object | |
volume. | object | Total denominated volume in the window (decimal string), or `null` when no buckets exist for the pair in the window. Distinguishes "no recent activity" (`null`) from "active token with zero in this window" (genuine `0` — uncommon since `ohlcv_1m` only stores buckets that had trades). |
volume. | object | `value` minus the prior-window volume. `null` when either window has no data. |
volume. | object | `change_absolute / prior_window_volume × 100` (decimal string). `null` when prior was zero or either window is missing. |
volume. | object | |
volume. | object | Total denominated volume in the window (decimal string), or `null` when no buckets exist for the pair in the window. Distinguishes "no recent activity" (`null`) from "active token with zero in this window" (genuine `0` — uncommon since `ohlcv_1m` only stores buckets that had trades). |
volume. | object | `value` minus the prior-window volume. `null` when either window has no data. |
volume. | object | `change_absolute / prior_window_volume × 100` (decimal string). `null` when prior was zero or either window is missing. |
volume. | object | |
volume. | object | Total denominated volume in the window (decimal string), or `null` when no buckets exist for the pair in the window. Distinguishes "no recent activity" (`null`) from "active token with zero in this window" (genuine `0` — uncommon since `ohlcv_1m` only stores buckets that had trades). |
volume. | object | `value` minus the prior-window volume. `null` when either window has no data. |
volume. | object | `change_absolute / prior_window_volume × 100` (decimal string). `null` when prior was zero or either window is missing. |
volume. | object | |
volume. | object | Total denominated volume in the window (decimal string), or `null` when no buckets exist for the pair in the window. Distinguishes "no recent activity" (`null`) from "active token with zero in this window" (genuine `0` — uncommon since `ohlcv_1m` only stores buckets that had trades). |
volume. | object | `value` minus the prior-window volume. `null` when either window has no data. |
volume. | object | `change_absolute / prior_window_volume × 100` (decimal string). `null` when prior was zero or either window is missing. |
volume. | object | |
volume. | object | This token's 24h denominated volume divided by the sum of every XRPL pair's 24h denominated volume (decimal fraction). `null` when total volume is zero or unavailable. |
txn | object | |
txn. | object | |
txn. | object | Trade count in the window, or `null` when no buckets exist for the pair in the window. |
txn. | object | `value` minus the prior-window trade count. `null` when either window has no data. |
txn. | object | Percent change vs prior window (decimal string). `null` when prior was zero or either window is missing. |
txn. | object | |
txn. | object | Trade count in the window, or `null` when no buckets exist for the pair in the window. |
txn. | object | `value` minus the prior-window trade count. `null` when either window has no data. |
txn. | object | Percent change vs prior window (decimal string). `null` when prior was zero or either window is missing. |
txn. | object | |
txn. | object | Trade count in the window, or `null` when no buckets exist for the pair in the window. |
txn. | object | `value` minus the prior-window trade count. `null` when either window has no data. |
txn. | object | Percent change vs prior window (decimal string). `null` when prior was zero or either window is missing. |
txn. | object | |
txn. | object | Trade count in the window, or `null` when no buckets exist for the pair in the window. |
txn. | object | `value` minus the prior-window trade count. `null` when either window has no data. |
txn. | object | Percent change vs prior window (decimal string). `null` when prior was zero or either window is missing. |
txn. | object | |
txn. | object | Trade count in the window, or `null` when no buckets exist for the pair in the window. |
txn. | object | `value` minus the prior-window trade count. `null` when either window has no data. |
txn. | object | Percent change vs prior window (decimal string). `null` when prior was zero or either window is missing. |
{
"asset": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"pair": {
"id": "3c4a3de8-4218-400c-8c55-87dc27206753",
"baseCurrency": "USD",
"baseIssuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"quoteCurrency": "XRP",
"quoteIssuer": null,
"createdAt": "2025-04-26T00:00:00.000Z",
"updatedAt": "2026-04-29T00:00:00.000Z"
},
"inverted": false,
"denomination": "USD",
"bridgeBase": "USD",
"asOf": 1745798400,
"price": "0.71788944",
"price_change": {
"last_5m": {
"absolute": "0",
"percent": "0"
},
"last_1h": {
"absolute": "0.00002944",
"percent": "0.00410"
},
"last_6h": {
"absolute": "0.00367611",
"percent": "0.51470"
},
"last_24h": {
"absolute": "0.01413186",
"percent": "2.00805",
"since_inception": false
},
"last_7d": {
"absolute": "0.01979611",
"percent": "2.83574",
"since_inception": false
}
},
"volume": {
"last_5m": {
"value": "2241.78",
"change_absolute": "-12258.46",
"change_percent": "-84.54"
},
"last_1h": {
"value": "26901.50",
"change_absolute": "-24427.95",
"change_percent": "-47.59"
},
"last_6h": {
"value": "241868.44",
"change_absolute": "-57655.77",
"change_percent": "-19.24"
},
"last_24h": {
"value": "1793262.59",
"change_absolute": "576262.37",
"change_percent": "47.35"
},
"last_7d": {
"value": "22423053.28",
"change_absolute": null,
"change_percent": null
},
"dominance": {
"last_24h": "0.000001484"
}
},
"txn": {
"last_5m": {
"value": 8,
"change_absolute": -34,
"change_percent": "-80.95"
},
"last_1h": {
"value": 404,
"change_absolute": -157,
"change_percent": "-27.98"
},
"last_6h": {
"value": 2666,
"change_absolute": -276,
"change_percent": "-9.38"
},
"last_24h": {
"value": 15062,
"change_absolute": 5942,
"change_percent": "65.15"
},
"last_7d": {
"value": 148574,
"change_absolute": null,
"change_percent": null
}
}
}| 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": []
}