# Crypto Categories API
> Live market data for crypto sectors and narratives — the themes the market actually trades, not single coins. Served from the public CoinGecko categories feed (no key, nothing cached), it ranks hundreds of sectors: Smart Contract Platforms, Layer 1s and Layer 2s, Memes, Artificial Intelligence, Real-World Assets, DePIN, Gaming, DeFi, Liquid Staking and many more. For each category it gives the total market capitalisation, the 24-hour market-cap change, the 24-hour trading volume and the three largest coins in that sector — so you can see, for example, that the Meme sector is roughly a $30B market led by Dogecoin and Shiba Inu, and which narratives are pumping or bleeding today. The categories endpoint ranks every sector and can be sorted by market cap, 24-hour change or volume; the category endpoint returns one sector by id or name with its market-cap rank and description; the movers endpoint surfaces the top gaining and losing narratives over the last 24 hours, filtered to real sectors so micro-cap dust does not distort the board. This is the sector-rotation and narrative-tracking layer for any crypto research, screener, portfolio or dashboard app — which themes hold the money and which are moving. Live from CoinGecko, nothing stored. Distinct from single-coin price, market-cap and mover APIs — this is the market by sector and narrative. 4 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/cryptocategories-api/..."
```

## Pricing
- **Free** (Free) — 10,000 calls/Mo, 3 req/s
- **Starter** ($9/Mo) — 130,000 calls/Mo, 8 req/s
- **Pro** ($24/Mo) — 620,000 calls/Mo, 15 req/s
- **Scale** ($58/Mo) — 3,100,000 calls/Mo, 30 req/s

## Endpoints

### Categories

#### `GET /v1/categories` — Ranked crypto sectors

**Parameters:**
- `sort` (query, optional, string) — market_cap | change | volume (default market_cap) Example: `market_cap`
- `order` (query, optional, string) — desc | asc (default desc) Example: `desc`
- `limit` (query, optional, string) — How many (default 50, max 250) Example: `50`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptocategories-api/v1/categories?sort=market_cap&order=desc&limit=50"
```

**Response:**
```json
{
    "data": {
        "sort": "market_cap",
        "count": 50,
        "categories": [
            {
                "id": "smart-contract-platform",
                "name": "Smart Contract Platform",
                "top_coins": [
                    "bitcoin",
                    "ethereum",
                    "binancecoin"
                ],
                "market_cap": 1791934975772,
                "updated_at": "2026-06-09T11:37:18.336Z",
                "volume_24h": 63741127505,
                "market_cap_change_24h_pct": -1
            },
            {
                "id": "layer-1",
                "name": "Layer 1 (L1)",
                "top_coins": [
                    "bitcoin",
                    "ethereum",
                    "binancecoin"
                ],
                "market_cap": 1769053142410,
                "updated_at": "2026-06-09T11:36:52.875Z",
                "volume_24h": 61748726048,
                "market_cap_change_24h_pct": -0.97
            },
            {
                "id": "proof-of-work-pow",
                "name": "Proof of Work (PoW)",
                "top_coins": [
                    "bitcoin",
                    "dogecoin",
                    "zcash"
                ],
                "market_cap": 1293484074076,
                "updated_at": "2026-06-09T11:36:56.148Z",
                "volume_24h": 36511709163,
                "market_cap_change_24h_pct": -0.99
            },
            {
                "id": 
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/category` — One sector by id or name

**Parameters:**
- `id` (query, required, string) — Category id or name Example: `meme-token`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptocategories-api/v1/category?id=meme-token"
```

**Response:**
```json
{
    "data": {
        "id": "meme-token",
        "name": "Meme",
        "content": "Meme coins derive their relevance from memes, thriving on hype and picking up momentum as the community grows.",
        "top_coins": [
            "dogecoin",
            "memecore",
            "shiba-inu"
        ],
        "market_cap": 30787956755,
        "updated_at": "2026-06-09T11:35:27.235Z",
        "volume_24h": 2404963127,
        "market_cap_rank": 20,
        "market_cap_change_24h_pct": -1.78
    },
    "meta": {
        "timestamp": "2026-06-09T11:39:58.318Z",
        "request_id": "f450d095-49ac-46ee-85bd-2f710ba07c52"
    },
    "status": "ok",
    "message": "Category retrieved successfully",
    "success": true
}
```

#### `GET /v1/movers` — Top gaining/losing narratives 24h

**Parameters:**
- `limit` (query, optional, string) — How many each side (default 5, max 25) Example: `5`
- `min_market_cap` (query, optional, string) — Min sector market cap (default 50000000) Example: `50000000`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptocategories-api/v1/movers?limit=5&min_market_cap=50000000"
```

**Response:**
```json
{
    "data": {
        "losers": [
            {
                "id": "buidlpad-launchpad",
                "name": "Buidlpad Launchpad",
                "top_coins": [
                    "falcon-finance-ff",
                    "sahara-ai",
                    "lombard-protocol"
                ],
                "market_cap": 376696519,
                "updated_at": "2026-06-09T11:32:49.445Z",
                "volume_24h": 538178851,
                "market_cap_change_24h_pct": -18.34
            },
            {
                "id": "echo-launchpad",
                "name": "Echo Launchpad",
                "top_coins": [
                    "lab",
                    "plasma"
                ],
                "market_cap": 3443957921,
                "updated_at": "2026-06-09T11:32:48.361Z",
                "volume_24h": 77600098,
                "market_cap_change_24h_pct": -17.66
            },
            {
                "id": "analytics",
                "name": "Analytics",
                "top_coins": [
                    "lab",
                    "pyth-network",
                    "the-graph"
                ],
                "market_cap": 4670727471,
                "updated_at": "2026-06-09T11:37:16.054Z",
                "volume_24h": 204103247,
                "market_cap_change_24h_pct": -13.73
            },
            {
                "id": "chinese-meme",
                "name": "Chinese Meme",
                "top_coins": [
                   
…(truncated, see openapi.json for full schema)
```

### Meta

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

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

**Response:**
```json
{
    "data": {
        "source": "CoinGecko public categories API (live)",
        "service": "cryptocategories-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/movers": "Top gaining and losing narratives over 24h (limit up to 25 each).",
            "GET /v1/category": "One sector by id or name (id=meme-token or name=Meme): market cap, rank, change, volume, top coins.",
            "GET /v1/categories": "Ranked crypto sectors (sort=market_cap|change|volume, order=desc|asc, limit up to 250)."
        },
        "description": "Live market data for crypto sectors and narratives from CoinGecko: every category (Smart Contract Platforms, L1/L2, Memes, AI, RWA, DePIN, Gaming, DeFi, Liquid Staking and hundreds more) with total market cap, 24h market-cap change, 24h volume and its three largest coins. Rank by market cap, change or volume; look up one sector; or get the top gaining and losing narratives. Live, nothing stored. Distinct from single-coin price/market-cap/mover APIs — this is the market by sector and narrative.",
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-09T11:39:58.572Z",
        "request_id": "4791bfbd-2caa-47a1-a078-80eefe580d77"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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