Docs / ERC-4626 vault risk card
Meridian by MioDio gives back an ERC-4626 vault risk card: share price, drawdown, APY-style share-price lookback (not a promise), and idle cash, for $0.005 USDC on Base via x402. Positions are never invented.
Demo card includes:
vault_meta: name, symbol, asset, asset_symbol, asset_decimals, share_decimalsshare_price: assets_per_share, lookback (d1/d7/d30), drawdown_bpsapy: window, estimate_pct, method (share_price_lookback)liquidity: total_assets, idle_assets, idle_coverage_bps, amount, idle_covers_amount, noteQuery chain=base or chain=ethereum.
curl -s "https://meridian.miodiollc.com/v1/demo/vault"
curl -i "https://meridian.miodiollc.com/v1/vault/0xc1256Ae5FF1cf2719D4937adb3bbCCab2E00A2Ca?chain=base"
Unpaid -> HTTP 402 + PAYMENT-REQUIRED.
$0.005 USDC on Base (~5000 atomic). Network eip155:8453. Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. payTo 0x4DA1ED782BD61BaE9AdD5a5CaBbCf32f767f8d7F.
The apy field is a share-price lookback method, not a promise. Idle assets may understate withdrawable liquidity when the vault can unwind strategies. Always verify on-chain. Missing fields mean the read failed or was not attempted.
{
"card": "vault_risk",
"version": "0.9.0",
"status": "partial",
"chain": "base",
"vault": "0xc1256Ae5FF1cf2719D4937adb3bbCCab2E00A2Ca",
"share_price": {
"assets_per_share": "0",
"lookback": { "d1": null, "d7": null, "d30": null },
"drawdown_bps": null
},
"apy": {
"window": null,
"estimate_pct": null,
"method": "share_price_lookback"
},
"liquidity": {
"total_assets": "0",
"idle_assets": "0",
"note": "idle_assets is the underlying token balance of the vault contract. Strategy-held assets may still be withdrawable."
},
"errors": ["erc4626 snapshot failed: unknown"]
}
Unpaid calls return HTTP 402 with PAYMENT-REQUIRED. Retry with PAYMENT-SIGNATURE.