ScavioScavio
ToolsPricing
Sign InsGet Startedg
4 live endpoints

Twitch API

Channel profiles with live status and linked socials, a channel's VODs, its stream schedule, and clips resolved to directly downloadable MP4 urls — each one a single POST returning structured JSON. No app registration, no OAuth.

Get your API keyRead the docs

50 free credits on signup. No card, no Twitch developer app.

POST /api/v1/twitch/profile
captured response
handle:shroud
Run it with your key
{  "data": {    "id": "37402112",    "login": "shroud",    "display_name": "shroud",    "description": "I'm back baby",    "created_at": "2012-11-03T15:50:32.87847Z",    "profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/c754eebf-745b-4e0a-814a-10bcaecaabbc-profile_image-300x300.png",    "banner_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/dbee25e8-55b7-4565-87f0-e9d4661dcc66-profile_banner-480.jpeg",    "primary_color_hex": "00ADFF",    "is_partner": true,    "is_affiliate": false,    "follower_count": 11288357,    "social_media": [      {        "name": "discord",        "title": "Discord",        "url": "https://discord.gg/shroud"      },      {        "name": "youtube",        "title": "YouTube",        "url": "https://youtube.com/shroud"      }    ],    "is_live": false,    "stream": null,    "last_broadcast": {      "started_at": "2026-08-22T00:57:04.544458Z",      "title": "doggin"    }  },  "response_time": 1208,  "credits_used": 1,  "credits_remaining": 4762}
captured example · 1 credit50 free credits on signup

A real captured response from this endpoint. Sign up to run your own.

What is the Scavio Twitch API?

The Scavio Twitch API is a REST API that returns public Twitch data as structured JSON. You send a channel handle, clip slug or Twitch URL to one of 4 POST endpoints with your API key, and get back channel profile data with live status, a channel's VODs, its stream schedule, or clip metadata with directly downloadable MP4 source urls.

4
endpoints, all live in production
1
credit per call, every endpoint
MP4
clip source urls, ready to download

The four you'll reach for first

Profile tells you who and whether they're live, clip hands you a downloadable file, videos and schedule cover the catalogue and what's next.

Profile

POST /api/v1/twitch/profile

Any channel by handle or URL: bio, avatar, banner, follower count, partner and affiliate flags, whether it is live right now, and every social link — in one call.

Clip

POST /api/v1/twitch/clip

A clip resolved to its metadata and its directly downloadable MP4 source urls at 1080, 720, 480 and 360 — the piece an official-token integration will not hand you.

Videos (VODs)

POST /api/v1/twitch/user/videos

A channel's latest VODs with duration, view count, game and thumbnail — filterable by type and sortable by time or views, up to 100 in a single call.

Schedule

POST /api/v1/twitch/user/schedule

The next scheduled segment and every upcoming slot with start, end, title and categories — so you know what a channel is streaming before it goes live.

All 4 Twitch endpoints

Every route is a POST, returns JSON, and takes the same API key. 1 credit per successful call.

EndpointReturnsCredits
Profile/api/v1/twitch/profileChannel by handle or URL — id, display name, bio, avatar, banner, partner/affiliate flags, follower count, linked socials, live status and the current stream1
Videos (VODs)/api/v1/twitch/user/videosA channel's latest VODs — id, title, duration, view count, publish date, game and thumbnail; filter by type and sort by time or views1
Schedule/api/v1/twitch/user/scheduleA channel's stream schedule — the next segment and every upcoming slot with start, end, title and categories1
Clip/api/v1/twitch/clipOne clip by slug or URL — title, views, duration, curator, broadcaster, game, thumbnail and directly downloadable MP4 source urls at 1080/720/480/3601

50 free credits on signup covers 50 calls of any kind. See plans

Resolve a channel, then grab a clip's MP4

Read live status, follower count and socials from a handle, then turn a clip into a downloadable file. The response on the right is a real capture, field names and all.

from scavio import ScavioClient

client = ScavioClient(api_key="sk_live_your_key")

# Resolve a channel: is it live, how many followers, which socials
p = client.twitch.profile(handle="shroud")["data"]
print(p["display_name"], p["follower_count"], "live:", p["is_live"])
for s in p["social_media"]:
    print(s["title"], s["url"])

