cipher-omnidata — x402-gated multi-source asset feed
One call, 7 data sources, $0.05 per fetch.
CoinGecko price + Helius Pyth oracle + Finnhub + Alpha Vantage fallback + FRED macro overlay + Etherscan EVM balance + Bitquery on-chain history, aggregated in parallel into a single JSON response. Pass a ticker (SOL, BTC, ETH), a Solana mint, or an EVM address.
Endpoint
GET https://cipher-omnidata.vercel.app/api/omnidata/:asset_symbol # Examples # /api/omnidata/SOL # /api/omnidata/BTC # /api/omnidata/So11111111111111111111111111111111111111112 (Solana mint) # /api/omnidata/0xdAC17F958D2ee523a2206206994597C13D831ec7 (EVM address) # # Unpaid : HTTP 402 + accept-list JSON ($0.05 USDC on Base) # Paid : HTTP 200 + aggregated JSON (failed sources null'd, documented in warnings[])
Response shape
{
"asset": "SOL",
"ts": 1745000000,
"price_usd": 245.12,
"price_sources": {
"coingecko": 245.10,
"helius_pyth": 245.15,
"finnhub": 245.08,
"alpha_vantage": null
},
"volume_24h_usd": 1234567890,
"market_cap_usd": 115000000000,
"change_24h_pct": 3.4,
"solana": { "top_holders_count": 12, "program_accounts_touched": 847, "jupiter_liquidity_bps": 2.1 },
"macro_context": { "fed_funds_rate": 3.25, "cpi_yoy_pct": 2.8, "dxy": 106.3 },
"onchain": { "etherscan_balance_eth": null, "bitquery_last_tx_ts": null },
"warnings": []
}Why this exists
An AI agent that wants a complete market + macro + on-chain snapshot for a token today has to juggle 5-7 separate free-tier API keys, handle their independent rate limits, and merge their responses. cipher-omnidata does that in one paid call. Per-asset responses are cached 60s server-side to protect upstream free-tier quotas.
Payout
x402 payout wallet (Base / USDC): 0xa0630fAD18C732e94D56d2D5F630963eb8fB9640
Part of the cipher-x402 ecosystem alongside cipher-x402, cipher-fred, and others.