Vaults API

Yield, TVL and share price for DeFi vaults and lending markets, with history and network reference rates.

Every figure is read from the vault contracts themselves, once a day at 00:00 UTC, and served from Syncrone's benchmark index. Each endpoint page has a Try it panel: paste an API key and call it from the browser.

Authentication#

Send the key in the x-api-key header. The base URL is https://api-v2.syncrone.fi/api/catalog. Vaults are addressed as {network}/{vaultId}: the network name, CAIP-2 id or chain id, then the vault address.

Conventions#

  • APY values are fractions: 0.0412 is 4.12%. base is the vault's share-price growth over the window, annualised and TVL-weighted, so it is net of every fee the vault charges. reward is on-chain incentives. total is base + reward.
  • Windows are trailing 1, 7 and 30 days, ending at the vault's latest daily point (00:00 UTC). A window is null until the vault has that much history.
  • TVL usd is whole dollars. TVL native is in the asset's base units (wei for an 18-decimal token).
  • Timestamps are Unix seconds.
  • Lists page with page (from 0) and perPage (up to 1000). nextPage is present while more items exist.
  • Freshness: isStale marks a vault that missed an indexing run. Vaults registered but not indexed yet are not listed. GET /health returns 503 when data is stale, so it can drive an alert.

General#

Reference data: the vaults, assets, networks, tags, curators and protocols the catalog covers, and service health. Use these to browse coverage and fill filter dropdowns.

CapabilityHow to callRequired inputs
List supported vault identifiersGET /vaults

Optional query: page, perPage, network, assetSymbol.

List supported assets and tokensGET /assets

Optional query: page, perPage, network.

List supported networksGET /networks

None.

List vault tagsGET /tags

None.

List vault curatorsGET /curators

None.

List supported protocols and their filterable protocol IDsGET /protocols

None.

Check API availabilityGET /health

None.

Advanced Vaults#

The full vault object: asset, protocol, tags, APY over 1, 7 and 30 days, TVL, curator and fees. APY is net of every fee the vault charges; the fees object is for display only.

CapabilityHow to callRequired inputs
List and filter vaults with full analyticsGET /advanced-vaults

Optional query: page, perPage, allowedNetworks, disallowedNetworks, allowedAssets, disallowedAssets, allowedProtocols, disallowedProtocols, minTvl, maxTvl, minApy, maxApy, tags, curators, sortBy, sortOrder.

Get one vault's full detail objectGET /advanced-vaults/{network}/{vaultId}

Path: network, vaultId.

Get one vault's APY breakdownGET /advanced-vaults/{network}/{vaultId}/apy

Path: network, vaultId.

Get one vault's TVL dataGET /advanced-vaults/{network}/{vaultId}/tvl

Path: network, vaultId.

Get one vault's return and risk metricsGET /advanced-vaults/{network}/{vaultId}/risk

Path: network, vaultId. Optional query: window, fromTimestamp, toTimestamp, riskFreeRate, sortinoMar, spikeMinMove, jumpMinMove.

List where vaults' assets sit, with utilization and drawdownsGET /allocation

Optional query: page, perPage, select, allowedNetworks, allowedProtocols, sortBy, sortOrder.

Get where one vault's assets sitGET /allocation/{network}/{vaultId}

Path: network, vaultId. Optional query: select.

Historical#

Time series per vault: APY, TVL and share price per point, and the USD price of the vault's asset.

CapabilityHow to callRequired inputs
Fetch combined APY, TVL, and share-price historyGET /historical/{network}/{vaultId}

Path: network, vaultId. Optional query: page, perPage, fromTimestamp, toTimestamp, granularity, apyInterval.

Fetch APY history onlyGET /historical/{network}/{vaultId}/apy

Path: network, vaultId. Optional query: page, perPage, fromTimestamp, toTimestamp, granularity, apyInterval.

Fetch TVL history onlyGET /historical/{network}/{vaultId}/tvl

Path: network, vaultId. Optional query: page, perPage, fromTimestamp, toTimestamp, granularity.

Fetch share-price history onlyGET /historical/{network}/{vaultId}/sharePrice

Path: network, vaultId. Optional query: page, perPage, fromTimestamp, toTimestamp, granularity.

Fetch historical underlying asset pricesGET /historical/asset-prices/{network}/{assetAddress}

Path: network, assetAddress. Optional query: page, perPage, fromTimestamp, toTimestamp, granularity.

Benchmarks#

Network reference rates: the baseline yield of USD and ETH deposits on one chain, current and daily history.

CapabilityHow to callRequired inputs
Fetch the current benchmark rate for a networkGET /benchmarks/{network}

Path: network. Query: code.

Fetch historical benchmark rates for a networkGET /historical-benchmarks/{network}

Path: network. Query: code. Optional query: fromTimestamp, toTimestamp, page, perPage.

Fixed Term#

Pendle principal-token (PT) markets: the fixed APY a buyer locks in until expiry, with TVL and liquidity. One entry per maturity; markets are read once a day at 00:00 UTC.

CapabilityHow to callRequired inputs
List active Pendle PT markets with fixed APY, expiry, TVL and liquidityGET /fixed-term

Optional query: page, perPage, allowedNetworks, disallowedNetworks, allowedAssets, disallowedAssets, allowedProtocols, disallowedProtocols, minTvl, search, sortBy, sortOrder.

Get one Pendle PT marketGET /fixed-term/detailed/{network}/{vaultId}

Path: network, vaultId.

Errors#

Failed requests return JSON with error. 400 means a parameter is invalid or the network is unknown, 401 means the key is missing or rejected, 404 means no vault, asset or rate matched, and 500 means the service failed.