Unified Data APIs

All blockchain data, one API call

Token balances, NFT metadata, and transfer history across 100+ chains. No indexing, no subgraphs, no infrastructure to manage. Query any onchain data with a single REST call.

Three APIs, complete coverage

Bootnode Data APIs handle the complex indexing, caching, and normalization so you never have to decode raw logs or parse transaction receipts again.

Token API

Retrieve ERC-20 and native token balances, metadata, historical prices, and allowances for any address on any supported chain. A single call returns everything your portfolio view needs.

  • Balances for all tokens owned by an address in one call
  • Real-time and historical USD prices with 1-minute granularity
  • Full token metadata: name, symbol, decimals, logo URI
  • ERC-20 allowance lookups for spender contracts
  • Cross-chain balances aggregated in a single response
GET /v1/tokens/balances
curl "https://api.bootnode.dev/v1/tokens/balances?\
  address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&\
  chains=ethereum,base,arbitrum" \
  -H "X-API-Key: YOUR_API_KEY"

{
  "address": "0xd8dA6BF2...",
  "balances": [
    {
      "chain": "ethereum",
      "token": "0xA0b8...ec7",
      "symbol": "USDC",
      "name": "USD Coin",
      "decimals": 6,
      "balance": "125430000000",
      "balanceFormatted": "125430.0",
      "priceUsd": 1.0001,
      "valueUsd": 125442.53
    },
    {
      "chain": "ethereum",
      "token": "native",
      "symbol": "ETH",
      "decimals": 18,
      "balance": "4200000000000000000",
      "balanceFormatted": "4.2",
      "priceUsd": 3245.67,
      "valueUsd": 13631.81
    }
  ],
  "totalValueUsd": 139074.34
}
GET /v1/nfts/owned
curl "https://api.bootnode.dev/v1/nfts/owned?\
  address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&\
  chain=ethereum&limit=2" \
  -H "X-API-Key: YOUR_API_KEY"

{
  "address": "0xd8dA6BF2...",
  "chain": "ethereum",
  "nfts": [
    {
      "contract": "0xBC4CA0...a426f2",
      "tokenId": "8520",
      "standard": "ERC-721",
      "collection": "Bored Ape Yacht Club",
      "name": "BAYC #8520",
      "image": "https://media.bootnode.dev/ipfs/Qm...",
      "attributes": [
        { "trait_type": "Fur", "value": "Dark Brown" },
        { "trait_type": "Eyes", "value": "Bored" }
      ],
      "floorPrice": { "value": "12.4", "currency": "ETH" }
    }
  ],
  "totalCount": 47,
  "cursor": "eyJsYXN0X2lk..."
}

NFT API

Fetch NFTs owned by any address, collection metadata, individual token details, and transfer history. Media files from IPFS and Arweave are resolved and cached through our CDN for instant loading.

  • Owned NFTs with full metadata and resolved media
  • IPFS and Arweave gateway with global CDN caching
  • Collection-level data: floor price, supply, holders
  • ERC-721 and ERC-1155 support with trait parsing
  • Spam detection filters out known scam tokens

Transfers API

Query the complete transfer history for any address, contract, or token. Filter by direction, asset type, block range, or counterparty. Results include decoded event data and USD values at time of transfer.

  • ERC-20, ERC-721, ERC-1155, and native transfers
  • Internal (trace-level) transfers included
  • Filter by from/to address, token, block range
  • USD value at the time of each transfer
  • Cursor-based pagination for large histories
GET /v1/transfers
curl "https://api.bootnode.dev/v1/transfers?\
  address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&\
  chain=ethereum&category=erc20&limit=2" \
  -H "X-API-Key: YOUR_API_KEY"

{
  "transfers": [
    {
      "hash": "0x3a1b...",
      "blockNumber": 19234567,
      "timestamp": "2025-01-15T14:23:01Z",
      "from": "0xd8dA6BF2...",
      "to": "0x7a250d56...",
      "category": "erc20",
      "token": {
        "address": "0xA0b8...ec7",
        "symbol": "USDC",
        "decimals": 6
      },
      "value": "50000000000",
      "valueFormatted": "50000.0",
      "valueUsd": 50005.0
    }
  ],
  "cursor": "eyJibG9ja..."
}

Why developers choose Bootnode Data

Cross-Chain by Default

Every endpoint accepts a chains parameter. Query Ethereum, Base, Arbitrum, Polygon, and 96 more networks with the same request format and API key.

Real-Time Indexing

Data is available within seconds of block confirmation. No waiting for subgraph sync or indexer catch-up. You always get the latest state.

Rich Filtering

Filter by token address, block range, transfer direction, asset category, and more. Get exactly the data you need without client-side post-processing.

Normalized Responses

Consistent JSON schemas across all chains. Token decimals are always formatted, addresses are checksummed, and timestamps follow ISO 8601.

Spam Filtering

Known spam tokens and phishing NFTs are automatically filtered. Opt in or out of spam filtering per request with a single query parameter.

Batch Support

Query multiple addresses or tokens in a single request. Reduce round trips by up to 100x when building portfolio views or dashboards.

Stop building infrastructure. Start building products.

Replace your indexing pipeline with a single API call. Free tier includes 100M compute units per month and access to all Data APIs.