Get Vault Share Price History

Returns a daily time series of share prices (USD) for a single ERC-4626 vault. Each point carries apy_trailing_7d — annualised against the sample 7 days earlier — which is null when the 7-day look-back sample is missing or the absolute APY exceeds 100 (clamped to suppress single-day pricing artifacts). Each point also carries a quality_flag describing whether the producer marked the underlying share price as trustworthy. The hoisted latest aggregate additionally surfaces apy_trailing_30d, a smoother window intended for headline / stat-tile display.

Quality filtering (default): Samples flagged as capped, diverged, or spike are dropped from the response by default so the chart line stays clean against single-day pricing artifacts and depeg-style divergences. When this happens, count will be smaller than days and filtered_count reports how many points were excluded — a visible kink in the chart line is expected and does not indicate a missed cron tick. The 7-day look-back required to compute apy_trailing_7d is not subject to the filter and does not count toward filtered_count. Set includeFlagged=true to bypass the filter and receive the raw series with every sample's quality_flag populated.

Envelope semantics: stale_reason disambiguates the four post-filter states (fresh, pipeline_lag, all_filtered, no_samples_yet); stale: boolean is preserved for back-compat (true iff stale_reason !== 'fresh'). schema_version is bumped any time the response shape changes — pin it if you're building a regression harness.

Returns 404 when the vault is not in the verified-vaults catalog; tracked vaults with no samples yet still return 200 with count: 0, latest: null, and stale_reason: 'no_samples_yet'. Cached for 5 minutes; the includeFlagged=true and default responses are cached in partitioned namespaces so they never cross-pollinate.

Path Params
string
required
^0x[a-fA-F0-9]{40}$

Vault contract address

Query Params
string
enum
required

Blockchain network where the vault is deployed

Allowed:
string
enum
Defaults to 30d

Window length to return. Defaults to 30d when omitted.

Allowed:
boolean
Defaults to false

When true, bypasses the default quality_flag allowlist filter and returns the full raw series including capped, diverged, and spike samples. Intended for power users and researchers — the default chart-friendly behavior (false) drops those samples so single-day pricing artifacts and depeg-style divergences do not show up as misleading peaks or troughs in the line. filtered_count is always 0 when this flag is true. The hoisted latest aggregate tracks the same filter: when false, latest is the most recent passing sample (quality_flag ∈ {ok, unknown}); when true, latest is the most recent sample in the raw series and may carry any quality_flag value.

Responses

latest aggregate that adds trailing 30-day APY

400

Invalid address format, missing chain parameter, or unsupported range value

404

Vault not in the verified-vaults catalog for the given address and chain

Language
Credentials
Header
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json