Get benchmark rate
Fetch the current benchmark rate for a network.
https://api-v2.syncrone.fi/api/catalog/benchmarks/{network}The newest complete daily reference rate of the network. Per window, the five largest vaults in that currency by TVL, each holding at least $1M and earning more than 1 bp, weighted by TVL. Markets that pay nothing on the deposit itself, such as wstETH collateral reserves, fall out on the APY floor; raw Morpho Blue markets are left out because depositors reach them through curated vaults. A day still being indexed is skipped for the previous complete one.
Try it#
Example#
A real response to the pre-filled Try it request, recorded from Syncrone data. Values move with every indexing run.
GET /benchmarks/mainnet?code=usd{
"apy": {
"1day": {
"base": 0.036831277283103064,
"reward": 0,
"total": 0.036831277283103064
},
"7day": {
"base": 0.03944309109368889,
"reward": 0,
"total": 0.03944309109368889
},
"30day": {
"base": 0.03646221077789311,
"reward": 0,
"total": 0.03646221077789311
}
},
"timestamp": 1791849600,
"isStale": false,
"isComplete": true,
"constituents": {
"1day": [
{
"vaultId": "0xa3931d71877C0E7a3148CB7Eb4463524FEc27fbD",
"slug": "sky-eth-usds-ssr",
"tvlUsd": 4835596836.414153,
"weight": 0.4151672892331823
},
{
"vaultId": "0x23878914EFE38d27C4D67Ab83ed1b93A74D4086a",
"slug": "aave-v3-eth-usdt",
"tvlUsd": 2732125396.150471,
"weight": 0.23457065031212568
},
{
"vaultId": "0x98C23E9d8f34FEFb1B7BD6a91B7FF122F4e16F5c",
"slug": "aave-v3-eth-usdc",
"tvlUsd": 2268702789.5065317,
"weight": 0.1947828197963764
},
{
"vaultId": "0xa4f02d2a0A763deB1F7Ee3e1f9B9af43B8B2bbF2",
"slug": "spark-eth-usds",
"tvlUsd": 1336458925.5137367,
"weight": 0.11474364965638507
},
{
"vaultId": "0x6dC58a0FdfC8D694e571DC59B9A52EEEa780E6bf",
"slug": "morpho-v2-mainnet-sentora-main-rlusd",
"tvlUsd": 474461500.428471,
"weight": 0.040735591001930645
}
],
"7day": [
{
"vaultId": "0xa3931d71877C0E7a3148CB7Eb4463524FEc27fbD",
"slug": "sky-eth-usds-ssr",
"tvlUsd": 4835596836.414153,
"weight": 0.4151672892331823
},
{
"vaultId": "0x23878914EFE38d27C4D67Ab83ed1b93A74D4086a",
"slug": "aave-v3-eth-usdt",
"tvlUsd": 2732125396.150471,
"weight": 0.23457065031212568
},
{
"vaultId": "0x98C23E9d8f34FEFb1B7BD6a91B7FF122F4e16F5c",
"slug": "aave-v3-eth-usdc",
"tvlUsd": 2268702789.5065317,
"weight": 0.1947828197963764
},
{
"vaultId": "0xa4f02d2a0A763deB1F7Ee3e1f9B9af43B8B2bbF2",
"slug": "spark-eth-usds",
"tvlUsd": 1336458925.5137367,
"weight": 0.11474364965638507
},
{
"vaultId": "0x6dC58a0FdfC8D694e571DC59B9A52EEEa780E6bf",
"slug": "morpho-v2-mainnet-sentora-main-rlusd",
"tvlUsd": 474461500.428471,
"weight": 0.040735591001930645
}
],
"30day": [
{
"vaultId": "0xa3931d71877C0E7a3148CB7Eb4463524FEc27fbD",
"slug": "sky-eth-usds-ssr",
"tvlUsd": 4835596836.414153,
"weight": 0.4151672892331823
},
{
"vaultId": "0x23878914EFE38d27C4D67Ab83ed1b93A74D4086a",
"slug": "aave-v3-eth-usdt",
"tvlUsd": 2732125396.150471,
"weight": 0.23457065031212568
},
{
"vaultId": "0x98C23E9d8f34FEFb1B7BD6a91B7FF122F4e16F5c",
"slug": "aave-v3-eth-usdc",
"tvlUsd": 2268702789.5065317,
"weight": 0.1947828197963764
},
{
"vaultId": "0xa4f02d2a0A763deB1F7Ee3e1f9B9af43B8B2bbF2",
"slug": "spark-eth-usds",
"tvlUsd": 1336458925.5137367,
"weight": 0.11474364965638507
},
{
"vaultId": "0x6dC58a0FdfC8D694e571DC59B9A52EEEa780E6bf",
"slug": "morpho-v2-mainnet-sentora-main-rlusd",
"tvlUsd": 474461500.428471,
"weight": 0.040735591001930645
}
]
}
}Parameters#
| Name | Type | Description |
|---|---|---|
| networkpathrequired | string | Network name ( |
| codequeryrequired | stringusd | eth | Reference rate currency. |
Response#
200 returns JSON with these fields. APY values are fractions (0.04 = 4%); timestamps are Unix seconds.
| Field | Type | Description |
|---|---|---|
| apy.1day | object | null | Window rate. Null when no vault qualifies for that window. |
| apy.1day.base | number | TVL-weighted mean base APY of the window's constituents. |
| apy.1day.reward | number | TVL-weighted mean reward APY of the window's constituents. |
| apy.1day.total | number |
|
| apy.7day | object | null | Window rate. Null when no vault qualifies for that window. |
| apy.7day.base | number | TVL-weighted mean base APY of the window's constituents. |
| apy.7day.reward | number | TVL-weighted mean reward APY of the window's constituents. |
| apy.7day.total | number |
|
| apy.30day | object | null | Window rate. Null when no vault qualifies for that window. |
| apy.30day.base | number | TVL-weighted mean base APY of the window's constituents. |
| apy.30day.reward | number | TVL-weighted mean reward APY of the window's constituents. |
| apy.30day.total | number |
|
| timestamp | integer | Day of the rate, Unix seconds (00:00 UTC). |
| isComplete | boolean | True once vaults holding 90% of the previous day's TVL have reported that day. A day still being indexed is false. |
| isStale | boolean | True when the day is more than 2 days old: the network's vaults stopped being indexed. |
| constituents | object | Per window ( |
Errors#
| Status | Meaning |
|---|---|
| 400 | Invalid query or path parameter, or unknown network. |
| 401 | Missing or rejected API key. |
| 404 | No vault in that currency qualifies on the network in the last 14 days. |
| 429 | Too many requests from the docs playground. Wait a minute. |
| 500 | The service failed. |
Error bodies carry error and, for invalid parameters, details.