# Shentu API
> Live on-chain data for Shentu (chain id shentu-2.2) — the security-focused Cosmos-SDK Layer-1 of the CertiK ecosystem, whose native token is CTK — served directly from public LCD/REST nodes with multi-node failover. The status endpoint returns the latest block height and time, chain id, the staking bond denom and the current minting inflation rate. The validators endpoint lists the active bonded validator set ranked by stake, each with its moniker, operator address, self-plus-delegated CTK, commission rate and jailed flag. The supply endpoint returns the total CTK supply, the amount bonded in staking and the resulting bonded ratio. The governance endpoint returns the most recent on-chain proposals with their id, title, status and voting window. Token amounts are converted from base micro-CTK (6 decimals) into whole CTK, and every figure is read live from the chain — nothing bundled or modelled — behind a short server-side cache with keep-warm so the feed stays fast and fresh. Ideal for staking dashboards, validator and delegator tooling, explorers, governance trackers and portfolio or analytics apps across the Cosmos and security-infrastructure ecosystem. Live keyless upstream. 5 endpoints.

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

## Pricing
- **Free** (Free) — 290 calls/Mo, 2 req/s
- **Starter** ($13/Mo) — 15,200 calls/Mo, 8 req/s
- **Pro** ($36/Mo) — 74,000 calls/Mo, 16 req/s
- **Mega** ($89/Mo) — 310,000 calls/Mo, 40 req/s

## Endpoints

### Shentu

#### `GET /v1/governance` — Recent governance proposals

**Parameters:**
- `limit` (query, optional, string) — Max proposals to return (1-50) Example: `15`

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

**Response:**
```json
{
    "data": {
        "chain": "Shentu",
        "count": 15,
        "symbol": "CTK",
        "proposals": [
            {
                "id": "54",
                "title": "shentud v2.18.0 upgrade",
                "status": "PROPOSAL_STATUS_PASSED",
                "submit_time": "2026-04-24T06:21:15.307864193Z",
                "voting_end_time": "2026-04-27T06:21:15.307864193Z"
            },
            {
                "id": "53",
                "title": "Optimization of Slashing Parameters",
                "status": "PROPOSAL_STATUS_PASSED",
                "submit_time": "2026-02-26T07:35:43.494038961Z",
                "voting_end_time": "2026-03-01T07:35:43.494038961Z"
            },
            {
                "id": "52",
                "title": "shentud v2.17.0 upgrade",
                "status": "PROPOSAL_STATUS_PASSED",
                "submit_time": "2026-02-09T14:07:16.485235854Z",
                "voting_end_time": "2026-02-12T14:07:16.485235854Z"
            },
            {
                "id": "51",
                "title": "shentud v2.16.0 upgrade",
                "status": "PROPOSAL_STATUS_PASSED",
                "submit_time": "2025-10-11T10:45:00.890587423Z",
                "voting_end_time": "2025-10-14T10:45:00.890587423Z"
            },
            {
                "id": "50",
                "title": "Adjust Community Pool Mint Allocation to 10%",
                "status": "PROPOSAL_STATUS_PASSED",
                "submit_time": "2
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/status` — Chain status

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

**Response:**
```json
{
    "data": {
        "chain": "Shentu",
        "source": "Shentu LCD",
        "symbol": "CTK",
        "chain_id": "shentu-2.2",
        "bond_denom": "uctk",
        "inflation_pct": 10,
        "latest_block_time": "2026-06-15T20:40:16.399222630Z",
        "latest_block_height": 29774501
    },
    "meta": {
        "timestamp": "2026-06-15T20:40:25.779Z",
        "request_id": "0df7415b-36ab-4b59-b0c5-06e020e2df08"
    },
    "status": "ok",
    "message": "Shentu status retrieved",
    "success": true
}
```

#### `GET /v1/supply` — CTK supply & bonded ratio

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

**Response:**
```json
{
    "data": {
        "chain": "Shentu",
        "denom": "uctk",
        "bonded": 48393375.138644,
        "symbol": "CTK",
        "decimals": 6,
        "total_supply": 160365818.655654,
        "bonded_ratio_pct": 30.18
    },
    "meta": {
        "timestamp": "2026-06-15T20:40:26.145Z",
        "request_id": "6bd1582c-7d0a-4f1f-bfea-6230c816f95f"
    },
    "status": "ok",
    "message": "Shentu supply retrieved",
    "success": true
}
```

#### `GET /v1/validators` — Active validator set

**Parameters:**
- `limit` (query, optional, string) — Max validators to return (1-300) Example: `100`

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

**Response:**
```json
{
    "data": {
        "chain": "Shentu",
        "count": 100,
        "symbol": "CTK",
        "validators": [
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "tokens": 8033588.427706,
                "moniker": "Binance Node",
                "commission_pct": 3,
                "operator_address": "shentuvaloper1ge40r5w778u9nzre60tsx2jf6da6y99ccng5ky"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "tokens": 6290222.30908,
                "moniker": "Community Node",
                "commission_pct": 100,
                "operator_address": "shentuvaloper19v90q02edxksq4pk9mrha7ss7gjc4g7f876eaq"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "tokens": 3030957.619141,
                "moniker": "CertiK",
                "commission_pct": 20,
                "operator_address": "shentuvaloper1yv5eqqjvsgpens6tfd8r9evtrcg8vhn5ta425m"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
                "tokens": 2999464.892102,
                "moniker": "Cosmostation",
                "commission_pct": 9,
                "operator_address": "shentuvaloper18tmu0lrfsdvke8e3a3jsd7fq2rs29krfyte2cf"
            },
            {
                "jailed": false,
                "status": "BOND_STATUS_BONDED",
 
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Spec

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

**Response:**
```json
{
    "data": {
        "api": "Shentu API",
        "chain": "Shentu",
        "denom": "uctk",
        "source": "Shentu public LCD/REST nodes (Cosmos SDK)",
        "symbol": "CTK",
        "chain_id": "shentu-2.2",
        "decimals": 6,
        "endpoints": [
            "/v1/status",
            "/v1/validators",
            "/v1/supply",
            "/v1/governance",
            "/v1/meta"
        ],
        "description": "Live on-chain data for Shentu — the security-focused Cosmos-SDK Layer-1 of the CertiK ecosystem (CTK).",
        "documentation": "https://shentu-api.oanor.dev"
    },
    "meta": {
        "timestamp": "2026-06-15T20:40:26.442Z",
        "request_id": "06bb1fb6-a7f4-4afe-a756-ce3319887499"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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