Playlist
Returns the videos in a playlist in playlist order: video id, title, thumbnail, channel and publish date. include=engagement adds views, likes, comments and duration.
Use it when you have a playlist id. Same rows as playlist/items from the same source; this lane has a second source behind it, so prefer it when availability matters.
Metered: 20–220 credits. We reserve the ceiling when the call starts and charge what it actually used when it finishes.
Re-running the exact same call within 6h is free.
Paginates by cursor — see Pagination.
Authorization
apiKey Your key from the dashboard. It starts with isk_.
In: header
Query Parameters
YouTube playlist ID
Pagination cursor from a previous response: fetches the next page.
YouTube channel id: pages that channel's uploads instead of a playlist.
Set to engagement, channel, or both (engagement,channel) to fill more of every row in this one call. engagement fills post.engagement.views, .likes and .comments, post.content.duration_seconds, post.ext.channel_id and post.author.display_name where the row lacks them, and replaces a date derived from a label such as "4 months ago" with the exact publish time (removing post.ext.published_precision). channel puts the channel's subscriber count on post.ext.author_followers (YouTube's own figure, which it rounds to three significant figures above 1,000) and fills the channel's post.author.display_name, .avatar_url and .username where missing. Send both to cover rows that arrive without a channel id: the video join supplies it and the channel join then uses it. Each join adds 0.2 to 0.7 seconds on a fresh page (one lookup per 50 ids, never more than 8 seconds). Read data.hydration for the rows, lookups, credits held and kept, and the time.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/youtube/playlist?playlist_id=string"{ "success": true, "platform": "instagram", "endpoint": "/v1/instagram/profile/posts", "data": { "items": [ "…" ], "dropped": 0 }, "pagination": { "next_cursor": "is2.eyJwIjoyfQ", "has_more": true, "page_size": 12 }, "credits_used": 20, "credits_remaining": 9980, "request_id": "req_1a2b3c4d5e6f", "cached": false, "idempotent_replay": false, "charge_reason": "miss", "free_call": false}Playlist › Items GET
Returns the videos of a playlist in playlist order, each with video id, title, thumbnail, the video's own channel, its publish date, and its position and insertion time on post.ext. Use it when you have a playlist id; add include=engagement for counts and durations. Same rows as playlist, which has a second source behind it. **Metered: 20–220 credits.** We reserve the ceiling when the call starts and charge what it actually used when it finishes. Re-running the exact same call within 6h is free. Paginates by `cursor` — see [Pagination](/docs/pagination).
Profile › Full GET
Returns a channel's profile, up to 30 recent videos, and computed metrics in one call: engagement rate by views and by followers, posting cadence, top post, and format mix. Use it instead of calling channel and channel/videos yourself; if the videos cannot be fetched you still get the profile with those metrics empty. **100 credits** per call. Re-running the exact same call within 6h is free. Paginates by `cursor` — see [Pagination](/docs/pagination).