comments.markAsSpam ya no es compatible.
En los siguientes ejemplos, se muestra cómo usar la API de YouTube Data (v3) para realizar funciones relacionadas con los comentarios.
Recupera comentarios de un video
Para recuperar una lista de conversaciones de comentarios de un video, llama al método commentThreads.list. Establece los siguientes valores de parámetros en tu solicitud:
-
part: Establece el valor del parámetro ensnippetsi solo quieres recuperar los comentarios de nivel superior o ensnippet,repliessi también quieres recuperar las respuestas a los comentarios de nivel superior. (Ten en cuenta que un recursocommentThreadno necesariamente contiene todas las respuestas a un comentario, y debes usar el métodocomments.listsi quieres recuperar todas las respuestas para un comentario en particular). -
videoId: Especifica el ID de video de YouTube del video para el que recuperas comentarios.
La siguiente solicitud recupera comentarios y respuestas a comentarios relacionados con el video del discurso de apertura en la conferencia Google I/O 2014, que tiene el ID de video wtLJPvx7-ys.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &videoId=wtLJPvx7-ys
Recupera comentarios sobre un canal o asociados a él
La API admite la capacidad de recuperar conversaciones de comentarios sobre un canal o todas las conversaciones de comentarios asociadas a un canal. En este último caso, la API podría contener comentarios sobre el canal o sobre cualquiera de los videos del canal.
- Para recuperar comentarios sobre un canal, sigue las instrucciones para recuperar comentarios de un video. Sin embargo, en lugar de establecer el parámetro
videoId, establece el parámetrochannelIdpara identificar el canal. - Para recuperar comentarios asociados a un canal, sigue las instrucciones para recuperar comentarios de un video. Sin embargo, en lugar de establecer el parámetro
videoId, establece el parámetroallThreadsRelatedToChannelIdpara identificar el canal.
La siguiente solicitud recupera todas las conversaciones de comentarios asociadas al canal de YouTube GoogleDevelopers:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &allThreadsRelatedToChannelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
Agregando un comentario
Llama al método commentThreads.insert para agregar un comentario nuevo de nivel superior a un canal o un video. Establece el valor del parámetro part de la solicitud en snippet. El cuerpo de la solicitud es un commentThread resource en el que la propiedad snippet.topLevelComment[].snippet[].textOriginal contiene el texto del comentario. Esta solicitud debe autorizarse con OAuth 2.0.
- Para agregar un comentario a un canal, usa la propiedad
snippet.channelIdpara identificar el canal. - Para agregar un comentario a un video, usa la propiedad
snippet.channelIdpara identificar el canal que subió el video. También usa la propiedadsnippet.videoIdpara identificar el video.
En la siguiente solicitud de muestra, se agrega un comentario a un video.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.insert? part=snippet
La solicitud inserta el recurso que se muestra a continuación.
{
"snippet": {
"channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
"topLevelComment": {
"snippet": {
"textOriginal": "This video is awesome!"
}
},
"videoId": "MILSirUni5E"
}
}Responder a un comentario
Llama al método comments.insert para responder a un comentario. Establece el valor del parámetro part de la solicitud en snippet. El cuerpo de la solicitud es un comment resource en el que la propiedad snippet.textOriginal contiene el texto del comentario. La propiedad snippet.parentId identifica el comentario asociado con la respuesta, y su valor es un commentThread resource's ID. Esta solicitud debe autorizarse con OAuth 2.0.
En la siguiente solicitud de muestra, se agrega una respuesta a un comentario existente.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.insert? part=snippet
La solicitud inserta el recurso que se muestra a continuación. Para ejecutar la solicitud en el Explorador de APIs, usa el valor de la propiedad snippet.parentId para identificar el comentario de nivel superior asociado con la respuesta. En un recurso commentThread, la propiedad snippet.topLevelComment[].id especifica el ID único del recurso.
{
"snippet": {
"parentId": "COMMENT_THREAD_ID",
"textOriginal": "That is true."
}
}Actualiza un comentario de nivel superior o una respuesta a un comentario
Para actualizar el texto de un comentario de nivel superior o una respuesta a un comentario de nivel superior, llama al método comments.update. Establece el valor del parámetro part en snippet. En el cuerpo de la solicitud, la propiedad id identifica el comentario que estás modificando y el texto del comentario nuevo.
- En un recurso
commentThread, que identifica un comentario de nivel superior, la propiedadsnippet.topLevelComment[].idespecifica el ID único del comentario. - En un recurso
comment, que puede identificar un comentario de nivel superior o una respuesta a un comentario, la propiedadidespecifica el ID único del comentario.
En la siguiente solicitud de muestra, se actualiza el texto de un comentario existente.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update? part=snippet
El cuerpo de la solicitud contiene el fragmento de código JSON que se muestra a continuación. Para ejecutar la solicitud en el Explorador de APIs, establece el valor de la propiedad id para identificar el comentario que estás actualizando. El autor del comentario debe autorizar la solicitud.
{
"id": "COMMENT_ID",
"snippet": {
"textOriginal": "That is true."
}
}Establece el estado de moderación de un comentario
Para establecer el estado de moderación de un comentario, llama al método comments.setModerationStatus. Esta acción se usa cuando el propietario de un canal modera los comentarios en el canal o en los videos del canal.
Cuando llames a este método, establece el valor del parámetro id para identificar el comentario. También establece el parámetro moderationStatus en el estado deseado. El estado de un comentario solo puede ajustarlo el propietario del canal en el que aparece el comentario.
-
Paso 1: Recupera los comentarios que están en espera de revisión
Llama al método
commentThreads.listpara recuperar comentarios del canal o del video. Establece el valor del parámetromoderationStatusenheldForReview. La respuesta de la API se puede usar para mostrar una lista de comentarios con una opción para que el propietario del canal publique o rechace cada uno. -
Paso 2: Actualiza el estado de moderación de un comentario
Llama al método
comments.setModerationStatuspara actualizar el estado del comentario. Usa el valor del parámetroidpara especificar el ID único del comentario. Establece el parámetromoderationStatusenpublishedorejected. Si rechazas un comentario, también puedes establecer el parámetrobanAuthorentruepara evitar que el autor haga comentarios adicionales en el canal o el video.
Nota: La API no proporciona una forma de enumerar ni descubrir comentarios rechazados. Sin embargo, puedes cambiar el estado de moderación de un comentario rechazado a published si se conoce el ID único del comentario. Además, una vez que se actualiza el estado de moderación de un comentario a published o rejected, no se puede volver a cambiar a heldForReview.
Quitar un comentario
En este ejemplo, se muestra cómo borrar un comentario. El ejemplo tiene los siguientes pasos:
-
Paso 1: Recupera el ID del comentario
Sigue los pasos anteriores para recuperar una lista de comentarios de un video o canal. Recuerda que solo el autor puede borrar un comentario, por lo que deberás comparar el valor de la propiedad
snippet.authorChannelId.valuede un recursocommentcon el ID del canal del usuario autenticado para determinar si el usuario puede borrar ese comentario en particular. -
Paso 2: Borra el comentario o la conversación de comentarios
Una vez que hayas identificado el ID de la conversación de comentarios o el comentario que estás borrando, llama al método
comments.deletepara borrar ese comentario. Usa el valor del parámetroidpara identificar el ID del comentario o el ID de la conversación de comentarios que estás borrando. Esta solicitud debe autorizarse con OAuth 2.0. Si pruebas esta consulta en el Explorador de APIs, deberás sustituir un ID de comentario o un ID de conversación de comentarios válidos por el valor del parámetroiden la siguiente solicitud.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete? id=COMMENT_ID