# Resolve a clip to a downloadable MP4
clip = client.twitch.clip(clip="DeliciousDelightfulPicklesWOOP")["data"]
best = clip["qualities"][0]
print(clip["title"], best["quality"], best["source_url"])
200 response.jsoncaptured
{
  "data": {
    "id": "37402112",
    "login": "shroud",
    "display_name": "shroud",
    "description": "I'm back baby",
    "created_at": "2012-11-03T15:50:32.87847Z",
    "profile_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/c754eebf-745b-4e0a-814a-10bcaecaabbc-profile_image-300x300.png",
    "banner_image_url": "https://static-cdn.jtvnw.net/jtv_user_pictures/dbee25e8-55b7-4565-87f0-e9d4661dcc66-profile_banner-480.jpeg",
    "primary_color_hex": "00ADFF",
    "is_partner": true,
    "is_affiliate": false,
    "follower_count": 11288357,
    "social_media": [
      { "name": "discord", "title": "Discord", "url": "https://discord.gg/shroud" },
      { "name": "youtube", "title": "YouTube", "url": "https://youtube.com/shroud" }
    ],
    "is_live": false,
    "stream": null,
    "last_broadcast": {
      "started_at": "2026-08-22T00:57:04.544458Z",
      "title": "doggin"
    }
  },
  "response_time": 1208,
  "credits_used": 1,
  "credits_remaining": 4762
}

Why not Twitch's official Helix API?

It exists, and it is built for authorising an app against your own account — not for reading everyone else's channels and clips.

Twitch Helix API

  • Requires a registered application and an OAuth token before you can call anything
  • No plain field for a clip's downloadable MP4 — you get metadata, not a file
  • Does not expose a channel's linked social accounts as data
  • Tokens to issue, refresh and rotate, with per-app rate limits to manage

Scavio Twitch API

  • One API key, issued at signup — no app, no OAuth, no token rotation
  • Clips resolve to directly downloadable MP4 source urls at four qualities
  • Profiles carry live status, follower count and every linked social
  • Same key and JSON envelope as 30 other Scavio platforms

Scavio returns publicly available data only, and never authenticates as a Twitch user.

What developers build with it

Clip downloading and reposting

Turn any clip slug or URL into a directly downloadable MP4 at 1080, 720, 480 or 360. The source urls come back ready to fetch, so a clips-to-Shorts or highlight pipeline is one call plus a download.

clip

Creator and channel intelligence

Resolve any handle to follower count, partner and affiliate status, linked socials and whether it is live right now — profile a roster of streamers for sponsorship, casting or competitive analysis.

profile

Live-status monitoring and alerts

Poll a set of channels on a schedule and read is_live with the current stream's game, title and viewer count, so a bot, dashboard or alert fires the moment a channel goes live.

profile

VOD catalogues and content archives

Pull a channel's latest VODs with duration, view count, game and thumbnail, sorted by views or by time, to build a searchable archive or seed a content-recommendation feed.

user/videos

Schedule and appointment feeds

Read a channel's next segment and every upcoming slot with start, end, title and categories, to power a countdown, a reminder bot or an aggregated stream calendar.

user/schedule

Agent tools for live media

Point an agent at the MCP server and Twitch becomes a callable tool — who is this streamer, are they live, grab this clip — with one key and the same JSON envelope as every other platform.

MCP + REST

How to get Twitch data as JSON

  1. 1

    Get an API key

    Sign up for a Scavio account and copy your key from the dashboard. You get 50 credits free on signup, with no card required and no Twitch developer application or OAuth flow.

  2. 2

    POST a handle, clip or URL

    Send {"handle": "shroud"} to https://api.scavio.dev/api/v1/twitch/profile with an Authorization: Bearer header. All four endpoints are POSTs and take a channel handle, a clip slug, or a full Twitch URL.

  3. 3

    Read the JSON

    The response wraps the payload under data, plus credits_used and credits_remaining. Videos carry total_count and a cursor; clips carry a qualities array whose source_url values are downloadable MP4s.

One key, 31 platformsMCP server for agentsPython & JS SDKsn8n community node

Twitch API FAQ

What is the Scavio Twitch API?

+

It is a REST API that returns public Twitch data as structured JSON. Four POST endpoints cover channel profiles, a channel's VODs, a channel's stream schedule, and clip metadata with downloadable MP4 source urls. You authenticate with a Scavio API key and never register a Twitch app or run an OAuth flow.

