API Reference

L'API YouTube Data vous permet d'intégrer des fonctions normalement exécutées sur le site Web YouTube à votre propre site Web ou application. Les sections suivantes identifient les différents types de ressources que vous pouvez récupérer à l'aide de l'API. L'API est également compatible avec les méthodes d'insertion, de mise à jour ou de suppression de plusieurs de ces ressources.

Ce guide de référence explique comment utiliser l'API pour effectuer toutes ces opérations. Ce guide est organisé par type de ressource. Une ressource représente un type d'élément qui fait partie de l'expérience YouTube, comme une vidéo, une playlist ou un abonnement. Pour chaque type de ressource, le guide liste une ou plusieurs représentations de données, et les ressources sont représentées sous forme d'objets JSON. Le guide liste également une ou plusieurs méthodes compatibles (LIST, POST, DELETE, etc.) pour chaque type de ressource et explique comment les utiliser dans votre application.

Appeler l'API

Les exigences suivantes s'appliquent aux requêtes de l'API YouTube Data :

  1. Chaque requête doit spécifier une clé API (avec le paramètre key) ou fournir un jeton OAuth 2.0. La clé API de votre projet est disponible dans le volet Accès aux API de la console pour les développeurs.

  2. Vous devez envoyer un jeton d'autorisation pour chaque requête d'insertion, de mise à jour et de suppression. Vous devez également envoyer un jeton d'autorisation pour toute requête qui récupère les données privées de l'utilisateur authentifié.

    De plus, certaines méthodes d'API permettant de récupérer des ressources peuvent accepter des paramètres nécessitant une autorisation ou contenir des métadonnées supplémentaires lorsque les requêtes sont autorisées. Par exemple, une demande de récupération des vidéos mises en ligne par un utilisateur peut également contenir des vidéos privées si la demande est autorisée par cet utilisateur spécifique.

  3. L'API est compatible avec le protocole d'authentification OAuth 2.0. Vous pouvez fournir un jeton OAuth 2.0 de l'une des deux manières suivantes :

    • À l'aide du paramètre de requête access_token comme suit : ?access_token=oauth2-token
    • À l'aide de l'en-tête HTTP Authorization comme suit : Authorization: Bearer oauth2-token

    Vous trouverez des instructions complètes pour implémenter l'authentification OAuth 2.0 dans votre application dans le guide d'authentification.

Types de ressources

Activités

Une ressource activity contient des informations sur une action qu'une chaîne ou un utilisateur spécifique a effectuée sur YouTube. Les actions signalées dans les flux d'activité incluent l'évaluation d'une vidéo, le partage d'une vidéo, l'ajout d'une vidéo aux favoris, la mise en ligne d'une vidéo, etc. Chaque ressource activity identifie le type d'action, la chaîne associée à l'action et les ressources associées à l'action, comme la vidéo qui a été évaluée ou mise en ligne.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /activities Renvoie la liste des événements d'activité sur la chaîne qui correspondent aux critères de la requête. Par exemple, vous pouvez récupérer les événements associés à une chaîne spécifique ou à la chaîne de l'utilisateur.

Sous-titres

Une ressource caption représente une piste de sous-titres YouTube. Une piste de sous-titres est associée à une seule vidéo YouTube.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
delete DELETE /captions Supprime la piste de sous-titres spécifiée.
download GET /captions/id Télécharge une piste de sous-titres. La piste de sous-titres est renvoyée dans son format d'origine, sauf si la requête spécifie une valeur pour le paramètre tfmt, et dans sa langue d'origine, sauf si la requête spécifie une valeur pour le paramètre tlang.
insert POST /captions Importe une piste de sous-titres.
list GET /captions Renvoie la liste des pistes de sous-titres associées à une vidéo spécifiée. La réponse de l'API ne contient pas les sous-titres réels et la méthode captions.download permet de récupérer une piste de sous-titres.
update PUT /captions Met à jour une piste de sous-titres. Lorsque vous mettez à jour une piste de sous-titres, vous pouvez modifier son état de brouillon, importer un nouveau fichier de sous-titres pour la piste, ou les deux.

ChannelBanners

Une ressource channelBanner contient l'URL que vous utiliseriez pour définir une image récemment importée comme bannière d'une chaîne.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
insert POST /channelBanners/insert Mettre en ligne une image de bannière de chaîne sur YouTube. Cette méthode représente les deux premières étapes d'un processus en trois étapes permettant de modifier l'image de bannière d'une chaîne :
  1. Appelez la méthode channelBanners.insert pour importer les données binaires de l'image sur YouTube. L'image doit être au format 16:9 et mesurer au moins 2 048 x 1 152 pixels. Nous vous recommandons d'importer une image de 2 560 x 1 440 pixels.
  2. Extrayez la valeur de la propriété url de la réponse renvoyée par l'API pour l'étape 1.
  3. Appelez la méthode channels.update pour mettre à jour les paramètres de branding de la chaîne. Définissez la valeur de la propriété brandingSettings.image.bannerExternalUrl sur l'URL obtenue à l'étape 2.

