Chain-wide numbers and the API’s own health. /v1/status and /v1/chains are public and never count against your credits’ rate limit tiers.
| Endpoint | Method | Plan | Credits |
|---|---|---|---|
| Chain stats | GET /v1/{chain}/stats |
Anonymous | 1 |
| Volume history | GET /v1/{chain}/volume |
Anonymous | 1 |
| Service status | GET /v1/status |
Anonymous | 1 |
| Supported chains | GET /v1/chains |
Anonymous | 1 |
Chain stats
Section titled “Chain stats”GET /v1/{chain}/stats
Plan: Anonymous and above (no key needed) · Cost: 1 credit per call
DEX volume and trades (per DEX), traders, TVL and locked liquidity, launches and graduations per launchpad, pools, gas costs and block times over a window (1h, 24h, 7d).
DEX volume by DEX, txs, active wallets, gas (L2 + L1 base fee), TVL, new tokens / pools, launchpads, reorgs.
Parameters
Section titled “Parameters”| Name | In | Type | Default | Description |
|---|---|---|---|---|
chain |
path, required | string | Chain slug (robinhood) or chain id (4663). |
|
window |
query | string | 24h |
Stats window. One of 1h, 24h, 7d. |
Request
Section titled “Request”curl "https://api.crius.sh/v1/robinhood/stats?window=24h" \ -H "x-api-key: $CRIUS_API_KEY"const res = await fetch("https://api.crius.sh/v1/robinhood/stats?window=24h", { headers: { "x-api-key": process.env.CRIUS_API_KEY },});const { data, meta } = await res.json();import os, requests
r = requests.get( "https://api.crius.sh/v1/robinhood/stats?window=24h", headers={"x-api-key": os.environ["CRIUS_API_KEY"]},)body = r.json()print(body["data"])Example response
Section titled “Example response”Real response captured from the API (arrays trimmed to three items).
{ "data": { "blocks": { "active_wallets": 205789, "avg_block_time_ms": 101, "tps_1m": 18.8333, "txs": 2570488 }, "chain": "robinhood", "chain_id": 4663, "dex": { "by_dex": { "launch_curve": 6291.49, "pons_curve": 6266676, "uniswap_v2": 8942369, "uniswap_v3": 289370967, "uniswap_v4": 301724002 }, "traders": 133324, "trades": 1813448, "volume_usd": 606310305, "wash_volume_usd": 200421513 }, "eth_usd": 2381.97, "finalized_block": 95493649, "gas": { "avg_swap_cost_eth": 0.00000496024, "avg_swap_cost_usd": 0.0118151, "l1_base_fee_gwei": 0, "l2_gas_price_gwei": 0.02005 }, "head_block": 95504320, "l1_block": 26251549, "launchpads": [ { "graduated": 23, "launches": 1588, "launchpad": "pons", "launchpad_name": "Pons", "volume_usd": 22444782 }, { "graduated": 0, "launches": 0, "launchpad": "long", "launchpad_name": "Long.xyz", "volume_usd": 4704791 }, { "graduated": 0, "launches": 1374, "launchpad": "flap", "launchpad_name": "Flap.sh", "volume_usd": 378098 } ], "liquidity": { "locked_lp_usd": 44757959, "method": "2x quote side (ETH/WETH/USDG) of every pool; V3/V4 in-range", "tvl_usd": 261906682 }, "pools": { "by_dex": { "launch_curve": 1381, "pons_curve": 1590, "uniswap_v2": 1718, "uniswap_v3": 211, "uniswap_v4": 4574 }, "new": 9474 }, "reorgs": { "count": 0, "max_depth": 0 }, "safe_block": 95497061, "tokens": { "by_attribution": { "known_launchpad": 3025, "other": 4646 }, "new": 7671, "new_1h": 284 }, "window": "24h" }, "meta": { "block": 95504320, "block_age_ms": 1169, "block_ts": 1792712987000, "chain": "robinhood", "coverage": { "note": "aggregates cover blocks indexed since start_block until backfill completes", "since_block": 0 }, "finalized_block": 95493649, "lag_ms": 23, "safe_block": 95497061 }}Volume history
Section titled “Volume history”GET /v1/{chain}/volume
Plan: Anonymous and above (no key needed) · Cost: 1 credit per call
On-chain volume per hour or per day, in your time zone (tz), plus a weekday × hour pattern over pattern_days.
Organic DEX volume (wash round trips and mispriced outliers excluded, reported separately) for 1s, 30s, 1m, 5m, 1h, 6h, 24h, 7d, 30d, 90d, 180d with the previous window and change %; hourly and daily series; average volume by day of week and hour of day with the peak / quietest day and hour.
Parameters
Section titled “Parameters”| Name | In | Type | Default | Description |
|---|---|---|---|---|
chain |
path, required | string | Chain slug (robinhood) or chain id (4663). |
|
tz |
query | string | UTC |
IANA time zone for series and patterns, e.g. Asia/Dubai |
hours |
query | integer | 48 |
Hourly series length (max 4320) |
days |
query | integer | 30 |
Daily series length (max 365) |
pattern_days |
query | integer | 90 |
Lookback for weekday / hour-of-day patterns (7..365) |
Request
Section titled “Request”curl "https://api.crius.sh/v1/robinhood/volume?days=3" \ -H "x-api-key: $CRIUS_API_KEY"const res = await fetch("https://api.crius.sh/v1/robinhood/volume?days=3", { headers: { "x-api-key": process.env.CRIUS_API_KEY },});const { data, meta } = await res.json();import os, requests
r = requests.get( "https://api.crius.sh/v1/robinhood/volume?days=3", headers={"x-api-key": os.environ["CRIUS_API_KEY"]},)body = r.json()print(body["data"])Example response
Section titled “Example response”Real response captured from the API (arrays trimmed to three items).
{ "data": { "as_of_ts": 1792713002000, "by_hour": { "lookback_days": 90, "peak_hour": 8, "quietest_hour": 6, "rows": [ { "avg_trades": 177747, "avg_volume_usd": 36027698, "days_counted": 89, "hour": 0, "share_pct": 3.66431 }, { "avg_trades": 166744, "avg_volume_usd": 35665069, "days_counted": 89, "hour": 1, "share_pct": 3.62742 }, { "avg_trades": 162154, "avg_volume_usd": 34941948, "days_counted": 89, "hour": 2, "share_pct": 3.55388 } ] }, "by_weekday": { "lookback_days": 90, "peak_day": "wednesday", "quietest_day": "saturday", "rows": [ { "avg_trades": 4264617, "avg_volume_usd": 968689232, "day": "monday", "days_counted": 13, "share_pct": 14.3911, "total_volume_usd": 12592960015 }, { "avg_trades": 4306977, "avg_volume_usd": 952555293, "day": "tuesday", "days_counted": 13, "share_pct": 14.1514, "total_volume_usd": 12383218808 }, { "avg_trades": 4247466, "avg_volume_usd": 1315579650, "day": "wednesday", "days_counted": 13, "share_pct": 19.5446, "total_volume_usd": 17102535454 } ] }, "chain": "robinhood", "daily": { "busiest_day": { "ts": 1792454400000, "volume_usd": 785839219 }, "days": 3, "rows": [ { "buy_volume_usd": 406035573, "sell_volume_usd": 359285154, "trades": 1990123, "ts": 1792368000000, "volume_usd": 765320727, "wash_volume_usd": 51202821 }, { "buy_volume_usd": 412495058, "sell_volume_usd": 373344161, "trades": 2058495, "ts": 1792454400000, "volume_usd": 785839219, "wash_volume_usd": 63152996 }, { "buy_volume_usd": 409292682, "sell_volume_usd": 364524132, "trades": 1927963, "ts": 1792540800000, "volume_usd": 773816813, "wash_volume_usd": 250233541 } ] }, "hourly": { "busiest_hour": { "ts": 1792587600000, "volume_usd": 76065983 }, "hours": 48, "rows": [ { "buy_volume_usd": 9614183, "sell_volume_usd": 10150419, "trades": 61466, "ts": 1792537200000, "volume_usd": 19764602, "wash_volume_usd": 2319.6 }, { "buy_volume_usd": 18026939, "sell_volume_usd": 10937695, "trades": 70522, "ts": 1792540800000, "volume_usd": 28964634, "wash_volume_usd": 3969.95 }, { "buy_volume_usd": 22028599, "sell_volume_usd": 14188651, "trades": 78243, "ts": 1792544400000, "volume_usd": 36217250, "wash_volume_usd": 542.029 } ] }, "method": { "caught_up": true, "data_since_ts": 1779484440000, "live": "windows up to 1h from the live trade flow (chain time); longer windows from complete minutes plus the live flow", "outliers": "excluded: single trades valued above $25000000 (mispriced quotes), counted in outlier_trades", "table_through_ts": 1792712160000, "volume": "organic DEX volume in USD at trade time (Uniswap V2/V3/V4, launchpad curves)", "wash": "excluded: same-tx round trips — buys and sells of one token in one pool inside one tx that cancel within 2%" }, "tz": "UTC", "windows": { "180d": { "buy_volume_usd": 50850627836, "buys": 251007714, "change_pct": null, "complete": false, "outlier_trades": 762, "prev_volume_usd": null, "sell_volume_usd": 49094120147, "sells": 201749315, "tokens": 1714938, "traders": 8046201, "traders_note": "unique traders / tokens: approximate (HyperLogLog), up to the last complete minute", "trades": 452757029, "volume_usd": 99944747982, "wash_trades": 1094957, "wash_volume_usd": 42838880023 }, "1h": { "buy_volume_usd": 6521622, "buys": 27264, "change_pct": -17.6883, "complete": true, "outlier_trades": 0, "prev_volume_usd": 15480548, "sell_volume_usd": 6220679, "sells": 29534, "tokens": 1407, "traders": 13621, "trades": 56798, "volume_usd": 12742301, "wash_trades": 180, "wash_volume_usd": 17438.9 }, "1m": { "buy_volume_usd": 118041, "buys": 512, "change_pct": -15.0449, "complete": true, "outlier_trades": 0, "prev_volume_usd": 232608, "sell_volume_usd": 79571.7, "sells": 518, "tokens": 155, "traders": 655, "trades": 1030, "volume_usd": 197613, "wash_trades": 0, "wash_volume_usd": 0 }, "1s": { "buy_volume_usd": 1800.8, "buys": 10, "change_pct": -17.5412, "complete": true, "outlier_trades": 0, "prev_volume_usd": 2834.22, "sell_volume_usd": 536.265, "sells": 19, "tokens": 20, "traders": 27, "trades": 29, "volume_usd": 2337.06, "wash_trades": 0, "wash_volume_usd": 0 }, "24h": { "buy_volume_usd": 301601210, "buys": 886515, "change_pct": -21.6648, "complete": true, "outlier_trades": 0, "prev_volume_usd": 773649330, "sell_volume_usd": 304438221, "sells": 926883, "tokens": 14888, "traders": 138035, "traders_note": "unique traders / tokens: approximate (HyperLogLog), up to the last complete minute", "trades": 1813398, "volume_usd": 606039431, "wash_trades": 5664, "wash_volume_usd": 200421513 }, "30d": { "buy_volume_usd": 14140869827, "buys": 42447959, "change_pct": -36.4234, "complete": true, "outlier_trades": 71, "prev_volume_usd": 43327079234, "sell_volume_usd": 13404998806, "sells": 37205101, "tokens": 339305, "traders": 2683156, "traders_note": "unique traders / tokens: approximate (HyperLogLog), up to the last complete minute", "trades": 79653060, "volume_usd": 27545868633, "wash_trades": 291949, "wash_volume_usd": 5473124254 }, "30s": { "buy_volume_usd": 62726.6, "buys": 274, "change_pct": 26.5104, "complete": true, "outlier_trades": 0, "prev_volume_usd": 87242.2, "sell_volume_usd": 47643.9, "sells": 283, "tokens": 99, "traders": 373, "trades": 557, "volume_usd": 110370, "wash_trades": 0, "wash_volume_usd": 0 }, "5m": { "buy_volume_usd": 648763, "buys": 2364, "change_pct": -14.88, "complete": true, "outlier_trades": 0, "prev_volume_usd": 1306464, "sell_volume_usd": 463298, "sells": 2356, "tokens": 408, "traders": 2162, "trades": 4720, "volume_usd": 1112062, "wash_trades": 32, "wash_volume_usd": 168.603 }, "6h": { "buy_volume_usd": 59865359, "buys": 219376, "change_pct": -45.2913, "complete": true, "outlier_trades": 0, "prev_volume_usd": 211705646, "sell_volume_usd": 55955956, "sells": 234561, "tokens": 6654, "traders": 59706, "traders_note": "unique traders / tokens: approximate (HyperLogLog), up to the last complete minute", "trades": 453937, "volume_usd": 115821315, "wash_trades": 2261, "wash_volume_usd": 50239242 }, "7d": { "buy_volume_usd": 2606750843, "buys": 7154932, "change_pct": -7.25784, "complete": true, "outlier_trades": 1, "prev_volume_usd": 5406594475, "sell_volume_usd": 2407441833, "sells": 6604355, "tokens": 83088, "traders": 595487, "traders_note": "unique traders / tokens: approximate (HyperLogLog), up to the last complete minute", "trades": 13759287, "volume_usd": 5014192677, "wash_trades": 53285, "wash_volume_usd": 3158836968 }, "90d": { "buy_volume_usd": 44809183487, "buys": 216119667, "change_pct": null, "complete": true, "outlier_trades": 343, "prev_volume_usd": null, "sell_volume_usd": 43302190175, "sells": 172546045, "tokens": 1473185, "traders": 7252784, "traders_note": "unique traders / tokens: approximate (HyperLogLog), up to the last complete minute", "trades": 388665712, "volume_usd": 88111373662, "wash_trades": 936753, "wash_volume_usd": 40959870437 } } }, "meta": { "block": 95504461, "block_age_ms": 363, "block_ts": 1792713002000, "chain": "robinhood", "finalized_block": 95493649, "lag_ms": 4, "safe_block": 95497061 }}Service status
Section titled “Service status”GET /v1/status
Plan: Anonymous and above (no key needed) · Cost: 1 credit per call
Per-chain index health: status (live, catching_up, stalled, starting), indexed block, lag behind the chain head, safe and finalized blocks, and how many tokens, pools and addresses are indexed. Public. For uptime history and incidents see status.crius.sh.
Public, no key.
Request
Section titled “Request”curl "https://api.crius.sh/v1/status" \ -H "x-api-key: $CRIUS_API_KEY"const res = await fetch("https://api.crius.sh/v1/status", { headers: { "x-api-key": process.env.CRIUS_API_KEY },});const { data, meta } = await res.json();import os, requests
r = requests.get( "https://api.crius.sh/v1/status", headers={"x-api-key": os.environ["CRIUS_API_KEY"]},)body = r.json()print(body["data"])Example response
Section titled “Example response”Real response captured from the API (arrays trimmed to three items).
{ "data": { "chains": { "robinhood": { "addresses": 28099296, "block_age_ms": 467, "chain_id": 4663, "finalized_block": 95493649, "indexed_block": 95504215, "lag_ms": 133, "pools": 2729257, "safe_block": 95497061, "start_block": 0, "status": "live", "tokens": 2366366 } }, "region": "dxb-1", "version": "0.1.0" }}Supported chains
Section titled “Supported chains”GET /v1/chains
Plan: Anonymous and above (no key needed) · Cost: 1 credit per call
Chains this API serves, with chain id, native symbol and block time.
Request
Section titled “Request”curl "https://api.crius.sh/v1/chains" \ -H "x-api-key: $CRIUS_API_KEY"const res = await fetch("https://api.crius.sh/v1/chains", { headers: { "x-api-key": process.env.CRIUS_API_KEY },});const { data, meta } = await res.json();import os, requests
r = requests.get( "https://api.crius.sh/v1/chains", headers={"x-api-key": os.environ["CRIUS_API_KEY"]},)body = r.json()print(body["data"])Example response
Section titled “Example response”Real response captured from the API (arrays trimmed to three items).
{ "data": [ { "block_time_ms": 100, "chain_id": 4663, "name": "Robinhood Chain", "native": "ETH", "regions": [ "dxb-1" ], "slug": "robinhood", "type": "arbitrum_orbit_l2" } ]}