Youtube API: Top Live Games - youtube-api

Which API call to use to get the list of "Top Live Games" on the youtube API?
https://www.youtube.com/gaming/games example
It seems to me that "Games" is a category, which can be found in the "youtube.videoCategories.list" call.
{
"id": "20",
"snippet": {
"channelId": "UCBR8-60-B28hp2BmDPdntcQ",
"title": "Gaming",
"assignable": true
}
},
However, the call does not support child elements, just the snippet.
The individual "games" in there seem to be auto-generated channels.
However, when calling "youtube.channels.list" and setting "categoryId" to "20", I get:
{
"domain": "youtube.channel",
"reason": "categoryNotFound",
"message": "Channel category not found.",
"locationType": "parameter",
"location": "categoryId"
}

You have to use the channel_id of the Gaming YouTube channel.
The channel_id of the Gaming YouTube channel is: UCOpNcN46UbXVtpKMrmU4Abg.
Unfortunately, I couldn't retrieve the live gaming videos by this way, so I have to check the Live YouTube channel.
Once I check the "Live: gaming" section, I can use its playlistid which is: PLiCvVJzBupKkpGacV_ScUzA-eGF2KSZKC.
This is the playlist of the live gaming if you're interested in.
Once you have the playlistid of the "Live: gaming" section, use the for get (let's say: the top 10 live games).
This is the YouTube Data API request you can use for retrieve top 10 live games:
https://www.googleapis.com/youtube/v3/playlistItems?part=snippet%2CcontentDetails&maxResults=10&playlistId=PLiCvVJzBupKkpGacV_ScUzA-eGF2KSZKC&fields=items(contentDetails%2FvideoId%2Cid%2Csnippet%2Ftitle)%2Ckind%2CnextPageToken%2CpageInfo%2CprevPageToken%2CtokenPagination&key={YOUR_API_KEY}
And the results vary from region - the following results are from Latin America:
{
"kind": "youtube#playlistItemListResponse",
"nextPageToken": "CAoQAA",
"pageInfo": {
"totalResults": 1000,
"resultsPerPage": 10
},
"items": [
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy4zM0M5OTA4RTE2OEVBMTEz",
"snippet": {
"title": "THE DARK INTERNET: ¡GAMEPLAY EXCLUSIVO DE LA PRÓXIMA ACTUALIZACIÓN 1.1.0! ⭐️ iTownGamePlay"
},
"contentDetails": {
"videoId": "Jl8YMVQfFTw"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy44RDE1Q0NGQTIyNDVBMjYz",
"snippet": {
"title": "🔴 DIRECTO | NUEVO EZA DE VEGETA Y TRUNKS EN DOKKAN BATTLE"
},
"contentDetails": {
"videoId": "k6MhzkxaNPw"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy5EQzdBMTk0QUNCMTFDODM4",
"snippet": {
"title": "Campeonato de Europa de Ajedrez (7) y Campeonato de Estados Unidos (5)"
},
"contentDetails": {
"videoId": "JDuVoBfuS-I"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy4yOTNDM0Y1QjE3OUQ3NTVF",
"snippet": {
"title": "FREE FIRE *DE RUTA A LOS 3600* [EX TOP GLOBAL] //CAPITAN"
},
"contentDetails": {
"videoId": "6fvjeB6jukM"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy4xQTI1REI0MTgyNkFFRjFD",
"snippet": {
"title": "YO INTERNETO EP.6: Me duelen los Mods"
},
"contentDetails": {
"videoId": "m6rK02kD_io"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy43QjJGQjYxMEQwRjRGRkQ3",
"snippet": {
"title": "!!ÚLTIMO INTENTO EN DIRECTO¡¡ ¿CONSEGUIREMOS LAS 20 VICTORIAS CON ADRIÁN DE COACH? I Clash Royale'"
},
"contentDetails": {
"videoId": "ko2dzJh4E8I"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy5EM0I5QkM1RTQyNDk5RUI2",
"snippet": {
"title": "EL NUEVO BATTLE ROYALE *BATTLEFIELD V FIRESTORM*"
},
"contentDetails": {
"videoId": "yhEHPFp9J1w"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy5GNTk3QTg1RDZGNUZGNENF",
"snippet": {
"title": "Jugando Niveles de SUSCRIPTORES en Vivo! | Super Mario Maker"
},
"contentDetails": {
"videoId": "-WnrFEzbnhs"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy5GOTYwNDNGRDJCMkQ1QkI2",
"snippet": {
"title": "🔴Si me ganas *TE DOY CUENTA RANDOM de FORTNITE* GRATIS!! 1vs1 CONTRA SUSCRIPTORES en PATIO DE JUEGO"
},
"contentDetails": {
"videoId": "d-uQ_ete2Ko"
}
},
{
"id": "UExpQ3ZWSnpCdXBLa3BHYWNWX1NjVXpBLWVHRjJLU1pLQy42QTJGODE2OEZDOTc4Rjcx",
"snippet": {
"title": "🔴 DIRECTO DE FREE FIRE 🔴 GANA DIAMANTES Y PREMIOS JUGANDO *TE RETO* | SALAS PRIVADAS"
},
"contentDetails": {
"videoId": "izYgIFMBKKo"
}
}
]
}
This is the Google API Explorer demo I prepared.
This is the popular live gaming if you're interested in.

Related

YouTube Data API v3 Search Missing Videos

I'm trying to access recent videos for channel "UC8-Th83bH_thdKZDJCrn88g" using the youtube.search.list API method, however I'm getting different results than what I'm seeing on the page.
Following the documentation:
GET https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=UC8-Th83bH_thdKZDJCrn88g&maxResults=10&order=date&type=video&fields=items(id(videoId),snippet(channelId,publishedAt,title))&key={YOUR_API_KEY}
{
"items": [
{
"id": {
"videoId": "BY4cV6B25fQ"
},
"snippet": {
"publishedAt": "2019-09-19T09:00:00.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Nick Kroll Shares His Impressions of Dogs, Sheep and French Dolphins"
}
},
{
"id": {
"videoId": "iVx7gzO17gA"
},
"snippet": {
"publishedAt": "2019-09-19T03:40:47.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Wheel of Impressions with Nick Kroll"
}
},
{
"id": {
"videoId": "yNiHAm0fVME"
},
"snippet": {
"publishedAt": "2019-09-13T10:30:02.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Jim Jefferies Let an Identity Thief Keep Using His Credit Card"
}
},
{
"id": {
"videoId": "HZ-O9SxQKA4"
},
"snippet": {
"publishedAt": "2019-09-13T10:00:05.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Jim Jefferies Is a Fail to His Son and a Bad Immigrant to America"
}
},
{
"id": {
"videoId": "8y0C4JPf3-s"
},
"snippet": {
"publishedAt": "2019-09-13T09:30:01.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Jennifer Garner's Daughter Affectionately Calls Her "Fun-Killer" Mom"
}
},
{
"id": {
"videoId": "hEKKS93d3Co"
},
"snippet": {
"publishedAt": "2019-09-13T09:00:08.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Thank You Notes: Hustlers for Casting Lizzo, Fancy Bloody Marys"
}
},
{
"id": {
"videoId": "5KxL7RkT4S0"
},
"snippet": {
"publishedAt": "2019-09-12T09:00:00.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Kim Kardashian West Sets the Record Straight About Moving to Wyoming"
}
},
{
"id": {
"videoId": "fEATS2F46vg"
},
"snippet": {
"publishedAt": "2019-09-12T09:00:09.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Kim Kardashian West and Winnie Harlow Bonded Over Autoimmune Issues"
}
},
{
"id": {
"videoId": "3GNjbAACqIY"
},
"snippet": {
"publishedAt": "2019-09-12T03:51:27.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Show Me Your Phone w/ Kim Kardashian West"
}
},
{
"id": {
"videoId": "1htjuCla5Bw"
},
"snippet": {
"publishedAt": "2019-09-11T10:30:01.000Z",
"channelId": "UC8-Th83bH_thdKZDJCrn88g",
"title": "Russell Westbrook Teaches Jimmy His Seated Pre-Game Dance Routine"
}
}
]
}
Which is omitting a lot of videos that I can see on the channel's uploads page (sorted by Date added, newest):
The first video returned in the API response appears as the 12th video on the Channel's page. Additionall, there are 3 videos seen on screen between the first video in the API response and the second video in the API response.
It’s freaked me out for about ten days. Thought my renaming script got messed up. Luckily (?) it’s on the API end, and there’s an open issue on it...
https://support.google.com/youtube/thread/14611425?hl=en
Hope that eases your concern!

Showing wrong number of videos

I am using the YouTube API V3 for getting videos of a channel, but it returns the wrong number of videos. The channel has in total 11 videos, but when I do the call to the API, I get only 6 (or 7, I don't know the case) of them, also if I specify the maxResults parameter to 11 or higher.
How can I resolve this? Thanks. I didn't found any setting for this in my youtube account.
To demostrate it, the channel ID is: UCOjT220XvzZrX6LuZ6GnrGQ
When I call
https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=UCOjT220XvzZrX6LuZ6GnrGQ&maxResults=13&order=date&key=[API_KEY]
I'm able to get the 11 videos you mentioned:
{
"kind": "youtube#searchListResponse",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/HAvUl5A7ZOXUisEPHf47emX1hL0\"",
"pageInfo": {
"totalResults": 12,
"resultsPerPage": 13
},
"items": [
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/PgKUDIanQqJM06eGCdOcY1k8U2E\"",
"id": {
"kind": "youtube#video",
"videoId": "wgIGFp6LTpg"
},
"snippet": {
"publishedAt": "2015-02-27T09:00:41.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Trapianto di Cornea DALK",
"description": "",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/wgIGFp6LTpg/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/wgIGFp6LTpg/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/wgIGFp6LTpg/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/iI_e3liC80z1dubSCRt-GMMglqU\"",
"id": {
"kind": "youtube#video",
"videoId": "M48hn7bBof8"
},
"snippet": {
"publishedAt": "2015-02-27T08:57:31.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Cheratoprotesi di Boston",
"description": "La cornea artificiale è l'ultima frontiera per la cura delle malattie della cornea. Ne esistono di diversi tipi: la piu utilizzata è la Cornea artificiale (cheratoprotesi) di ...",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/M48hn7bBof8/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/M48hn7bBof8/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/M48hn7bBof8/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/0UZloLuYjiuCboAS78hx0Crez3E\"",
"id": {
"kind": "youtube#video",
"videoId": "Y2I2ZLpKDc8"
},
"snippet": {
"publishedAt": "2015-02-26T14:50:09.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Intralase",
"description": "Tecnologia laser a femtosecondi di Abbott Laboratories sulla quale si basa l'intervento LASIK.",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/Y2I2ZLpKDc8/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/Y2I2ZLpKDc8/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/Y2I2ZLpKDc8/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/d8MMhw3T03DfFfUHMUUkSWuOPyI\"",
"id": {
"kind": "youtube#video",
"videoId": "SbhcbwTLX7c"
},
"snippet": {
"publishedAt": "2015-02-26T14:26:30.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Trapianto di Cornea Endotelio DSAEK",
"description": "Trapianto di endotelio della cornea (DSAEK) con iniettore NCI. Nuova tecnica di trapianto di cornea per pazienti con distrofia di Fuchs o edema della cornea ...",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/SbhcbwTLX7c/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/SbhcbwTLX7c/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/SbhcbwTLX7c/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/Mb5mqYX17_L_9Y5t9FwSUcUhXI0\"",
"id": {
"kind": "youtube#video",
"videoId": "hKgget6QLMM"
},
"snippet": {
"publishedAt": "2015-02-25T14:18:26.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Cheratoprotesi di Boston: Trapianto di Cornea",
"description": "",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/hKgget6QLMM/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/hKgget6QLMM/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/hKgget6QLMM/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/qWC6lNxyC2DanUqXZjh9hnCE6a0\"",
"id": {
"kind": "youtube#video",
"videoId": "Zxe6N9gLYOk"
},
"snippet": {
"publishedAt": "2015-02-25T14:13:30.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Chirurgia Cataratta con lente Hi Tech",
"description": "",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/Zxe6N9gLYOk/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/Zxe6N9gLYOk/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/Zxe6N9gLYOk/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/4fEXZSXNyt6Er2llnk-Tq1-H3Xo\"",
"id": {
"kind": "youtube#video",
"videoId": "d-txNN-7LvE"
},
"snippet": {
"publishedAt": "2015-02-25T14:08:48.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Chirurgia Cheratocono con INTACTS - Chirurgia Live",
"description": "",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/d-txNN-7LvE/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/d-txNN-7LvE/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/d-txNN-7LvE/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/EeTGCvw9RrGuPB3KDSzZR0iGMEA\"",
"id": {
"kind": "youtube#video",
"videoId": "Imtlb7qmags"
},
"snippet": {
"publishedAt": "2015-02-25T14:05:24.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Chirurgia Cheratocono con INTACTS - Animazione",
"description": "",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/Imtlb7qmags/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/Imtlb7qmags/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/Imtlb7qmags/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/ssmNJT0LbRQRRlTGjJ-wbCNh5SM\"",
"id": {
"kind": "youtube#video",
"videoId": "ryWlPp29kiI"
},
"snippet": {
"publishedAt": "2015-02-25T13:57:46.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Correzione Miopia, Ipermetropia e Cataratta con la lente Hi Tech",
"description": "Correggere miopia, astigmatismo, presbiopia ed ipermetropia è possibile in un unico intervento grazie alla lente Hi-tech. Si tratta di un cristallino artificiale che ...",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/ryWlPp29kiI/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/ryWlPp29kiI/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/ryWlPp29kiI/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/YHFCRZaoPNuTzlLHmOAWzyydvZw\"",
"id": {
"kind": "youtube#video",
"videoId": "RJmm40oaVwk"
},
"snippet": {
"publishedAt": "2015-02-25T13:52:07.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Chirurgia della Cataratta: novità",
"description": "La più grande innovazione in chirurgia della cataratta è la lente Hi-Tech che permette di curare in un unico intervento miopia, astigmatismo, presbiopia e ...",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/RJmm40oaVwk/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/RJmm40oaVwk/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/RJmm40oaVwk/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/rs7lh7958amlLisrvdxndE1neAc\"",
"id": {
"kind": "youtube#video",
"videoId": "4sfAlyiSA8s"
},
"snippet": {
"publishedAt": "2015-02-25T08:35:34.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Lente Intraoculare Hi Tech",
"description": "I difetti della vista: miopia, astigmatismo, presbiopia e ipermetropia si possono finalmente correggere con un unico intervento: la chirurgia con la lente Hi-Tech o ...",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/4sfAlyiSA8s/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/4sfAlyiSA8s/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/4sfAlyiSA8s/hqdefault.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"sGDdEsjSJ_SnACpEvVQ6MtTzkrI/NAW_LlewyAxUlC7o6lL1oQxW2VY\"",
"id": {
"kind": "youtube#channel",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ"
},
"snippet": {
"publishedAt": "2015-02-24T18:10:32.000Z",
"channelId": "UCOjT220XvzZrX6LuZ6GnrGQ",
"title": "Micro Chirurgia Oculare - dott. Federico Badalà",
"description": "Il Dott. Federico Badalà dopo aver a lungo lavorato in USA è stato il primo chirurgo oculista italiano ad eseguire interventi innovativi nel campo della chirurgia ...",
"thumbnails": {
"default": {
"url": "https://lh5.googleusercontent.com/-lvWU6W_lntU/AAAAAAAAAAI/AAAAAAAAAAA/yKCZSRHZcNI/photo.jpg"
},
"medium": {
"url": "https://lh5.googleusercontent.com/-lvWU6W_lntU/AAAAAAAAAAI/AAAAAAAAAAA/yKCZSRHZcNI/photo.jpg"
},
"high": {
"url": "https://lh5.googleusercontent.com/-lvWU6W_lntU/AAAAAAAAAAI/AAAAAAAAAAA/yKCZSRHZcNI/photo.jpg"
}
},
"channelTitle": "",
"liveBroadcastContent": "none"
}
}
]
}
For some strange reason, it doesn't work when I copy the URL you posted in the comments, but when I copy the channelId posted above and paste that in your URL, it works (even though it's the same ID, how strange...). Another way you could try to do this is to use playlistItems.list and provide your uploads playlist ID (which you can get by calling channels.list and specifying part=contentDetails), which gives your uploaded videos in reverse chronological order.
https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=UUOjT220XvzZrX6LuZ6GnrGQ&maxResults=13&key=[API_KEY]

Youtube API v3 data.search returning same value

I was trying to fetch different youtube channels on the basis of the regionCode.
Trying to fetch indian youtube channels:
https://www.googleapis.com/youtube/v3/search?part=snippet&type=channel&regionCode=IN&maxResults=5&key={API_KEY}
Trying to fetch Malaysian youtube channels:
https://www.googleapis.com/youtube/v3/search?part=snippet&type=channel&regionCode=MY&maxResults=5&key={API_KEY}
I am getting same result for both of this requests. Why this is happening?
{
"kind": "youtube#searchListResponse",
"etag": "\"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/EiqwT6pG1EkwVEl17s1_qudvkmk\"",
"nextPageToken": "CAUQAA",
"pageInfo": {
"totalResults": 1000000,
"resultsPerPage": 5
},
"items": [
{
"kind": "youtube#searchResult",
"etag": "\"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/smpwgLdS9Og11NhpzRYcy37a9V8\"",
"id": {
"kind": "youtube#channel",
"channelId": "UCrFiA0hztL9e8zTi_qBuW4w"
},
"snippet": {
"publishedAt": "2013-03-19T20:35:41.000Z",
"channelId": "UCrFiA0hztL9e8zTi_qBuW4w",
"title": "EeOneGuy",
"description": "Просто делаю ролики =)",
"thumbnails": {
"default": {
"url": "https://lh6.googleusercontent.com/-ZPtgaY_lFDY/AAAAAAAAAAI/AAAAAAAAAAA/U_8gJcnIMiE/photo.jpg"
},
"medium": {
"url": "https://lh6.googleusercontent.com/-ZPtgaY_lFDY/AAAAAAAAAAI/AAAAAAAAAAA/U_8gJcnIMiE/photo.jpg"
},
"high": {
"url": "https://lh6.googleusercontent.com/-ZPtgaY_lFDY/AAAAAAAAAAI/AAAAAAAAAAA/U_8gJcnIMiE/photo.jpg"
}
},
"channelTitle": "EeOneGuy",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/g4m9Kno2zbU7BMIEUbffxDlyvZI\"",
"id": {
"kind": "youtube#channel",
"channelId": "UC7MO7ngSqsBcvQvxNf-kpWg"
},
"snippet": {
"publishedAt": "2013-06-04T17:39:49.000Z",
"channelId": "UC7MO7ngSqsBcvQvxNf-kpWg",
"title": "The Right to Research Coalition",
"description": "The Right to Research Coalition is a coalition of 80 undergraduate and graduate student organisations from across the world. Together we educate and ...",
"thumbnails": {
"default": {
"url": "https://lh5.googleusercontent.com/-p0RT2XiO3_0/AAAAAAAAAAI/AAAAAAAAAAA/tdAJTswPnB0/photo.jpg"
},
"medium": {
"url": "https://lh5.googleusercontent.com/-p0RT2XiO3_0/AAAAAAAAAAI/AAAAAAAAAAA/tdAJTswPnB0/photo.jpg"
},
"high": {
"url": "https://lh5.googleusercontent.com/-p0RT2XiO3_0/AAAAAAAAAAI/AAAAAAAAAAA/tdAJTswPnB0/photo.jpg"
}
},
"channelTitle": "R2RCvideo",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/nWC7qhbPZRH0qyEBOcWdFR8TI5k\"",
"id": {
"kind": "youtube#channel",
"channelId": "UCmSSq5573Ru9asXsXykgqTw"
},
"snippet": {
"publishedAt": "2014-10-12T02:26:56.000Z",
"channelId": "UCmSSq5573Ru9asXsXykgqTw",
"title": "Toys Games TV",
"description": "Welcome to Toys Games TV Channel! Looking for a safe channel for your kids? Look no further, on TGTV we review primarily Disney, PBS & Sprout character ...",
"thumbnails": {
"default": {
"url": "https://lh3.googleusercontent.com/-5qqjMUWhRow/AAAAAAAAAAI/AAAAAAAAAAA/2la9IA5DNhU/photo.jpg"
},
"medium": {
"url": "https://lh3.googleusercontent.com/-5qqjMUWhRow/AAAAAAAAAAI/AAAAAAAAAAA/2la9IA5DNhU/photo.jpg"
},
"high": {
"url": "https://lh3.googleusercontent.com/-5qqjMUWhRow/AAAAAAAAAAI/AAAAAAAAAAA/2la9IA5DNhU/photo.jpg"
}
},
"channelTitle": "ToysGamesTV",
"liveBroadcastContent": "upcoming"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/enqEI6qDr8UfYcjixI9Cjpd6SU0\"",
"id": {
"kind": "youtube#channel",
"channelId": "UCtjLPHCyI5V-xuumAXzAizA"
},
"snippet": {
"publishedAt": "2008-06-05T04:13:13.000Z",
"channelId": "UCtjLPHCyI5V-xuumAXzAizA",
"title": "UNUChannel",
"description": "Channel produced by the United Nations University (UNU). The overarching goal of the United Nations University is to contribute to global sustainable ...",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/i/tjLPHCyI5V-xuumAXzAizA/1.jpg"
},
"medium": {
"url": "https://i.ytimg.com/i/tjLPHCyI5V-xuumAXzAizA/mq1.jpg"
},
"high": {
"url": "https://i.ytimg.com/i/tjLPHCyI5V-xuumAXzAizA/hq1.jpg"
}
},
"channelTitle": "UNUChannel",
"liveBroadcastContent": "none"
}
},
{
"kind": "youtube#searchResult",
"etag": "\"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/44t2atyjsxpSOVj7OfeK9GTfy0M\"",
"id": {
"kind": "youtube#channel",
"channelId": "UCJ7-0_cR9HiA9iX8n3kugcg"
},
"snippet": {
"publishedAt": "2010-06-29T15:08:02.000Z",
"channelId": "UCJ7-0_cR9HiA9iX8n3kugcg",
"title": "Naturhistoriska riksmuseet",
"description": "Naturhistoriska riksmuseets och Cosmonovas YouTube-kanal.",
"thumbnails": {
"default": {
"url": "https://lh5.googleusercontent.com/-OItSjQXSj_c/AAAAAAAAAAI/AAAAAAAAAAA/ybdmiik-0eA/photo.jpg"
},
"medium": {
"url": "https://lh5.googleusercontent.com/-OItSjQXSj_c/AAAAAAAAAAI/AAAAAAAAAAA/ybdmiik-0eA/photo.jpg"
},
"high": {
"url": "https://lh5.googleusercontent.com/-OItSjQXSj_c/AAAAAAAAAAI/AAAAAAAAAAA/ybdmiik-0eA/photo.jpg"
}
},
"channelTitle": "SthlmNaturhistoriska",
"liveBroadcastContent": "none"
}
}
]
}
Thanks in advance. Any help would be much appreciated.
From the documentation:
regionCode - (string) The regionCode parameter instructs the API to return
search results for the specified country. The parameter value is an
ISO 3166-1 alpha-2 country code.
It looks like specifying the regionCode returns search results as if you were in that country, not for videos/channels that are associated with that country. For example, if you specified CN (China) as the region code, you wouldn't get results for videos that have been blocked in China.
It seems that there's no good way to get all channels that belong to a particular country. What you could do is execute the search.list() with your specified search criteria and set type=Channel. Then, based on the response, issue a request to channels.list() to get the country and compare to see if it is from that specific country. It's pretty inefficient, and while I was trying to test a similar way of doing it, I found that I can set my country in the "About" section of my channel. However, since the field is optional, there's no guarantee that users are actually setting this for their channels, so ultimately it's hard for you to get the information you're looking for.

Retrieve Video IDs contained in a Playlist - YouTube API v3

I've been using the following method to retrieve all video IDs, titles, and default thumbnail images contained within a specific YouTube playlist for use in a dynamic playlist carousel (The IDs are then passed to an array which is used to dynamically create a thumbnail carousel. Note the 'playlist' variable is defined via an externalized XML value):
// Get YouTube Playlist values
var playListURL = 'http://gdata.youtube.com/feeds/api/playlists/' + playlist + '?v=2&alt=json&callback=?';
var videoURL = 'http://www.youtube.com/watch?v=';
$.getJSON(playListURL, function(data) {
var list_data = "";
$.each(data.feed.entry, function(i, item) {
var feedTitle = item.title.$t;
var feedURL = item.link[1].href;
var fragments = feedURL.split("/");
var videoID = fragments[fragments.length - 2];
var thumb = ""+ videoID +"/sddefault.jpg";
if (videoID !='videos') {
yt_videos.push(videoID);
}
yt_thumb.push(thumb);
yt_title.push(feedTitle);
});
$(list_data).appendTo(".cont");
populateCarousel();
});
YouTube has depricated the v1-2 APIs and the method is longer working. Does the YouTube API v3 provide an equivalent method? Specifically replacing the call:
var playListURL = 'http://gdata.youtube.com/feeds/api/playlists/' + playlist + '?v=2&alt=json&callback=?';
You will need to switch to the new PlaylistItems/list endpoint to get video information from a playlist.
Request:
HTTP GET: GET https://www.googleapis.com/youtube/v3/playlistItems?part=snippet%2C+id&playlistId=PLCJLiJ8uSJrCpxwz4lmnz1NvvF2SzXbhk&key={YOUR_API_KEY}
Response (for id= PLCJLiJ8uSJrCpxwz4lmnz1NvvF2SzXbhk):
{
"kind": "youtube#playlistItemListResponse",
"etag": "\"dhbhlDw5j8dK10GxeV_UG6RSReM/pBQT3k1NWD9D6HOvzNhT4QS1-W0\"",
"nextPageToken": "CAUQAA",
"pageInfo": {
"totalResults": 10,
"resultsPerPage": 5
},
"items": [
{
"kind": "youtube#playlistItem",
"etag": "\"dhbhlDw5j8dK10GxeV_UG6RSReM/wu_RMwA6QYinWSMrYXyOugKDbyI\"",
"id": "PLl3eZeHB033DOxfNMOVENodvC_4QtQ-r2bxEjeNprDxQ",
"snippet": {
"publishedAt": "2014-12-10T21:16:39.000Z",
"channelId": "UCVUx0VcNxnHx7ZjuZK5Sthw",
"title": "Private video",
"description": "This video is private.",
"channelTitle": "Late Show with David Letterman",
"playlistId": "PLCJLiJ8uSJrCpxwz4lmnz1NvvF2SzXbhk",
"position": 0,
"resourceId": {
"kind": "youtube#video",
"videoId": "4bVgilYncao"
}
}
},
{
"kind": "youtube#playlistItem",
"etag": "\"dhbhlDw5j8dK10GxeV_UG6RSReM/DPNyicQckvtlwgMTintYEwYsE6g\"",
"id": "PLl3eZeHB033DOxfNMOVENoaZ-Ybk0W0zkTL1Sliq5xeA",
"snippet": {
"publishedAt": "2014-12-10T21:16:58.000Z",
"channelId": "UCVUx0VcNxnHx7ZjuZK5Sthw",
"title": "David Letterman Announces His Retirement from the Late Show",
"description": "David Letterman announces that he will retire from the Late Show in 2015.\n\nLive on Letterman is up for a Webby award! Let your voice be heard and vote now! http://bit.ly/1l4oktE #WebbyAwards",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/H9eYkpgeeI8/default.jpg",
"width": 120,
"height": 90
},
"medium": {
"url": "https://i.ytimg.com/vi/H9eYkpgeeI8/mqdefault.jpg",
"width": 320,
"height": 180
},
"high": {
"url": "https://i.ytimg.com/vi/H9eYkpgeeI8/hqdefault.jpg",
"width": 480,
"height": 360
},
"standard": {
"url": "https://i.ytimg.com/vi/H9eYkpgeeI8/sddefault.jpg",
"width": 640,
"height": 480
},
"maxres": {
"url": "https://i.ytimg.com/vi/H9eYkpgeeI8/maxresdefault.jpg",
"width": 1280,
"height": 720
}
},
"channelTitle": "Late Show with David Letterman",
"playlistId": "PLCJLiJ8uSJrCpxwz4lmnz1NvvF2SzXbhk",
"position": 1,
"resourceId": {
"kind": "youtube#video",
"videoId": "H9eYkpgeeI8"
}
}
},
{
"kind": "youtube#playlistItem",
"etag": "\"dhbhlDw5j8dK10GxeV_UG6RSReM/aL6XWPV0PoM50wQcyclAxsvtWy4\"",
"id": "PLl3eZeHB033DOxfNMOVENobu4IxNcwxZw1eEEoLqHjhY",
"snippet": {
"publishedAt": "2014-12-10T21:17:14.000Z",
"channelId": "UCVUx0VcNxnHx7ZjuZK5Sthw",
"title": "Private video",
"description": "This video is private.",
"channelTitle": "Late Show with David Letterman",
"playlistId": "PLCJLiJ8uSJrCpxwz4lmnz1NvvF2SzXbhk",
"position": 2,
"resourceId": {
"kind": "youtube#video",
"videoId": "ONgN2Hgz3XE"
}
}
},
{
"kind": "youtube#playlistItem",
"etag": "\"dhbhlDw5j8dK10GxeV_UG6RSReM/YF1JYH8bTG20vjuPLeMR-2xkxjo\"",
"id": "PLl3eZeHB033DOxfNMOVENoQncF7sXo86YALoy5U4yqlU",
"snippet": {
"publishedAt": "2014-12-10T21:17:30.000Z",
"channelId": "UCVUx0VcNxnHx7ZjuZK5Sthw",
"title": "David Letterman - Future Islands: \"Seasons (Waiting On You)\"",
"description": "Making their network TV debut, Future Islands performed \"Seasons (Waiting On You)\" from their album, \"Singles.\"",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/1Ee4bfu_t3c/default.jpg",
"width": 120,
"height": 90
},
"medium": {
"url": "https://i.ytimg.com/vi/1Ee4bfu_t3c/mqdefault.jpg",
"width": 320,
"height": 180
},
"high": {
"url": "https://i.ytimg.com/vi/1Ee4bfu_t3c/hqdefault.jpg",
"width": 480,
"height": 360
}
},
"channelTitle": "Late Show with David Letterman",
"playlistId": "PLCJLiJ8uSJrCpxwz4lmnz1NvvF2SzXbhk",
"position": 3,
"resourceId": {
"kind": "youtube#video",
"videoId": "1Ee4bfu_t3c"
}
}
},
{
"kind": "youtube#playlistItem",
"etag": "\"dhbhlDw5j8dK10GxeV_UG6RSReM/_Ft_7ujRwQbP7-altelmVnzwQx0\"",
"id": "PLl3eZeHB033DOxfNMOVENoYQ9Z55P4r2KhvkV5yx-okc",
"snippet": {
"publishedAt": "2014-12-10T21:17:47.000Z",
"channelId": "UCVUx0VcNxnHx7ZjuZK5Sthw",
"title": "Private video",
"description": "This video is private.",
"channelTitle": "Late Show with David Letterman",
"playlistId": "PLCJLiJ8uSJrCpxwz4lmnz1NvvF2SzXbhk",
"position": 4,
"resourceId": {
"kind": "youtube#video",
"videoId": "Bzr5VtFvSyw"
}
}
}
]
}
The id value for each object in the items array should be the videoId value that you want.
api_key = 'YOUR_API_KEY'
api_service_name = 'youtube'
api_version = 'v3'
playlist_id = 'SOME_PLAYLIST_ID'
# build a connected client
youtube = googleapiclient.discovery.build(api_service_name, api_version, developerKey=api_key)
# make a request (note, only the 'snippet' part has been requested)
request = youtube.playlistItems().list(part=['snippet'], playlistId=playlist_id)
response = request.execute()
# scrape out the actual video ids (probably could be safer)
for (k, v) in response.items():
if(k == 'items'):
video_ids = [pli['snippet']['resourceId']['videoId'] for pli in v if pli['snippet']['resourceId']['kind']=='youtube#video']
print(video_ids)

How to Get All Movies (not videos) with YouTube V3 API

I want to list all the movies available on YouTube (i.e. those available via //youtube.com/movies). I can see how to query those using API V2, but this has a limit of 1000 responses.
With the V3 api I can see the category for movies has id 30, but I can't work out how to get all movies with this category. The only category queries appear to search on guide categories, which are different.
Any clues on how I can get this list? Please help if you can!
I believe that you can get the autogenerated channels, related to movies, and use their id to get the playlists related to this channels and finally the items (videos..) from this playlists, that must be the videos related to the movies of the selected channels:
Retrieve movie channels:
Request
https://www.googleapis.com/youtube/v3/search?part=snippet&q=movies&type=channel&key={YOUR_API_KEY}
Partial response
"items": [
{
"id": {
"kind": "youtube#channel",
"channelId": "UCczhp4wznQWonO7Pb8HQ2MQ"
},
"kind": "youtube#searchResult",
"etag": "\"eTr3dHIt5_K9qdGtRKL-5XdpiQI/sQpwXP-0MUEZzOQx4F0yKj0eUR4\"",
"snippet": {
"publishedAt": "2005-12-15T03:07:36.000Z",
"channelId": "UCczhp4wznQWonO7Pb8HQ2MQ",
"title": "movies",
"description": "YouTube Movies (United States).",
"thumbnails": {
"default": {
"url": "http://i.ytimg.com/i/czhp4wznQWonO7Pb8HQ2MQ/1.jpg"
},
"medium": {
"url": "http://i.ytimg.com/i/czhp4wznQWonO7Pb8HQ2MQ/mq1.jpg"
},
"high": {
"url": "http://i.ytimg.com/i/czhp4wznQWonO7Pb8HQ2MQ/hq1.jpg"
}
}
}
},
e.g. Get the list of movies in channel "YouTube Movies (United States)"
Request
https://www.googleapis.com/youtube/v3/playlists?part=snippet&channelId=UCczhp4wznQWonO7Pb8HQ2MQ&key={YOUR_API_KEY}
Partial response:
{
"id": "PLjygWhZE6KY0Uhw12FsAc8raAClz0l71C",
"kind": "youtube#playlist",
"etag": "\"eTr3dHIt5_K9qdGtRKL-5XdpiQI/TWrkoCkmJvq14neCcutnApHMMgU\"",
"snippet": {
"publishedAt": "2012-12-06T20:11:40.000Z",
"channelId": "UCczhp4wznQWonO7Pb8HQ2MQ",
"title": "The Nicolas Cage Collection",
"description": "From panicked fathers to spirits of vengeance, Nicolas Cage has done it all.",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/nHiy8SVZdpU/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/nHiy8SVZdpU/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/nHiy8SVZdpU/hqdefault.jpg"
}
}
}
},
Get items from this playlist:
Request:
https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=PLjygWhZE6KY0Uhw12FsAc8raAClz0l71C&key={YOUR_API_KEY}
Partial response:
{
"kind": "youtube#playlistItemListResponse",
"etag": "\"eTr3dHIt5_K9qdGtRKL-5XdpiQI/KSlqEnNGq36l47_k9W3fd79KfYQ\"",
"pageInfo": {
"totalResults": 15,
"resultsPerPage": 5
},
"nextPageToken": "CAUQAA",
"items": [
{
"id": "PLcBtbpFAOApiV34TU797yEFAUZuwhFrvJya3MqlZWkGM",
"kind": "youtube#playlistItem",
"etag": "\"eTr3dHIt5_K9qdGtRKL-5XdpiQI/C_xTa48Xof7giXobSula2vWX43A\"",
"snippet": {
"publishedAt": "2012-12-06T20:12:49.000Z",
"channelId": "UCczhp4wznQWonO7Pb8HQ2MQ",
"title": "Stolen",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/nHiy8SVZdpU/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/nHiy8SVZdpU/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/nHiy8SVZdpU/hqdefault.jpg"
}
},
"playlistId": "PLjygWhZE6KY0Uhw12FsAc8raAClz0l71C",
"position": 0,
"resourceId": {
"kind": "youtube#video",
"videoId": "nHiy8SVZdpU"
}
}
},
{
"id": "PLcBtbpFAOApiV34TU797yED-1zeMCoMGVxtVgtX9ZdsQ",
"kind": "youtube#playlistItem",
"etag": "\"eTr3dHIt5_K9qdGtRKL-5XdpiQI/LgSyqtZkwJXv6-2ajW0g-FsgddQ\"",
"snippet": {
"publishedAt": "2012-12-06T20:19:26.000Z",
"channelId": "UCczhp4wznQWonO7Pb8HQ2MQ",
"title": "Trespass",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/J_7Zug6ouy4/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/J_7Zug6ouy4/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/J_7Zug6ouy4/hqdefault.jpg"
}
},
"playlistId": "PLjygWhZE6KY0Uhw12FsAc8raAClz0l71C",
"position": 1,
"resourceId": {
"kind": "youtube#video",
"videoId": "J_7Zug6ouy4"
}
}
},
and in this way you can create the list of videos as you want
Here's my current answer - still working on it so I've not accepted it yet
I worked out the categoryId for Movies is 30. I then did a search for videos using this categoryId, and the query string "movie" (just because I need to put something). This gives more than 1000 results, and google limits queries to 1000 results even with the v3 api.
So I need to partition my query. I have been able to do this with publishedBefore and publishedAfter. Note these are upload dates and not release dates.
This gives me a list of movies.
Here's a sample query
https://www.googleapis.com/youtube/v3/search?nextPageToken=CDIQAA&publishedBefore=2010-02-01T00%3A00%3A00Z&maxResults=50&q=movie&videoCategoryId=30&part=id%2Csnippet&key=yourAPIKeyHere&type=video&publishedAfter=2010-01-01T00%3A00%3A00Z
Once I have the movie IDs I query the individual movie ids
https://www.googleapis.com/youtube/v3/videos?part=snippet%2CcontentDetails&maxResults=50&id=O7cSKNevYQc%2CN84-SoboM6c%2C9K_WO3lqDSc%2CWTJP0Z-bknc%2CdF9hwjeRbGE%2CPnefvJ9T1N0%2CDuM6B4yKgTU%2C0tI8iP2f58I%2Cr4lNJEnY0FA%2COFnMrx6yEcA%2CmUZUAeqOmbg%2CDjq0tHK-KTo%2CkY44nxk0qjg%2CcLYkUR5MY14%2CTZpcfYOOEXA%2C-0jA9DMX8Qs%2C2TQDV1m4X2s%2CBh3Tye1OQvk%2Ct5IwjMDVNz4%2CkOi88X6xeKg%2Ck53CuaAUtik%2CNaRuenqLb9g%2Cn9h-0Wgix7Q%2CQG8SiW2a_l0%2Cmk-D66Z1Ydg%2ClvmwofckpNc%2CgRQK4fTXfBM%2CPZHgLy48R3Q%2CwczeO0DVM0g%2CTpMDTG3dEYE%2C6JI8pN7BqEQ%2COv9yllk3hsY%2CsN09sfLPu0g%2CbfhLYJGN948%2CPiWusdK75Ys%2CeE5jh0YwTCY%2C_cIw3vr2Q18%2CSA4xg_k0aqI%2CUZdha0zTM6w%2CwUdkDSIBw94%2CAhR-LDSIOaI%2C1XMt40vJayU%2C83fPx5-aUL8%2CmJLjaKzu7PQ%2CZvj_zRGnwU0%2CtyIPMd7JXOA%2CToE10sC36KQ%2COVKXjOW6cD8%2CLPW1cXVjMrg&key=LALALA
I still then need to filter the results by looking at the following json in the results
"contentDetails": {
"duration": "PT1H35M14S",
"regionRestriction": {
"allowed": [
"US"
]
}
Unfortunately this still doesn't give me the movie year or director (which are useful for working out which movie this actually is), or the price (which, you know, people find interesting)

Resources