{"_id":"youtube-feeds","_rev":"31-c98a71191bfcf3fa538e4129df8b6843","name":"youtube-feeds","description":"Deprecated, use googleapis instead. Access public YouTube Data API v2 feeds, mostly with the clean JSON-C results","dist-tags":{"latest":"2.4.1"},"versions":{"1.0.0":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"1.0.0","homepage":"https://github.com/fvdm/nodejs-youtube","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"main":"youtube-feeds.js","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"tags":["youtube","video","feeds","api"],"_npmUser":{"name":"franklin","email":"fr@nkl.in"},"_id":"youtube-feeds@1.0.0","_engineSupported":true,"_npmVersion":"1.1.25","_nodeVersion":"v0.6.19","_defaultsLoaded":true,"dist":{"shasum":"68ede1cf177569d1bb27c191540ec14daa07dd8e","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-1.0.0.tgz","integrity":"sha512-0dV3K9TZYpAHUWj+Oq3uk9IfDeFoAhcrmPQyTWSAQoGWwp5Kxu6SqstdMvXe4l10q6IA8O6oxkdX4EmZ/j01ZQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZGkspr8dV1hOkOHDNwsJR42ZW4/DDRS3rN7GQ5B9R9QIgWCkmoM2YWUjOHPdYobfQy0LYf4yx/Ub+BY/9uNnnwk4="}]},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"1.0.1":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"1.0.1","homepage":"https://github.com/fvdm/nodejs-youtube","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"main":"youtube-feeds.js","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"tags":["youtube","video","feeds","api"],"_npmUser":{"name":"franklin","email":"fr@nkl.in"},"_id":"youtube-feeds@1.0.1","_engineSupported":true,"_npmVersion":"1.1.25","_nodeVersion":"v0.6.19","_defaultsLoaded":true,"dist":{"shasum":"84733f64ee89b456c544592ab868fc4466f4b82c","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-1.0.1.tgz","integrity":"sha512-h4wHER94RiIbvN5/KsWhCoVn34CROccjEc16TOJ9a1OO3Xj+nDtGx49ZGd85yjrj29upec/GVkH/4PiBM7yF5w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDq4OlychIAAeVIt1fWJQHvQB1lsFcHJXVrA643mJWWegIgBSPYcJJ5h96pjUJrPuGRNR1ZV1TmCf8WMI+A9TQmAGU="}]},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"1.0.2":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds from your Node.js apps","version":"1.0.2","homepage":"https://github.com/fvdm/nodejs-youtube","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"main":"youtube-feeds.js","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"tags":["youtube","video","feeds","api"],"_id":"youtube-feeds@1.0.2","dist":{"shasum":"a20dd48c6f21b902c7f6666726c3d8933bfc6322","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-1.0.2.tgz","integrity":"sha512-QnYDvQLkeFoMIyqH0fa9igwqHXceu7i7hv+ZmKxmjuMRU4jybYFW7eerd4e+0CsLqg+ABdteoLj0Kp3QdoG8Lw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGnt8fGWk8yRQyWaxMhJkHytwRwrkEPiJJNRLomaBfUAIhAOtvqBAx2HtxkRffkiILMeWuX10CLfop0X9i+0bVb8D6"}]},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"1.0.3":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"1.0.3","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"keywords":["youtube","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"_id":"youtube-feeds@1.0.3","dist":{"shasum":"415f6df9889b71d08972ec49bcd7c429651d4053","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-1.0.3.tgz","integrity":"sha512-egSRFejELMyh3Ua3bBLZzUYbPoWaAVcUuyJTjdPrCR+s49j2NUVCFudaG9EwORBWO7PoywEYqd4UieFMXudu3g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6OIiNaiue6tR/5c9bjZF9CxAN/pPWCgKpeALtenbvZwIhAJycjnT3MYkyjVQQnEqKReGKXs6K5umUkm4weFaotVkn"}]},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"2.0.0":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"2.0.0","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":">=1.0.0 <2.0.0"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"keywords":["youtube","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"_id":"youtube-feeds@2.0.0","dist":{"shasum":"b6f8f19a05f14d2107284d34072550fa35a0a83a","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.0.0.tgz","integrity":"sha512-z50XuLl2cp2MDyCb90EtPnLODbsKe6nzz9i5JG5DaCdA5DJOYVNJv/b88DMbT1Iu1ntXLsd3kjRX4kz1SOitwQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCWjZuxgt/4UJ6i0nLlSX1onpQTqKQZGZZ163DzXfyvYgIgOWBTMIRQs1U5FLzeIedgUGd6spWuEFHI6mV5izAYwkY="}]},"_npmVersion":"1.1.69","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"2.0.1":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"2.0.1","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":">=1.0.0 <2.0.0"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"keywords":["youtube","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"_id":"youtube-feeds@2.0.1","dist":{"shasum":"940607ba64c5c45fff66f179efd42b120945befc","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.0.1.tgz","integrity":"sha512-HF9yc6abaSNPe8GxMQnO3P1bGDQMYUUXuoz8jZiV2yp8C2aHcB1zX4FGL8A15BZWeaz4ZfZ1QfcfaADQB+ROhw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHNYFsrqaCDibCrnPtOBuwa0hxG+XzdIOQI4l7iNV4/gIgTyiA30b79BXWfHcWVu1H8WXrW5QhRozIMZcZefBApDY="}]},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"2.1.0":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"2.1.0","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":">=1.0.0 <2.0.0"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"keywords":["youtube","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"_id":"youtube-feeds@2.1.0","dist":{"shasum":"355cb3798b773004e2c7508f2632c4096fb2e6dd","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.1.0.tgz","integrity":"sha512-zfaqIdsWUEtRjOCXeo969C4cvmA33LMvxrommkdHQiU+Jpxu1beZVpK5lDAxmtfoPTP7nbOqG713YLFNF9C7kQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2OzzQFP4fVJd8r3lbA+BmB051S4MePhZhuApjAzQGwQIhAODTWw6qrV6COE0dJQjyokiVN7mRQsIR3eUoP5pvNGT6"}]},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"2.2.0":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"2.2.0","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":">=1.0.0 <2.0.0"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"<=0.8.3 >=0.10.0"},"keywords":["youtube","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"_id":"youtube-feeds@2.2.0","dist":{"shasum":"bfbf0f6cab5aeea594c9f5d467d0bc6849234b1b","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.2.0.tgz","integrity":"sha512-cxqnfsflrftWvyf8T3hUsJVGaP3rHSqnxUeZ/QYuSQdR/AGocFrWKhAYH+e4HGLuYrpFImass67d446AAxZfMg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHF/bSBC6O71LLN6/QfQxgrTjv5Nw5VhYxdzMlFgj7otAiBU4ILqEj28B0NnxrhByBbHgKY8Jz6ROeECu8ZYxAcspA=="}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"2.2.1":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube API feeds, mostly with the clean JSON-C results","version":"2.2.1","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":"1.x.x"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"<=0.8.3 >=0.10.0"},"keywords":["youtube","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"_id":"youtube-feeds@2.2.1","dist":{"shasum":"3f9a7fc3e92a025ab7df6dd6a6fd118a3476e98b","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.2.1.tgz","integrity":"sha512-At77U0Yx4ci0LU8PSSWCKp/r01rHdRPg77XbCNaDFbTS0+spuxjw02ZRep7Y/Cv39BXxeu0EmzwQBWfXzRVMvQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnInZ81DBIPL8EOcqvlYWBpghGjmhuJprO2c9Ncj/zAwIhAOI4lm3qj/W62WFpeQuChZoQRuW3ZB68dQ0hZzOnX6dP"}]},"_from":".","_npmVersion":"1.2.17","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"deprecated":"Remote API has shut down"},"2.3.0":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube Data API v2 feeds, mostly with the clean JSON-C results","version":"2.3.0","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":"1.x.x"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"<=0.8.3 >=0.10.0"},"keywords":["youtube","youtubev2","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"homepage":"https://github.com/fvdm/nodejs-youtube","_id":"youtube-feeds@2.3.0","_shasum":"998539b6450109059e9b5c1422922be0059c2a1f","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"dist":{"shasum":"998539b6450109059e9b5c1422922be0059c2a1f","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.3.0.tgz","integrity":"sha512-m1G5mPPDwJA2sBeFk6n6Jnd6d6EkxarZheIMqk4CK9pUf6JReBcSJ5V0f+ibflzn4/dui27S97S+mon0jnaMsQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHO9c0Puk6KMk5qK0hzF68sa1/n1dfWV1nYhHy9L0l9qAiApTzUD/3WhLijDVyFRXMYbVc2thssfHTHoSyvJh47vjQ=="}]},"deprecated":"Remote API has shut down"},"2.4.0":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Access public YouTube Data API v2 feeds, mostly with the clean JSON-C results","version":"2.4.0","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":"1.x.x"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":">=0.8.28"},"scripts":{"test":"node test.js"},"keywords":["youtube","youtubev2","video","feeds","api"],"license":{"type":"Public Domain","url":"https://github.com/fvdm/nodejs-youtube/raw/master/UNLICENSE"},"gitHead":"be25b7c4932b306f7c4ddd10fc9e8618749ecc7c","homepage":"https://github.com/fvdm/nodejs-youtube","_id":"youtube-feeds@2.4.0","_shasum":"97b40b96a33217264844f65da226d4ef7dbba34a","_from":".","_npmVersion":"2.3.0","_nodeVersion":"0.11.16","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"dist":{"shasum":"97b40b96a33217264844f65da226d4ef7dbba34a","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.4.0.tgz","integrity":"sha512-o9r+ISh+WD7Omdf2kp8JKFmEy3tpVkkvHCq8TUPLV0st67ANV8goUMT9xvHY12Usbd1wKiU2Lj7dKglwbekluQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMHEn6jEfqpirARGE5yftAM9CNauWrFI1tS/tzp1hkUgIhAJlXsBu9W9TWGoJbYow9uDWBMgmFfCjB/W0DDK8Q/x2R"}]},"deprecated":"Remote API has shut down"},"2.4.1":{"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"name":"youtube-feeds","description":"Deprecated, use googleapis instead. Access public YouTube Data API v2 feeds, mostly with the clean JSON-C results","version":"2.4.1","repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"main":"youtube-feeds.js","dependencies":{"node-xml2json":"1.x.x"},"devDependencies":{},"optionalDependencies":{},"engines":{"node":">=0.8.28"},"scripts":{"preinstall":"node deprecated.js","test":"node test.js"},"keywords":["youtube","youtubev2","video","feeds","api"],"license":"Unlicense","gitHead":"968e777d420103d1ef172a91d733af1383fde80b","homepage":"https://github.com/fvdm/nodejs-youtube#readme","_id":"youtube-feeds@2.4.1","_shasum":"4c1a4ff03f14aacb0b9062919ded56d1e50367aa","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"franklin","email":"fr@nkl.in"},"dist":{"shasum":"4c1a4ff03f14aacb0b9062919ded56d1e50367aa","tarball":"https://registry.npmjs.org/youtube-feeds/-/youtube-feeds-2.4.1.tgz","integrity":"sha512-zjQCuoFadbRtROAkcSnhmzaKFRcmZxnFLsAh2F8GYRskntH64o8cbmfwKWeVdiq0akly4WLjSlWJB7y7a2jIrA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgEADTXu3WQqEH/WhurDMh2nrHNh6S65aDFv2bRzmqJgIgHKqr3zIL/brbPU7bMNjEueLYTV/Z9GoC091M7eqn0S0="}]},"maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/youtube-feeds-2.4.1.tgz_1462501683708_0.8905636956915259"},"deprecated":"Remote API has shut down"}},"readme":"youtube-feeds\n=============\n\n\nAccess public YouTube API feeds from your Node.js apps\n\n[![Build Status](https://travis-ci.org/fvdm/nodejs-youtube.svg?branch=master)](https://travis-ci.org/fvdm/nodejs-youtube)\n\n\nDEPRECATED\n----------\n\nThis module relies heavily on YouTube Data API v2 which was deprecated on **April 20th 2015**\nto be replaced by version 3 of their API. The code is not being maintained anymore.\n\nIt is recommended for all users to switch to a YouTube module with API v3 support.\n\n\n**See the Wiki for a working example:** <https://github.com/fvdm/nodejs-youtube/wiki>\n\n\nInstallation\n------------\n\nStable: `npm install youtube-feeds`\n\nDevelop: `npm install fvdm/youtube-feeds#develop`\n\n\nUsage\n-----\n\n```js\n// load the module\nvar youtube = require('youtube-feeds')\n\n// search parkour videos\nyoutube.feeds.videos( {q: 'parkour'}, console.log )\n```\n\n\nConfiguration\n-------------\n\nparam        | type    | default | description\n-------------|---------|---------|------------\nhttpProtocol | string  | http    | Which HTTP protocol to use\ntimeout      | integer | 30000   | Request wait timeout in ms\ndeveloperKey | string  |         | Your YouTube [developer key](http://code.google.com/apis/youtube/dashboard/)\n\n\n> `developerKey` is required for some methods, ie. [user.activity](#useractivity).\n> You can also temporarily override the global setting with the `key` property in a method's vars.\n\n\n### Example:\n\n```js\nvar youtube = require ('youtube-feeds');\nyoutube.httpProtocol = 'https';\nyoutube.feeds.videos ({q: 'keywords'}, callback);\n```\n\n\nCallbacks\n---------\n\nEach method takes a `callback` function as last parameter. When everything seems alright `err` is null, otherwise `err` will be `instanceof Error` for tracing.\n\n```js\nfunction (err, data) {\n\tif (err) {\n\t\tconsole.log (err);\n\t} else {\n\t\tconsole.log (data);\n\t}\n}\n```\n\n#### Error Properties\n\nproperty    | type   | description\n------------|--------|----------------------------------\nerr.message | string | the error message\nerr.stack   | string | stack trace\nerr.origin  | string | Context; api, method, request\nerr.details | mixed  | API response or other information\n\n\n#### Error Messages\n\nmessage               | origin  | description\n----------------------|---------|------------------------------------------------\ninvalid response      | api     | API response can't be parsed\nnot json              | api     | Expected JSON, received something else\nnot found             | method  | Requested data was not found\nnot allowed           | method  | No permission to requested data\ninvalid id            | method  | Requested video ID is invalid\nconnection closed     | api     | Connection dropped early\nconnection error      | request | Can't connect to API\nrequest timeout       | request | The request took too long to connect or process\nerror                 | api     | API returned an error, see err.details\ndeveloper key missing | api     | developerKey is not set, see Configuration.\n\n\n=================================================================================\n\n\nFeeds\n-----\n\nRetrieve lists, search videos, related material.\n\n\nfeeds.videos\n------------\n### ( [vars], callback )\n\nGet a list of recently published or updated videos, or search them all, filter, sort, etc.\n\n[API docs: custom query parameters](https://developers.google.com/youtube/2.0/developers_guide_protocol_api_query_parameters#Custom_parameters)\n\n```js\nyoutube.feeds.videos (\n\t{\n\t\tq:              'parkour',\n\t\t'max-results':\t2,\n\t\torderby:        'published'\n\t},\n\tconsole.log\n);\n```\n\nOutput:\n\n```js\n{ updated: '2012-06-18T17:55:11.294Z',\n  totalItems: 6985,\n  startIndex: 1,\n  itemsPerPage: 2,\n  items: \n   [ { id: 'WEeqHj3Nj2c',\n       uploaded: '2006-06-08T01:17:06.000Z',\n       updated: '2012-06-18T15:53:06.000Z',\n       uploader: 'sauloca',\n       category: 'Sports',\n       title: 'Parkour and FreeRunning',\n       description: 'Edited by: Saulo Sampson Chase [..]',\n       tags: \n        [ 'le',\n          'parkour',\n          'free',\n          'running' ],\n       thumbnail: \n        { sqDefault: 'http://i.ytimg.com/vi/WEeqHj3Nj2c/default.jpg',\n          hqDefault: 'http://i.ytimg.com/vi/WEeqHj3Nj2c/hqdefault.jpg' },\n       player: \n        { default: 'https://www.youtube.com/watch?v=WEeqHj3Nj2c&feature=youtube_gdata_player',\n          mobile: 'https://m.youtube.com/details?v=WEeqHj3Nj2c' },\n       content: \n        { '1': 'rtsp://v8.cache8.c.youtube.com/CiILENy73wIaGQlnj809HqpHWBMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp',\n          '5': 'https://www.youtube.com/v/WEeqHj3Nj2c?version=3&f=videos&app=youtube_gdata',\n          '6': 'rtsp://v8.cache8.c.youtube.com/CiILENy73wIaGQlnj809HqpHWBMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp' },\n       duration: 218,\n       geoCoordinates: { latitude: -7.100892543792725, longitude: -34.91455078125 },\n       rating: 4.862864,\n       likeCount: '85314',\n       ratingCount: 88343,\n       viewCount: 32718590,\n       favoriteCount: 99541,\n       accessControl: \n        { comment: 'denied',\n          commentVote: 'allowed',\n          videoRespond: 'moderated',\n          rate: 'allowed',\n          embed: 'allowed',\n          list: 'allowed',\n          autoPlay: 'allowed',\n          syndicate: 'allowed' } } ] }\n```\n\n\nfeeds.related\n-------------\n### ( videoid, [vars], callback )\n\nGet related videos for a video with **videoid**.\n\n\nfeeds.responses \n---------------\n### ( videoid, [vars], callback )\n\nGet videos in response to **videoid**.\n\n\nfeeds.comments\n--------------\n### ( videoid, [vars], callback )\n\nGet comments to a video. This is still in the original XML-to-JSON format as YouTube does not have JSON-C available for this feed. This may change in future (major) versions of this module.\n\n\nfeeds.standard\n--------------\n### ( feed, [vars], callback )\n\nGet a standard feed, such as most viewed or top rated videos. Worldwide, local or by subject (or a combination).\n\n[API docs: Standard feeds](https://developers.google.com/youtube/2.0/reference#Standard_feeds)\n\n\n**Example:** most recent videos worldwide:\n\n```js\nyoutube.feeds.standard ('most_recent', console.log);\n```\n\n\n**Example:** today's top-rated News videos in the Netherlands:\n\n```js\nyoutube.feeds.standard ('NL/top_rated_News', {time: 'today'}, console.log);\n```\n\n\nfeeds.playlist\n--------------\n### ( playlistid, [vars], callback )\n\nGet videos on a certain playlist.\n\n\n=======================================================================\n\n\nVideo\n-----\n\nThe **video** function provides shorthand methods for one specific video.\n\n\nvideo\n-----\n### ( videoid, [callback] )\n\nSame as [video.details](#videodetails)\n\n```js\nyoutube.video ('ern37eWDnT0', console.log);\n```\n\n\nvideo.details\n-------------\n### ( callback )\n\nGet details for one video.\n\n```js\nyoutube.video ('ern37eWDnT0').details (console.log);\n```\n\n\nvideo.related\n-------------\n### ( [vars], callback )\n\nGet related videos, same as [feeds.related](#feedsrelated).\n\n```js\nyoutube.video ('ern37eWDnT0').related ({'max-results': 2}, console.log);\n```\n\n\nvideo.responses\n---------------\n### ( [vars], callback )\n\nGet videos in response to one video, same as [feeds.responses](#feedsresponses).\n\n```js\nyoutube.video ('ern37eWDnT0').responses ({'max-results': 2}, console.log);\n```\n\n\nvideos.comments\n---------------\n### ( [vars], callback )\n\nGet comments to a video, same as [feeds.comments](#feedscomments).\n\n```js\nyoutube.video ('ern37eWDnT0').comments ({'max-results': 2}, console.log);\n```\n\n\n=======================================================================\n\n\nUser\n----\n\nGet (public) feed data for one specific user.\n\n\nuser\n----\n### ( userid, [callback] )\n\nSame as [user.profile](#userprofile).\n\n```js\nyoutube.user ('user', console.log);\n```\n\n\nuser.profile\n------------\n### ( callback )\n\nGet user profile, in old XML-to-JSON style.\n\n```js\nyoutube.user ('user').profile (console.log);\n```\n\n\nuser.favorites\n--------------\n### ( [vars], callback )\n\nGet the user's favorite videos. You can optionally filter the results like the other feeds.\n\n```js\nyoutube.user ('user').favorites (console.log);\n```\n\n\nuser.playlists\n--------------\n### ( [vars], callback )\n\nGet user playlists. Use **[feeds.playlist](#feedsplaylist)** to get the videos.\n\n\nuser.uploads\n------------\n### ( [vars], callback )\n\nGet the user's uploaded videos.\n\n```js\nyoutube.user ('user').uploads (console.log);\n```\n\n\n=======================================================================\n\n\ntalk\n----\n### ( path, [fields], callback, [oldJsonKey] )\n\nDirectly talk to the API. This function takes care of connecting and calling the callback only when valid JSON is returned.\n\n\nParam      | Type     | Description\n-----------|----------|------------------------------------------------\npath       | string   | full method path without leading slash\nfields     | object   | GET parameters\ncallback   | function | callback function to receive results\noldJsonKey | boolean  | force old XML-to-JSON format instead of clean JSON-C its value is the key containing the expected results\n\n\nUnlicense / Public Domain\n-------------------------\n\nThis is free and unencumbered software released into the public domain.\n\nAnyone is free to copy, modify, publish, use, compile, sell, or\ndistribute this software, either in source code form or as a compiled\nbinary, for any purpose, commercial or non-commercial, and by any\nmeans.\n\nIn jurisdictions that recognize copyright laws, the author or authors\nof this software dedicate any and all copyright interest in the\nsoftware to the public domain. We make this dedication for the benefit\nof the public at large and to the detriment of our heirs and\nsuccessors. We intend this dedication to be an overt act of\nrelinquishment in perpetuity of all present and future rights to this\nsoftware under copyright law.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR\nOTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,\nARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\nOTHER DEALINGS IN THE SOFTWARE.\n\nFor more information, please refer to <http://unlicense.org>\n\n\nAuthor\n------\n\n[Franklin van de Meent](https://frankl.in)\n\n","maintainers":[{"name":"franklin","email":"fr@nkl.in"}],"time":{"modified":"2022-06-29T08:08:42.335Z","created":"2012-06-18T15:47:38.496Z","1.0.0":"2012-06-18T15:47:43.269Z","1.0.1":"2012-06-18T17:25:48.459Z","1.0.2":"2012-06-18T19:57:45.039Z","1.0.3":"2012-09-13T14:01:09.633Z","2.0.0":"2013-01-13T23:59:37.260Z","2.0.1":"2013-03-01T23:02:43.374Z","2.1.0":"2013-03-02T16:40:48.062Z","2.2.0":"2013-03-16T23:24:21.963Z","2.2.1":"2013-04-06T22:26:58.376Z","2.3.0":"2014-05-23T19:13:39.360Z","2.4.0":"2015-02-05T16:05:19.267Z","2.4.1":"2016-05-06T02:28:05.280Z"},"author":{"name":"Franklin van de Meent","email":"fr@nkl.in","url":"http://frankl.in"},"repository":{"type":"git","url":"git://github.com/fvdm/nodejs-youtube.git"},"homepage":"https://github.com/fvdm/nodejs-youtube#readme","keywords":["youtube","youtubev2","video","feeds","api"],"bugs":{"url":"https://github.com/fvdm/nodejs-youtube/issues"},"license":"Unlicense","readmeFilename":"README.md","users":{"rchk":true,"alshamiri2":true,"rocket0191":true}}