Les exemples suivants montrent comment utiliser l'API YouTube Data (v3) pour effectuer des fonctions liées aux abonnements.
Récupérer les abonnements d'une chaîne
Appelez la méthode subscriptions.list pour récupérer les abonnements d'un canal spécifique. Vous pouvez identifier la chaîne de deux façons:
-
Pour récupérer les abonnements de l'utilisateur actuellement authentifié, définissez la valeur du paramètre
minesurtrue. Notez qu'une requête qui utilise le paramètreminedoit être autorisée à l'aide d'OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.list? part=snippet,contentDetails &mine=true
-
Pour récupérer les abonnements d'une autre chaîne, définissez la valeur du paramètre
channelIdsur l'ID unique de la chaîne YouTube. L'exemple ci-dessous récupère la liste des chaînes auxquelles la chaîne TED est abonnée sur YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.list? part=snippet,contentDetails &channelId=UCAuUUnT6oDeKwE6v1NGQxug
Remarque:L'API renvoie un code de réponse HTTP
403 (Forbidden)si la chaîne spécifiée n'expose pas publiquement ses abonnements et que la requête n'est pas autorisée par le propriétaire de la chaîne.
Consultez la documentation de la méthode subscriptions.list pour obtenir des exemples de code.
Ajouter un abonnement
Appelez la méthode subscriptions.insert pour ajouter un abonnement à une chaîne. Cette requête doit être autorisée à l'aide d'OAuth 2.0. Le corps de la requête est une ressource subscription qui définit les valeurs suivantes:
- Le
snippet.resourceId.kindcontient la valeuryoutube#channel. - La propriété
snippet.resourceId.channelIdidentifie la chaîne à laquelle l'utilisateur est abonné. La valeur de la propriété est un ID de chaîne YouTube unique. L'ID de la chaîne peut être obtenu de plusieurs façons, par exemple en appelant la méthodechannels.listou en récupérant les résultats de recherche pour les chaînes.
La requête API ci-dessous vous abonne à la chaîne TED sur YouTube:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.insert? part=snippet
Le corps de la requête est le suivant :
{
"snippet": {
"resourceId": {
"kind": "youtube#channel",
"videoId": "UCAuUUnT6oDeKwE6v1NGQxug"
}
}
}Consultez la documentation de la méthode subscriptions.insert pour obtenir des exemples de code.
Supprimer un abonnement
Cet exemple supprime un abonnement. Cette requête doit être autorisée à l'aide d'OAuth 2.0. Cet exemple comporte deux étapes:
-
Étape 1: Récupérez les abonnements de la chaîne de l'utilisateur authentifié
Appelez la méthode
subscriptions.listpour récupérer la liste des abonnements. L'exemple ci-dessus sur la récupération des abonnements d'une chaîne explique comment effectuer cette requête.L'application qui appelle l'API peut traiter la réponse de l'API pour afficher une liste d'abonnements, en utilisant l'ID de chaque abonnement comme clé. Dans la réponse, la propriété
idde chaque élément identifie l'ID d'abonnement qui identifie de manière unique l'abonnement correspondant. Vous utiliserez cette valeur pour supprimer un élément de la liste à l'étape suivante. -
Étape 2: Supprimez un abonnement
Appelez la méthode
subscriptions.deletepour supprimer un abonnement. Définissez le paramètreidde la requête sur l'ID de l'abonnement que vous souhaitez supprimer. Cette requête doit être autorisée à l'aide d'OAuth 2.0.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.subscriptions.delete? id=SUBSCRIPTION_ID
Consultez la documentation de la méthode subscriptions.delete pour obtenir des exemples de code.
Récupérer la liste des abonnés à la chaîne de l'utilisateur autorisé
Pour récupérer la liste des chaînes abonnées à la chaîne de l'utilisateur actuellement authentifié, appelez la méthode subscriptions.list et définissez la valeur du paramètre mySubscribers sur true. La requête doit être autorisée à l'aide d'OAuth 2.0.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.subscriptions.list? part=snippet,contentDetails &mySubscribers=true