Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/paulomcnally/youtube-node

Youtube api implementation for nodeJS
https://github.com/paulomcnally/youtube-node

cli javascript nodejs youtube youtube-api

Last synced: 7 days ago
JSON representation

Youtube api implementation for nodeJS

Awesome Lists containing this project

README

        

# youtube-node [![Dependency Status](https://david-dm.org/paulomcnally/youtube-node.png)](https://david-dm.org/paulomcnally/youtube-node) [![NPM version](https://badge.fury.io/js/youtube-node.png)](http://badge.fury.io/js/youtube-node)

[![NPM](https://nodei.co/npm/youtube-node.png?downloads=true)](https://nodei.co/npm/youtube-node/)

* YouTube API v3 - Require key ([video](https://www.youtube.com/watch?v=Im69kzhpR3I))
* CLI

## CLI

For use CLI need install youtube-node using -g param.

$ npm install youtube-node -g

#### CLI Example getById ( require key and video ID )

$ youtube id

#### CLI Example search (require key, query and maxResults)

$ youtube search

## Usage

#### Installation
$ npm install youtube-node

#### Example search (search term, num results, params, callback) return object
var YouTube = require('youtube-node');

var youTube = new YouTube();

youTube.setKey('AIzaSyB1OOSpTREs85WUMvIgJvLTZKye4BVsoFU');

youTube.search('World War z Trailer', 2, function(error, result) {
if (error) {
console.log(error);
}
else {
console.log(JSON.stringify(result, null, 2));
}
});

See output: [https://gist.github.com/paulomcnally/620b76a9afe81f56e8c9](https://gist.github.com/paulomcnally/620b76a9afe81f56e8c9)

You can also pass in an optional params object. This is useful for paging:

youTube.search('World War z Trailer', 2, {pageToken: 'XxXxX'}, function(error, result) {
//as above example
});

Page token is a property on the response - `nextPageToken` or `previousPageToken`

#### Example getById (youtube id, result) return object
var YouTube = require('youtube-node');

var youTube = new YouTube();
youTube.setKey('AIzaSyB1OOSpTREs85WUMvIgJvLTZKye4BVsoFU');

youTube.getById('HcwTxRuq-uk', function(error, result) {
if (error) {
console.log(error);
}
else {
console.log(JSON.stringify(result, null, 2));
}
});

See output: [https://gist.github.com/paulomcnally/50e0b96291c82b87009b](https://gist.github.com/paulomcnally/50e0b96291c82b87009b)

#### Example related (youtube id, maxResults, result) return object

var YouTube = require('youtube-node');

var youTube = new YouTube();

youTube.setKey('AIzaSyB1OOSpTREs85WUMvIgJvLTZKye4BVsoFU');

youTube.related('hafhSaP_Nh4', 2, function(error, result) {
if (error) {
console.log(error);
}
else {
console.log(JSON.stringify(result, null, 2));
}
});

See output:
[https://gist.github.com/paulomcnally/ebab23c68c374723f28a](https://gist.github.com/paulomcnally/ebab23c68c374723f28a)

#### Optional Parameters

[https://developers.google.com/youtube/v3/docs/search/list#optional-parameters](https://developers.google.com/youtube/v3/docs/search/list#optional-parameters)

To set an optional parameter use:

youTube.addParam('order', 'title');

### For older version use:

$ npm install [email protected]

**Older version use API v2 and is not recommended**

## Those who use it?
* [http://sync.club/](http://sync.club/#dev-session)