YouTube Playlist Contents & Channel Playlist Finder
Pricing
from $0.49 / 1,000 results
YouTube Playlist Contents & Channel Playlist Finder
List every video in a YouTube playlist, or discover every public playlist a channel owns, with titles, durations, thumbnails, and playlist metadata.
Pricing
from $0.49 / 1,000 results
Rating
0.0
(0)
Developer
vexaloom-labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Share
Collect every video in a YouTube playlist, discover all of a channel's public collections, and search YouTube for playlists by keyword. Every available video can carry exact views, likes, publish date, description, category, and tags, while deleted or private entries can be returned as clearly marked placeholders with their real positions.
What this actor does
- Playlist contents — every public video in one or many playlists, including 1,000+ item playlists
- Hidden unavailable entries — optional placeholder rows for deleted, private, or removed videos, preserving their true position
- Exact video details — views, likes, ISO publish date, description, category, tags, live status, and all thumbnail sizes
- Channel collections — playlists, shows, courses, podcasts, and albums with their real video/episode counts
- Playlist search — keyword search across public playlists and courses, ranked per query
- Mixed runs — combine playlist URLs, channel URLs, and search queries in one input
- Empty fields are omitted from every record
Output: per video (playlistUrls mode)
recordType—videoposition— the video's real position in the playlist, counting hidden entriesvideoId,title,url,thumbnailUrl,thumbnails[]duration,durationSecondsisAvailable—falsefor placeholder rowsviewCount,viewCountText— exact views from the video pagelikeCount— exact likes when YouTube exposes thempublishedAt— ISO 8601 date/timepublishedTimeText— the relative label shown in the playlistvideoDescription,videoCategory,videoKeywords[],isLiveContentvideoChannelName,videoChannelId,videoChannelHandle,videoChannelUrl— the video's uploaderplaylistId,playlistTitle,playlistUrl,playlistTypeplaylistVideoCount— the count YouTube declares for the playlistplaylistAvailableVideoCount,playlistUnavailableVideoCountplaylistTotalDurationSeconds,playlistTotalDurationplaylistOwner,playlistOwnerChannelId,playlistOwnerHandle,playlistDescription,playlistViewCountplaylistThumbnailUrl,playlistVisibilitylastUpdated,lastUpdatedDate— the latter only when the label contains an exact datescrapedAt
Placeholder rows keep recordType, videoId, position, thumbnailUrl, playlist context, and isAvailable: false. YouTube does not reveal the title or channel of a hidden entry, so those fields are omitted.
Output: per playlist (channelUrls mode)
recordType—playlistplaylistId,playlistUrl,title,playlistType—playlist,show,course,podcast,album,radio_mix, oruploadsvideoCount,videoCountText— for example28and"28 episodes"thumbnailUrlfirstVideoId,firstVideoUrl— where the collection startschannelName,channelId,channelHandle,channelUrl,channelAvatarUrllastUpdated— when the card shows an update labelscrapedAt
Output: per search result (searchQueries mode)
recordType—playlistsearchQuery,searchRankplaylistId,playlistUrl,title,playlistTypechannelName,channelId,channelHandle,channelUrlthumbnailUrl,firstVideoId,firstVideoUrlscrapedAt
Search cards do not show a reliable video count, so videoCount is omitted. Pass a returned playlist ID to playlistUrls to collect its contents.
Output: status and error rows
If a playlist, channel, or query cannot be read, the dataset still receives a row with recordType: "status" or "error", the relevant input, and a plain-language message, so an empty dataset never hides a failure.
Input
| Field | Type | Default | Description |
|---|---|---|---|
playlistUrls | array | – | Playlist URLs, watch URLs with list=, or bare playlist IDs |
channelUrls | array | – | Channel handles, URLs, or channel IDs whose collections you want |
searchQueries | array | – | Playlist search terms, up to 20 per run |
maxPlaylists | integer | 100 | Maximum collections to list per channel |
maxSearchResults | integer | 20 | Maximum results per search query |
maxVideos | integer | 0 | Maximum rows per playlist; 0 returns everything |
includeUnavailableVideos | boolean | false | Emit placeholder rows for hidden playlist entries |
includeVideoDetails | boolean | true | Add exact per-video metrics, dates, descriptions, categories, and tags |
Supported playlist formats include youtube.com/playlist?list=..., youtube.com/watch?v=...&list=..., music.youtube.com/playlist?list=..., youtu.be/...?list=..., and bare IDs such as PL..., UU..., RD..., or OL....
Example: full playlist with exact video details
{"playlistUrls": ["https://www.youtube.com/playlist?list=PL-osiE80TeTt2d9bfVyTiXJA-UTHn6WwU"],"maxVideos": 50,"includeVideoDetails": true}
Example: recover hidden entries from a damaged playlist
{"playlistUrls": ["PLhMDlPcDRBKQsawQMVty_dNztC8QgppML"],"includeUnavailableVideos": true,"includeVideoDetails": false}
Example: discover every collection on a channel
{"channelUrls": ["@kurzgesagt"],"maxPlaylists": 50}
Example: search playlists and collect one result in the same run
{"searchQueries": ["python course", "lofi study music"],"maxSearchResults": 10,"playlistUrls": ["PL-osiE80TeTt2d9bfVyTiXJA-UTHn6WwU"],"maxVideos": 20}
Use cases
- Course catalogs — export every lesson, its position, duration, and publish date from an educational playlist
- Playlist backups — snapshot a playlist's contents and see which entries have disappeared
- Podcast and show indexing — discover a channel's podcast, show, and course collections with episode counts
- Content research — search a topic, compare playlist titles and owners, then pull the winners' full contents
- Channel audits — inventory every public collection a creator has published
- Viewership analysis — compare exact views and likes across videos in the same playlist
FAQ
How many videos can one playlist return? YouTube allows up to 5,000 entries in a public playlist. The actor reads through the entire list and reports what the source actually exposes.
Why is playlistVideoCount larger than the number of rows?
The declared count includes entries YouTube hides from the normal list. Set includeUnavailableVideos to true to receive a placeholder for each hidden entry. playlistAvailableVideoCount and playlistUnavailableVideoCount show the split.
Why do some exact fields appear on one video but not another?
YouTube hides like counts on some videos and does not publish a category or tags for every upload. Those fields are omitted rather than estimated; the rest of the record stays intact. publishedAt contains a full timestamp when YouTube exposes one and a calendar date when only the date is available.
Do I need a YouTube API key, login, or proxy? No. The actor reads public YouTube data with no account, key, cookie, or proxy setup.
Why is playlistViewCount missing on some playlists?
YouTube does not display an aggregate view count for every collection type, such as auto-generated radio mixes. When the source has no count, the field is omitted.
Can I scrape private or personal playlists? No. Playlists such as Watch Later, Liked Videos, and other account-only lists are not publicly readable and are out of scope.
Why do search results omit videoCount?
Playlist search cards do not show a video count. The actor returns the result identity and ranking; use the returned playlist ID with playlistUrls to get the full contents and counts.
What does playlistOwner contain?
The owner's display name without the interface prefix, for example Timeline - World History Documentaries rather than by Timeline - World History Documentaries.
Is this actor affiliated with YouTube? No. It is an independent tool that reads publicly visible YouTube pages and is not operated or endorsed by YouTube or Google.