# Arbitrum On-Chain API
> Live Arbitrum One on-chain data as an API, built on the open Blockscout explorer. Arbitrum is the largest Ethereum Layer-2 by total value locked (chain id 42161); gas and balances are denominated in ETH and fees are a fraction of mainnet. Pull network stats (total blocks and transactions, ETH price, live gas), a gas oracle with slow, average and fast prices in gwei, the most recent blocks and full block detail by height or hash. Look up any address for its ETH balance and contract status, any transaction by hash for its value, fee, status, sender and receiver, and any ERC-20 token by contract for its name, symbol, decimals, holders and USD rate. A universal search resolves addresses, tokens, blocks and transactions in one call. Real on-chain data, no key needed upstream. Ideal for Arbitrum wallets, block explorers, gas trackers, DeFi dashboards and on-chain analytics.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/arbitrum-api/..."
```

## Pricing
- **Free** (Free) — 7,500 calls/Mo, 2 req/s
- **Starter** ($6/Mo) — 105,000 calls/Mo, 8 req/s
- **Pro** ($23/Mo) — 580,000 calls/Mo, 25 req/s
- **Mega** ($78/Mo) — 2,900,000 calls/Mo, 50 req/s

## Endpoints

### Arbitrum

#### `GET /v1/address` — Address balance & contract info

**Parameters:**
- `address` (query, required, string) — An Arbitrum address (0x + 40 hex) Example: `0xaf88d065e77c8cC2239327C5EDb3A432268e5831`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/address?address=0xaf88d065e77c8cC2239327C5EDb3A432268e5831"
```

**Response:**
```json
{
    "data": {
        "address": {
            "ens": null,
            "hash": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
            "name": "USDC",
            "token": {
                "name": "USDC",
                "type": "ERC-20",
                "symbol": "USDC"
            },
            "creator": "0x75237625cc7bDf0739cBb139b06484E05eEE7878",
            "balance_eth": 0,
            "balance_wei": "0",
            "is_contract": true,
            "is_verified": true
        }
    },
    "meta": {
        "timestamp": "2026-06-08T01:18:56.384Z",
        "request_id": "1cededd4-629e-4c78-aeda-e9401bfd03da"
    },
    "status": "ok",
    "message": "Address retrieved successfully",
    "success": true
}
```

#### `GET /v1/block` — Block detail by height or hash

**Parameters:**
- `height` (query, optional, string) — Block height, e.g. 200000000 Example: `200000000`
- `hash` (query, optional, string) — Block hash (alternative to height)

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/block?height=200000000"
```

**Response:**
```json
{
    "data": {
        "block": {
            "hash": "0xfbb039d0d0e358b4d65f3df3058026fe5576beee3ed1fa2c1ad677d2efe0f3c1",
            "size": 801,
            "miner": "0xA4b000000000000000000073657175656e636572",
            "height": 200000000,
            "gas_used": 55132,
            "tx_count": 2,
            "gas_limit": 1125899906842624,
            "timestamp": "2024-04-11T19:09:12.000000Z",
            "burnt_fees": "551320000000",
            "difficulty": "1",
            "base_fee_per_gas": "10000000"
        }
    },
    "meta": {
        "timestamp": "2026-06-08T01:18:56.721Z",
        "request_id": "f0aa7f06-5cfb-49c3-8e4a-c2725dde63f0"
    },
    "status": "ok",
    "message": "Block retrieved successfully",
    "success": true
}
```

#### `GET /v1/blocks` — The most recent blocks

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/blocks"
```

