API
Four public endpoints, no keys, no rate cards. The same data the site renders.
Endpoints
| Route | Returns |
|---|---|
GET /api/vaults | all vaults with constituents and weights |
GET /api/vaults/:symbol | one vault by symbol, e.g. GRAD10 |
GET /api/stats | protocol-level stats and current epoch |
GET /api/chain | live block number and gas price from Robinhood Chain RPC |
Example
$ curl https://yieldetf.me/api/vaults/GRAD10
{
"symbol": "GRAD10",
"name": "Graduate Ten",
"epoch": 6,
"navPerShareEth": 1.0231,
"holdings": [
{ "ticker": "PONS", "weightBps": 1500, "pairedWith": "ETH", ... }
]
}A 404 on /api/vaults/:symbol returns a JSON error naming the valid listing route. Symbols are case-insensitive.
Caching
Registry-backed routes revalidate every 60 seconds. /api/chain revalidates every 12 seconds and degrades gracefully: if the RPC times out, ok is false and the block fields are null rather than stale.