ChannelSections

Une ressource channelSection contient des informations sur un ensemble de vidéos qu'une chaîne a choisi de mettre en avant. Par exemple, une section peut présenter les dernières vidéos mises en ligne par une chaîne, ses vidéos les plus populaires ou les vidéos d'une ou plusieurs playlists.

Les sections d'une chaîne ne sont visibles que si la chaîne affiche du contenu dans une vue Navigation (et non dans une vue Flux). Pour permettre à une chaîne d'afficher du contenu dans une vue Parcourir, définissez la propriété brandingSettings.channel.showBrowseView sur true pour la chaîne spécifiée.

Une chaîne peut créer un maximum de 10 sections.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
delete DELETE /channelSections Supprime une section de chaîne.
insert POST /channelSections Ajoute une section de chaîne à la chaîne de l'utilisateur authentifié. Un maximum de 10 sections peuvent être créées par chaîne.
list GET /channelSections Renvoie une liste de ressources channelSection correspondant aux critères de la requête API.
update PUT /channelSections Met à jour une section de chaîne.

Chaînes

Une ressource channel contient des informations sur une chaîne YouTube.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /channels Renvoie une collection de zéro ou plusieurs ressources channel correspondant aux critères de la requête.
update PUT /channels Mise à jour des métadonnées d'une chaîne. Cette méthode n'est compatible qu'avec les mises à jour des objets brandingSettings et invideoPromotion de la ressource channel, ainsi que de leurs propriétés enfants.

CommentThreads

Une ressource commentThread contient des informations sur un fil de discussion YouTube, qui comprend un commentaire de premier niveau et les réponses à ce commentaire, le cas échéant. Une ressource commentThread peut représenter des commentaires sur une vidéo ou une chaîne.

Le commentaire de premier niveau et les réponses sont en fait des ressources comment imbriquées dans la ressource commentThread. La ressource commentThread ne contient pas nécessairement toutes les réponses à un commentaire. Vous devez utiliser la méthode comments.list si vous souhaitez récupérer toutes les réponses à un commentaire spécifique. De plus, certains commentaires n'ont pas de réponse.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /commentThreads Renvoie une liste de chaînes de commentaires correspondant aux paramètres de la requête API.
insert POST /commentThreads Crée un commentaire de premier niveau. Pour ajouter une réponse à un commentaire existant, utilisez plutôt la méthode comments.insert.

Commentaires

Une ressource comment contient des informations sur un seul commentaire YouTube. Une ressource comment peut représenter un commentaire sur une vidéo ou une chaîne. De plus, le commentaire peut être un commentaire de premier niveau ou une réponse à un commentaire de premier niveau.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /comments Renvoie une liste de commentaires correspondant aux paramètres de la requête API.
setModerationStatus POST /comments/setModerationStatus Définit l'état de modération d'un ou de plusieurs commentaires. La demande d'API doit être autorisée par le propriétaire de la chaîne ou de la vidéo associée aux commentaires.
insert POST /comments Crée une réponse à un commentaire existant. Remarque : Pour créer un commentaire de premier niveau, utilisez la méthode commentThreads.insert.
delete DELETE /comments Supprime un commentaire.
update PUT /comments Modifie un commentaire.

I18nLanguages

Une ressource i18nLanguage identifie une langue d'application compatible avec le site Web YouTube. La langue de l'application peut également être appelée "langue de l'interface utilisateur". Pour le site Web YouTube, une langue d'application peut être sélectionnée automatiquement en fonction des paramètres du compte Google, de la langue du navigateur ou de l'adresse IP. Un utilisateur peut également sélectionner manuellement la langue de l'interface utilisateur dans le pied de page du site YouTube.

Chaque ressource i18nLanguage identifie un code de langue et un nom. Le code de langue peut être utilisé comme valeur du paramètre hl lors de l'appel de méthodes d'API telles que videoCategories.list.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /i18nLanguages Affiche la liste des langues d'application compatibles avec le site Web YouTube.

I18nRegions

