Les exemples suivants montrent comment utiliser l'API YouTube Data (v3) pour effectuer des fonctions liées aux vidéos.
Récupérer les vidéos mises en ligne d'une chaîne
Cet exemple récupère les vidéos mises en ligne sur une chaîne spécifique. L'exemple comporte deux étapes:
-
Étape 1: Récupérez l'ID de la playlist pour les vidéos mises en ligne de la chaîne
Appelez la méthode
channels.list
pour récupérer l'ID de la playlist contenant les vidéos mises en ligne de la chaîne. La valeur du paramètrepart
de la requête doit inclurecontentDetails
comme l'une des parties de la ressourcechannel
récupérée. Dans la réponse de l'API, la propriétécontentDetails.relatedPlaylists.uploads
contient l'ID de la playlist.Il existe plusieurs façons d'identifier le canal:
-
Définissez la valeur du paramètre
mine
surtrue
pour récupérer des informations sur la chaîne YouTube de l'utilisateur actuellement authentifié. Votre requête doit être autorisée à l'aide d'OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
Définissez le paramètre
forUsername
sur un nom d'utilisateur YouTube pour récupérer les informations de la chaîne associée à ce nom d'utilisateur. Cet exemple définit la valeur du paramètreforUsername
surGoogle
pour récupérer des informations sur la chaîne YouTube officielle de Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
-
Définissez le paramètre
id
sur l'ID de chaîne YouTube qui identifie de manière unique la chaîne pour laquelle vous récupérez des informations. Cet exemple définit le paramètreid
surUCK8sQmJBp8GCxrOtXWBpyEA
, qui identifie également la chaîne YouTube officielle de Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
-
-
Étape 2: Récupérez la liste des vidéos mises en ligne
Appelez la méthode
playlistItems.list
pour récupérer la liste des vidéos mises en ligne. Définissez la valeur du paramètreplaylistId
sur celle obtenue à l'étape 1. Dans cet exemple, la valeur du paramètre est définie surUUK8sQmJBp8GCxrOtXWBpyEA
, qui correspond à la liste des vidéos mises en ligne sur la chaîne YouTube officielle de Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
Récupérer les vidéos les plus populaires
Cet exemple montre comment récupérer la liste des vidéos YouTube les plus populaires, qui sont sélectionnées à l'aide d'un algorithme qui combine de nombreux signaux différents pour déterminer leur popularité globale.
Pour récupérer la liste des vidéos les plus populaires, appelez la méthode videos.list
et définissez la valeur du paramètre chart
sur mostPopular
. Lorsque vous récupérez cette liste, vous pouvez également définir l'un des paramètres suivants, ou les deux:
regionCode
: indique à l'API de renvoyer une liste de vidéos pour la région spécifiée.videoCategoryId
: identifie la catégorie de vidéos pour laquelle les vidéos les plus populaires doivent être récupérées.
La requête ci-dessous récupère les vidéos sportives les plus populaires en Espagne:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
Mettre en ligne une vidéo
Étant donné qu'API Explorer ne permet pas d'importer des fichiers, cette description ne comporte pas de lien vers un exemple exécutable. Les ressources suivantes vous aideront à modifier votre application afin qu'elle puisse mettre en ligne des vidéos à l'aide de l'API v3:
-
La documentation de la méthode videos.insert de l'API contient plusieurs exemples de code qui expliquent comment importer une vidéo à l'aide de différents langages de programmation.
-
Le guide sur les importations avec reprise explique la séquence de requêtes HTTP qu'une application utilise pour importer des vidéos à l'aide d'un processus d'importation avec reprise. Ce guide est principalement destiné aux développeurs qui ne peuvent pas utiliser les bibliothèques clientes des API Google, certaines d'entre elles étant compatibles en mode natif avec les importations réactivables.
-
L'exemple JavaScript d'importation d'une vidéo utilise le partage de ressources entre origines (CORS) pour montrer comment importer un fichier vidéo via une page Web. La bibliothèque d'importation CORS utilisée par l'API v3 est naturellement compatible avec l'importation récapitulative. En outre, l'exemple montre comment vérifier l'état d'une vidéo mise en ligne en récupérant la partie
processingDetails
de la ressourcevideo
, ainsi que comment gérer les changements d'état de la vidéo mise en ligne.
Vérifier l'état d'une vidéo importée
Cet exemple montre comment vérifier l'état d'une vidéo mise en ligne. Une vidéo mise en ligne est immédiatement visible dans le flux des vidéos mises en ligne de l'utilisateur authentifié. Toutefois, la vidéo ne sera pas visible sur YouTube tant qu'elle n'aura pas été traitée.
-
Étape 1: Importez la vidéo
Appelez la méthode
videos.insert
pour mettre en ligne la vidéo. Si la requête aboutit, la réponse de l'API contient une ressourcevideo
qui identifie l'ID vidéo unique de la vidéo importée. -
Étape 2: Vérifiez l'état de la vidéo
Appelez la méthode
videos.list
pour vérifier l'état de la vidéo. Définissez la valeur du paramètreid
sur l'ID vidéo obtenu à l'étape 1. Définissez la valeur du paramètrepart
surprocessingDetails
.Si la requête est correctement gérée, la réponse de l'API contient une ressource
video
. Vérifiez la valeur de la propriétéprocessingDetails.processingStatus
pour déterminer si YouTube est toujours en train de traiter la vidéo. La valeur de la propriété changera et ne sera plusprocessing
, maissucceeded
oufailed
, lorsque YouTube aura terminé de traiter la vidéo.Le corps de la requête est une ressource
video
dans laquelle la propriétéid
spécifie l'ID de la vidéo que vous supprimez. Dans cet exemple, la ressource contient également un objetrecordingDetails
.La requête ci-dessous vérifie l'état d'une vidéo. Pour terminer la requête dans l'explorateur d'API, vous devez définir la valeur de la propriété
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
Remarque:Votre application peut interroger l'API pour vérifier régulièrement l'état d'une vidéo nouvellement importée. Une fois la vidéo traitée, votre application peut créer un bulletin ou effectuer une autre action en fonction de son état.
Mettre à jour une vidéo
Cet exemple montre comment modifier une vidéo pour ajouter des informations sur l'heure et le lieu où elle a été enregistrée. L'exemple se présente comme suit:
-
Étape 1: Récupérez l'ID de la vidéo
Suivez les étapes ci-dessus pour récupérer les vidéos mises en ligne pour la chaîne de l'utilisateur actuellement authentifié. La liste peut être utilisée pour afficher une liste de vidéos, en utilisant l'ID de chaque vidéo comme clé.
Remarque:Il existe de nombreuses autres façons d'obtenir des ID vidéo, par exemple en récupérant les résultats de recherche ou en listant les éléments d'une playlist. Toutefois, comme une vidéo ne peut être mise à jour que par son propriétaire, la première étape de ce processus consiste probablement à récupérer la liste des vidéos appartenant à l'utilisateur qui autorise la requête API.
-
Étape 2: Mettre à jour une vidéo
Appelez la méthode
videos.update
pour mettre à jour une vidéo spécifique. Définissez la valeur du paramètrepart
surrecordingDetails
. (La valeur du paramètre dépend des champs de métadonnées de la vidéo qui sont mis à jour.)Le corps de la requête est une ressource
video
dans laquelle la propriétéid
spécifie l'ID de la vidéo que vous mettez à jour. Dans cet exemple, la ressource contient également un objetrecordingDetails
.L'exemple de ressource ci-dessous indique que la vidéo a été enregistrée le 30 octobre 2013 à Boston:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
Pour terminer la requête dans l'explorateur d'API, vous devez définir la valeur de la propriété
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
Importer une image de miniature personnalisée et la définir pour une vidéo
Vous pouvez utiliser la méthode thumbnails.set
de l'API v3 pour importer une image de vignette personnalisée et la définir pour une vidéo. Dans votre requête, la valeur du paramètre videoId
identifie la vidéo pour laquelle la miniature sera utilisée.
Cette requête ne peut pas être testée à l'aide d'APIs Explorer, car cet outil ne permet pas d'importer des fichiers multimédias, ce qui est obligatoire pour cette méthode.
Supprimer une vidéo
Cet exemple montre comment supprimer une vidéo. L'exemple se présente comme suit:
-
Étape 1: Récupérez l'ID de la vidéo
Suivez les étapes ci-dessus pour récupérer les vidéos mises en ligne sur la chaîne de l'utilisateur actuellement authentifié. La liste peut être utilisée pour afficher une liste de vidéos, en utilisant l'ID de chaque vidéo comme clé.
Remarque:Il existe de nombreuses autres façons d'obtenir des ID vidéo, par exemple en récupérant les résultats de recherche ou en listant les éléments d'une playlist. Toutefois, comme une vidéo ne peut être supprimée que par son propriétaire, la première étape de ce processus consiste probablement à récupérer la liste des vidéos appartenant à l'utilisateur qui autorise la requête API.
-
Étape 2: Supprimer une vidéo
Appelez la méthode
videos.delete
pour supprimer une vidéo spécifique. Dans la requête, le paramètreid
spécifie l'ID de la vidéo que vous supprimez. La requête doit être autorisée à l'aide d'OAuth 2.0. Si vous testez cette requête dans l'explorateur d'API, vous devez remplacer la valeur du paramètreid
par un ID vidéo valide.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Signaler une vidéo abusive
Cet exemple montre comment signaler une vidéo contenant du contenu abusif. L'exemple se présente comme suit:
-
Étape 1: Récupérez les ID qui expliquent pourquoi la vidéo est signalée
Envoyez une requête autorisée à la méthode
videoAbuseReportReasons.list
pour récupérer la liste des motifs valides pour signaler une vidéo. L'exemple de ressourcevideoAbuseReportReason
ci-dessous contient des informations pour signaler une vidéo qui comporte du spam ou présente du contenu trompeur.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
Comme indiqué dans la ressource, ce motif est associé à une liste de motifs secondaires. Lorsque vous signalez une vidéo pour cause de spam, vous devez indiquer le motif et nous vous encourageons vivement à fournir un motif secondaire.
-
Étape 2: Signalez la vidéo pour contenu abusif
Envoyez une requête autorisée à la méthode
La propriétévideos.reportAbuse
pour signaler la vidéo. Le corps de la requête est un objet JSON qui identifie à la fois la vidéo signalée et la raison pour laquelle elle l'est. Comme indiqué à l'étape 1, pour certains types de raisons, une raison secondaire est acceptée et fortement encouragée.videoId
de l'objet JSON identifie la vidéo signalée.L'exemple d'objet JSON ci-dessous signale qu'une vidéo comporte du spam ou du contenu trompeur, et plus précisément qu'elle utilise une image miniature trompeuse. Comme indiqué dans l'exemple d'objet JSON ci-dessus, l'ID du contenu spam ou trompeur est S. L'ID d'une miniature pouvant prêter à confusion est 28.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
La requête
videos.reportAbuse
doit être autorisée à l'aide d'OAuth 2.0. Le lien ci-dessous charge l'objet JSON ci-dessus dans APIs Explorer. Pour tester la requête, vous devez remplacer la valeur de la propriétévideoId
par un ID vidéo valide. Veuillez noter que si vous envoyez cette demande, la vidéo sera signalée.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse