Skip to content
Back to skills

twitch-research

ASecurity

Pulls structured Twitch data — channel profile and live status, clips, VODs, VOD chat replay, broadcast schedule, team rosters, top games, and search — via the Crawlora API as clean JSON, with no scraping or Twitch API OAuth setup. Use when the user gives a Twitch channel/game/team and wants live status, clips, VODs, chat replay, schedule, or discovery of streamers/categories.

  • 0 votes
  • 0 copies
  • 7 views
  • Added August 14, 2026
ai-agentsgoreactgitapisecurity

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned August 14, 2026

npx -y skills add Crawlora-org/crawlora-skills --skill twitch-research --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of twitch-research?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for twitch-research
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/crawlora-org-twitch-research/badge)](https://www.skillsdirectory.com/skills/crawlora-org-twitch-research)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: twitch-research
description: Pulls structured Twitch data — channel profile and live status, clips, VODs, VOD chat replay, broadcast schedule, team rosters, top games, and search — via the Crawlora API as clean JSON, with no scraping or Twitch API OAuth setup. Use when the user gives a Twitch channel/game/team and wants live status, clips, VODs, chat replay, schedule, or discovery of streamers/categories.
---

# Twitch research

Resolve Twitch channels, games/categories, and teams, and pull live status,
clips, VODs, VOD chat replay, schedules, and search results as normalized
JSON from the Crawlora API — no Twitch developer app, no OAuth, no scraping.

## When to use this skill

- "Is <channel> live right now, and what are they playing?"
- "Get the top clips from <channel>."
- "What did chat say during <VOD>?" / VOD chat replay lookups.
- "What's <channel>'s upcoming schedule?"
- "Who's live in <game/category> right now?" or top games site-wide.
- "Who's on <team>'s roster, and who's currently live?"
- "Search Twitch for a channel or category."

## Setup (one-time)

- Get a free Crawlora API key (2,000 credits/mo, no card) at [https://crawlora.net](https://crawlora.net?utm_source=github&utm_medium=referral&utm_campaign=crawlora-skills).
- `export CRAWLORA_API_KEY=sk_your_key_here`
- All requests: `x-api-key: $CRAWLORA_API_KEY` against
  `https://api.crawlora.net/api/v1`. Missing/invalid key → `401`.

## How it works

1. **Resolve the channel login.** A Twitch URL `https://twitch.tv/<login>`
   gives the channel login directly (it's already the lowercase URL slug) —
   no separate id-lookup step is needed.
2. **Profile + live status:** `/twitch/channel login=<login>`.
3. **Content for that channel:** `/twitch/clips login=<login>` (recent
   clips), `/twitch/videos login=<login>` (VODs), `/twitch/schedule
   channel=<login>` (upcoming broadcasts).
4. **VOD chat:** once you have a VOD id (from `/twitch/videos` or a
   `twitch.tv/videos/{id}` URL), page through its chat replay with
   `/twitch/vod-comments video=<id>`, advancing `offset` from the last
   comment's `offset_seconds` to keep paginating.
5. **Team rosters:** `/twitch/team team=<slug>` for a team's members and
   who's currently live.
6. **Discovery** (no channel needed up front): `/twitch/search
   query=<text>` to find channels/games by name; `/twitch/top-games` for
   what's trending site-wide; `/twitch/streams game=<slug>` for the top
   live streams under one game/category.

Full endpoint list, methods, and params: [`reference/endpoints.md`](reference/endpoints.md).

## Calling the API

```sh
# Channel profile + live status:
scripts/crawlora.sh /twitch/channel login=caedrel | jq '.'

# Clips and VODs for a channel:
scripts/crawlora.sh /twitch/clips login=caedrel limit=10 | jq '.clips[] | {title, views}'
scripts/crawlora.sh /twitch/videos login=lck limit=10 | jq '.'

# Top games, then top streams under one:
scripts/crawlora.sh /twitch/top-games limit=10 | jq '.'
scripts/crawlora.sh /twitch/streams game=league-of-legends limit=10 | jq '.'

# VOD chat replay, paginating by offset_seconds:
scripts/crawlora.sh /twitch/vod-comments video=1234567890 offset=0 | jq '.'
```

Raw `curl` fallback:

```sh
curl -fsS -H "x-api-key: $CRAWLORA_API_KEY" \
  "https://api.crawlora.net/api/v1/twitch/channel?login=caedrel" | jq '.'
```

## Endpoint reference

See [`reference/endpoints.md`](reference/endpoints.md) for every Twitch
endpoint this skill uses (method, path, params, description).

## Examples

- **Channel digest:** `/twitch/channel` (live status) + `/twitch/clips` +
  `/twitch/schedule` for one login → a single "what's this streamer up to"
  summary.
- **VOD moment-finder:** `/twitch/videos` to find the VOD id →
  `/twitch/vod-comments` starting at `offset=0`, paging forward by the last
  comment's `offset_seconds` → scan chat for reactions around a timestamp.
- **Category browse:** `/twitch/top-games` for the top categories →
  `/twitch/streams game=<slug>` on the one of interest → surface the top
  live streamers under it by viewer count.

## Notes & limits

- **Credits / pay-on-success:** billed only on `2xx`; free tier 2,000 credits/mo.
  Key at [https://crawlora.net](https://crawlora.net?utm_source=github&utm_medium=referral&utm_campaign=crawlora-skills).
- **Public data only** — public Twitch pages/GraphQL surface; respect
  Twitch's terms.
- **Security:** key lives in `CRAWLORA_API_KEY` only — never hardcode, query-param, or commit it.
- `login`/`channel` params are the lowercase URL slug (e.g. `caedrel` for
  `twitch.tv/caedrel`), not a display name — lowercase before calling.
- `/twitch/schedule` returns an empty segments list, not an error, when a
  channel has no schedule configured.
- `/twitch/search` is sourced from Twitch's search-typeahead surface — a
  capped suggestion list (`limit` max 30), not a fully paginated results page.
- `/twitch/vod-comments` paginates by re-requesting with `offset` set to the
  last returned comment's `offset_seconds` — there's no separate page token.

Files in this skill

  • SKILL.md5 KB
  • reference/endpoints.md4.9 KB
  • scripts/crawlora.sh1.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.