Une ressource i18nRegion identifie une zone géographique qu'un utilisateur YouTube peut sélectionner comme région de contenu préférée. La région de contenu peut également être appelée "paramètres régionaux du contenu". Pour le site Web YouTube, une région de contenu peut être sélectionnée automatiquement en fonction d'heuristiques telles que le domaine YouTube ou la localisation de l'adresse IP de l'utilisateur. Un utilisateur peut également sélectionner manuellement la région de contenu dans le pied de page du site YouTube.

Chaque ressource i18nRegion identifie un code de région et un nom. Le code de région peut être utilisé comme valeur du paramètre regionCode lorsque vous appelez des méthodes d'API telles que search.list, videos.list, activities.list et videoCategories.list.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /i18nRegions Renvoie la liste des régions de contenu compatibles avec le site Web YouTube.

Membres

Une ressource member représente un membre d'une chaîne YouTube. Un membre apporte un soutien financier récurrent à un créateur et bénéficie d'avantages spéciaux. Par exemple, les membres peuvent discuter lorsque le créateur active le mode réservé aux membres pour un chat.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /members Liste les membres (anciennement appelés "sponsors") d'une chaîne. La requête API doit être autorisée par le propriétaire de la chaîne.

MembershipsLevels

Une ressource membershipsLevel identifie un niveau de prix pour le créateur qui a autorisé la requête API.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /membershipsLevels Renvoie une collection de zéro ou plusieurs ressources membershipsLevel appartenant à la chaîne qui a autorisé la requête API. Les niveaux sont renvoyés dans l'ordre d'affichage implicite.

PlaylistItems

Une ressource playlistItem identifie une autre ressource, comme une vidéo, qui est incluse dans une playlist. De plus, la ressource playlistItem contient des informations sur la ressource incluse qui concernent spécifiquement la façon dont elle est utilisée dans la playlist.

YouTube utilise également une playlist pour identifier la liste des vidéos mises en ligne sur une chaîne. Chaque playlistItem de cette liste représente une vidéo mise en ligne. Vous pouvez récupérer l'ID de playlist pour cette liste à partir de channel resource pour une chaîne donnée. Vous pouvez ensuite utiliser la méthode playlistItems.list sur la liste.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
delete DELETE /playlistItems Supprime un élément de playlist.
insert POST /playlistItems Ajoute une ressource à une playlist.
list GET /playlistItems Renvoie une collection d'éléments de playlist correspondant aux paramètres de la requête API. Vous pouvez récupérer tous les éléments d'une playlist spécifiée ou un ou plusieurs éléments de playlist par leur ID unique.
update PUT /playlistItems Modifie un élément de playlist. Par exemple, vous pouvez modifier la position de l'élément dans la playlist.

Playlists

Une ressource playlist représente une playlist YouTube. Une playlist est un ensemble de vidéos qui peuvent être regardées de manière séquentielle et partagées avec d'autres utilisateurs. Par défaut, les playlists sont visibles publiquement par les autres utilisateurs, mais elles peuvent être publiques ou privées.

 YouTube utilise également les playlists pour identifier des collections spéciales de vidéos pour une chaîne, par exemple :

  • vidéos mises en ligne
  • les vidéos ayant reçu un avis positif (mention "J'aime") ;
  • historique des vidéos regardées
  • regarder plus tard

Plus précisément, ces listes sont associées à une chaîne, qui est un ensemble de vidéos, de playlists et d'autres informations YouTube d'une personne, d'un groupe ou d'une entreprise. Vous pouvez récupérer les ID de playlist pour chacune de ces listes à partir de channel resource pour une chaîne donnée.

 Vous pouvez ensuite utiliser la méthode playlistItems.list pour récupérer l'une de ces listes. Vous pouvez également ajouter ou supprimer des éléments de ces listes en appelant les méthodes playlistItems.insert et playlistItems.delete.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
delete DELETE /playlists Supprime une playlist.
list GET /playlists Renvoie une collection de playlists correspondant aux paramètres de la requête API. Par exemple, vous pouvez récupérer toutes les playlists appartenant à l'utilisateur authentifié ou une ou plusieurs playlists à l'aide de leurs ID uniques.
insert POST /playlists Crée une playlist.
update PUT /playlists Modifie une playlist. Par exemple, vous pouvez modifier le titre, la description ou l'état de confidentialité d'une playlist.

Un résultat de recherche contient des informations sur une vidéo, une chaîne ou une playlist YouTube qui correspondent aux paramètres de recherche spécifiés dans une requête API. Bien qu'un résultat de recherche pointe vers une ressource identifiable de manière unique, comme une vidéo, il ne possède pas ses propres données persistantes.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /search Renvoie une collection de résultats de recherche correspondant aux paramètres de requête spécifiés dans la requête API. Par défaut, un ensemble de résultats de recherche identifie les ressources video, channel et playlist correspondantes, mais vous pouvez également configurer des requêtes pour n'extraire qu'un type de ressource spécifique.

