# Internet Computer NNS Governance API
> Internet Computer NNS (Network Nervous System) governance, live from the official public dashboard API — no key, nothing cached. The NNS is the on-chain DAO that controls the entire Internet Computer: ICP holders lock tokens into neurons and vote on proposals across topics — protocol upgrades, network economics, node administration, canister management, SNS launches and more. The base Internet Computer reader covers network, accounts, canisters and subnets, but not governance; this opens it. List NNS proposals filtered by topic and status, each with its title, proposer neuron, voting deadline and yes / no voting-power tally with percentages. Read a single proposal in full — its tally, action, status and decision timestamps. And get a live governance overview: the all-time total proposal count, how many are currently open for voting, and the breakdown of recent proposals by topic and status. The on-chain governance layer for Internet Computer wallets, neuron dashboards, voters and analytics. Live from ic-api.internetcomputer.org.

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

## Pricing
- **Free** (Free) — 7,700 calls/Mo, 3 req/s
- **Starter** ($9/Mo) — 142,000 calls/Mo, 9 req/s
- **Pro** ($33/Mo) — 788,000 calls/Mo, 22 req/s
- **Business** ($96/Mo) — 5,300,000 calls/Mo, 55 req/s

## Endpoints

### Proposals

#### `GET /v1/proposal` — One proposal in full: tally, action, timestamps

**Parameters:**
- `id` (query, optional, string) — Proposal id (omit for the latest) Example: `142271`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/icpgov-api/v1/proposal?id=142271"
```

**Response:**
```json
{
    "data": {
        "note": "A single NNS proposal in full: its topic, status, action, yes/no voting-power tally and decision timestamps. Omit id for the most recent proposal.",
        "tally": {
            "no": "4288621880057194",
            "yes": "2536171913598928",
            "total": "79254053608670910",
            "no_pct": 5.41,
            "yes_pct": 3.2
        },
        "title": "Upgrade the Engine-controller Canister to Commit 6c4d31d",
        "topic": "Application Canister Management",
        "action": "InstallCode",
        "source": "Internet Computer dashboard",
        "status": "OPEN",
        "summary": "# Upgrade the Engine-controller Canister to Commit 6c4d31d\n\n__Proposer__: pietro.di.marco at dfinity.org\n\n__Source code__: [6c4d31d69969a57e78cd17c237637592dd4fd960][new-commit]\n\n[new-commit]: https://github.com/dfinity/ic/tree/6c4d31d69969a57e78cd17c237637592dd4fd960\n\n\n## Features & Fixes\n\n* Allow the engine-controller canister to update cloud engines directly (#10431).\n* Return the newly created subnet id directly in the subnet-creation response. Callers no longer need to poll and match nodes to subnets after creation.\n* Extract the engine-controller canister's interface types into a shared, importable crate so other projects can depend on them (#10417).\n\n\n## New Commits\n\n```\n$ git log --format=\"%C(auto) %h %s\" c8649149f75040378e608e2a77eb3433122e7bf9..6c4d31d69969a57e78cd17c237637592dd4fd960 --  ./rs/engine_controller\n 8
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/proposals` — NNS proposals with tally, filterable by topic & status

**Parameters:**
- `limit` (query, optional, string) — Page size (1-100) Example: `20`
- `offset` (query, optional, string) — Offset Example: `0`
- `topic` (query, optional, string) — Topic filter (e.g. GOVERNANCE, NETWORK_ECONOMICS) Example: `GOVERNANCE`
- `status` (query, optional, string) — OPEN / EXECUTED / REJECTED / ADOPTED Example: `OPEN`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/icpgov-api/v1/proposals?limit=20&offset=0&topic=GOVERNANCE&status=OPEN"
```

**Response:**
```json
{
    "data": {
        "note": "Internet Computer NNS governance proposals (newest first), each with its topic, status, proposer neuron, voting deadline and yes/no voting-power tally. Filter with topic (e.g. GOVERNANCE, NETWORK_ECONOMICS) and status (OPEN/EXECUTED/REJECTED/ADOPTED).",
        "count": 0,
        "topic": "Governance",
        "offset": 0,
        "source": "Internet Computer dashboard",
        "status": "OPEN",
        "proposals": [],
        "total_proposals": 0
    },
    "meta": {
        "timestamp": "2026-06-14T08:03:44.680Z",
        "request_id": "2f0be55b-5808-44c6-a884-6812e6d17bbc"
    },
    "status": "ok",
    "message": "Proposals retrieved successfully",
    "success": true
}
```

### Stats

#### `GET /v1/stats` — Live governance overview: totals, open count, breakdown by topic & status

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

**Response:**
```json
{
    "data": {
        "note": "Live NNS governance overview: the all-time total proposal count, plus how the most recent proposals break down by topic and status (and how many are currently open for voting).",
        "source": "Internet Computer dashboard",
        "by_topic": {
            "Neuron Management": 9,
            "Subnet Management": 3,
            "Ic Os Version Election": 4,
            "Ic Os Version Deployment": 76,
            "Protocol Canister Management": 3,
            "Application Canister Management": 5
        },
        "by_status": {
            "OPEN": 12,
            "EXECUTED": 88
        },
        "sample_window": 100,
        "open_in_window": 12,
        "total_proposals": 122261
    },
    "meta": {
        "timestamp": "2026-06-14T08:03:45.235Z",
        "request_id": "5530572f-9c04-486a-af5a-0f07ce429e75"
    },
    "status": "ok",
    "message": "Stats retrieved successfully",
    "success": true
}
```

### Meta

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

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

**Response:**
```json
{
    "data": {
        "sample": {
            "open_in_window": 12,
            "total_proposals": 122261
        },
        "source": "official Internet Computer dashboard API (ic-api.internetcomputer.org), keyless",
        "service": "icpgov-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/stats": "Live governance overview: totals, open count, breakdown by topic & status.",
            "GET /v1/proposal": "One proposal in full: tally, action, timestamps (id; omit for latest).",
            "GET /v1/proposals": "NNS proposals with tally, filterable by topic & status (limit, offset, topic, status)."
        },
        "description": "Read Internet Computer NNS (Network Nervous System) governance live from the official public dashboard API: list proposals filtered by topic and status with their voting-power tally, read a single proposal in full, and get a live governance overview (total proposals, open count, breakdown by topic/status). The on-chain governance layer for Internet Computer wallets, neuron dashboards and voters. Live, short cache only.",
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-14T08:03:45.300Z",
        "request_id": "13a7ba4e-a843-4dab-a83e-442098af95b1"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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