Skip to main content

On-Chain Endpoints

Real-time on-chain data polled every 60 seconds from EVM RPCs, Blockstream (Bitcoin), and Solana JSON-RPC.

GET /v1/onchain/gas

Gas prices across all 7 EVM chains.
curl "https://api.crypton.dev/v1/onchain/gas"
{
  "status": "ok",
  "timestamp": 1709640000000,
  "data": [
    {
      "chain": "arbitrum",
      "gas_gwei": 0.01,
      "block": 192000000,
      "updated_at": 1709640000
    },
    {
      "chain": "ethereum",
      "gas_gwei": 25.5,
      "block": 19500000,
      "updated_at": 1709640000
    }
  ]
}

Response Fields

chain
string
Chain name: ethereum, base, arbitrum, polygon, bsc, optimism, avalanche.
gas_gwei
number
Current gas price in Gwei.
block
number
Latest block number.
updated_at
number
Unix timestamp of last poll.

GET /v1/onchain/blocks

Block heights for all chains: 7 EVM + Bitcoin + Solana.
curl "https://api.crypton.dev/v1/onchain/blocks"
{
  "status": "ok",
  "timestamp": 1709640000000,
  "data": [
    {
      "chain": "bitcoin",
      "block_number": 840000,
      "gas_gwei": null,
      "updated_at": 1709640000
    },
    {
      "chain": "ethereum",
      "block_number": 19500000,
      "gas_gwei": 25.5,
      "updated_at": 1709640000
    },
    {
      "chain": "solana",
      "block_number": 250000000,
      "gas_gwei": null,
      "updated_at": 1709640000
    }
  ]
}

Response Fields

chain
string
Chain name. Includes all EVM chains plus bitcoin and solana.
block_number
number
Latest block number (or slot for Solana).
gas_gwei
number | null
Gas price in Gwei. null for non-EVM chains (Bitcoin, Solana).
updated_at
number
Unix timestamp of last poll.

GET /v1/onchain/supply

Stablecoin total supply across all EVM chains. Supports USDC and USDT.
# All stablecoins
curl "https://api.crypton.dev/v1/onchain/supply"

# Filter by token
curl "https://api.crypton.dev/v1/onchain/supply?token=USDC"

Query Parameters

token
string
Filter by token symbol (case-insensitive). Supported: USDC, USDT. Omit for all.
{
  "status": "ok",
  "timestamp": 1709640000000,
  "data": [
    {
      "token": "USDC",
      "chain": "ethereum",
      "total_supply": 26000000000.0,
      "updated_at": 1709640000
    },
    {
      "token": "USDC",
      "chain": "base",
      "total_supply": 3500000000.0,
      "updated_at": 1709640000
    }
  ]
}

Response Fields

token
string
Token symbol (USDC or USDT).
chain
string
Chain where the supply was measured.
total_supply
number
Total supply on that chain (human-readable, decimals applied).
updated_at
number
Unix timestamp of last poll.

GET /v1/onchain/exchange-flows

Exchange hot wallet balances on Ethereum (Binance, Coinbase).
curl "https://api.crypton.dev/v1/onchain/exchange-flows"
{
  "status": "ok",
  "timestamp": 1709640000000,
  "data": [
    {
      "label": "binance_hot",
      "chain": "ethereum",
      "eth_balance": 500000.0,
      "usdc_balance": 2000000000.0,
      "usdt_balance": 1500000000.0,
      "updated_at": 1709640000
    },
    {
      "label": "coinbase_hot",
      "chain": "ethereum",
      "eth_balance": 200000.0,
      "usdc_balance": 1000000000.0,
      "usdt_balance": 500000000.0,
      "updated_at": 1709640000
    }
  ]
}

Response Fields

label
string
Exchange wallet label (e.g., binance_hot, coinbase_hot).
chain
string
Chain (currently ethereum only).
eth_balance
number
ETH balance in the wallet.
usdc_balance
number
USDC balance (human-readable).
usdt_balance
number
USDT balance (human-readable).
updated_at
number
Unix timestamp of last poll.

Data Sources

ChainRPC SourceData
EthereumLlamaRPC, Ankr, PublicNodeGas, blocks, supply, exchange wallets
BaseLlamaRPC, Ankr, PublicNodeGas, blocks, supply
ArbitrumLlamaRPC, Ankr, PublicNodeGas, blocks, supply
PolygonLlamaRPC, Ankr, PublicNodeGas, blocks, supply
BSCLlamaRPC, Ankr, PublicNodeGas, blocks, supply
OptimismLlamaRPC, Ankr, PublicNodeGas, blocks, supply
AvalancheLlamaRPC, Ankr, PublicNodeGas, blocks, supply
BitcoinBlockstream APIBlock height, mempool
SolanaMainnet RPC, AnkrSlot height
All data polls every 60 seconds with RPC fallback (if one RPC fails, the next is tried automatically).

Live Testing

# Gas prices across all chains
curl -s "https://api.crypton.dev/v1/onchain/gas" | jq '.data[:3]'

# Block heights for all 9 chains
curl -s "https://api.crypton.dev/v1/onchain/blocks" | jq '.data'

# USDC supply per chain
curl -s "https://api.crypton.dev/v1/onchain/supply?token=USDC" | jq '.data'

# Exchange wallet balances
curl -s "https://api.crypton.dev/v1/onchain/exchange-flows" | jq '.data'