Catalog/chain-balances

Chain

Wallet balances API

Native balance plus ERC-20 balances for an address. Checks a curated list of major tokens per chain plus any token addresses you pass. NOT an exhaustive holdings scan (raw RPC can't enumerate every token an address holds) — the response states exactly what was checked.

Price$0.01per request
MethodPOST
Route/v1/chain/balances
StatusLive
MIME typeapplication/json
Rate limit90/minute
Cache30s public
chainbalancesportfoliowalleterc20
API URLhttps://x402.hexl.dev/v1/chain/balances
Integration docs
Example request
{
  "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
  "chain": "ethereum"
}
Example response
{
  "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
  "chain": "ethereum",
  "nativeBalance": "12.500000",
  "tokens": [
    {
      "symbol": "USDC",
      "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
      "balance": "1500.25"
    }
  ],
  "tokensChecked": 4,
  "note": "Native balance + balances for known/specified tokens. Not an exhaustive holdings scan.",
  "checkedAt": "2026-06-02T00:00:00.000Z"
}
Input schema
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{40}$"
    },
    "chain": {
      "type": "string",
      "enum": [
        "base",
        "ethereum"
      ],
      "default": "base"
    },
    "tokens": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^0x[0-9a-fA-F]{40}$"
      },
      "maxItems": 50
    }
  }
}
Output schema
{
  "type": "object",
  "required": [
    "address",
    "chain",
    "nativeBalance",
    "tokens",
    "tokensChecked",
    "note"
  ],
  "properties": {
    "address": {
      "type": "string"
    },
    "chain": {
      "type": "string"
    },
    "nativeBalance": {
      "type": "string"
    },
    "tokens": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "symbol": {
            "type": [
              "string",
              "null"
            ]
          },
          "address": {
            "type": "string"
          },
          "balance": {
            "type": "string"
          }
        }
      }
    },
    "tokensChecked": {
      "type": "number"
    },
    "note": {
      "type": "string"
    },
    "checkedAt": {
      "type": "string"
    }
  }
}