Skip to main content
Public Twitch clips are supported — both clips.twitch.tv links and twitch.tv/{channel}/clip/{slug} links work. Clips that don’t have captions (most of them) are transcribed with AI automatically, so you get a transcript either way.
Clips only. VODs (twitch.tv/videos/…), past broadcasts, highlights, live streams, and channel pages are not supported and return 400 Invalid URL.

Request

Response

string
required
The clip transcript as a plain string. No per-line timing.
string
"native" when the clip had captions, "ai" when it was transcribed with AI. Both cost the same.
string
Platform clip ID (numeric string for Twitch, e.g. "4008068818").
string
The clip URL that was transcribed.
integer
required
Your remaining credit balance after this call.
There is no title, thumbnail, timestamps, or videoUrls field in the Twitch response.

Supported URL formats

www. and m. prefixes on twitch.tv are accepted, and query strings are ignored. Every form is normalized to https://clips.twitch.tv/{slug} server-side, so they all share one cached transcript. VOD (/videos/…), channel, and embed URLs are rejected with 400 Invalid URL. Please provide a valid Twitch clip URL.

FAQ

No — this endpoint is for clips only. VODs, past broadcasts, and live streams are rejected with 400 Invalid URL. Please provide a valid Twitch clip URL. Clip the part you need on Twitch, then send the clip URL.
Most clips don’t, and that’s fine — they’re transcribed with AI automatically. transcript_source tells you which path was used. AI-transcribed clips take a little longer to return.
1 credit per clip, whether the transcript came from captions or AI. Errors and cache hits are free.
No. Only publicly viewable clips can be transcribed. Deleted or unavailable clips return 404 No transcript available for this video. You won’t be charged.
No. Twitch clip transcripts are returned as plain text — there is no per-line timing.