# Babylon Bitcoin-Staking On-Chain API
> Live on-chain data from Babylon (bbn-1), the Cosmos-SDK layer-1 running the leading trustless Bitcoin-staking protocol. Read the registered BTC-staking finality providers (moniker, commission, jailed/slashed status, highest voted height); the active BTC delegations (staker, finality-provider set, staked sats / BTC amount, status, start height); the Bitcoin-staking protocol parameters (covenant quorum, min/max staking, max finality providers, BTC confirmation depth); the current epoch; plus the staking pool with bonded ratio and validator set, the total BBN supply and the latest block. The Babylon / Bitcoin-staking / BTC-restaking layer for explorers, staking dashboards and yield trackers.

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

## Pricing
- **Free** (Free) — 3,000 calls/Mo, 2 req/s
- **Basic** ($15/Mo) — 68,000 calls/Mo, 5 req/s
- **Pro** ($44/Mo) — 260,000 calls/Mo, 15 req/s
- **Business** ($94/Mo) — 960,000 calls/Mo, 40 req/s

## Endpoints

### Bitcoin Staking

#### `GET /v1/delegations` — Active BTC delegations (staked Bitcoin)

**Parameters:**
- `status` (query, optional, string) — ACTIVE, PENDING, UNBONDING, UNBONDED, EXPIRED or ANY Example: `ACTIVE`
- `limit` (query, optional, string) — Number of delegations (1-100) Example: `20`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/babylon-api/v1/delegations?status=ACTIVE&limit=20"
```

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "count": 20,
        "status": "ACTIVE",
        "delegations": [
            {
                "active": true,
                "btc_pk": "05ff2bedd40edb6f1997b30e5561ab8f9d710f7216303a7b9e8426f1cef25411",
                "status": "ACTIVE",
                "end_height": 957905,
                "staked_btc": 599.999,
                "staked_sat": 59999900000,
                "staking_time": 64000,
                "start_height": 893905,
                "staker_address": "bbn1v0fg968ndnq4cjcyayhr6sr29njhh5fly0cc8t",
                "finality_providers": [
                    "7e20f50f7882e6f75372dab46b9dd17dd3f91d4c397be25085a9d020b2aa2156"
                ]
            },
            {
                "active": true,
                "btc_pk": "a4a5533d54296a7a1ec49f37a23408a479e3e1ef8948677db5b3721e03d357b1",
                "status": "ACTIVE",
                "end_height": 1010388,
                "staked_btc": 5,
                "staked_sat": 500000000,
                "staking_time": 64000,
                "start_height": 946388,
                "staker_address": "bbn1z87v9hvmjfdcsapz05g9vp55aymhzac23nlnef",
                "finality_providers": [
                    "374601b4c400b31f3aa78dc16b4e4d589c1284118e2476d83f0c39743881032c"
                ]
            },
            {
                "active": true,
                "btc_pk": "d1d25f37a2b5f9ed12e092babb2a1e2b4694393294b838db13351bf9b6fe63f0",
                "stat
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/finality-providers` — BTC-staking finality providers

**Parameters:**
- `limit` (query, optional, string) — Number of providers (1-200) Example: `20`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/babylon-api/v1/finality-providers?limit=20"
```

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "count": 20,
        "finality_providers": [
            {
                "btc_pk": "03f0aa09112a19685e1514c9fc768a27df953db6abddcb453b96cc3265469af6",
                "jailed": false,
                "address": "bbn19cy5ndzllcqlrcyggsqjg4mu59kw8ewwwhhcxe",
                "moniker": "Simply Staking",
                "slashed": false,
                "website": "https://simplystaking.com/",
                "commission": 0.03,
                "max_commission": 0.2,
                "highest_voted_height": 2771699
            },
            {
                "btc_pk": "04439d165b72bac13c16a22744a55cb249615b23b769fc393188cd4eed33f189",
                "jailed": false,
                "address": "bbn185hz55mfzh5x7ypj4qps0w6xjgcyn3fperea0j",
                "moniker": "equinoxDAO",
                "slashed": false,
                "website": "https://www.equinoxdao.xyz",
                "commission": 0.05,
                "max_commission": 0.2,
                "highest_voted_height": 159653
            },
            {
                "btc_pk": "053107172a3d5a2715754cd5793efdcf5e54364b855ed2305819e372aa685d76",
                "jailed": false,
                "address": "bbn1wlvdscjk3ck6uh6aur9u83uu8pl2ftsfhjrz2r",
                "moniker": "Kiln",
                "slashed": false,
                "website": "https://www.kiln.fi",
                "commission": 0.05,
                "max_commission": 0.2,
                "highest_v
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/params` — Bitcoin-staking protocol parameters

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

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "finality": {
            "finality_sig_timeout": 3,
            "signed_blocks_window": 10000,
            "min_signed_per_window": 0.2,
            "max_active_finality_providers": 60
        },
        "btcstaking": {
            "slashing_rate": 0.001,
            "covenant_quorum": 6,
            "covenant_members": 9,
            "max_staking_value_sat": 500000000000,
            "min_staking_value_sat": 500000,
            "unbonding_time_blocks": 301,
            "max_staking_time_blocks": 64000,
            "min_staking_time_blocks": 64000
        },
        "btccheckpoint": {
            "btc_confirmation_depth": 30,
            "checkpoint_finalization_timeout": 300
        }
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:10.963Z",
        "request_id": "34ffe4e6-d2e4-4bf9-9b79-060037256a88"
    },
    "status": "ok",
    "message": "Params retrieved successfully",
    "success": true
}
```

### Chain

#### `GET /v1/block` — Latest block

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

**Response:**
```json
{
    "data": {
        "time": "2026-06-15T02:09:56.203397329Z",
        "chain": "bbn-1",
        "height": 3715340,
        "num_txs": 47,
        "proposer_address": "d74jE5tlDWnt55hbMf17HO6cp9M="
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:11.318Z",
        "request_id": "f4e89c5a-be5d-476d-bc93-7ca50c491c26"
    },
    "status": "ok",
    "message": "Block retrieved successfully",
    "success": true
}
```

#### `GET /v1/epoch` — Current epoching epoch

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

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "current_epoch": 10321,
        "epoch_boundary": 3715560
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:11.407Z",
        "request_id": "884d6393-7944-4655-bbd7-0884bc482055"
    },
    "status": "ok",
    "message": "Epoch retrieved successfully",
    "success": true
}
```

