Twitch

Twitch Clip API

Twitch clip — curator vs channel, signedVideoUrl, unwrapped token, relatedClips (1 credit).

Pass a Twitch clip URL (clips.twitch.tv/<slug> or twitch.tv/<channel>/clip/<slug>) and get a clean structured object — not Twitch's raw GraphQL envelope. Channel URLs and usernames are 400 (they belong on /twitch/profile) — rejected immediately instead of a slow miss. Includes curator (who cut the clip) separate from channel{id,handle,displayName,url,avatar,followers,isPartner,lastBroadcast}, BCP-47 lowercase language (same as twitch/profile recentVideos), isFeatured/isPublished, videoOffsetSeconds, gameId/gameSlug/gameBoxArtUrl, videoQualities[{quality,frameRate,url,signedUrl}] with frameRate rounded to 2dp, videoUrl (unsigned source) plus signedVideoUrl (?sig=&token= — required for /nauth/ MP4s; unsigned returns 401), playbackAccessToken as parsed fields (signature, expires, expiresAt, clipUri, clipSlug, deviceId, version, authorization — no escaped JSON value string), and relatedClips[] from the same channel. No flat broadcaster / broadcasterProfileImage twins. Accepts cache / cacheMaxAge=1d|3d|7d|14d|30d. Flat 1 credit.

Docs: https://captapi.com/apis/twitch-clip

get/v1/twitch/clip

Request

  • Base URL: https://api.captapi.com
  • URL: https://api.captapi.com/v1/twitch/clip
  • Auth: one of:
    • HTTP bearer
    • API key in header X-API-Key

Query parameters

urlstring required

Twitch clip URL (clips.twitch.tv/<slug> or twitch.tv/<channel>/clip/<slug>). The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.

cacheboolean

Set true to serve from the response cache (default TTL). Default false — always fetch fresh. Prefer cacheMaxAge when you need 1d–30d freshness control.

cacheMaxAge'1d' | '3d' | '7d' | '14d' | '30d'

Max age of a cached response: 1d, 3d, 7d, 14d, or 30d. When set, enables caching with that TTL.

Response

Success. The data object for this endpoint.

successunknown required

Changes

No recorded changes to this operation across all 3 revisions of this API.