Get v1assets
Query Parameters
Filter by asset class (e.g. lst, stable_fiat, stable_cdp,
stable_yield, synthetic_leverage). Case-sensitive match against
the engine's asset_class enum.
Filter by peg target (e.g. SOL, USD, BRL). Matches the asset's
declared peg, not its observed value.
Response
All active assets with their latest snapshot
Pyth oracle confidence bucket: high | medium | low | unknown.
Scopes the PRICE-ORACLE confidence interval only (conf/price ratio), NOT
market-quote / route-depth reliability. Omitted when no discount snapshot
exists yet. Reflects the LATEST snapshot — an omitted value means "no
current signal" and MUST NOT be rendered as a positive bucket; the client
gates on updated_at freshness before showing it (hardening H1/H9).
Peg-jitter scalar over the trailing 24h (BSRV-03): peak-to-trough
dispersion of the discount, max(max_discount) - min(min_discount),
in the same signed-fraction units as discount. A cheap stability
measure (always >= 0) computed server-side once per scan instead of
every client recomputing it from the averaged series_24h. Trailing
24h, independent of the current-snapshot freshness bound. Omitted when
no discount_1m rows exist in the window.
Stake-pool SOL per share for Sanctum LSTs (rust_decimal, serialized as
a JSON string). Omitted for non-LST assets. Reflects the LATEST intrinsic
snapshot — read together with updated_at for freshness. NAV decomposition
is intrinsic_usd = sol_per_lst × SOL/USD.
Per-asset alert thresholds, served verbatim from assets.thresholds
JSONB (BSRV-01). Two shapes pass through unchanged: bps-keyed
{"drift_bps","depeg_bps","critical_bps"} for most assets, and the
CDP collateral-ratio form {"cr_drift","cr_depeg","cr_critical", "cr_black_swan"} for hyUSD. This is the AUTHORITATIVE source the
client should key band-gauge / chart threshold lines / "closest to
breaking" sort off — replacing any hand-maintained client table. The
column is re-synced to the engine's calibrated assets.toml values by
migration 0042_resync_asset_thresholds. Omitted only if the column
is NULL (never, given the NOT NULL constraint) or fails to decode.
Worst (largest-magnitude) absolute discount observed over the trailing
24h (BSRV-02), in the same signed-fraction units as discount
(e.g. 0.0123 = 123 bps). Computed as
max(greatest(abs(min_discount), abs(max_discount))) over the
discount_1m aggregate — discount is signed, so the abs is required to
catch the worst tick in EITHER direction. Trailing 24h, INDEPENDENT of
the current-snapshot 15-min freshness bound on discount. Omitted when
no discount_1m rows exist in the window.