Documentation / API reference / Validator
Validator Root Baskets
Last reviewed 2026-09-18
Root Reborn reinvests root dividends into a per-validator fund ("beta
basket") held under a protocol escrow account. Stakers hold shares in that
fund and redeem via claim_root.
Try it
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
hotkey | query | string | SS58 or hex format | |
page | query | integer (int32) | ||
limit | query | integer (int32) | ||
order | query | ValidatorBasketLatestOrder |
Responses
200 — Validator baskets retrieved successfully
| Field | Type | Required | Description |
|---|---|---|---|
data | array | Yes | |
data[].block_number | integer (int32) | Yes | |
data[].day | string (date), nullable | Present on the history endpoint only. | |
data[].deposited_tao | string | Yes | |
data[].holdings | array | Yes | |
data[].holdings[].alpha | string | Yes | |
data[].holdings[].netuid | integer (int32) | Yes | |
data[].holdings[].realizable_tao | string | Yes | Slippage-aware redemption value — what NAV is built from. |
data[].holdings[].spot_tao | string | Yes | Spot-marked value (price * alpha) — display only. |
data[].hotkey | object | Yes | |
data[].hotkey.hex | string | Yes | The hex format of the hot key |
data[].hotkey.ss58 | string | Yes | The SS58 format of the hot key |
data[].nav_per_share | string, nullable | nav_tao / shares. Null when the fund has no shares outstanding. | |
data[].nav_tao | string | Yes | Realizable (slippage-aware) NAV in rao — the fund's redemption value. |
data[].performance | string, nullable | (nav_tao + redeemed_tao) / deposited_tao. Null when nothing deposited. | |
data[].rate | string, nullable | Shares accrued per unit of root stake. | |
data[].redeemed_tao | string | Yes | |
data[].return_30d | string, nullable | As return_7d, over 30 days. | |
data[].return_7d | string, nullable | Period return on nav_per_share over 7 days — capital only, NOT annualised, can be negative. Null until the window has history. | |
data[].shares | string | Yes | Outstanding fund shares. |
data[].spot_nav_tao | string | Yes | Spot-marked NAV in rao — the fund's headline mark. |
data[].staker_return_30d | string, nullable | As staker_return_7d, over 30 days. | |
data[].staker_return_7d | string, nullable | twr_now / twr_then − 1 over 7 days: the chain-canonical staker yield, income and mark-to-market together. NOT annualised. Null across fund-life boundaries and until the window has history. | |
data[].timestamp | string (date-time) | Yes | |
data[].twr | string, nullable | The chain's staker total-return accumulator (BasketTwr, spec 500+). Starts at 1.0 at each fund life's baseline. Null pre-spec-500. | |
data[].twr_first_block | integer (int64), nullable | Block the current fund life's baseline was stamped at — which life twr belongs to. Two twr samples are only comparable when this matches. | |
data[].weights | array | Yes | |
data[].weights[].netuid | integer (int32) | Yes | |
data[].weights[].weight | integer (int32) | Yes | Raw u16 weight. Normalise against the vector's total for a share. |
pagination | object | Yes | |
pagination.current_page | integer (int32) | Yes | |
pagination.next_page | integer (int32), nullable | ||
pagination.per_page | integer (int32) | Yes | |
pagination.prev_page | integer (int32), nullable | ||
pagination.total_items | integer (int32) | Yes | |
pagination.total_pages | integer (int32) | Yes |
Other responses
| Status | Meaning |
|---|---|
400 | Bad request |
500 | Internal server error |
Every request needs an Authorization header holding your API key — see Getting started with the Taostats API.