API Reference

L'API YouTube Data vous permet d'intégrer à votre site Web ou application des fonctions normalement exécutées sur le site Web YouTube. Les listes ci-dessous identifient les différents types de ressources que vous pouvez récupérer à l'aide de l'API. L'API accepte également des méthodes permettant d'insérer, de mettre à jour ou de supprimer un grand nombre de ces ressources.

Ce guide de référence explique comment utiliser l'API pour effectuer toutes ces opérations. Il 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 répertorie une ou plusieurs représentations de données, et les ressources sont représentées par des objets JSON. Il répertorie é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 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. Votre clé API est disponible dans le volet Accès aux API de la Developer Console pour votre projet.

  2. Vous devez envoyer un jeton d'autorisation pour chaque requête d'insertion, de mise à jour ou 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é.

    En outre, certaines méthodes d'API permettant de récupérer des ressources peuvent être compatibles avec des paramètres nécessitant une autorisation ou contenant 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 elle est autorisée par cet utilisateur.

  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 manières suivantes:

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

    Vous trouverez des instructions complètes sur l'implémentation de l'authentification OAuth 2.0 dans votre application dans le guide sur l'authentification.

Types de ressources

Activités

Une ressource activity contient des informations sur une action effectuée par une chaîne ou un utilisateur spécifique 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 la ou les ressources associées à l'action, comme la vidéo notée ou mise en ligne.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Affiche la liste des événements d'activité du canal correspondant aux critères de la requête. Par exemple, vous pouvez récupérer les événements associés à un canal spécifique ou au canal d'un utilisateur.
insert POST /activities Remarque:Cette méthode est obsolète et n'est plus compatible.

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 la section sur la représentation de la ressource 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 Permet d'importer une piste de sous-titres.
list GET /captions Renvoie la liste des pistes de sous-titres associées à une vidéo spécifique. Notez que la réponse de l'API ne contient pas les sous-titres réels et que la méthode captions.download permet de récupérer une piste de sous-titres.
update PUT /captions Modifie une piste de sous-titres. Lorsque vous modifiez une piste de sous-titres, vous pouvez modifier l'état de brouillon de la piste et/ou importer un nouveau fichier de sous-titres.

Bannières de chaîne

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 la section sur la représentation de la ressource 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 Met en ligne sur YouTube une image de la bannière de la chaîne. Cette méthode correspond aux deux premières étapes d'un processus en trois étapes pour mettre à jour l'image de la bannière d'une chaîne:

  1. Appelez la méthode channelBanners.insert pour importer les données de l'image binaire 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 à 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.

Sections de chaîne

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

Notez que les sections d'une chaîne ne sont visibles que si le contenu de la chaîne s'affiche dans un affichage "Parcourir" (et non dans un flux). Pour autoriser une chaîne à 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 jusqu'à 10 étagères.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 canal à la chaîne de l'utilisateur authentifié. Une chaîne peut créer 10 sections au maximum.
list GET /channelSections Affiche la liste des ressources channelSection qui correspondent aux critères de requête API.
update PUT /channelSections Met à jour une section de chaîne.

Canaux

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

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Affiche une collection de zéro, une ou plusieurs ressources channel correspondant aux critères de la requête.
update PUT /channels Met à jour les métadonnées d'une chaîne. Notez que cette méthode ne prend actuellement en charge que les mises à jour des objets brandingSettings et invideoPromotion de la ressource channel, ainsi que de leurs propriétés enfants.

Fils de commentaires

Une ressource commentThread contient des informations sur un fil de commentaires YouTube, qui comprend un commentaire de premier niveau et, le cas échéant, les réponses à ce commentaire. 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 particulier. Notez également que certains commentaires n'ont pas de réponse.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Affiche la liste des fils de commentaires correspondant aux paramètres de requête API.
insert POST /commentThreads Crée un commentaire de premier niveau. Pour répondre à 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. Il peut également s'agir d'un commentaire de premier niveau ou d'une réponse à un commentaire de premier niveau.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 requête API.
setModerationStatus POST /comments/setModerationStatus Définit l'état de modération d'un ou de plusieurs commentaires. La demande 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.
markAsSpam POST /comments/markAsSpam Remarque:Cette méthode est obsolète et n'est plus compatible.
delete DELETE /comments Supprime un commentaire.
update PUT /comments Modifie un commentaire.

Catégories de guides

Une ressource guideCategory identifie une catégorie attribuée par un algorithme de YouTube en fonction du contenu d'une chaîne ou d'autres indicateurs, comme sa popularité. Cette liste est semblable aux catégories de vidéos, à la différence près que l'utilisateur ayant mis en ligne une vidéo peut attribuer une catégorie de vidéo, mais que seul YouTube peut attribuer une catégorie de chaîne.

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

Méthode Requête HTTP Description
URI relatifs à https://www.googleapis.com/youtube/v3
list GET /guideCategories Affiche la liste des catégories pouvant être associées à des chaînes YouTube.

Langues

Une ressource i18nLanguage identifie une langue d'application acceptée sur le site Web YouTube. Le langage de l'application peut également être appelé langage d'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 la localisation de l'adresse IP. Les utilisateurs pouvaient aussi sélectionner manuellement la langue d'interface souhaitée 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 et guideCategories.list.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 acceptées pour l'application sur le site Web YouTube.

Régions

