Chains API
Chain load: transactions, fees, blocks and contracts
How busy a chain is: 24h transactions and fees, block time, utilisation, all-time blocks, addresses, transactions and contracts. On SOL only all-time blocks and transactions. Not volume.
/api/external/chain-analysis/chain-activity/{chain}What it returns
The chain's own load, from its own counters (RHC: its block explorer; SOL: the chain itself) — no token, wallet or pool in the question. RHC and SOL; every other chain returns 400. On SOL only totals.blocks (blocks produced; skipped slots add none, so this trails the slot number) and totals.transactions (vote transactions included) are published — every other field is null there, because no source counts them for SOL. Counts EVERY transaction of any kind, not only trades: for traded volume and trade counts use chain-stats. totals are all-time; last24h is a rolling 24-hour window, not a calendar day. Fees are in wei of the chain's native coin, as decimal strings. On RHC the figures come from three independent parts (all-time totals with block time and utilisation; the 24-hour transactions and fees; the contract counts): when one part cannot be read its fields are null and the others still answer, so a null here means "not available right now", never zero. When a part is served from its backup, its figures can trail the chain by about an hour, and utilisation is then null. More contracts can be verified in a day than are deployed: verification of older contracts counts too.
Chains
- Solana SOL
- Robinhood Chain RHC
Request
Send your key in the x-dex-data-key header. Replace each <placeholder> with a real value.
curl -H "x-dex-data-key: $DEXDATA_API_KEY" \ "https://api.dexdata.io/api/external/chain-analysis/chain-activity/SOL"
| Parameter | Description |
|---|---|
chainpath · string · required | RHC and SOL; every other chain returns 400, because no wired source publishes these chain-wide counters for it. On SOL only the all-time block and transaction totals are published. |
Response fields
A JSON response. Every field is always present; null means the value could not be established, never zero.
| Field | Type | Description |
|---|---|---|
totals | object | All-time counts. |
totals.blocks | integer | null | Blocks produced since genesis. |
totals.addresses | integer | null | Addresses that have ever taken part in a transaction. |
totals.transactions | integer | null | Transactions ever included, of every kind. |
totals.contracts | integer | null | Contracts ever deployed. |
totals.verifiedContracts | integer | null | Contracts whose source code is verified. |
last24h | object | The trailing 24 hours, a rolling window. |
last24h.transactions | integer | null | Transactions included in the last 24 hours, of every kind. |
last24h.feesWei | string | null | Fees those transactions paid, in wei of the native coin, as a decimal string. |
last24h.averageFeeWei | string | null | The mean fee per transaction over the same window, in wei, truncated to a whole wei. |
last24h.newContracts | integer | null | Contracts deployed in the last 24 hours. |
last24h.newVerifiedContracts | integer | null | Contracts verified in the last 24 hours — older contracts included, so this can exceed newContracts. |
averageBlockTimeMs | number | null | Mean time between recent blocks, in milliseconds. |
networkUtilizationPct | number | null | Gas used by recent blocks as a percentage (0–100) of their gas limit. On RHC the block gas limit is set far above any real load, so this reads near zero by construction and is not a measure of congestion. |
Start building with DexData today
Sign in, create a key and make your first call in a minute. Free credits every month, and you only pay for calls that succeed.
Get a free API key