Real-time Twitch data — channel profiles, live streams, top clips, and channel search. All data is scraped directly from Twitch and returned as structured JSON.
See real data shapes from every endpoint — no signup required.
/twitch/channel
curl -G "https://api.pullapi.com/twitch/channel" \
-H "x-rapidapi-key: YOUR_API_KEY"
{
"success": true,
"data": {
"id": "19571641",
"login": "ninja",
"display_name": "Ninja",
"description": "Professional gamer and content creator",
"profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/ninja-profile_image.png",
"banner_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/ninja-channel_offline_image.png",
"primary_color": "#9147FF",
"followers_count": 18900000,
"is_partner": true,
"is_affiliate": false,
"is_live": true,
"stream": {
"id": "46823914560",
"title": "RANKED GRIND | !socials",
"viewer_count": 42150,
"game_name": "Fortnite",
"game_id": "33214",
"broadcaster_login": "ninja",
"broadcaster_display_name": "Ninja",
"broadcaster_profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/ninja-profile_image.png",
"tags": [ "English", "Competitive", "FPS"
],
"stream_type": "live",
"preview_image_url": "https://static-cdn.jtvnw.net/previews-ttv/live_user_ninja-320x180.jpg",
"started_at": "2026-03-15T08: 30: 00Z"
},
"last_broadcast_title": "RANKED GRIND | !socials",
"last_broadcast_game": "Fortnite",
"last_broadcast_started_at": "2026-03-15T08: 30: 00Z",
"created_at": "2011-11-20T04: 25: 47Z"
},
"credits_used": 1,
"cache_hit": false,
"timestamp": "2026-03-15T12: 00: 00+00: 00"
}
4 endpoints across 4 categories.
/twitch/channel
Get a Twitch channel's full profile including display name, description, follower count, partner/affiliate status, profile and banner images, and current live stream info if broadcasting. Also includes last broadcast details.
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
login |
string | Yes | Twitch username or channel URL. Examples: "ninja", "shroud", "https://www.twitch.tv/xqc" | ninja |
{
"success": true,
"data": {
"id": "19571641",
"login": "ninja",
"display_name": "Ninja",
"description": "Professional gamer and content creator",
"profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/ninja-profile_image.png",
"banner_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/ninja-channel_offline_image.png",
"primary_color": "#9147FF",
"followers_count": 18900000,
"is_partner": true,
"is_affiliate": false,
"is_live": true,
"stream": {
"id": "46823914560",
"title": "RANKED GRIND | !socials",
"viewer_count": 42150,
"game_name": "Fortnite",
"game_id": "33214",
"broadcaster_login": "ninja",
"broadcaster_display_name": "Ninja",
"broadcaster_profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/ninja-profile_image.png",
"tags": [ "English", "Competitive", "FPS"
],
"stream_type": "live",
"preview_image_url": "https://static-cdn.jtvnw.net/previews-ttv/live_user_ninja-320x180.jpg",
"started_at": "2026-03-15T08: 30: 00Z"
},
"last_broadcast_title": "RANKED GRIND | !socials",
"last_broadcast_game": "Fortnite",
"last_broadcast_started_at": "2026-03-15T08: 30: 00Z",
"created_at": "2011-11-20T04: 25: 47Z"
},
"credits_used": 1,
"cache_hit": false,
"timestamp": "2026-03-15T12: 00: 00+00: 00"
}
/twitch/streams
Get currently live streams on Twitch, sorted by viewer count. Optionally filter by game name. Returns stream title, viewer count, game, broadcaster info, tags, and preview images.
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
game |
string | No | Filter by game name (omit for top streams across all games). Examples: "Fortnite", "League of... | Fortnite |
limit |
integer | No | Number of streams to return (1-100) | 20 |
{
"success": true,
"data": {
"game": "Fortnite",
"streams": [
{
"id": "46823914560",
"title": "RANKED GRIND | !socials",
"viewer_count": 42150,
"game_name": "Fortnite",
"game_id": "33214",
"broadcaster_login": "ninja",
"broadcaster_display_name": "Ninja",
"broadcaster_profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/ninja-profile_image.png",
"tags": [ "English", "Competitive", "FPS"
],
"stream_type": "live",
"preview_image_url": "https://static-cdn.jtvnw.net/previews-ttv/live_user_ninja-320x180.jpg",
"started_at": "2026-03-15T08: 30: 00Z"
},
{
"id": "46823918742",
"title": "Solo Victory Royales Only",
"viewer_count": 15200,
"game_name": "Fortnite",
"game_id": "33214",
"broadcaster_login": "tfue",
"broadcaster_display_name": "Tfue",
"broadcaster_profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/tfue-profile_image.png",
"tags": [ "English", "Competitive"
],
"stream_type": "live",
"preview_image_url": "https://static-cdn.jtvnw.net/previews-ttv/live_user_tfue-320x180.jpg",
"started_at": "2026-03-15T10: 15: 00Z"
}
],
"total_viewers": 57350
},
"credits_used": 1,
"cache_hit": false,
"timestamp": "2026-03-15T12: 00: 00+00: 00"
}
/twitch/clips
Get top clips from a Twitch channel, sorted by view count. Filter by time period (last 24 hours, 7 days, 30 days, or all time). Returns clip title, URL, thumbnail, view count, duration, game, and curator info.
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
login |
string | Yes | Twitch username or channel URL. Examples: "ninja", "shroud", "https://www.twitch.tv/xqc" | shroud |
period |
string | No | Time period to filter clips by. Use "24h" for last 24 hours, "7d" for last week, "30d" for last... | 24h, 7d, 30d, all |
limit |
integer | No | Number of clips to return (1-100) | 20 |
{
"success": true,
"data": {
"channel": "shroud",
"clips": [
{
"id": "RandomClipID123",
"slug": "ShroudInsaneFlick-abc123def",
"title": "INSANE flick headshot",
"url": "https://clips.twitch.tv/ShroudInsaneFlick-abc123def",
"thumbnail_url": "https://clips-media-assets2.twitch.tv/AT-cm%7Cabc123def-preview-480x272.jpg",
"view_count": 2450000,
"duration_seconds": 30,
"game_name": "Counter-Strike 2",
"broadcaster_login": "shroud",
"broadcaster_display_name": "shroud",
"curator_login": "clipfan42",
"curator_display_name": "ClipFan42",
"created_at": "2025-12-01T18: 45: 00Z"
},
{
"id": "AnotherClipID456",
"slug": "ShroudClutchPlay-xyz789ghi",
"title": "1v5 clutch ace",
"url": "https://clips.twitch.tv/ShroudClutchPlay-xyz789ghi",
"thumbnail_url": "https://clips-media-assets2.twitch.tv/AT-cm%7Cxyz789ghi-preview-480x272.jpg",
"view_count": 1830000,
"duration_seconds": 45,
"game_name": "Counter-Strike 2",
"broadcaster_login": "shroud",
"broadcaster_display_name": "shroud",
"curator_login": "esportsfan99",
"curator_display_name": "EsportsFan99",
"created_at": "2025-11-15T22: 10: 00Z"
}
],
"total_clips": 2
},
"credits_used": 1,
"cache_hit": false,
"timestamp": "2026-03-15T12: 00: 00+00: 00"
}
/twitch/search
Search for Twitch channels by name or keyword. Returns matching channel profiles with follower counts, partner/affiliate status, and live stream info. Results are ordered by relevance.
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
query |
string | Yes | Search query for channels. Can be a username, display name, or keyword. Examples: "ninja",... | valorant |
limit |
integer | No | Number of results to return (1-100) | 20 |
{
"success": true,
"data": {
"query": "valorant",
"results": [
{
"id": "694583540",
"login": "valorant",
"display_name": "VALORANT",
"description": "Official VALORANT Twitch channel",
"profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/valorant-profile_image.png",
"banner_image_url": null,
"primary_color": null,
"followers_count": 950000,
"is_partner": true,
"is_affiliate": false,
"is_live": false,
"stream": null,
"last_broadcast_title": "VCT Masters Shanghai - Grand Finals",
"last_broadcast_game": "VALORANT",
"last_broadcast_started_at": "2026-03-10T16: 00: 00Z",
"created_at": "2020-04-03T20: 00: 00Z"
},
{
"id": "51496027",
"login": "tenz",
"display_name": "TenZ",
"description": "Pro VALORANT player for Sentinels",
"profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/tenz-profile_image.png",
"banner_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/tenz-channel_offline_image.png",
"primary_color": "#FF4500",
"followers_count": 2700000,
"is_partner": true,
"is_affiliate": false,
"is_live": true,
"stream": {
"id": "46824001234",
"title": "RANKED TO RADIANT | !settings",
"viewer_count": 18500,
"game_name": "VALORANT",
"game_id": "516575",
"broadcaster_login": "tenz",
"broadcaster_display_name": "TenZ",
"broadcaster_profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/tenz-profile_image.png",
"tags": [ "English", "Competitive", "FPS"
],
"stream_type": "live",
"preview_image_url": "https://static-cdn.jtvnw.net/previews-ttv/live_user_tenz-320x180.jpg",
"started_at": "2026-03-15T09: 00: 00Z"
},
"last_broadcast_title": "RANKED TO RADIANT | !settings",
"last_broadcast_game": "VALORANT",
"last_broadcast_started_at": "2026-03-15T09: 00: 00Z",
"created_at": "2016-07-12T05: 30: 00Z"
}
],
"total_results": 2
},
"credits_used": 1,
"cache_hit": false,
"timestamp": "2026-03-15T12: 00: 00+00: 00"
}
Get started in seconds with your preferred language.
curl -G "https://api.pullapi.com/twitch/channel?login=ninja" \
-H "x-rapidapi-host: twitch-scraper-api.p.rapidapi.com" \
-H "x-rapidapi-key: YOUR_API_KEY"
HTTP-based API. No Selenium, no Puppeteer, no headless browsers to manage.
Automatic residential proxy rotation handles anti-bot detection for you.
Smart Redis caching means faster repeated queries and lower costs.
No monthly commitment. Free tier included. Pay only for what you use.
What developers build with the Twitch Scraper API.
More APIs in Social Media.
Influencer Analytics · Content Monitoring
Creator Analytics · Trend Tracking
Channel Analytics · Video Research
Page Analytics · Marketplace Monitoring
Sentiment Analysis · Trend Detection
Sentiment Analysis · Influencer Monitoring
Start with the free tier. No credit card required.
Subscribe on RapidAPI →