comments.markAsSpam
não é mais compatível.
Os exemplos a seguir mostram como usar a API YouTube Data (v3) para executar funções relacionadas aos comentários.
Recuperar comentários de um vídeo
Para recuperar uma lista de conversas de um vídeo, chame o método commentThreads.list
. Defina estes valores de parâmetro na solicitação:
-
part
: defina o valor do parâmetro comosnippet
se quiser apenas recuperar comentários de nível superior ou comosnippet,replies
se também quiser recuperar respostas a comentários de nível superior. Observe que um recursocommentThread
não contém necessariamente todas as respostas a um comentário, e você precisa usar o métodocomments.list
se quiser recuperar todas as respostas de um comentário específico. -
videoId
: especifique o ID do vídeo do YouTube para o qual você está recuperando comentários.
A solicitação abaixo recupera comentários e respostas relacionados ao vídeo da palestra de abertura da conferência Google I/O de 2014 que tem o ID do vídeo wtLJPvx7-ys
.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &videoId=wtLJPvx7-ys
Recuperar comentários sobre um canal ou os associados a ele
Com a API, é possível recuperar conversas de comentários sobre um canal ou todas aquelas associadas a um canal. No último caso, a API pode conter comentários sobre o canal ou sobre qualquer um dos vídeos dele.
- Para recuperar comentários sobre um canal, siga as instruções para recuperar comentários de um vídeo. No entanto, em vez de definir o parâmetro
videoId
, defina o parâmetrochannelId
para identificar o canal. - Para recuperar comentários associados a um canal, siga as instruções sobre como recuperar comentários de um vídeo. No entanto, em vez de definir o parâmetro
videoId
, defina o parâmetroallThreadsRelatedToChannelId
para identificar o canal.
A solicitação abaixo recupera todas as conversas de comentários associadas ao canal do YouTube GoogleDevelopers:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &allThreadsRelatedToChannelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
Adicionando um comentário
Chame o método commentThreads.insert
para adicionar um novo comentário de nível superior a um canal ou vídeo. Defina o valor do parâmetro part
da solicitação como snippet
. O corpo da solicitação é um commentThread resource
em que a propriedade snippet.topLevelComment[].snippet[].textOriginal
contém o texto do comentário. Essa solicitação precisa ser autorizada usando o OAuth 2.0.
- Para adicionar um comentário a um canal, use a propriedade
snippet.channelId
para identificá-lo. - Para adicionar um comentário a um vídeo, use a propriedade
snippet.channelId
para identificar o canal que enviou o vídeo. Além disso, use a propriedadesnippet.videoId
para identificar o vídeo.
O exemplo de solicitação a seguir adiciona um comentário a um vídeo.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.insert? part=snippet
A solicitação insere o recurso mostrado abaixo.
{ "snippet": { "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw", "topLevelComment": { "snippet": { "textOriginal": "This video is awesome!" } }, "videoId": "MILSirUni5E" } }
Responder a um comentário
Chame o método comments.insert
para responder a um comentário. Defina o valor do parâmetro part
da solicitação como snippet
. O corpo da solicitação é um comment resource
em que a propriedade snippet.textOriginal
contém o texto do comentário. A propriedade snippet.parentId
identifica o comentário associado à resposta, e o valor dela é commentThread resource's ID
. Essa solicitação precisa ser autorizada usando o OAuth 2.0.
O exemplo de solicitação a seguir adiciona uma resposta a um comentário existente.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.insert? part=snippet
A solicitação insere o recurso mostrado abaixo. Para executar a solicitação no APIs Explorer, use o valor da propriedade snippet.parentId
para identificar o comentário de nível superior associado à resposta. Em um recurso commentThread
, a propriedade snippet.topLevelComment[].id
especifica o ID exclusivo do recurso.
{ "snippet": { "parentId": "COMMENT_THREAD_ID", "textOriginal": "That is true." } }
Atualizar um comentário de nível superior ou uma resposta a um comentário
Para atualizar o texto de um comentário de nível superior ou uma resposta a um comentário de nível superior, chame o método comments.update
. Defina o valor do parâmetro part
como snippet
. No corpo da solicitação, a propriedade id
identifica o comentário que você está modificando e o novo texto.
- Em um recurso
commentThread
, que identifica um comentário de nível superior, a propriedadesnippet.topLevelComment[].id
especifica o ID exclusivo do comentário. - Em um recurso
comment
, que pode identificar um comentário de nível superior ou uma resposta a um comentário, a propriedadeid
especifica o ID exclusivo do comentário.
O exemplo de solicitação abaixo atualiza o texto de um comentário existente.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update? part=snippet
O corpo da solicitação contém o snippet JSON mostrado abaixo. Para executar a solicitação no APIs Explorer, defina o valor da propriedade id
para identificar o comentário que você está atualizando. A solicitação precisa ser autorizada pelo autor do comentário.
{ "id": "COMMENT_ID", "snippet": { "textOriginal": "That is true." } }
Definir o status de moderação de um comentário
Para definir o status de moderação de um comentário, chame o método comments.setModerationStatus
. Esta ação é usada quando o proprietário de um canal modera comentários no canal ou nos vídeos.
Ao chamar esse método, defina o valor do parâmetro id
para identificar o comentário. Além disso, defina o parâmetro moderationStatus
com o status pretendido. O status de um comentário só pode ser ajustado pelo proprietário do canal em que ele aparece.
-
Etapa 1: recuperar os comentários retidos para análise
Chame o método
commentThreads.list
para recuperar comentários do canal ou vídeo. Defina o valor do parâmetromoderationStatus
comoheldForReview
. A resposta da API pode ser usada para exibir uma lista de comentários com uma opção para o proprietário do canal publicar ou rejeitar cada um deles. -
Etapa 2: atualizar o status de moderação de um comentário
Chame o método
comments.setModerationStatus
para atualizar o status do comentário. Use o valor do parâmetroid
para especificar o ID exclusivo do comentário. Defina o parâmetromoderationStatus
comopublished
ourejected
. Se você estiver rejeitando um comentário, também é possível definir o parâmetrobanAuthor
comotrue
. Isso impede que o autor faça outros comentários no canal ou no vídeo.
Observação:a API não fornece uma maneira de listar ou descobrir comentários rejeitados. No entanto, você ainda pode mudar o status de moderação de um comentário rejeitado para published
se o ID exclusivo dele for conhecido. Além disso, depois que o status de moderação de um comentário é atualizado para published
ou rejected
, ele não pode voltar a ser heldForReview
.
Remover um comentário
Este exemplo mostra como excluir um comentário. O exemplo tem as seguintes etapas:
-
Etapa 1: recuperar o ID do comentário
Siga as etapas acima para recuperar uma lista de comentários de um vídeo ou canal. Lembre-se de que um comentário só pode ser excluído pelo autor. Portanto, será necessário comparar o valor da propriedade
snippet.authorChannelId.value
de um recursocomment
com o ID do canal do usuário autenticado para determinar se o usuário pode excluir esse comentário específico. -
Etapa 2: excluir o comentário ou a conversa
Depois de identificar o ID da conversa ou do comentário que você está excluindo, chame o método
comments.delete
para excluir esse comentário. Use o valor de parâmetroid
para identificar o ID do comentário ou da conversa que você está excluindo. A solicitação precisa ser autorizada com o OAuth 2.0. Se você estiver testando essa consulta no APIs Explorer, será necessário substituir um ID de comentário ou de conversa válido pelo valor do parâmetroid
na solicitação abaixo.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete? id=COMMENT_ID