Twitch Channel Scraper: Followers, Live Status & VODs
Pricing
from $1.50 / 1,000 twitch channel returneds
Twitch Channel Scraper: Followers, Live Status & VODs
Check if a Twitch channel is live and its viewers, game and stream title, plus follower count, recent VODs and about panel links, for a list of channels. Streamer stats to Google Sheets, API or n8n. Went-live monitoring with alerts to Discord or Slack webhooks.
Pricing
from $1.50 / 1,000 twitch channel returneds
Rating
0.0
(0)
Developer
Adriana Voss
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Twitch "Went Live" Webhook & Channel Scraper for AI Agents & Discord
Automated "Went Live" webhook alerts and real-time Twitch channel intelligence designed for AI agents, Discord bots, and community automation. Receive instant, zero-latency webhook notifications to Discord, Slack, Telegram, or custom AI endpoints the moment a streamer goes live or publishes a new VOD.
Batch-optimized with GraphQL aliases (up to 20 channels per request) for near-instant execution and minimal cost. Keyless by default — no Twitch account, developer app, or API credentials required.
🔥 Primary Feature: "Went Live" Webhooks for Discord & AI Agents
Never miss a Twitch broadcast again. Whether you are building an automated Discord community bot or feeding real-time streamer activity into an AI agent workflow, this actor provides stateful, zero-overhead stream detection:
- Discord Community Alerts: Send rich formatted embed notifications directly to your Discord server's webhook channel with stream titles, live viewer counts, category/game info, and instant stream links.
- AI Agent Event Triggers: Trigger autonomous AI agents (via Webhooks, MCP, n8n, Make, or custom API listeners) when creators go live, enabling automated live-tweeting, AI stream summaries, or dynamic community announcements.
- Zero-Cost Quiet Runs (
onlyChangesSinceLastRun): When monitoring on a schedule (e.g. every 3–5 minutes), quiet runs with no status changes withhold output and cost $0 for item processing. You only pay when a stream state change actually occurs!
How to use
- In the Apify Console. Open the actor page and click Start — the
channelsfield is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found. - Via the API. Call it directly with a POST request — no Console needed once you have an API token:
curl "https://api.apify.com/v2/acts/accountable_eel~twitch-channel-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"channels":["shroud","pokimane"]}'
- On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.
⚡ Setting Up Went-Live Webhook Alerts
To enable continuous tracking and automatic webhook notifications:
- Set
onlyChangesSinceLastRun: true— Enables stateful monitoring (tracked via Apify named storetwitch-channel-lookup-delta). - Provide
notifyUrl— Paste your Discord Webhook URL, Telegram bot webhook, Slack webhook, or AI Agent API endpoint. - Select
notifyFormat:discord: Formats beautiful rich cards with stream title, game, viewer count, and stream URL.slack/telegram: Formats platform-native message alerts.json/auto: Sends raw JSON payloads perfect for AI Agents, n8n, or custom microservices.
Discord & AI Agent Webhook Payload Example
When a monitored channel goes live, your webhook receives an event payload like:
{"login": "shroud","displayName": "shroud","channelUrl": "https://www.twitch.tv/shroud","isLive": true,"streamTitle": "VALORANT RANKED WITH FRIENDS!","gameName": "VALORANT","viewersCount": 18450,"changeType": "WENT_LIVE","isNew": true,"scrapedAt": "2026-10-08T02:00:00.000Z"}
Input
{"channels": ["shroud","pokimane"]}
One channel per line. Enter a Twitch login username (e.g. shroud) or a channel URL (e.g. https://www.twitch.tv/pokimane). Accepted formats: [object Object], [object Object].
Configuration Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
channels | array | Required | List of Twitch usernames or channel URLs to inspect. |
onlyChangesSinceLastRun | boolean | false | Enable monitoring mode. Only emits data when a channel goes live or posts a new VOD. |
notifyUrl | string (secret) | "" | Destination webhook URL (Discord Webhook, AI Agent HTTP endpoint, Slack, Telegram). |
notifyFormat | select | "auto" | Message styling: discord, slack, telegram, json, or auto. |
includeVideos | boolean | true | Includes latest VOD recordings (title, duration, views, published date, URL). |
includePanels | boolean | true | Extracts links and titles from channel about panels (sponsors, socials, gear). |
deltaName | string | "" | Custom watchlist identifier for state tracking in the named store. |
maxNotificationsPerRun | integer | 10 | Cap on webhook alert messages sent per single run. |
Output
One row per channel:
| query | found | status | login | displayName | channelUrl | description | followers | isPartner | isAffiliate | createdAt | isLive | viewersCount | streamTitle | gameName | lastStreamAt | lastStreamTitle | recentVideos | socialLinks | panelLinks | changeType | isNew | notifyErrors | scrapedAt |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| shroud | true | OK | <game / category> | 1970-01-01T00:00:00.000Z |
Unknown channel usernames return "found": false with status "NOT_FOUND" and are never charged.
Pricing
$3 per 1,000 Twitch channels, plus a $0.0015 start fee. Misses (found:false) are never charged.
- On-demand lookup mode: Charged once per found channel ($0.003 FREE tier).
- Monitoring mode (
onlyChangesSinceLastRun: true): Charged only when a channel goes live or publishes a new VOD. Quiet runs with no changes cost $0 per item.
Use it from AI Agents, n8n, Make, or Clay
This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.
curl "https://api.apify.com/v2/acts/accountable_eel~twitch-channel-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"channels":["shroud","pokimane"]}'
n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~twitch-channel-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"channels":["shroud","pokimane"]} (swap in an expression from an earlier node for a real value).
Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~twitch-channel-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"channels":["{{Twitch channel}}"]}, mapping the row's Twitch channel into the channels array.
MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "Twitch channel scraper followers and live status" — the agent will find and run this actor.
Example Use Cases
-
Automated Discord Community Live Alerts: Set up an Apify schedule running every 3 minutes with your community's Twitch channels and your Discord webhook URL. Your Discord server gets instant live notifications with thumbnail cards.
-
AI Agent Live Stream Monitor: Connect your AI workflow (via LangChain, CrewAI, or n8n) to monitor when key streamers start broadcasting. Automatically send summarized stream alerts or update live event dashboards.
-
Creator Vetting & CRM Enrichment: Instantly fetch follower counts, channel creation dates, affiliate/partner status, and social media/panel sponsor links for marketing outreach.
Technical Details & Official Twitch API Fallback
This actor utilizes Twitch's high-speed public web GraphQL endpoints for keyless access without requiring Twitch API application approval.
If you prefer to connect directly using official credentials, you can use the Twitch Helix REST API:
- Register an application in the Twitch Developer Console.
- Obtain your Client ID and Client Secret.
- Authenticate via OAuth client credentials:
POST https://id.twitch.tv/oauth2/token?client_id=<ID>&client_secret=<SECRET>&grant_type=client_credentials - Request Twitch Helix endpoints:
- User profile:
GET https://api.twitch.tv/helix/users?login=<channel> - Stream status:
GET https://api.twitch.tv/helix/streams?user_login=<channel> - Followers count:
GET https://api.twitch.tv/helix/channels/followers?broadcaster_id=<id>
- User profile:
What this is not
- Not an IRC or chat bot: Does not read or send Twitch chat messages.
- Not a stream recorder: Extracts stream status, metadata, and VOD details, but does not download video streams or MP4 binaries.
- Not unauthorized access: Queries public web interfaces built for web browser display.