We’re delighted to share that our team has rolled out the latest version of the YouTube API, featuring the official API schema from YouTube API documentation.
What’s even more thrilling? We’re currently hard at work to bring you new API endpoints equipped with batch processing and auto-pagination features, making your API interactions more efficient and user-friendly. Stay tuned for these exciting updates, coming soon!
Explore the enhanced possibilities and look forward to a seamless API experience with our upcoming features. Happy coding! 🚀🌈
The YouTube Data API lets you incorporate functions normally executed on the YouTube website into your own website or application. The lists below identify the different types of resources that you can retrieve using the API. The API also supports methods to insert, update, or delete many of these resources.
This reference guide explains how to use the API to perform all of these operations. The guide is organized by resource type. A resource represents a type of item that comprises part of the YouTube experience, such as a video, a playlist, or a subscription. For each resource type, the guide lists one or more data representations, and resources are represented as JSON objects. The guide also lists one or more supported methods (LIST) for each resource type and explains how to use those methods in your application.
Activities
An activity resource contains information about an action that a particular channel, or user, has taken on YouTube. The actions reported in activity feeds include rating a video, sharing a video, marking a video as a favorite, uploading a video, and so forth. Each activity resource identifies the type of action, the channel associated with the action, and the resource(s) associated with the action, such as the video that was rated or uploaded.
Method | Request | Description |
---|---|---|
list | /activities |
Returns a list of channel activity events that match the request criteria. For example, you can retrieve events associated with a particular channel or with the user’s own channel. |
Captions
A caption resource represents a YouTube caption track. A caption track is associated with exactly one YouTube video.
Method | Request | Description |
---|---|---|
list | /captions |
Returns a list of caption tracks that are associated with a specified video. Note that the API response does not contain the actual captions and that the captions.download method provides the ability to retrieve a caption track. |
ChannelSections
A channelSection
resource contains information about a set of videos that a channel has chosen to feature. For example, a section could feature a channel’s latest uploads, most popular uploads, or videos from one or more playlists.
Note that a channel’s sections are only visible if the channel displays content in a browse view (rather than a feed view). To enable a channel to display content in a browse view, set the brandingSettings.channel.showBrowseView
property to true
for the specified channel.
A channel can create a maximum of 10 shelves.
Method | Request | Description |
---|---|---|
list | /channelSections |
Returns a list of channelSection resources that match the API request criteria. |
Channels
A channel resource contains information about a YouTube channel.
Method | Request | Description |
---|---|---|
list | /channels |
Returns a collection of zero or more channel resources that match the request criteria. |
CommentThreads
A commentThread
resource contains information about a YouTube comment thread, which comprises a top-level comment and replies, if any exist, to that comment. A commentThread
resource can represent comments about either a video or a channel.
Both the top-level comment and the replies are actually comment
resources nested inside the commentThread
resource. The commentThread
resource does not necessarily contain all replies to a comment, and you need to use the comments.list
method if you want to retrieve all replies for a particular comment. Also note that some comments do not have replies.
Method | Request | Description |
---|---|---|
list | /commentThreads |
Returns a list of comment threads that match the API request parameters. |
Comments
A comment
resource contains information about a single YouTube comment. A comment
resource can represent a comment about either a video or a channel. In addition, the comment could be a top-level comment or a reply to a top-level comment.
Method | Request | Description |
---|---|---|
list | /comments |
Returns a list of comments that match the API request parameters. |
PlaylistItems
A playlistItem
resource identifies another resource, such as a video, that is included in a playlist. In addition, the playlistItem
resource contains details about the included resource that pertain specifically to how that resource is used in that playlist.
YouTube also uses a playlist to identify a channel’s list of uploaded videos, with each playlistItem
in that list representing one uploaded video. You can retrieve the playlist ID for that list from the channel resource
for a given channel. You can then use the playlistItems.list
method to the list.
Method | Request | Description |
---|---|---|
list | /comments |
Returns a list of comments that match the API request parameters. |
Playlists
A playlist
resource represents a YouTube playlist. A playlist is a collection of videos that can be viewed sequentially and shared with other users. A playlist can contain up to 200 videos, and YouTube does not limit the number of playlists that each user creates. By default, playlists are publicly visible to other users, but playlists can be public or private.
YouTube also uses playlists to identify special collections of videos for a channel, such as:
To be more specific, these lists are associated with a channel, which is a collection of a person, group, or company’s videos, playlists, and other YouTube information. You can retrieve the playlist IDs for each of these lists from the channel resource
for a given channel.
You can then use the playlistItems.list
method to retrieve any of those lists. You can also add or remove items from those lists by calling the playlistItems.insert
and playlistItems.delete
methods.
Method | Request | Description |
---|---|---|
list | /playlists |
Returns a collection of playlists that match the API request parameters. For example, you can retrieve all playlists that the authenticated user owns, or you can retrieve one or more playlists by their unique IDs. |
Search
A search result contains information about a YouTube video, channel, or playlist that matches the search parameters specified in an API request. While a search result points to a uniquely identifiable resource, like a video, it does not have its own persistent data.
Method | Request | Description |
---|---|---|
list | /search |
Returns a collection of search results that match the query parameters specified in the API request. By default, a search result set identifies matching video , channel , and playlist resources, but you can also configure queries to only retrieve a specific type of resource. |
Videos
A video
resource represents a YouTube video.
Method | Request | Description |
---|---|---|
list | /videos |
Returns a list of videos that match the API request parameters. |