# IOTA EVM Chain API
> Live on-chain data for IOTA EVM — the EVM Layer 1 of the IOTA network — via its public Blockscout explorer (no wallet, no key). The stats endpoint returns chain-wide totals (blocks, transactions, addresses, average block time, gas used); gas gives the current gas-price oracle (slow/average/fast). Blocks lists the latest blocks, and a single block resolves by height or by hash with its transaction count, gas, validator and timestamp. The address endpoint returns any account's IOTA balance, nonce, contract flag and token holdings; transaction resolves a tx by hash with its from/to, value in IOTA, fee, status and block. The token endpoint returns an ERC-20 token's metadata (name, symbol, decimals, total supply, holders) by contract address, and search runs a universal lookup across addresses, tokens, blocks and transactions. Gas, balances, values and fees are denominated in IOTA, the native coin. Real on-chain data straight from the explorer, refreshed every call — no key. 9 endpoints. For multi-chain coverage combine with the other oanor chain APIs (Ethereum, Base, Arbitrum and more).

## 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/iotaevm-api/..."
```

## Pricing
- **Free** (Free) — 5,000 calls/Mo, 2 req/s
- **Basic** ($31/Mo) — 144,000 calls/Mo, 8 req/s
- **Pro** ($94/Mo) — 815,000 calls/Mo, 20 req/s
- **Mega** ($315/Mo) — 4,650,000 calls/Mo, 50 req/s

## Endpoints

### Chain

#### `GET /v1/gas` — Gas-price oracle

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

**Response:**
```json
{
    "data": {
        "fast": 16.43,
        "slow": 10.55,
        "unit": "gwei",
        "average": 11,
        "gas_used_today": "2378432846"
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:06.560Z",
        "request_id": "84994b64-5bf4-4495-811c-44c55152b906"
    },
    "status": "ok",
    "message": "Gas retrieved successfully",
    "success": true
}
```

#### `GET /v1/stats` — Chain stats

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

**Response:**
```json
{
    "data": {
        "tvl_usd": null,
        "gas_prices": {
            "fast": 16.43,
            "slow": 10.55,
            "average": 11
        },
        "total_blocks": 12115219,
        "coin_price_usd": 0.04725244,
        "gas_used_today": "2378432846",
        "market_cap_usd": 211359625.8202035,
        "total_addresses": "145391",
        "total_transactions": "20097252",
        "transactions_today": "12268",
        "network_utilization_percent": 0.06267238
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:06.711Z",
        "request_id": "eb733899-f655-42e6-839c-e0d04ac54694"
    },
    "status": "ok",
    "message": "Stats retrieved successfully",
    "success": true
}
```

### Blocks

#### `GET /v1/block` — A block by height or hash

**Parameters:**
- `height` (query, optional, string) — Block height Example: `12114088`
- `hash` (query, optional, string) — Block hash (alternative to height)

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

**Response:**
```json
{
    "data": {
        "block": {
            "hash": "0x9dea95ad4418d7f72b69ef86eb068406c8f8711a2bd0ff21c94d294d5348b4c8",
            "size": 7320,
            "miner": "0x0000000000000000000000000000000000000000",
            "height": 12114088,
            "gas_used": 931405,
            "tx_count": 1,
            "gas_limit": 1000000000,
            "timestamp": "2026-06-08T06:46:47.000000Z",
            "burnt_fees": "0",
            "difficulty": "0",
            "base_fee_per_gas": null
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:06.900Z",
        "request_id": "38e372bc-882c-422f-9570-01142b745239"
    },
    "status": "ok",
    "message": "Block retrieved successfully",
    "success": true
}
```

#### `GET /v1/blocks` — Latest blocks

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

**Response:**
```json
{
    "data": {
        "count": 50,
        "blocks": [
            {
                "hash": "0x8e3be3594c3fdb5d35a68ae9c3120d113e679300b6dc2628df39d92ea1316c5b",
                "size": 7320,
                "miner": "0x0000000000000000000000000000000000000000",
                "height": 12115248,
                "gas_used": 914165,
                "tx_count": 1,
                "gas_limit": 1000000000,
                "timestamp": "2026-06-08T09:48:47.000000Z",
                "burnt_fees": "0",
                "difficulty": "0",
                "base_fee_per_gas": null
            },
            {
                "hash": "0x5dfa532aa4f45971b27ad4c2dc5830248df06279a932fbe838b880d3345e31ba",
                "size": 626,
                "miner": "0x0000000000000000000000000000000000000000",
                "height": 12115247,
                "gas_used": 42304,
                "tx_count": 1,
                "gas_limit": 1000000000,
                "timestamp": "2026-06-08T09:48:10.000000Z",
                "burnt_fees": "0",
                "difficulty": "0",
                "base_fee_per_gas": null
            },
            {
                "hash": "0xd3cc4475a341e79205ce745bb335f39fd80cd4ae9a5b62e87aeb68b5e848b488",
                "size": 626,
                "miner": "0x0000000000000000000000000000000000000000",
                "height": 12115246,
                "gas_used": 42963,
                "tx_count": 1,
                "gas_limit": 1000000000,
                
…(truncated, see openapi.json for full schema)
```

### Accounts

#### `GET /v1/address` — Account balance & holdings

**Parameters:**
- `address` (query, required, string) — Account address (0x + 40 hex) Example: `0x1241f44BFA102ab7386C784959BAe3D0fB923734`

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

**Response:**
```json
{
    "data": {
        "address": {
            "ens": null,
            "hash": "0x1241f44BFA102ab7386C784959BAe3D0fB923734",
            "name": null,
            "token": null,
            "creator": null,
            "balance_wei": "2653795114360000000000",
            "is_contract": false,
            "is_verified": false,
            "balance_iota": 2653.79511436
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:07.535Z",
        "request_id": "8ce7e855-e362-47df-851e-5f3600512bfa"
    },
    "status": "ok",
    "message": "Address retrieved successfully",
    "success": true
}
```

### Transactions

#### `GET /v1/transaction` — A transaction by hash

**Parameters:**
- `hash` (query, required, string) — Transaction hash (0x + 64 hex) Example: `0x8388cb1429c1092e3a0ba5db0e101da9fa12c2bca2b4ef9a78b89ce0b326bbee`

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

**Response:**
```json
{
    "data": {
        "transaction": {
            "to": "0x2FA6DbFe4291136Cf272E1A3294362b6651e8517",
            "from": "0x1241f44BFA102ab7386C784959BAe3D0fB923734",
            "hash": "0x8388cb1429c1092e3a0ba5db0e101da9fa12c2bca2b4ef9a78b89ce0b326bbee",
            "type": null,
            "block": 12114088,
            "nonce": 890584,
            "method": "verifyOracleProofV2",
            "status": "ok",
            "fee_wei": "9314050000000000",
            "fee_iota": 0.00931405,
            "gas_used": 931405,
            "gas_price": "10000000000",
            "timestamp": "2026-06-08T06:46:47.000000Z",
            "value_wei": "0",
            "value_iota": 0,
            "confirmations": 1161
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:07.948Z",
        "request_id": "44c790ce-4fe3-48fe-b651-eac5221451c2"
    },
    "status": "ok",
    "message": "Transaction retrieved successfully",
    "success": true
}
```

### Tokens

#### `GET /v1/token` — ERC-20 token metadata

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

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

**Response:**
```json
{
    "data": {
        "token": {
            "icon": "https://assets.coingecko.com/coins/images/69316/small/usdc.jpg?1758186473",
            "name": "Stargate Bridged USDC",
            "type": "ERC-20",
            "symbol": "USDC.E",
            "holders": null,
            "decimals": 6,
            "total_supply": "492029788940",
            "exchange_rate_usd": 0.999985,
            "circulating_market_cap": "37141314.115904756"
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:08.123Z",
        "request_id": "7421626b-bec3-440d-a7f0-99879b5a2777"
    },
    "status": "ok",
    "message": "Token retrieved successfully",
    "success": true
}
```

### Search

#### `GET /v1/search` — Universal search

**Parameters:**
- `q` (query, required, string) — Address, token, block or tx Example: `USDC.E`

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

**Response:**
```json
{
    "data": {
        "count": 4,
        "query": "USDC.E",
        "results": [
            {
                "name": "LB Hooks Lum Rewarder",
                "type": "token",
                "symbol": "Vote LB MLUM-USDC.e:50",
                "address": "0x24a57859C9379B9fcdB9611f05e93CCB37a2060B"
            },
            {
                "name": "LB Hooks Lum Rewarder",
                "type": "token",
                "symbol": "Vote LB VUSD-USDC.e:1",
                "address": "0x101ba3D8e2F3338b27504dBF856b92137D7ACd81"
            },
            {
                "name": "LB Hooks Lum Rewarder",
                "type": "token",
                "symbol": "Vote LB wIOTA-USDC.e:20",
                "address": "0x809C221A6b508e77d1beAb8259c7E12623d1579b"
            },
            {
                "name": null,
                "type": "metadata_tag",
                "address": "0x408A625596f47314e1FD4a6cBCE84C4A8695bA3f"
            }
        ]
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:08.524Z",
        "request_id": "8bccf902-8747-4e85-8c68-1abe5bb88c16"
    },
    "status": "ok",
    "message": "Search results retrieved successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Spec

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

**Response:**
```json
{
    "data": {
        "service": "iotaevm-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 IOTA EVM 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. IOTA EVM is the EVM Layer 1 of the IOTA network; gas, balances and fees are in IOTA. Real on-chain data, no key."
    },
    "meta": {
        "timestamp": "2026-06-08T09:49:08.619Z",
        "request_id": "3a33ae85-94fc-467b-a065-38f2dfe15781"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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