Youtube, API – Requêter l’API youtube d’une playlist
Il y a eu un saut technologique important entre la V2 de l’API youtube et la V3. Cette évolution n’a d’ailleurs à mon sens pas que des raisons technologiques mais aussi lucratives. On perçoit clairement en découvrant la nouvelle interface, la volonté affirmée de Google, propriétaire de YouTube, de monétiser l’audience gigantesque et l’extreme popularité de cette plateforme.
Paradoxalement, Google se montre assez “généreux”. En effet, le seuil à partir duquel vous allez devoir payer votre usage de l’API YouTube est relativement élevé.
Pour information, voici les données affichées concernant les quotas.
Résumé des quotas
- Quota gratuit 50 000 000 unités/jour
- Restant 50 000 000 unités/jour 100 % du quota total
- Limite par utilisateur 3000 requêtes par seconde et par utilisateur
Pour jouer avec l’API V3, le scénario que nous avons retenu est de parcourir une playlist afin de récupérer l’ensemble des videos de cette playlist.
Utiliser l’API V3
Le premier pré-requis est de vous procurer une clé API. Cette clé vous l’obtiendrait en vous connectant à la console de Google à cette adresse :https://console.developers.google.com/
La clé API YouTube sera de cette forme XQzwSyBRlqCrc89cMeChqoKF6lxBB9dKAeqH4og
. Bien évidemment, cette clé n’est donnée qu’à titre d’exemple.
Une fois, cette clé obtenue, vous avez tout le loisir de passer des requêtes directement dans votre navigateur favori.
Un flux au format json d’une playlist issu de l’API YouTube. Il vous suffit de connaitre l’ID de la playlist. L’ID de playlist est de ce type ALeL9jWxKt-lWw9Xk6wYcLrW98QagUs7vz
La console pour obtenir le clé d’API
Un dashboard de l’utilisation de vos quotas d’API
Les fameux quotas
L’écran qui résume les éléments pour obtenir ou l’authentification ou la clé d’API.’
Quelques requêtes sur l’API V3
Pour mémoire, on parcourt une playlist qui nous procure les IDs des videos. Puis une deuxième requête sur l’API à l’aide des IDs nous permet d’avoir les détails de chaque video publié dans la playlist.
Pour retourner les IDs des videos d’une playlist
https://www.googleapis.com/youtube/v3/playlistItems?part=contentDetails&maxResults=50&playlistId={YOUR_ID_PLAYLIST}&key={YOUR_API_KEY}
Pour retourner le détail d’une vidéo sur la base de l’ID QTQfGd3G6dg
Sur cette requête, on appelle que le strict minimum, si vous souhaitez récupérer tous les détails concernant la video, il vous faudra passer étendre le critère &part= comme suit
&part=snippet,contentDetails,statistics,status
https://www.googleapis.com/youtube/v3/videos?key={YOUR_API_KEY}&part=snippet&id={ID_VID}
Source : https://developers.google.com/youtube/v3/getting-started
Conclusions : Il est bien évidemment grand temps de passer à l’API V3 et d’abandonner la version 3 annoncer comme “deprecated” tout en sachant que ce qui est aujourd’hui gratuit sera payant demain quant on voit la quantité de webservices que Google met à disposition.
En savoir plus
- YouTube Data API (v3) Code Samples
https://developers.google.com/youtube/v3/code_samples/ - YouTube pour les développeurs en français
https://developers.google.com/youtube/?hl=fr - la console qui permet de gerber l’API Youtube et tous les autres webservices de Google.
https://console.developers.google.com/ - Les paramètres de requête sur
Playlists: list
https://developers.google.com/youtube/v3/docs/playlists/list - Une vidéo au hasard pour un exemple : Knights Who Say Ni
https://www.youtube.com/watch?v=QTQfGd3G6dg - Un bon article pour tirer profit en PHP de l’API Youtube V3 “Use the YouTube API with PHP”
http://www.ibm.com/developerworks/library/x-youtubeapi/ - Pour les feignants, on peut se rabattre sur TubePress
http://tubepress.com/standalone_php_demo/ - Dynamic and interactive video features for websites
https://github.com/tubepress/tubepress - Using TubePress in PHP
http://nextdocs.readthedocs.org/en/latest/manual/standalone-php/usage.html