#### `GET /v1/supply` — Total BBN supply

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

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "denom": "BBN",
        "micro_denom": "ubbn",
        "total_supply": 10828533922.922756,
        "total_supply_micro": "10828533922922756"
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:11.494Z",
        "request_id": "8a7c3a21-fe66-49fc-bb37-f6975912f17b"
    },
    "status": "ok",
    "message": "Supply retrieved successfully",
    "success": true
}
```

### Staking

#### `GET /v1/staking` — Staking pool, bonded ratio & params

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

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "denom": "BBN",
        "params": {
            "bond_denom": "ubbn",
            "max_validators": 100,
            "unbonding_time": "1814400s",
            "min_commission_rate": "0.030000000000000000"
        },
        "bonded_ratio": 0.97875,
        "bonded_tokens": 2918377778.101504,
        "not_bonded_tokens": 63362907.414806
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:11.582Z",
        "request_id": "c7867e27-e1d2-4918-94de-02c0666df2bc"
    },
    "status": "ok",
    "message": "Staking retrieved successfully",
    "success": true
}
```

#### `GET /v1/validators` — Bonded validator set by voting power

**Parameters:**
- `limit` (query, optional, string) — Number of validators (1-200) Example: `20`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/babylon-api/v1/validators?limit=20"
```

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "count": 20,
        "validators": [
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "P2P.org 💙",
                "website": "https://p2p.org",
                "voting_power": 184240220.069744,
                "commission_rate": 0.1,
                "operator_address": "bbnvaloper1y5fqc69rthqgltjnjze408t66j5pp6kdyhlz48"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "Zellic",
                "website": "https://zellic.io/",
                "voting_power": 99781902.313278,
                "commission_rate": 0.05,
                "operator_address": "bbnvaloper1xvzpmejwax2uuquap8rgxt5d7f4xscfww4dfc9"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "Gate Earn",
                "website": "https://www.gate.io/web3",
                "voting_power": 86817490.083141,
                "commission_rate": 0.03,
                "operator_address": "bbnvaloper1zfjgkjjrkjdz8p67jdy3ytj3nty9afg9ncmfu3"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "OKX Earn",
                "website": null,
                "voting_power": 76110959.515835,
                "commission_rate": 0.1,
                "operat
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Chain metadata & endpoint guide

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

**Response:**
```json
{
    "data": {
        "chain": "bbn-1",
        "token": "BBN",
        "source": "Babylon public Cosmos REST/LCD, keyless (3-mirror)",
        "network": "Babylon",
        "decimals": 6,
        "examples": {
            "epoch": "/v1/epoch",
            "delegations": "/v1/delegations?status=ACTIVE&limit=20",
            "finality_providers": "/v1/finality-providers?limit=20"
        },
        "endpoints": {
            "/v1/block": "latest block (height, time, chain_id)",
            "/v1/epoch": "current epoching epoch",
            "/v1/params": "Bitcoin-staking protocol parameters (covenant, finality, BTC checkpoint)",
            "/v1/supply": "total BBN supply",
            "/v1/staking": "staking pool, bonded ratio and params",
            "/v1/validators": "bonded validator set ranked by voting power (limit)",
            "/v1/delegations": "BTC delegations with staked sats/BTC (status=ACTIVE|PENDING|UNBONDING|…, limit)",
            "/v1/finality-providers": "registered BTC-staking finality providers (moniker, commission, jailed/slashed; limit)"
        },
        "micro_denom": "ubbn",
        "cache_ttl_ms": 20000
    },
    "meta": {
        "timestamp": "2026-06-15T02:10:11.738Z",
        "request_id": "bf7b609a-cca4-4cfa-8c9c-1b037459cae7"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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