Une ressource i18nRegion identifie la zone géographique qu'un utilisateur YouTube peut sélectionner comme région de contenu préférée. La région du contenu peut également être appelée "paramètres régionaux de contenu". Pour le site Web YouTube, la région du contenu peut être sélectionnée automatiquement selon des critères heuristiques tels que le domaine YouTube ou l'adresse IP de l'utilisateur. L'utilisateur peut aussi sélectionner manuellement la région souhaitée dans le pied de page du site YouTube.

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

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Affiche la liste des régions de contenu prises en charge par le site Web YouTube.

Membres

Une ressource member représente la souscription d'une chaîne YouTube. Un membre offre 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 la section concernant la représentation de la ressource 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.

Niveaux de souscription

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

Pour en savoir plus sur cette ressource, consultez la section concernant la représentation de la ressource 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, une ou plusieurs ressources membershipsLevel appartenant au canal qui a autorisé la requête API. Les niveaux sont renvoyés dans l'ordre d'affichage implicite.

Éléments de la playlist

Une ressource playlistItem identifie une autre ressource, telle qu'une vidéo, incluse dans une playlist. En outre, la ressource playlistItem contient des informations sur la ressource incluse qui concernent spécifiquement son utilisation dans cette playlist.

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

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 la 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 requête API. Vous pouvez récupérer tous les éléments d'une playlist spécifique ou un ou plusieurs éléments d'une playlist en fonction de leur identifiant unique.
update PUT /playlistItems Modifie un élément de la 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 successivement et partagées avec d'autres utilisateurs. Une playlist peut contenir jusqu'à 200 vidéos, et YouTube ne limite pas le nombre de playlists créées par chaque utilisateur. 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 une note positive
  • historique des vidéos regardées
  • regarder plus tard
Plus précisément, ces listes sont associées à une chaîne, qui regroupe les vidéos, les 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 de chacune de ces listes dans les channel resource d'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 la section sur la représentation de la ressource 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 requête API. Par exemple, vous pouvez récupérer toutes les playlists appartenant à l'utilisateur authentifié, ou une ou plusieurs playlists en fonction de leur ID unique.
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, telle qu'une vidéo, il ne dispose pas de ses propres données persistantes.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 ne récupérer qu'un type de ressource spécifique.

Abonnements

Une ressource subscription contient des informations sur un abonnement d'utilisateur YouTube. Un abonnement avertit un utilisateur lorsque de nouvelles vidéos sont ajoutées à une chaîne ou lorsqu'un autre utilisateur effectue l'une des actions suivantes sur YouTube (par exemple, mettre en ligne une vidéo, évaluer une vidéo ou ajouter un commentaire sur une vidéo).

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Affiche les ressources d'abonnement qui correspondent aux critères de requête API.

Miniatures

Une ressource thumbnail identifie différentes tailles d'image de vignette associées à une ressource. Veuillez noter que les miniatures présentent les caractéristiques suivantes:

  • 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.
  • Les différents types de ressources peuvent accepter différentes tailles de vignettes.
  • Différents types de ressources peuvent définir différentes tailles pour les vignettes 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.
  • Des ressources d'un même type peuvent être associées à des vignettes de taille différente pour certaines images, en fonction de la résolution de l'image d'origine ou du contenu mis en ligne sur YouTube. Par exemple, une vidéo HD peut être compatible avec des miniatures de résolution supérieure à celles des vidéos non HD.
  • Chaque objet qui contient des informations sur la taille d'une vignette possède une propriété width et une propriété height. Toutefois, il est possible que les propriétés de largeur et de hauteur ne soient pas renvoyées pour cette image.
  • Si une vignette importée ne correspond pas aux dimensions requises, l'image est redimensionnée pour correspondre à la taille correcte sans modifier ses proportions. L'image n'est pas recadrée, mais elle peut comporter des barres noires pour que la taille soit correcte.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Met en ligne une miniature de vidéo personnalisée sur YouTube et la définit pour une vidéo.

Motifs du rapport d'abus vidéo

Une ressource videoAbuseReportReason contient des informations sur les raisons pour lesquelles une vidéo peut être 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.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Consultez la liste des motifs pouvant être utilisés pour signaler des vidéos abusives.

Catégories de vidéos

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 la section sur la représentation de la ressource 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 Affiche la 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 la section sur la représentation de la ressource 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 Met en ligne une vidéo sur YouTube et définit éventuellement ses métadonnées.
list GET /videos Affiche une liste de vidéos qui correspondent aux paramètres de requête API.
delete DELETE /videos Supprime une vidéo YouTube.
update PUT /videos Met à jour les métadonnées d'une vidéo.
rate POST /videos/rate Ajoutez une note sur "J'aime" ou "Je n'aime pas" à une vidéo, ou supprimez la note attribuée à une vidéo.
getRating GET /videos/getRating Récupère les notes que l'utilisateur autorisé a attribuées à une liste de vidéos spécifiées.
reportAbuse POST /videos/reportAbuse Signaler une vidéo pour son 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 une chaîne cible vers laquelle l'image redirigera les utilisateurs, ainsi que des informations temporelles qui déterminent à quel moment le filigrane apparaît lors de la lecture de la vidéo et pendant combien de temps il est visible.

Pour en savoir plus sur cette ressource, consultez la section sur la représentation de la ressource 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 Importe une image en filigrane sur YouTube et la définit pour une chaîne.
unset POST /watermarks/unset Supprime l'image en filigrane d'une chaîne.