# Kick API
> Live channel, stream and category data from Kick — the fast-growing live-streaming platform and the main Twitch challenger — with no account and no key. The channel endpoint resolves any Kick channel by its slug (the name in kick.com/<slug>) to its profile: follower count, verified status, whether it is live right now and — when live — the current viewer count, stream title and category, plus the streamer's bio and the categories they have recently streamed. The live endpoint is the discovery view: the top live streams across all of Kick right now, ranked by viewer count, each with the streamer, title, category, viewers, language and how long it has been live. The categories endpoint ranks the top categories (games and sections) by how many viewers are watching them across the platform right now — the live pulse of what Kick is watching. The search endpoint finds channels by name. This is the Kick platform cut — a distinct social/streaming platform, separate from the Twitch, YouTube, TikTok and other platform APIs in the catalogue. Follower and viewer counts are live; ideal for streaming dashboards, creator-analytics, discovery and social-monitoring tools.

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

## Pricing
- **Free** (Free) — 1,150 calls/Mo, 2 req/s
- **Starter** ($10/Mo) — 25,500 calls/Mo, 6 req/s
- **Pro** ($31/Mo) — 128,000 calls/Mo, 16 req/s
- **Mega** ($72/Mo) — 705,000 calls/Mo, 40 req/s

## Endpoints

### Channel

#### `GET /v1/channel` — One channel's stats and live state

