comments.markAsSpam
n'est plus prise en charge.
Les exemples suivants montrent comment utiliser l'API YouTube Data (v3) pour effectuer 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 sursnippet
si vous souhaitez uniquement récupérer les commentaires de niveau supérieur ou sursnippet,replies
si vous souhaitez également récupérer les réponses aux commentaires de niveau supérieur. (Notez qu'une ressourcecommentThread
ne contient pas nécessairement toutes les réponses à un commentaire. Vous devez utiliser la méthodecomments.list
pour récupérer toutes les réponses à un commentaire particulier.) -
videoId
: spécifiez l'ID de la 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 associé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 sur une chaîne ou associés à une chaîne
L'API permet de récupérer les fils de commentaires d'une chaîne ou 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 sur une chaîne, suivez les instructions pour récupérer les commentaires d'une vidéo. Toutefois, au lieu de définir le paramètre
videoId
, définissez le paramètrechannelId
pour identifier le canal. - Pour récupérer les commentaires associés à une chaîne, suivez les instructions pour récupérer les commentaires d'une vidéo. Toutefois, au lieu de définir le paramètre
videoId
, définissez le paramètreallThreadsRelatedToChannelId
pour identifier le canal.
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 niveau supérieur à 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 un commentThread resource
dans lequel 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 à un canal, utilisez la propriété
snippet.channelId
pour l'identifier. - Pour ajouter un commentaire à une vidéo, utilisez la propriété
snippet.channelId
pour identifier la chaîne qui l'a mise en ligne. Utilisez également la propriétésnippet.videoId
pour 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 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 un comment resource
dans lequel 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 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 niveau supérieur associé à la réponse. Dans une ressource commentThread
, la propriété snippet.topLevelComment[].id
spécifie l'ID 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 niveau supérieur ou d'une réponse à un commentaire de niveau supérieur, 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 niveau supérieur, la propriétésnippet.topLevelComment[].id
spécifie l'ID unique du commentaire. - Dans une ressource
comment
, qui peut identifier un commentaire de niveau supérieur ou une réponse à un commentaire, la propriétéid
spécifie l'ID unique du commentaire.
L'exemple de requête ci-dessous met à jour 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 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 demande 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 ses vidéos.
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é. Seul le propriétaire de la chaîne sur laquelle le commentaire apparaît peut modifier son état.
-
Étape 1: Récupérez les commentaires en cours d'examen
Appelez la méthode
commentThreads.list
pour récupérer les commentaires de la chaîne ou de la vidéo. Définissez la valeur du paramètremoderationStatus
surheldForReview
. 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 les publier ou de les refuser. -
Étape 2: Modifier l'état de modération d'un commentaire
Appelez la méthode
comments.setModerationStatus
pour mettre à jour l'état du commentaire. Utilisez la valeur du paramètreid
pour spécifier l'ID unique du commentaire. Définissez le paramètremoderationStatus
surpublished
ourejected
. Si vous refusez un commentaire, vous pouvez également définir le paramètrebanAuthor
surtrue
pour 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 ID unique. De plus, une fois que l'état de modération d'un commentaire a été défini sur published
ou rejected
, il ne peut plus être rétabli sur heldForReview
.
Supprimer un commentaire
Cet exemple montre comment supprimer un commentaire. L'exemple se présente comme suit:
-
Étape 1: Récupérez 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 devez donc comparer la valeur de la propriété
snippet.authorChannelId.value
d'une ressourcecomment
à l'ID de chaîne de l'utilisateur authentifié pour déterminer si l'utilisateur peut supprimer ce commentaire en particulier. -
Étape 2: Supprimez le commentaire ou le fil de commentaires
Une fois que vous avez identifié l'ID du fil de commentaires ou du commentaire que vous supprimez, appelez la méthode
comments.delete
pour supprimer ce commentaire. Utilisez la valeur du paramètreid
pour 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 l'explorateur d'API, vous devez remplacer la valeur du paramètreid
dans 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