comments.markAsSpam n'est
plus compatible.
Les exemples suivants montrent comment utiliser l'API YouTube Data (v3) pour exécuter des fonctions liées aux commentaires.
Récupérer les commentaires d'une vidéo
Pour récupérer la liste des fils de commentaires d'une vidéo, appelez la méthode commentThreads.list. Définissez les valeurs de paramètre suivantes dans votre requête :
-
part: définissez la valeur du paramètre sursnippetsi vous ne souhaitez récupérer que les commentaires de premier niveau, ou sursnippet,repliessi vous souhaitez également récupérer les réponses aux commentaires de premier niveau. (Notez qu'une ressourcecommentThreadne contient pas nécessairement toutes les réponses à un commentaire. Vous devez utiliser la méthodecomments.listsi vous souhaitez récupérer toutes les réponses à un commentaire spécifique.) -
videoId: spécifiez l'ID vidéo YouTube pour laquelle vous récupérez les commentaires.
La requête ci-dessous récupère les commentaires et les réponses aux commentaires liés à la vidéo du discours d'ouverture de la conférence Google I/O 2014, dont l'ID vidéo est wtLJPvx7-ys.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &videoId=wtLJPvx7-ys
Récupérer les commentaires concernant une chaîne ou associés à une chaîne
L'API permet de récupérer les fils de commentaires concernant une chaîne ou de récupérer tous les fils de commentaires associés à une chaîne. Dans ce dernier cas, l'API peut contenir des commentaires sur la chaîne ou sur l'une de ses vidéos.
- Pour récupérer les commentaires concernant une chaîne, suivez les instructions permettant de récupérer les commentaires d'une vidéo. Toutefois, au lieu de définir le paramètre
videoId, définissez le paramètrechannelIdpour identifier la chaîne. - Pour récupérer les commentaires associés à une chaîne, suivez les instructions permettant de récupérer les commentaires d'une vidéo. Toutefois, au lieu de définir le paramètre
videoId, définissez le paramètreallThreadsRelatedToChannelIdpour identifier la chaîne.
La requête ci-dessous récupère tous les fils de commentaires associés à la chaîne YouTube GoogleDevelopers :
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &allThreadsRelatedToChannelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
Ajout d'un commentaire…
Appelez la méthode commentThreads.insert pour ajouter un commentaire de premier niveau à une chaîne ou à une vidéo. Définissez la valeur du paramètre part de la requête sur snippet. Le corps de la requête est une commentThread resource dans laquelle la propriété snippet.topLevelComment[].snippet[].textOriginal contient le texte du commentaire. Cette requête doit être autorisée à l'aide d'OAuth 2.0.
- Pour ajouter un commentaire à une chaîne, utilisez la propriété
snippet.channelIdpour identifier la chaîne. - Pour ajouter un commentaire à une vidéo, utilisez la propriété
snippet.channelIdpour identifier la chaîne qui a mis en ligne la vidéo. Utilisez également la propriétésnippet.videoIdpour identifier la vidéo.
L'exemple de requête suivant ajoute un commentaire à une vidéo.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.insert? part=snippet
La requête insère la ressource affichée ci-dessous.
{
"snippet": {
"channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
"topLevelComment": {
"snippet": {
"textOriginal": "This video is awesome!"
}
},
"videoId": "MILSirUni5E"
}
}Répondre à un commentaire
Appelez la méthode comments.insert pour répondre à un commentaire. Définissez la valeur du paramètre part de la requête sur snippet. Le corps de la requête est une comment resource dans laquelle la propriété snippet.textOriginal contient le texte du commentaire. La propriété snippet.parentId identifie le commentaire associé à la réponse, et sa valeur est un commentThread resource's ID. Cette requête doit être autorisée à l'aide d'OAuth 2.0.
L'exemple de requête suivant ajoute une réponse à un commentaire existant.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.insert? part=snippet
La requête insère la ressource affichée ci-dessous. Pour exécuter la requête dans APIs Explorer, utilisez la valeur de la propriété snippet.parentId pour identifier le commentaire de premier niveau associé à la réponse. Dans une ressource commentThread, la propriété snippet.topLevelComment[].id spécifie l'identifiant unique de la ressource.
{
"snippet": {
"parentId": "COMMENT_THREAD_ID",
"textOriginal": "That is true."
}
}Modifier un commentaire de premier niveau ou une réponse à un commentaire
Pour modifier le texte d'un commentaire de premier niveau ou d'une réponse à un commentaire de premier niveau, appelez la méthode comments.update. Définissez la valeur du paramètre part sur snippet. Dans le corps de la requête, la propriété id identifie le commentaire que vous modifiez et le nouveau texte du commentaire.
- Dans une ressource
commentThread, qui identifie un commentaire de premier niveau, la propriétésnippet.topLevelComment[].idspécifie l'identifiant unique du commentaire. - Dans une ressource
comment, qui peut identifier un commentaire de premier niveau ou une réponse à un commentaire, la propriétéidspécifie l'identifiant unique du commentaire.
L'exemple de requête ci-dessous modifie le texte d'un commentaire existant.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update? part=snippet
Le corps de la requête contient l'extrait JSON affiché ci-dessous. Pour exécuter la requête dans APIs Explorer, définissez la valeur de la propriété id pour identifier le commentaire que vous modifiez. La requête doit être autorisée par l'auteur du commentaire.
{
"id": "COMMENT_ID",
"snippet": {
"textOriginal": "That is true."
}
}Définir l'état de modération d'un commentaire
Pour définir l'état de modération d'un commentaire, appelez la méthode comments.setModerationStatus. Cette action est utilisée lorsqu'un propriétaire de chaîne modère les commentaires sur la chaîne ou les vidéos de la chaîne.
Lorsque vous appelez cette méthode, définissez la valeur du paramètre id pour identifier le commentaire. Définissez également le paramètre moderationStatus sur l'état souhaité. L'état d'un commentaire ne peut être modifié que par le propriétaire de la chaîne sur laquelle il apparaît.
-
Étape 1 : Récupérer les commentaires en attente d'examen
Appelez la méthode
commentThreads.listpour récupérer les commentaires de la chaîne ou de la vidéo. Définissez la valeur du paramètremoderationStatussurheldForReview. La réponse de l'API peut être utilisée pour afficher une liste de commentaires avec une option permettant au propriétaire de la chaîne de publier ou de refuser chacun d'eux. -
Étape 2 : Modifier l'état de modération d'un commentaire
Appelez la méthode
comments.setModerationStatuspour modifier l'état du commentaire. Utilisez la valeur du paramètreidpour spécifier l'identifiant unique du commentaire. Définissez le paramètremoderationStatussurpublishedourejected. Si vous refusez un commentaire, vous pouvez également définir le paramètrebanAuthorsurtruepour empêcher l'auteur de publier d'autres commentaires sur la chaîne ou la vidéo.
Remarque : L'API ne permet pas de lister ni de découvrir les commentaires refusés. Toutefois, vous pouvez toujours modifier l'état de modération d'un commentaire refusé sur published si vous connaissez son identifiant unique. De plus, une fois que l'état de modération d'un commentaire est défini sur published ou rejected, il ne peut plus être modifié sur heldForReview.
Supprimer un commentaire
Cet exemple montre comment supprimer un commentaire. Il comporte les étapes suivantes :
-
Étape 1 : Récupérer l'ID du commentaire
Suivez les étapes ci-dessus pour récupérer la liste des commentaires d'une vidéo ou d'une chaîne. N'oubliez pas qu'un commentaire ne peut être supprimé que par son auteur. Vous devrez donc comparer la valeur de la propriété
snippet.authorChannelId.valued'une ressourcecommentà l'ID de la chaîne de l'utilisateur authentifié pour déterminer si l'utilisateur peut supprimer ce commentaire. -
Étape 2 : Supprimer le commentaire ou le fil de discussion
Une fois que vous avez identifié l'ID du fil de commentaires ou du commentaire que vous supprimez, appelez la méthode
comments.deletepour supprimer ce commentaire. Utilisez la valeur du paramètreidpour identifier l'ID du commentaire ou du fil de discussion que vous supprimez. La requête doit être autorisée à l'aide d'OAuth 2.0. Si vous testez cette requête dans APIs Explorer, vous devrez remplacer la valeur du paramètreiddans la requête ci-dessous par un ID de commentaire ou de fil de discussion valide.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete? id=COMMENT_ID