Extract Playlist Videos

List every video in any public YouTube playlist with pagination.

The Playlist endpoint returns every video in any public YouTube playlist (PL…, UU…, LL…, FL…, OL…) with cursor-based pagination. Authenticate with Authorization: Bearer YOUR_API_KEY. Each page charges 1 credit on a 200 response; 4xx errors, 5xx errors, and 429 rate-limits never debit. Pass playlist on the first request, then send the returned continuation_token for subsequent pages until has_more is false. The response also includes a playlist_info block with title, owner, and video count.

GET/api/v2/youtube/playlist/videos1 credit / page

Parameters

ParameterTypeDefaultDescription
playliststringPlaylist URL or ID (PL…, UU…, LL…, FL…, OL…). Required for first page.
continuationstringToken from a previous response. Required for next pages.

Provide exactly one of playlist or continuation.

Example requests

bash
# First page
curl -X GET "https://youtubetranscriptapi.com/api/v2/youtube/playlist/videos?playlist=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf" \
  -H "Authorization: Bearer YOUR_API_KEY"

# Next page
curl -X GET "https://youtubetranscriptapi.com/api/v2/youtube/playlist/videos?continuation=4qmFsgKlARIYVVV1QVhGa2dz..." \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

json
{
  "results": [
    {
      "videoId": "abc123xyz00",
      "title": "Playlist Video",
      "channelId": "UCAuUUnT6oDeKwE6v1NGQxug",
      "channelTitle": "TED",
      "channelHandle": "@TED",
      "lengthText": "10:05",
      "viewCountText": "1.5M views 6 months ago",
      "thumbnails": [],
      "index": "0"
    }
  ],
  "playlist_info": {
    "title": "Best Tech of 2025",
    "numVideos": "47",
    "description": "My picks for the best tech this year",
    "ownerName": "TED",
    "viewCount": "5000000"
  },
  "continuation_token": "4qmFsgKlARIYVVV1QVhGa2dz...",
  "has_more": true
}
Playlist — YouTubeTranscriptAPI