Can I download a Twitch clip's MP4 with this?

+

Yes, and it is the main reason to use this API. The clip endpoint returns a qualities array where each entry carries a source_url that is a directly downloadable MP4 at 1080, 720, 480 or 360. Pass a clip slug or any clip URL, take the source_url of the quality you want, and fetch it — no extra signing step on your side.

How is this different from Twitch's official Helix API?

+

Twitch's official API requires you to register an application and manage OAuth tokens before you can call anything, and even then it does not hand you a clip's downloadable MP4, a channel's linked social accounts, or a clean single-call live status the way this does. Scavio needs no app and no token management: sign up, take the key, POST a handle or a clip.

Can I tell if a channel is live?

+

Yes. The profile endpoint returns is_live, and when the channel is live the stream object carries the type, viewer_count, game_name, title and started_at. When it is offline, stream is null and last_broadcast gives the title and start time of the previous broadcast.

Do profiles include a channel's other social accounts?

+

Yes. The profile response includes a social_media array where each entry has a name, a title and a url — the Discord, Twitter, YouTube, Instagram and other links a channel has added. This is data an official-token integration does not expose as a plain field.

How many VODs can I get, and can I paginate?

+

The videos endpoint returns up to 100 of a channel's latest VODs in a single call, filterable by type (archive, highlight, upload, past premiere) and sortable by time or views, along with a total_count. Page-one covers the full catalogue of any channel with 100 or fewer VODs of a type; for very large channels the first 100 are the reliable window, so build against that rather than assuming unlimited deep pagination.

What does a follower count look like, and are total views available?

+

The profile endpoint returns follower_count as an integer. Twitch retired the channel total-view-count metric in 2022, so it is not available from any source; report follower_count as the headline audience number.

How much does a Twitch request cost?

+

Every Twitch endpoint costs 1 credit per successful call — profile, videos, schedule and clip alike. Calls that fail are not billed. New accounts get 50 free credits on signup, one time, with no card required. Paid plans start at $30 per month for 7,000 credits.

What input does each endpoint take?

+

Profile, videos and schedule take a channel handle or a full twitch.tv URL. The clip endpoint takes a clip slug or any clip URL (clips.twitch.tv/slug or twitch.tv/channel/clip/slug). Every route is a POST that accepts the identifier in a JSON body.

Which languages and tools are supported?

+

Official Python (pip install scavio) and JavaScript/TypeScript (npm i scavio) SDKs, a remote MCP server at mcp.scavio.dev for AI agents, and an n8n community node. Any language can call the REST endpoints directly with an HTTP client.

Is using Twitch data this way legal?

+

Scavio returns publicly available channel, video, schedule and clip data and does not access private account data or authenticate as a user. You remain responsible for how you use the data, including compliance with Twitch's terms and with copyright and privacy law. Talk to your own counsel for your specific use case.

Explore more of Scavio

YouTube API

Search, video, channel, comments and transcripts.

TikTok API

Profiles, videos, search and downloadable media.

Instagram API

Profiles, posts, reels and hashtags as JSON.

X (Twitter) API

Users, tweets, search and followers.

MCP server

Every platform as a callable tool for agents.

Pricing

Credit packs and plans, no per-platform surcharge.

Start pulling Twitch data today

50 free credits on signup, no card. Your first request is a POST with a channel handle in it.

Get your API keySee pricing
ScavioScavio

One scraper API for every social, search and ecommerce platform. Built for AI agents.

Product

  • Features
  • Pricing
  • Dashboard
  • Affiliates

Developers

  • Documentation
  • API Reference
  • Quickstart
  • MCP Integration
  • Python SDK

Alternatives

  • Tavily Alternative
  • SerpAPI Alternative
  • Firecrawl Alternative
  • Exa Alternative
  • Serper Alternative
  • Tavily vs Scavio
  • SerpAPI vs Scavio
  • All alternatives
  • Compare Scavio vs alternatives

Search APIs

  • Google Search API
  • Amazon Product API
  • YouTube API
  • Reddit API
  • Walmart Product API
  • TikTok API
  • Instagram API

Tools

  • All Tools

© 2026 Scavio. All rights reserved.

Featured on TAAFT
Terms of ServicePrivacy Policy