# Nolus Chain API
> Real-time on-chain data for Nolus (chain-id pirin-1), a Cosmos-SDK Layer-1 running a DeFi-lease / money-market protocol, secured by delegated proof-of-stake with NLS as its native coin. The status endpoint returns the chain id, latest block height and time, proposer and node application version so you can confirm the chain is live and producing blocks. The validators endpoint returns the full bonded validator set — each moniker, operator address, stake in NLS, commission rate and jailed flag — sorted by stake, plus the total bonded and not-bonded NLS. The supply endpoint returns the total NLS supply (in NLS and base unls), the bonded amount and the bonded ratio. The governance endpoint returns the most recent on-chain governance proposals with title, status and voting window. The meta endpoint documents the chain, denom and decimals. Reads a live Nolus Cosmos-SDK LCD node directly (with mirror fallback), so values are current to the latest block. Live, nothing stored. 5 endpoints. This serves chain-level staking, supply and governance data; for individual lease positions or token prices use a dedicated protocol/market API.

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

## Pricing
- **Free** (Free) — 270 calls/Mo, 2 req/s
- **Basic** ($13/Mo) — 23,500 calls/Mo, 5 req/s
- **Pro** ($35/Mo) — 121,000 calls/Mo, 20 req/s
- **Mega** ($76/Mo) — 545,000 calls/Mo, 60 req/s

## Endpoints

### Chain

#### `GET /v1/status` — Chain status: latest block, chain id, node version

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

**Response:**
```json
{
    "data": {
        "chain": "Nolus",
        "healthy": true,
        "chain_id": "pirin-1",
        "native_symbol": "NLS",
        "node_app_version": "0.8.2-patch",
        "proposer_address": "uWETKnIvTpk/U2VWDcIbfE9cdss=",
        "latest_block_time": "2026-06-15T20:38:48.207482324Z",
        "latest_block_height": 23873252
    },
    "meta": {
        "timestamp": "2026-06-15T20:40:38.547Z",
        "request_id": "a1db096e-339b-40e8-bd8c-db22f8f035f0"
    },
    "status": "ok",
    "message": "Chain status retrieved successfully",
    "success": true
}
```

### Staking

#### `GET /v1/supply` — Total NLS supply and bonded ratio

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

**Response:**
```json
{
    "data": {
        "chain": "Nolus",
        "denom": "unls",
        "decimals": 6,
        "bonded_nls": "252131714.447001",
        "native_symbol": "NLS",
        "bonded_ratio_pct": 27.41,
        "total_supply_nls": "919733552.841313",
        "total_supply_unls": "919733552841313"
    },
    "meta": {
        "timestamp": "2026-06-15T20:40:38.626Z",
        "request_id": "5a1f39e4-b736-40cf-8b00-ea8e765fcc94"
    },
    "status": "ok",
    "message": "Supply retrieved successfully",
    "success": true
}
```

#### `GET /v1/validators` — Bonded validator set with stake and commission

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

**Response:**
```json
{
    "data": {
        "chain": "Nolus",
        "validators": [
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "Crosnest",
                "tokens_nls": "25511002.352073",
                "tokens_unls": "25511002352073",
                "commission_rate": 0.05,
                "operator_address": "nolusvaloper1ldp9kthjxl6hun23ghlwg5szf297sz5a0pf3xe"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "Inter Blockchain Services",
                "tokens_nls": "21812745.745858",
                "tokens_unls": "21812745745858",
                "commission_rate": 0.05,
                "operator_address": "nolusvaloper1767ksp39dlyddeprh5lsxazawpacqpywn4496s"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "polkachu.com",
                "tokens_nls": "21275206.950646",
                "tokens_unls": "21275206950646",
                "commission_rate": 0.01,
                "operator_address": "nolusvaloper1k3wysw06xty072y8pvra2vtwxxc6sjmf4w20sx"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "moniker": "PRO Delegators",
                "tokens_nls": "20343657.158564",
                "tokens_unls": "20343657158564",
                "commission_rate": 0.05,

…(truncated, see openapi.json for full schema)
```

### Governance

#### `GET /v1/governance` — Recent on-chain governance proposals

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

**Response:**
```json
{
    "data": {
        "chain": "Nolus",
        "count": 10,
        "proposals": [
            {
                "id": "333",
                "title": "Close Inactive Market (Osmosis allSOL)",
                "status": "PROPOSAL_STATUS_PASSED",
                "summary": "## Summary This proposal concerns the closure of the Osmosis allSOL market on the Nolus Pirin (mainnet), which has remained inactive and is no longer serving user demand within the Nolus money market. The closure process is structured to en",
                "submit_time": "2026-05-20T10:02:46.279571965Z",
                "voting_end_time": "2026-05-23T10:02:46.279571965Z"
            },
            {
                "id": "332",
                "title": "Close Inactive Market (Osmosis AKT)",
                "status": "PROPOSAL_STATUS_PASSED",
                "summary": "## Summary This proposal concerns the closure of the Osmosis AKT market on the Nolus Pirin (mainnet), which has remained inactive and is no longer serving user demand within the Nolus money market. The closure process is structured to ensur",
                "submit_time": "2026-05-20T09:57:11.607237339Z",
                "voting_end_time": "2026-05-23T09:57:11.607237339Z"
            },
            {
                "id": "331",
                "title": "Delist Neutron-based Gas Denoms",
                "status": "PROPOSAL_STATUS_PASSED",
                "summary": "## Summary Currently, users on the Nolus mainnet have the flexibility to
…(truncated, see openapi.json for full schema)
```

### Meta

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

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

**Response:**
```json
{
    "data": {
        "type": "Cosmos-SDK Layer-1 (Tendermint/CometBFT)",
        "chain": "Nolus",
        "denom": "unls",
        "chain_id": "pirin-1",
        "decimals": 6,
        "ecosystem": "Nolus — a Cosmos-SDK Layer-1 DeFi-lease/money-market protocol chain, native coin NLS, secured by delegated proof-of-stake.",
        "endpoints": [
            "/v1/status",
            "/v1/validators",
            "/v1/supply",
            "/v1/governance",
            "/v1/meta"
        ],
        "documentation": "https://nolus-api.oanor.dev",
        "native_symbol": "NLS"
    },
    "meta": {
        "timestamp": "2026-06-15T20:40:38.869Z",
        "request_id": "3894fd0f-a9fd-44f4-9e6e-2f04c0427d55"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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