The API returns JSON. It does not return meaning. That is your problem.Read access to prices, Dex Traded Fund (DTF) NAV, portfolios, backtesting, and lending positions. No authentication for read endpoints. No opinions in the response body.
The data node speaks HTTP. The browser demands HTTPS. Mixed content is blocked. The proxy resolves the contradiction. Browser ---- HTTPS ----> /api/itp-price | (server-side) | HTTP -----> data-node:8200/itp-price HTTP -----> L3 RPC (fallback)
Two proxy patterns:
1. DEDICATED ROUTES Each has its own logic, caching, validation /api/itp-price Tries data-node, falls back to on-chain RPC /api/itp-enrichment Aggregates data-node + CoinGecko + DeFiLlama /api/deployment Reads deployment JSON from filesystem /api/faucet Directly calls L3 + Settlement RPC (writes) /api/explorer/health Token-authenticated proxy to data-node /api/market/history Proxy to data-node market price history 2. CATCH-ALL PROXY Transparent pass-through for any path /api/dn/[...path] Forwards to DATA_NODE:8200/{path} Supports SSE streaming (backtest progress) 5-minute timeout for long simulations
METHOD PATH UPSTREAM DESCRIPTION ------ ---------------------------- ---------------- -------------------------------- GET /api/itp-price Data Node + RPC ITP NAV with on-chain fallback GET /api/itp-enrichment DN + CG + DeFi Holdings, founders, TVL, funding GET /api/deployment Filesystem Contract deployment addresses GET /api/market/history Data Node Historical market price series GET /api/explorer/health Data Node (auth) System health metrics POST /api/faucet L3 + Settlement Testnet USDC mint + gas drip GET /api/dn/{path} Data Node Catch-all proxy (supports SSE)
METHOD PATH UPSTREAM DESCRIPTION ------ ---------------------------- ---------------- -------------------------------- GET /api/vision/batches Oracle API List active prediction batches POST /api/vision/bitmap All Oracles Fan-out bitmap submission GET /api/vision/leaderboard Oracle API Player PnL rankings GET /api/vision/snapshot Data Node Market price snapshots GET /api/vision/snapshot/meta Data Node Source health + asset counts