Want to access data from the YouTube Data v3 API? Want a Node.js YouTube API wrapper with typings, promises, and caching? No problem!
See the 5-minute tutorial.
Here are some basic methods (try it on CodeSandbox):
Instantiate the object:
const { YouTube } = require('popyt')
const youtube = new YouTube(apiKey)Instantiate the object without caching:
const { YouTube } = require('popyt')
const youtube = new YouTube(apiKey, undefined, { cache: false })Get a video by ID:
const video = await youtube.getVideo('dQw4w9WgXcQ')
console.log(video)You can do the same thing with playlists, channels, and comments by replacing Video with any of them.
Get a video by URL:
const video = await youtube.getVideo('https://youtube.com/watch?v=dQw4w9WgXcQ')
console.log(video)Get a video by title (or similar title):
const video = await youtube.getVideo('never gonna give you up')
console.log(video)Search videos:
const search = await youtube.searchVideos('never gonna give you up')
console.log(search.items.map(v => v.title).join('\n')) // titles of 50 beautiful videos