**Response:**
```json
{
    "data": {
        "count": 50,
        "blocks": [
            {
                "hash": "0x9fe6ff3aaf36b0cd3c66ec6999ac0d63b1c7c2640cd0b439cb6d808e23cb3567",
                "size": 1334,
                "miner": "0xA4b000000000000000000073657175656e636572",
                "height": 471183140,
                "gas_used": 53517,
                "tx_count": 2,
                "gas_limit": 1125899906842624,
                "timestamp": "2026-06-08T01:18:55.000000Z",
                "burnt_fees": "1070554068000",
                "difficulty": "1",
                "base_fee_per_gas": "20004000"
            },
            {
                "hash": "0x61b6bc73854d6fa97e71086404c08571594c17e806bb707ed6ff63d1eeb0cff7",
                "size": 5114,
                "miner": "0xA4b000000000000000000073657175656e636572",
                "height": 471183139,
                "gas_used": 556164,
                "tx_count": 4,
                "gas_limit": 1125899906842624,
                "timestamp": "2026-06-08T01:18:55.000000Z",
                "burnt_fees": "11123280000000",
                "difficulty": "1",
                "base_fee_per_gas": "20000000"
            },
            {
                "hash": "0x5b40c989a420a1d499c54ab2e1d5898d03ce8fece370867a4b8bff2f60f6447e",
                "size": 1179,
                "miner": "0xA4b000000000000000000073657175656e636572",
                "height": 471183138,
                "gas_used": 118410,
                "tx_count": 4,
  
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/gas` — Gas oracle (gwei)

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/gas"
```

**Response:**
```json
{
    "data": {
        "fast": 0.13,
        "slow": 0.03,
        "unit": "gwei",
        "average": 0.05,
        "gas_used_today": "387418044763"
    },
    "meta": {
        "timestamp": "2026-06-08T01:18:57.855Z",
        "request_id": "01304f17-c957-4ad6-8f7d-ec4655d0b164"
    },
    "status": "ok",
    "message": "Gas retrieved successfully",
    "success": true
}
```

#### `GET /v1/search` — Search addresses, tokens, blocks & txns

**Parameters:**
- `q` (query, required, string) — Search term, e.g. USDC Example: `USDC`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/search?q=USDC"
```

**Response:**
```json
{
    "data": {
        "count": 50,
        "query": "USDC",
        "results": [
            {
                "name": "USDC",
                "type": "token",
                "symbol": "USDC",
                "address": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831"
            },
            {
                "name": "Arbitrum Bridged USDC (Arbitrum)",
                "type": "token",
                "symbol": "USDC.E",
                "address": "0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8"
            },
            {
                "name": "kpk USDC Yield V2 Morpho Vault (Arbitrum)",
                "type": "token",
                "symbol": "KPK_USDC_YIELDV2",
                "address": "0x5837e4189819637853a357aF36650902347F5e73"
            },
            {
                "name": "Wrapped Aave Arbitrum USDCn",
                "type": "token",
                "symbol": "WAARBUSDCN",
                "address": "0x7F6501d3B98eE91f9b9535E4b0ac710Fb0f9e0bc"
            },
            {
                "name": "aarna atv USDC (Arbitrum)",
                "type": "token",
                "symbol": "ATVUSDC",
                "address": "0x15F7AD22Caa786B1237B27d4324c7E4a93c5e66b"
            },
            {
                "name": "Gains Network USDC",
                "type": "token",
                "symbol": "GUSDC",
                "address": "0xd3443ee1e91aF28e5FB858Fbd0D72A63bA8046E0"
            },
            {
                "name": "Curve.fi USDC/USDT",
          
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/stats` — Network stats

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/stats"
```

**Response:**
```json
{
    "data": {
        "tvl_usd": null,
        "gas_prices": {
            "fast": 0.13,
            "slow": 0.03,
            "average": 0.05
        },
        "total_blocks": 471144122,
        "coin_price_usd": 1690.72,
        "gas_used_today": "387418044763",
        "market_cap_usd": 204043727581.98523,
        "total_addresses": "119275380",
        "total_transactions": "2644473726",
        "transactions_today": "1804551",
        "network_utilization_percent": 1.3118808439571694e-7
    },
    "meta": {
        "timestamp": "2026-06-08T01:18:58.603Z",
        "request_id": "cc1fc349-5891-4481-9663-417bb62d9ef7"
    },
    "status": "ok",
    "message": "Stats retrieved successfully",
    "success": true
}
```

#### `GET /v1/token` — ERC-20 token detail by contract

**Parameters:**
- `address` (query, required, string) — Token contract address Example: `0xaf88d065e77c8cC2239327C5EDb3A432268e5831`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/token?address=0xaf88d065e77c8cC2239327C5EDb3A432268e5831"
```

