ytmapi v0.2.0
Unofficial YouTube Music API
Simple API Project for NodeJS written in TypeScript inspired by sigma67's python library
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development.
Prerequisites
- NodeJS 10+
- NPM
- Google Account
Installing
Using npm
Building it yourself
Clone github repo
$ git clone https://github.com/vladdenisov/ytmusic-api
Install dependencies
$ npm i
Build it
$ npm run build
You will see dist
folder, where all built files are stored.
Usage
Getting the cookie
Get the auth cookie from requests to YTMusic in your browser:
- Open YouTube Music in browser
- Go to the developer tools (Ctrl-Shift-I) and find an authenticated POST request. You can filter for /browse to easily find a suitable request.
Copy
cookie
fromRequest Headers
Using in code
Import lib to your code:
const { YTMUSIC } = require('ytmusic')
// or if you build it yourself
const { YTMUSIC } = require('path/to/ytmusic/dist/index.js')
Create new Instance of api with your cookie:
const api = new YTMUSIC("cookie")
// or if you want it to use not default account, specify userID (refer to docs to get it):
const api = new YTMUSIC("cookie", "userID")
Use it:
const data = await api.getPlaylist('RDCLAK5uy_k1Wu8QbZASiGVqr1wmie9NIYo38aBqscQ')
console.log(data.title)
// { text: '80s Pop-Rock Anthems' }
Built With
- TypeScript - JavaScript that scales.
- node-fetch - A light-weight module that brings window.fetch to Node.js
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Just contribute <3
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Vlad Denisov - Initial work - vladdenisov
- Daniel Leong - dhleong
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE file for details