Abonnements

Une ressource subscription contient des informations sur l'abonnement d'un utilisateur YouTube. Un abonnement permet à un utilisateur de recevoir des notifications lorsque de nouvelles vidéos sont ajoutées à une chaîne ou lorsqu'un autre utilisateur effectue l'une des actions suivantes sur YouTube : mettre en ligne une vidéo, évaluer une vidéo ou commenter une vidéo.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
delete DELETE /subscriptions Supprime un abonnement.
insert POST /subscriptions Ajoute un abonnement à la chaîne de l'utilisateur authentifié.
list GET /subscriptions Renvoie les ressources d'abonnement qui correspondent aux critères de la requête API.

Vignettes

Une ressource thumbnail identifie différentes tailles de vignettes associées à une ressource. Les caractéristiques suivantes des miniatures :

  • La propriété snippet.thumbnails d'une ressource est un objet qui identifie les vignettes disponibles pour cette ressource.
  • Une ressource thumbnail contient une série d'objets. Le nom de chaque objet (default, medium, high, etc.) fait référence à la taille de l'image miniature.
  • Différents types de ressources peuvent être compatibles avec différentes tailles de miniatures.
  • Différents types de ressources peuvent définir différentes tailles pour les miniatures portant le même nom. Par exemple, la vignette default d'une ressource video mesure généralement 120 x 90 pixels, tandis que la vignette default d'une ressource channel mesure généralement 88 x 88 pixels.
  • Les ressources du même type peuvent toujours avoir des tailles d'images miniatures différentes pour certaines images, en fonction de la résolution de l'image ou du contenu d'origine importé sur YouTube. Par exemple, une vidéo HD peut être associée à des miniatures de résolution supérieure à celles des vidéos non HD.
  • Chaque objet contenant des informations sur la taille d'une miniature comporte une propriété width et une propriété height. Toutefois, les propriétés de largeur et de hauteur peuvent ne pas être renvoyées pour cette image.
  • Si une miniature importée ne correspond pas aux dimensions requises, elle est redimensionnée pour atteindre la taille appropriée sans que ses proportions soient modifiées. L'image n'est pas recadrée, mais peut inclure des barres noires pour que la taille soit correcte.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
set POST /thumbnails/set Mettre en ligne une miniature vidéo personnalisée sur YouTube et la définir pour une vidéo

VideoAbuseReportReasons

Une ressource videoAbuseReportReason contient des informations sur la raison pour laquelle une vidéo a été signalée pour contenu abusif. Lorsque votre application appelle la méthode videos.reportAbuse pour signaler une vidéo abusive, la requête utilise les informations d'une ressource videoAbuseReportReason pour identifier le motif du signalement de la vidéo.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /videoAbuseReportReasons Récupérez une liste des motifs pouvant être utilisés pour signaler des vidéos abusives.

VideoCategories

Une ressource videoCategory identifie une catégorie qui a été ou pourrait être associée à des vidéos mises en ligne.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /videoCategories Renvoie une liste des catégories pouvant être associées à des vidéos YouTube.

Vidéos

Une ressource video représente une vidéo YouTube.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
insert POST /videos Mettre en ligne une vidéo sur YouTube et définir éventuellement ses métadonnées.
list GET /videos Renvoie une liste de vidéos correspondant aux paramètres de la requête API.
delete DELETE /videos Supprime une vidéo YouTube.
update PUT /videos Mettre à jour les métadonnées d'une vidéo.
rate POST /videos/rate Ajoutez ou supprimez une mention "J'aime" ou "Je n'aime pas" sur une vidéo.
getRating GET /videos/getRating Récupère les notes attribuées par l'utilisateur autorisé à une liste de vidéos spécifiées.
reportAbuse POST /videos/reportAbuse Signaler une vidéo pour contenu abusif

Filigranes

Une ressource watermark identifie une image qui s'affiche lors de la lecture des vidéos d'une chaîne spécifiée. Vous pouvez également spécifier un canal cible vers lequel l'image sera redirigée, ainsi que des informations sur le timing qui déterminent quand le filigrane apparaît pendant la lecture de la vidéo et pendant combien de temps il est visible.

Pour en savoir plus sur cette ressource, consultez sa représentation et la liste de ses propriétés.

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
set POST /watermarks/set Met en ligne une image de filigrane sur YouTube et la définit pour une chaîne.
unset POST /watermarks/unset Supprime l'image de filigrane d'une chaîne.