**Parameters:**
- `slug` (query, required, string) — Channel slug (the name in kick.com/<slug>) Example: `xqc`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/kick-api/v1/channel?slug=xqc"
```

**Response:**
```json
{
    "data": {
        "bio": "THE BEST AT ABSOLUTELY EVERYTHING. THE JUICER. LEADER OF THE JUICERS.",
        "note": "One Kick channel: its follower count, verified status, and whether it is live right now (with the live viewer count, stream title and categories when it is). bio and recent_categories describe the creator. Live data, cached ~30s.",
        "slug": "xqc",
        "source": "Kick public web API (kick.com/api/v2/channels), via proxy",
        "is_live": false,
        "user_id": 676,
        "username": "xQc",
        "verified": true,
        "followers": 1078438,
        "is_banned": false,
        "channel_id": 668,
        "livestream": null,
        "channel_url": "https://kick.com/xqc",
        "profile_pic": "https://files.kick.com/images/user/676/profile_image/conversion/931b4e8f-5445-427c-bd82-b473530390cc-fullsize.webp",
        "is_affiliate": false,
        "recent_categories": [
            "Just Chatting",
            "Slots & Casino"
        ],
        "subscription_enabled": true
    },
    "meta": {
        "timestamp": "2026-06-12T19:36:13.539Z",
        "request_id": "fc5f2ba7-699f-4b40-9f73-9752ede92a57"
    },
    "status": "ok",
    "message": "Channel retrieved successfully",
    "success": true
}
```

### Live

#### `GET /v1/live` — Top live streams across Kick right now

**Parameters:**
- `limit` (query, optional, string) — Number of streams (1-50) Example: `20`

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

**Response:**
```json
{
    "data": {
        "note": "The top live streams on Kick right now, ranked by viewer count — who is being watched across the whole platform, with each stream's title, category, language and how long it has been live. Pass limit (1-50, default 20). Live, cached ~30s.",
        "count": 20,
        "source": "Kick public web API (kick.com/stream/livestreams), via proxy",
        "streams": [
            {
                "slug": "forg1",
                "title": "9z Globant vs. Vitality | IEM Cologne Major 2026 - Stage 3",
                "viewers": 78728,
                "category": "Counter-Strike 2",
                "language": "Spanish",
                "username": "forg1",
                "is_mature": false,
                "started_at": "2026-06-12 08:01:19",
                "channel_url": "https://kick.com/forg1"
            },
            {
                "slug": "odablock",
                "title": "DMM ALLSTARS | !socials !discord !youtube !allstars",
                "viewers": 44532,
                "category": "Old School RuneScape",
                "language": "English",
                "username": "Odablock",
                "is_mature": false,
                "started_at": "2026-06-12 09:43:24",
                "channel_url": "https://kick.com/odablock"
            },
            {
                "slug": "absi",
                "title": "#ستين_عالسكرين_Day5📺⏰",
                "viewers": 42533,
                "category": "IRL",
        
…(truncated, see openapi.json for full schema)
```

### Categories

#### `GET /v1/categories` — Top categories by live viewers right now

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

**Response:**
```json
{
    "data": {
        "note": "The top categories (games and sections) on Kick right now, ranked by how many viewers are watching each across the platform — the live pulse of what Kick is watching. Live, cached ~30s.",
        "count": 13,
        "source": "Kick public web API (kick.com/api/v1/categories/top), via proxy",
        "categories": [
            {
                "name": "Rust",
                "slug": "rust",
                "viewers": 273278,
                "is_mature": false,
                "is_promoted": false
            },
            {
                "name": "Just Chatting",
                "slug": "just-chatting",
                "viewers": 237673,
                "is_mature": false,
                "is_promoted": false
            },
            {
                "name": "Grand Theft Auto V (GTA)",
                "slug": "grand-theft-auto-v",
                "viewers": 194316,
                "is_mature": false,
                "is_promoted": false
            },
            {
                "name": "Counter-Strike 2",
                "slug": "counter-strike-2",
                "viewers": 152619,
                "is_mature": false,
                "is_promoted": false
            },
            {
                "name": "IRL",
                "slug": "irl",
                "viewers": 151692,
                "is_mature": false,
                "is_promoted": false
            },
            {
                "name": "Old School RuneScape",
      
…(truncated, see openapi.json for full schema)
```

### Search

#### `GET /v1/search` — Search Kick channels by name

**Parameters:**
- `q` (query, required, string) — Channel name to search Example: `xqc`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/kick-api/v1/search?q=xqc"
```

**Response:**
```json
{
    "data": {
        "note": "Kick channels matching a search term, with each channel's follower count, verified status and whether it is live. Live, cached ~30s.",
        "count": 20,
        "query": "xqc",
        "source": "Kick public web API (kick.com/api/search), via proxy",
        "results": [
            {
                "slug": "xqc",
                "is_live": false,
                "username": "xQc",
                "verified": true,
                "followers": 1078438,
                "channel_url": "https://kick.com/xqc"
            },
            {
                "slug": "xqcisoffline",
                "is_live": false,
                "username": "xqcisoffline",
                "verified": false,
                "followers": 907,
                "channel_url": "https://kick.com/xqcisoffline"
            },
            {
                "slug": "latruiexqc",
                "is_live": false,
                "username": "LaTruiexQc",
                "verified": false,
                "followers": 497,
                "channel_url": "https://kick.com/latruiexqc"
            },
            {
                "slug": "xqcow-waiting-room-x",
                "is_live": false,
                "username": "xQcOW_waiting_room_X",
                "verified": false,
                "followers": 425,
                "channel_url": "https://kick.com/xqcow-waiting-room-x"
            },
            {
                "slug": "prophetxqc",
                "is_live": fal
…(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/kick-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "channel takes slug (the kick.com/<slug> name, required). live takes limit (1-50, default 20). categories and meta take no parameters. search takes q (a channel name, required). Follower and viewer counts are live; a short ~30-second protective cache fronts the proxied upstream.",
        "source": "Kick public web API (kick.com/api), via the oanor proxy manager, live, keyless",
        "service": "kick-api",
        "endpoints": {
            "GET /v1/live": "Top live streams across Kick right now, ranked by viewers (limit 1-50).",
            "GET /v1/meta": "This document.",
            "GET /v1/search": "Search Kick channels by name (q=xqc).",
            "GET /v1/channel": "One channel's stats and live state (slug=xqc).",
            "GET /v1/categories": "Top categories ranked by live viewers right now."
        },
        "description": "Live channel, stream and category data from Kick — the fast-growing live-streaming platform (the main Twitch challenger) — with no account and no key. It resolves any channel to its follower count, verified status and live state (viewers, title, category when live); ranks the top live streams across the platform by viewers; ranks the top categories by live viewers; and searches channels by name. The Kick platform cut — a distinct social/streaming platform, separate from the Twitch, YouTube and TikTok feeds. Kick's public web API sits behind Cloudflare and is reached through a rotating residential p
…(truncated, see openapi.json for full schema)
```


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