**Response:**
```json
{
    "data": {
        "token": {
            "icon": "https://assets.coingecko.com/coins/images/6319/small/USDC.png?1769615602",
            "name": "USDC",
            "type": "ERC-20",
            "symbol": "USDC",
            "holders": null,
            "decimals": 6,
            "total_supply": "4033684403216959",
            "exchange_rate_usd": 0.999728,
            "circulating_market_cap": "75660756426.20294"
        }
    },
    "meta": {
        "timestamp": "2026-06-08T01:18:58.741Z",
        "request_id": "01f6718d-7d07-4e84-adf7-6567fc4238b6"
    },
    "status": "ok",
    "message": "Token retrieved successfully",
    "success": true
}
```

#### `GET /v1/transaction` — Transaction detail by hash

**Parameters:**
- `hash` (query, required, string) — A transaction hash (0x + 64 hex) Example: `0x6d9e6dff49f56c21aec680f677e8d3a1dd76edeb9b0609a9512ed4b67334e2ad`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/transaction?hash=0x6d9e6dff49f56c21aec680f677e8d3a1dd76edeb9b0609a9512ed4b67334e2ad"
```

**Response:**
```json
{
    "data": {
        "transaction": {
            "to": "0x00000000000000000000000000000000000A4B05",
            "from": "0x00000000000000000000000000000000000A4B05",
            "hash": "0x6d9e6dff49f56c21aec680f677e8d3a1dd76edeb9b0609a9512ed4b67334e2ad",
            "type": 106,
            "block": 200000000,
            "nonce": 0,
            "method": "startBlock",
            "status": "ok",
            "fee_eth": 0,
            "fee_wei": "0",
            "gas_used": 0,
            "gas_price": "10000000",
            "timestamp": "2024-04-11T19:09:12.000000Z",
            "value_eth": 0,
            "value_wei": "0",
            "confirmations": 271183161
        }
    },
    "meta": {
        "timestamp": "2026-06-08T01:19:01.305Z",
        "request_id": "7cdf4b57-ba7a-4344-bd68-eb07bd1069f5"
    },
    "status": "ok",
    "message": "Transaction retrieved successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Service description & endpoints

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/arbitrum-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "service": "arbitrum-api",
        "endpoints": {
            "GET /v1/gas": "Gas oracle (slow/average/fast in gwei).",
            "GET /v1/meta": "This document.",
            "GET /v1/block": "Block detail by height= or hash=.",
            "GET /v1/stats": "Network stats (blocks, txns, coin price, market cap, gas).",
            "GET /v1/token": "ERC-20 token detail by contract (address=).",
            "GET /v1/blocks": "The most recent blocks.",
            "GET /v1/search": "Search addresses, tokens, blocks & txns (q=).",
            "GET /v1/address": "Address balance, ENS & contract info (address=).",
            "GET /v1/transaction": "Transaction detail (hash=)."
        },
        "description": "Live Arbitrum One (L2) on-chain data via Blockscout: network stats, a gas oracle (gwei), recent blocks and block detail, address balances with ENS, transaction detail, ERC-20 token detail and a universal search across addresses, tokens, blocks and transactions. Arbitrum is an Ethereum L2; gas and balances are in ETH. Real on-chain data, no key."
    },
    "meta": {
        "timestamp": "2026-06-08T01:19:01.424Z",
        "request_id": "7f592643-d101-4912-a1c9-828ec8fddfbf"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/arbitrum-api
OpenAPI spec: https://www.oanor.com/api/arbitrum-api/openapi.json
