# MakerDAO / Sky Governance API
> MakerDAO / Sky governance — the original DeFi governance — live from the public governance-portal API, no key, nothing cached. Maker governs through three instruments: on-chain executive votes ("spells") that change the protocol and accrue MKR support, signal polls that gauge community sentiment, and recognized MKR delegates who vote on behalf of holders. The Sky reader covers the savings rate and protocol stats, but not governance; this opens it. List the executive votes with their MKR support and whether they have been executed. Browse the governance polls with the portal's own active / finished tally and each poll's type, voting window, tags and options. And rank the recognized delegates by delegated MKR with their alignment status, delegator count, last vote and how many polls and executives they have supported. The governance layer for MakerDAO/Sky wallets, governance dashboards, delegates and analytics. Live from vote.makerdao.com.

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

## Pricing
- **Free** (Free) — 7,000 calls/Mo, 3 req/s
- **Starter** ($9/Mo) — 134,000 calls/Mo, 9 req/s
- **Pro** ($34/Mo) — 810,000 calls/Mo, 22 req/s
- **Business** ($93/Mo) — 4,850,000 calls/Mo, 55 req/s

## Endpoints

### Governance

#### `GET /v1/executives` — Executive votes (spells) with MKR support and execution status

**Parameters:**
- `limit` (query, optional, string) — Max executives (1-50) Example: `20`
- `active` (query, optional, string) — true for currently-active spells Example: `false`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/makergov-api/v1/executives?limit=20&active=false"
```

**Response:**
```json
{
    "data": {
        "note": "MakerDAO/Sky executive votes ('spells') — the on-chain proposals that change the protocol. mkr_support is the MKR backing the spell; executed is whether it has been scheduled/passed. Newest first; pass active=true for currently-active spells.",
        "count": 20,
        "source": "MakerDAO governance portal",
        "executives": [
            {
                "key": "template-executive-vote-mkr-to-sky-upgrade-phase-one-adding-protego-to-the-chainlog-spark-proxy-spell-may-15-2025",
                "date": "Thu May 15 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
                "title": "MKR-to-SKY Upgrade Phase One, Adding Protego To the Chainlog, Spark Proxy Spell - May 15, 2025",
                "active": false,
                "address": "0x53222d00ffbFf48bD74BddDE5592B1B98793bB07",
                "executed": true,
                "datePassed": "2025-05-16T15:01:35.000Z",
                "mkr_support": 9.9098,
                "proposal_link": "https://raw.githubusercontent.com/sky-ecosystem/community/master/governance/votes/Executive%20vote%20-%20May%2015%2C%202025.md"
            },
            {
                "key": "template-executive-vote-star2-allocation-system-updates-increase-gsm-pause-delay-add-emergency-spell-to-chainlog-top-up-of-the-integration-boost-launch-project-funding-spark-proxy-spell-star2-proxy-spell-april-30-2025",
                "date": "Wed Apr 30 2025 00:00:00 GMT+0000 (Coordinated Universal Time)"
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/polls` — Governance polls with type, window, tags and the active/finished tally

**Parameters:**
- `limit` (query, optional, string) — Max polls (1-50) Example: `20`

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

**Response:**
```json
{
    "data": {
        "note": "MakerDAO/Sky governance polls (signal votes that gauge community sentiment), newest first, with each poll's type, voting window, tags and options. total/active/finished come from the portal's own tally.",
        "count": 20,
        "polls": [
            {
                "tags": [
                    "high-impact",
                    "endgame"
                ],
                "type": "single-choice",
                "title": "Atlas Edit Weekly Cycle Proposal - May 12, 2025",
                "options": [
                    "Abstain",
                    "Yes",
                    "No"
                ],
                "poll_id": 1246,
                "summary": "This Atlas Edit 1) clarifies SKY staking parameters, 2) adds documentation regarding approval of the upgrade from MKR to SKY, 3) updates documentation regarding legacy brands, 4) includes new Vote Delegate Factory contract in MKR to SKY upgrade plan.",
                "end_date": "2025-05-15T16:00:00.000Z",
                "start_date": "2025-05-12T16:00:00.000Z"
            },
            {
                "tags": [
                    "high-impact",
                    "spark"
                ],
                "type": "single-choice",
                "title": "SparkLend Ethereum - Adjust DAI Interest Rate Model - May 12, 2025",
                "options": [
                    "Abstain",
                    "Yes",
                    "No"
                ],
                "po
…(truncated, see openapi.json for full schema)
```

### Delegates

#### `GET /v1/delegates` — Recognized delegates ranked by delegated MKR with status and participation

**Parameters:**
- `limit` (query, optional, string) — Max delegates (1-100) Example: `30`

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

**Response:**
```json
{
    "data": {
        "note": "Recognized MakerDAO/Sky delegates ranked by delegated MKR, with each one's status (aligned/shadow), delegator count, last vote and how many polls/executives they have supported.",
        "count": 10,
        "shadow": 17,
        "source": "MakerDAO governance portal",
        "aligned": 10,
        "delegates": [
            {
                "name": "BLUE",
                "status": "aligned",
                "expired": false,
                "mkr_delegated": 8.984,
                "owner_address": "0x73056e27d9cc08f963d41664c705392f305cfe7d",
                "last_vote_date": "2025-05-13T16:45:11.000Z",
                "delegator_count": 5,
                "execs_supported": null,
                "polls_supported": 1,
                "vote_delegate_address": "0xe1ff7ecf038900dd14a1e7e3a8ccf23f71f6a1c2"
            },
            {
                "name": "Cloaky",
                "status": "aligned",
                "expired": false,
                "mkr_delegated": 0.5083,
                "owner_address": "0xd352a360cccb06fb23a8681c44e6b12a999ae7a0",
                "last_vote_date": "2025-05-13T16:57:01.000Z",
                "delegator_count": 6,
                "execs_supported": null,
                "polls_supported": 2,
                "vote_delegate_address": "0xb02e05c257291acd65a527227aca6b7662e047f4"
            },
            {
                "name": "PBG",
                "status": "aligned",
                "expired": false,
…(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/makergov-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "sample": {
            "mkr_support": 9.9098,
            "latest_executive": "MKR-to-SKY Upgrade Phase One, Adding Protego To the Chainlog, Spark Proxy Spell - May 15, 2025"
        },
        "source": "public MakerDAO governance portal API (vote.makerdao.com/api), keyless",
        "service": "makergov-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/polls": "Governance polls with type, window, tags and the active/finished tally (limit).",
            "GET /v1/delegates": "Recognized delegates ranked by delegated MKR, with status and participation (limit).",
            "GET /v1/executives": "Executive votes (spells) with MKR support and execution status (limit, active)."
        },
        "description": "Read MakerDAO/Sky governance live from the public governance-portal API: executive votes ('spells') with their MKR support and execution status, governance polls with the portal's type breakdown, and recognized MKR delegates ranked by delegated MKR. The governance layer for MakerDAO/Sky wallets, governance dashboards and delegates. Live, short cache only.",
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-14T08:03:45.904Z",
        "request_id": "be18ecf4-83d0-499c-aa31-7f0d25a50667"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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