Os exemplos a seguir mostram como usar a API de dados do YouTube (v3) para executar funções relacionadas a vídeos.
Recuperar vídeos enviados de um canal
Este exemplo recupera os vídeos enviados para um canal específico. O exemplo tem duas etapas:
-
Etapa 1: recuperar o ID da playlist para os vídeos enviados do canal
Chame o método
channels.list
para recuperar o ID da playlist que contém os vídeos enviados do canal. O valor do parâmetropart
da solicitação precisa incluircontentDetails
como uma das partes do recursochannel
que está sendo recuperada. Na resposta da API, a propriedadecontentDetails.relatedPlaylists.uploads
contém o ID da playlist.Há várias maneiras de identificar o canal:
-
Defina o valor do parâmetro
mine
comotrue
para recuperar informações do canal do YouTube do usuário autenticado no momento. Sua solicitação deve ser autorizada usando OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
Defina o parâmetro
forUsername
como um nome de usuário do YouTube para recuperar informações do canal associado a esse nome de usuário. Este exemplo define o valor do parâmetroforUsername
comoGoogle
para recuperar informações do canal oficial do Google no YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
-
Defina o parâmetro
id
como o ID do canal do YouTube que identifica exclusivamente o canal de que você está recuperando informações. Este exemplo define o parâmetroid
comoUCK8sQmJBp8GCxrOtXWBpyEA
, que também identifica o canal oficial do Google no YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
-
-
Etapa 2: recuperar a lista de vídeos enviados
Chame o método
playlistItems.list
para recuperar a lista de vídeos enviados. Defina o valor do parâmetroplaylistId
para o valor da etapa 1. Neste exemplo, o valor do parâmetro é definido comoUUK8sQmJBp8GCxrOtXWBpyEA
, que é a lista de vídeos enviados ao canal oficial do Google no YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
Recuperar vídeos mais populares
Este exemplo mostra como recuperar uma lista dos vídeos mais populares do YouTube, que são selecionados usando um algoritmo que combina vários sinais diferentes para determinar a popularidade geral.
Para recuperar a lista de vídeos mais assistidos, chame o método videos.list
e defina o valor do parâmetro chart
como mostPopular
. Ao recuperar essa lista, você também pode definir um ou ambos os parâmetros a seguir:
regionCode
: instrui a API a retornar uma lista de vídeos para a região especificada.videoCategoryId
: identifica a categoria de vídeo para a qual os vídeos mais populares devem ser recuperados.
A solicitação abaixo recupera os vídeos esportivos mais populares na Espanha:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
Enviar um vídeo
Como o APIs Explorer não suporta o recurso de upload de arquivos, esta descrição não está vinculada a um exemplo executável. Os seguintes recursos o ajudarão a modificar o seu aplicativo para que ele possa fazer upload de vídeos usando a API v3:
-
A documentação do método videos.insert da API contém várias amostras de código que explicam como enviar um vídeo usando diferentes linguagens de programação.
-
O guia Envios retomáveis explica a sequência de solicitações HTTP que um aplicativo usa para enviar vídeos usando um processo de upload retomável. O guia se destina principalmente a desenvolvedores que não podem usar as bibliotecas de cliente da API do Google, algumas das quais oferecem suporte nativo para a retomada de uploads.
-
O exemplo de JavaScript para upload de um vídeo usa CORS (compartilhamento de recurso de origem cruzada) para demonstrar como enviar um arquivo de vídeo por meio de uma página da Web. A biblioteca de upload do CORS que a API v3 utiliza naturalmente suporta o upload recuperável. Além disso, o exemplo demonstra como verificar o status de um vídeo enviado recuperando a parte
processingDetails
do recursovideo
e como lidar com alterações de status para o vídeo enviado.
Verificar o status de um vídeo enviado
Este exemplo mostra como verificar o status de um vídeo enviado. Um vídeo enviado ficará imediatamente visível no feed de vídeos enviados do usuário autenticado. No entanto, o vídeo não ficará visível no YouTube até ser processado.
-
Etapa 1: enviar o vídeo
Chame o método
videos.insert
para enviar o vídeo. Se a solicitação for bem-sucedida, a resposta da API conterá um recursovideo
que identifica o ID exclusivo do vídeo enviado. -
Etapa 2: verificar o status do vídeo
Chame o método
videos.list
para verificar o status do vídeo. Defina o valor do parâmetroid
para o ID do vídeo obtido na etapa 1. Defina o valor do parâmetropart
comoprocessingDetails
.Se a solicitação for processada, a resposta da API conterá um recurso
video
. Verifique o valor da propriedadeprocessingDetails.processingStatus
para determinar se o YouTube ainda está processando o vídeo. O valor da propriedade será alterado para algo diferente deprocessing
, comosucceeded
oufailed
, quando o YouTube tiver concluído o processamento do vídeo.O corpo da solicitação é um recurso
video
em que a propriedadeid
especifica o ID do vídeo que você está excluindo. Neste exemplo, o recurso também contém um objetorecordingDetails
.A solicitação abaixo verifica o status de um vídeo. Para concluir a solicitação no APIs Explorer, você precisa definir o valor da propriedade
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
Observação: seu aplicativo pode pesquisar a API para verificar periodicamente o status de um vídeo enviado recentemente. Assim que o vídeo for processado, seu aplicativo poderá criar um boletim ou prosseguir com outra ação que dependa do status do vídeo.
Atualizar um vídeo
Este exemplo mostra como atualizar um vídeo para adicionar informações sobre a hora e o local em que ele foi gravado. O exemplo tem as seguintes etapas:
-
Etapa 1: recuperar o ID do vídeo
Siga as etapas acima para recuperar os vídeos enviados para o canal do usuário autenticado no momento. A lista pode ser usada para exibir uma lista de vídeos, usando o ID de cada vídeo como uma chave.
Observação: Há muitas outras maneiras de recuperar IDs de vídeos, como recuperar resultados da pesquisa ou listar itens em uma playlist. No entanto, como um vídeo só pode ser atualizado pelo proprietário, recuperar uma lista de vídeos do usuário que autoriza a solicitação de API é uma primeira etapa provável desse processo.
-
Etapa 2: atualizar um vídeo
Chame o método
videos.update
para atualizar um vídeo específico. Defina o valor do parâmetropart
comorecordingDetails
. O valor do parâmetro depende de quais campos de metadados de vídeo estão sendo atualizados.O corpo da solicitação é um recurso
video
em que a propriedadeid
especifica o ID do vídeo que você está atualizando. Neste exemplo, o recurso também contém um objetorecordingDetails
.O exemplo de recurso abaixo indica que o vídeo foi gravado em 30 de outubro de 2013, em Boston:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
Para concluir a solicitação no APIs Explorer, você precisa definir o valor da propriedade
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
Enviar uma imagem de miniatura personalizada e defini-la para um vídeo
Você pode usar o método thumbnails.set
da API v3 para fazer upload de uma imagem de miniatura personalizada e configurá-la para um vídeo. Na sua solicitação, o valor do parâmetro videoId
identifica o vídeo em que a miniatura será usada.
Esta consulta não pode ser testada usando o APIs Explorer porque o APIs Explorer não suporta o recurso de upload de arquivos de mídia, o que é um requisito desse método.
Excluir um vídeo
Este exemplo mostra como excluir um vídeo. O exemplo tem as seguintes etapas:
-
Etapa 1: recuperar o ID do vídeo
Siga as etapas acima para recuperar os vídeos enviados para o canal do usuário autenticado no momento. A lista pode ser usada para exibir uma lista de vídeos, usando o ID de cada vídeo como uma chave.
Observação: Há muitas outras maneiras de recuperar IDs de vídeos, como recuperar resultados da pesquisa ou listar itens em uma playlist. No entanto, como um vídeo só pode ser excluído pelo proprietário, recuperar uma lista de vídeos do usuário que autoriza a solicitação de API é provavelmente a primeira etapa desse processo.
-
Etapa 2: excluir um vídeo
Chame o método
videos.delete
para excluir um vídeo específico. Na solicitação, o parâmetroid
especifica o ID do vídeo que você está excluindo. A solicitação precisa ser autorizada usando o OAuth 2.0. Se você estiver testando essa consulta no APIs Explorer, será necessário substituir um ID do vídeo válido pelo valor do parâmetroid
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Denunciar um vídeo abusivo
Este exemplo mostra como denunciar um vídeo com conteúdo abusivo. O exemplo tem as seguintes etapas:
-
Etapa 1: recuperar IDs que explicam por que o vídeo está sendo denunciado
Envie uma solicitação autorizada ao método
videoAbuseReportReasons.list
para recuperar uma lista de motivos válidos para sinalizar um vídeo. O exemplo de recursovideoAbuseReportReason
abaixo contém informações para sinalizar um vídeo que contém spam ou conteúdo enganoso.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
Como mostrado no recurso, esse motivo está associado a uma lista de motivos secundários. Ao sinalizar um vídeo por conter spam, você deve fornecer o ID do motivo e também é altamente recomendável fornecer um motivo secundário.
-
Etapa 2: sinalizar o vídeo por ter conteúdo abusivo
Envie uma solicitação autorizada ao método
A propriedadevideos.reportAbuse
para denunciar o vídeo. O corpo da solicitação é um objeto JSON que identifica o vídeo sinalizado e o motivo da sinalização. Como observado na etapa 1, por alguns tipos de motivos, há uma razão secundária compatível e fortemente recomendada.videoId
do objeto JSON identifica o vídeo que está sendo sinalizado.O exemplo de objeto JSON abaixo sinaliza um vídeo por conter spam ou conteúdo enganoso e, mais especificamente, por usar uma imagem em miniatura enganosa. Conforme mostrado no exemplo de objeto JSON acima, o código para conteúdo spam ou enganoso é S. O ID de uma miniatura enganosa é 28.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
A solicitação
videos.reportAbuse
precisa ser autorizada usando o OAuth 2.0. O link abaixo carrega o objeto JSON acima no APIs Explorer. Para testar a consulta, é necessário substituir um ID do vídeo válido pelo valor da propriedadevideoId
. Lembre-se de que o envio dessa solicitação sinalizará o vídeo.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse