API reference

REST, JSON, read-only. Authenticate with an API key from your account; each request costs credits that reset on the 1st of the month.

Authentication

Create a key under Account → API and send it as a bearer token. Keys are shown once and stored hashed.

curl -H "Authorization: Bearer sc_live_…" \
  "https://loyal-spaniel-420.convex.site/api/v1/rankings/twitch/channels?period=7d&metric=avgViewers&limit=10"

Responses are { "data": …, "credits": { "cost", "remaining" } }; the same numbers come back in X-Credits-Cost / X-Credits-Remaining headers. Errors use { "error": "…" } with 401 (bad key), 402 (needs a plan), 404, or 429 (credits exhausted).

Plans

PlanCredits / monthScope
Free50Twitch only · top 100 · 7d/30d periods · 30 days of history
Starter · $199/mo500Twitch + Kick · top 1,000 · every period · 400 days of history
Professional · $449/mo1,500Twitch + Kick · top 1,000 · every period · 400 days of history
Business · $749/mo3,000Twitch + Kick · top 1,000 · every period · 400 days of history
Elite · $1099/mo5,000Twitch + Kick · top 1,000 · every period · 400 days of history

Subscribe on the pricing page. Need more than 5,000 credits? Email us.

Endpoints

Base URL https://loyal-spaniel-420.convex.site/api/v1. {platform} is twitch or kick; logins are case-insensitive.

  • GET /mefree

    Your plan, credits used and remaining, reset date.

  • GET /live/{platform}1 credit

    Channels live right now, by current viewers.

    Query: limit (default 100)

  • GET /channels/{platform}/{login}1 credit

    Channel profile plus rolling-period and monthly stats (7d/30d on Free).

  • GET /channels/{platform}/{login}/daily2 credits

    Per-day hours watched, airtime, peak/avg viewers, streams, followers.

    Query: days (default 30, max 30 Free / 400 paid)

  • GET /channels/{platform}/{login}/streams2 credits

    Most recent streams with peak/avg viewers, hours watched and categories.

    Query: limit (default 50, max 200)

  • GET /rankings/{platform}/channels2 credits

    Channel ranking for a period.

    Query: period (7d, 30d, 90d, 365d, YYYY-MM) · metric (hoursWatched, peakViewers, avgViewers, airtimeMinutes, followersGained) · limit · offset

  • GET /rankings/{platform}/categories2 credits

    Category ranking for a period.

    Query: period · metric (hoursWatched, peakViewers, avgViewers, peakChannels) · limit · offset

  • GET /categories/{platform}/{gameId}2 credits

    Category profile plus per-day viewers and channel counts.

    Query: days