Youtube Playlist

zeropointrepo/youtube-skills/clawhub/youtube-playlist

by zeropointrepo4f7994b94e7dNo license1K starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 2 days ago

Use when a YouTube playlist is involved: pasted playlist links or IDs, requests to list playlist videos, browse playlist contents, or work through a playlist for transcripts or research. Also use when the user wants all videos from a series, course, or collection. Not for creating playlists or account management.

Instructions onlyResearch & Analysis
AI-generated overview

Browse YouTube playlists and fetch video transcripts through the TranscriptAPI service.

What it does
This skill guides an agent through calling the TranscriptAPI HTTP endpoints to list the videos in a YouTube playlist, page by page, and to retrieve transcripts for individual videos. It documents the required Authorization and User-Agent headers, the playlist and continuation parameters, accepted playlist ID prefixes, response fields, and error codes. It also explains how to find a playlist ID from a channel and how to extract one from a playlist URL.
When to use it
Use it when a YouTube playlist link or ID is involved, when the user wants the videos in a playlist listed or browsed, or when working through a series, course, or collection for transcripts or research. It is not intended for creating playlists or account management.
Requirements
Internet access to transcriptapi.com and a TRANSCRIPT_API_KEY environment variable (a TranscriptAPI key starting with sk_); the skill is instructions only and ships no scripts, but it references an auth-setup document for obtaining the key. Requests consume credits (1 per page; free tier 100 credits).

YouTube Playlist

Browse playlists and fetch transcripts via TranscriptAPI.com.

Setup

If $TRANSCRIPT_API_KEY is not set, read references/auth-setup.md [blocked] and follow the instructions there to get and store the key.

Required Headers

Every request needs two headers:

  • Authorization: Bearer $TRANSCRIPT_API_KEY
  • User-Agent: your agent's name and version if known (e.g. HermesAgent/0.11.0, ClaudeCode/1.0). Version is optional — agent name alone is fine. Do not omit this header or send a bare default — Cloudflare will return a 403 (error code 1010) and block the request.

API Reference

Full OpenAPI spec: transcriptapi.com/openapi.json — consult this for the latest parameters and schemas.

GET /api/v2/youtube/playlist/videos — 1 credit/page

Paginated playlist video listing (100 per page). Accepts playlist — a YouTube playlist URL or playlist ID.

bash
# First pagecurl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_PLAYLIST_ID" \  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \  -H "User-Agent: YourAgent/1.0"
# Next pagescurl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?continuation=TOKEN" \  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \  -H "User-Agent: YourAgent/1.0"
ParamRequiredValidation
playlistconditionalPlaylist URL or ID (PL/UU/LL/FL/OL prefix)
continuationconditionalnon-empty string

Provide exactly one of playlist or continuation, not both.

Accepted playlist ID prefixes:

  • PL — user-created playlists
  • UU — channel uploads playlist
  • LL — liked videos
  • FL — favorites
  • OL — other system playlists

Response:

json
{  "results": [    {      "videoId": "abc123xyz00",      "title": "Playlist Video Title",      "channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",      "channelTitle": "Channel Name",      "channelHandle": "@handle",      "lengthText": "10:05",      "viewCountText": "1.5M views",      "thumbnails": [{ "url": "...", "width": 120, "height": 90 }],      "index": "0"    }  ],  "playlist_info": {    "title": "Best Science Talks",    "numVideos": "47",    "description": "Top science presentations",    "ownerName": "TED",    "viewCount": "5000000"  },  "continuation_token": "4qmFsgKlARIYVVV1...",  "has_more": true}

Pagination flow:

  1. First request: ?playlist=PLxxx — returns first 100 videos + continuation_token
  2. Next request: ?continuation=TOKEN — returns next 100 + new token
  3. Repeat until has_more: false or continuation_token: null

Workflow: Playlist → Transcripts

bash
# 1. List playlist videoscurl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_PLAYLIST_ID" \  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \  -H "User-Agent: YourAgent/1.0"
# 2. Get transcript from a video in the playlistcurl -s "https://transcriptapi.com/api/v2/youtube/transcript\?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true" \  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \  -H "User-Agent: YourAgent/1.0"

Don't know a playlist ID? Find it from the channel

To browse a channel's playlists first (1 credit/page), then list videos in one of them:

bash
# 1. List the channel's playlistscurl -s "https://transcriptapi.com/api/v2/youtube/channel/playlists?channel=@TED" \  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \  -H "User-Agent: YourAgent/1.0"
# 2. List videos in the chosen playlist (playlistId from step 1)curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PLAYLIST_ID" \  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \  -H "User-Agent: YourAgent/1.0"

Extract playlist ID from URL

From https://www.youtube.com/playlist?list=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf, the playlist ID is PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf. You can also pass the full URL directly to the playlist parameter.

Errors

CodeMeaningAction
400Both or neither paramsProvide exactly one of playlist or continuation
402No creditstranscriptapi.com/billing
403/1010Cloudflare blockAdd or fix User-Agent header
404Playlist not foundCheck if playlist is public
408TimeoutRetry once
422Invalid playlist formatMust be a valid playlist URL or ID

1 credit per page. Free tier: 100 credits, 300 req/min.

Source and attribution

Source:zeropointrepo/youtube-skillsinclawhub/youtube-playlistat commit4f7994b

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal