# Katana API
> Live Katana on-chain data via Blockscout. Katana is a DeFi-focused Ethereum L2; gas and balances are in ETH. Network stats, gas prices, latest blocks, a block by height or hash, address detail with ETH balance, a transaction by hash, ERC-20 token metadata and a universal search across addresses, tokens, blocks and transactions. Real data, no key.

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

## Pricing
- **Free** (Free) — 1,500 calls/Mo, 1 req/s
- **Basic** ($14/Mo) — 76,500 calls/Mo, 10 req/s
- **Pro** ($44/Mo) — 505,500 calls/Mo, 20 req/s
- **Mega** ($146/Mo) — 2,600,000 calls/Mo, 50 req/s

## Endpoints

### Network

#### `GET /v1/gas` — Current gas prices

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

**Response:**
```json
{
    "data": {
        "fast": 0.02,
        "slow": 0.02,
        "unit": "gwei",
        "average": 0.02,
        "gas_used_today": "24785346355"
    },
    "meta": {
        "timestamp": "2026-06-08T09:50:30.146Z",
        "request_id": "e13b8258-2bb7-4018-b645-be574b7bf9cd"
    },
    "status": "ok",
    "message": "Gas retrieved successfully",
    "success": true
}
```

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

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

**Response:**
```json
{
    "data": {
        "tvl_usd": null,
        "gas_prices": {
            "fast": 0.02,
            "slow": 0.02,
            "average": 0.02
        },
        "total_blocks": 34169263,
        "coin_price_usd": null,
        "gas_used_today": "24785346355",
        "market_cap_usd": 0,
        "total_addresses": "965789",
        "total_transactions": "55039301",
        "transactions_today": "138468",
        "network_utilization_percent": 0.13991231666666668
    },
    "meta": {
        "timestamp": "2026-06-08T09:50:30.459Z",
        "request_id": "125f49f8-90ac-402a-99f6-d3641929ace0"
    },
    "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: `34145767`
- `hash` (query, optional, string) — Block hash

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

**Response:**
```json
{
    "data": {
        "block": {
            "hash": "0x5e6d4bb7f3262ad5320e120e28e9c70f89a9bc8ef54e2ecb94c2483b013a0d8a",
            "size": 909,
            "miner": "0x4200000000000000000000000000000000000011",
            "height": 34145767,
            "gas_used": 46266,
            "tx_count": 1,
            "gas_limit": 120000000,
            "timestamp": "2026-06-08T03:16:18.000000Z",
            "burnt_fees": "46266000000",
            "difficulty": "0",
            "base_fee_per_gas": "1000000"
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:50:30.749Z",
        "request_id": "dbfa54ab-3e3f-4eae-bf75-b194440a9739"
    },
    "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/katana-api/v1/blocks"
```

**Response:**
```json
{
    "data": {
        "count": 50,
        "blocks": [
            {
                "hash": "0xb29d491df6c3e60e2b81958ec0f3015c5669728114e6b8df7281d247b6611468",
                "size": 909,
                "miner": "0x4200000000000000000000000000000000000011",
                "height": 34169419,
                "gas_used": 46266,
                "tx_count": 1,
                "gas_limit": 120000000,
                "timestamp": "2026-06-08T09:50:30.000000Z",
                "burnt_fees": "46266000000",
                "difficulty": "0",
                "base_fee_per_gas": "1000000"
            },
            {
                "hash": "0x64e96eb19fa8c93882460d516642da4bfe2281b804fab3b757cac2028db0dcb6",
                "size": 909,
                "miner": "0x4200000000000000000000000000000000000011",
                "height": 34169418,
                "gas_used": 46266,
                "tx_count": 1,
                "gas_limit": 120000000,
                "timestamp": "2026-06-08T09:50:29.000000Z",
                "burnt_fees": "46266000000",
                "difficulty": "0",
                "base_fee_per_gas": "1000000"
            },
            {
                "hash": "0xca13990dbab7478dbd19386053d3f0511380640360c10f904ffdb41585290eee",
                "size": 909,
                "miner": "0x4200000000000000000000000000000000000011",
                "height": 34169417,
                "gas_used": 46266,
                "tx_count": 1,
                "gas_limit": 12
…(truncated, see openapi.json for full schema)
```

### Accounts

#### `GET /v1/address` — Address detail with ETH balance

**Parameters:**
- `address` (query, required, string) — Address hash Example: `0x203A662b0BD271A6ed5a60EdFbd04bFce608FD36`

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

**Response:**
```json
{
    "data": {
        "address": {
            "ens": null,
            "hash": "0x203A662b0BD271A6ed5a60EdFbd04bFce608FD36",
            "name": "TokenWrappedTransparentProxy",
            "token": {
                "name": "Vault Bridge USDC",
                "type": "ERC-20",
                "symbol": "vbUSDC"
            },
            "creator": "0x2a3DD3EB832aF982ec71669E178424b10Dca2EDe",
            "balance_eth": 0,
            "balance_wei": "0",
            "is_contract": true,
            "is_verified": true
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:50:31.985Z",
        "request_id": "cd32fbdd-decd-4dbf-a923-bfd79d39fdeb"
    },
    "status": "ok",
    "message": "Address retrieved successfully",
    "success": true
}
```

### Transactions

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

**Parameters:**
- `hash` (query, required, string) — Transaction hash Example: `0xb5256fe2c9d1b8950484c3ca86fcf50bd011e0a472a3dea20a5b8acfad567cc1`

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

**Response:**
```json
{
    "data": {
        "transaction": {
            "to": "0x4200000000000000000000000000000000000015",
            "from": "0xDeaDDEaDDeAdDeAdDEAdDEaddeAddEAdDEAd0001",
            "hash": "0xb5256fe2c9d1b8950484c3ca86fcf50bd011e0a472a3dea20a5b8acfad567cc1",
            "type": 126,
            "block": 34145767,
            "nonce": 34145768,
            "method": "setL1BlockValuesJovian",
            "status": "ok",
            "fee_eth": 4.626e-15,
            "fee_wei": "4626",
            "gas_used": 46266,
            "gas_price": "0",
            "timestamp": "2026-06-08T03:16:18.000000Z",
            "value_eth": 0,
            "value_wei": "0",
            "confirmations": 23655
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:50:32.323Z",
        "request_id": "9d21291d-b1be-40ed-835f-922424bd2bb4"
    },
    "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: `0x203A662b0BD271A6ed5a60EdFbd04bFce608FD36`

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

**Response:**
```json
{
    "data": {
        "token": {
            "icon": null,
            "name": "Vault Bridge USDC",
            "type": "ERC-20",
            "symbol": "vbUSDC",
            "holders": null,
            "decimals": 6,
            "total_supply": "14922944658976",
            "exchange_rate_usd": null,
            "circulating_market_cap": null
        }
    },
    "meta": {
        "timestamp": "2026-06-08T09:50:32.608Z",
        "request_id": "7c027cee-c552-4f34-b59a-f30eb47d7af4"
    },
    "status": "ok",
    "message": "Token retrieved successfully",
    "success": true
}
```

### Search

#### `GET /v1/search` — Universal on-chain search

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

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

**Response:**
```json
{
    "data": {
        "count": 50,
        "query": "USD",
        "results": [
            {
                "name": "Vault Bridge USDC",
                "type": "token",
                "symbol": "vbUSDC",
                "address": "0x203A662b0BD271A6ed5a60EdFbd04bFce608FD36"
            },
            {
                "name": "Vault Bridge USDT",
                "type": "token",
                "symbol": "vbUSDT",
                "address": "0x2DCa96907fde857dd3D816880A0df407eeB2D2F2"
            },
            {
                "name": "Steakhouse Prime USDC",
                "type": "token",
                "symbol": "steakUSDC",
                "address": "0x61D4F9D3797BA4dA152238c53a6f93Fb665C3c1d"
            },
            {
                "name": "Charm_vbUSDC/vbETH005",
                "type": "token",
                "symbol": "USDCETH5",
                "address": "0xc78c51F88adFbAdcDfafCfeF7F5E3d3c6C7d5129"
            },
            {
                "name": "Frax USD",
                "type": "token",
                "symbol": "frxUSD",
                "address": "0x80Eede496655FB9047dd39d9f418d5483ED600df"
            },
            {
                "name": "Gauntlet USDC",
                "type": "token",
                "symbol": "gtUSDC",
                "address": "0xE4248e2105508FcBad3fe95691551d1AF14015f7"
            },
            {
                "name": "Gauntlet USDT",
                "type": "token",
                "symbol": "gtUSDT",
    
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Service metadata

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

**Response:**
```json
{
    "data": {
        "service": "katana-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 Katana 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. Katana is a DeFi-focused Ethereum L2; gas and balances are in ETH. Real on-chain data, no key."
    },
    "meta": {
        "timestamp": "2026-06-08T09:50:32.984Z",
        "request_id": "48b66015-1515-40d8-8e1c-78e4e50d2ea3"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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