Esta página lista as mudanças e atualizações da documentação da API YouTube Data (v3). Inscreva-se neste registro de alterações.
10 de julho de 2025
A partir de 21 de julho de 2025, o YouTube vai ajustar o conteúdo retornado pelo gráfico mostPopular
do método video.list
. Antes, o gráfico mostPopular
refletia os vídeos em destaque na lista "Em alta agora". Agora, o gráfico mostPopular
vai mostrar vídeos das paradas de música, filmes e jogos em alta. Essa mudança na API acompanha a descontinuação da página Em alta do YouTube.
26 de março de 2025
A partir de 31 de março de 2025, o YouTube vai mudar a forma de contar as visualizações dos Shorts. Antes, para os Shorts, uma visualização era contabilizada depois que o vídeo era exibido por alguns segundos. Agora, as visualizações vão contabilizar quantas vezes o Short começa a ser reproduzido ou reprisado, sem um tempo mínimo de exibição. Saiba mais
A partir de 31 de março de 2025, os seguintes campos na API Data vão retornar a contagem de visualizações dos Shorts de acordo com essa mudança:
channels.statistics.viewCount
videos.statistics.viewCount
30 de outubro de 2024
Agora, a API pode identificar vídeos com conteúdo alterado ou sintético (A/S) realista. Saiba mais sobre as políticas do YouTube relacionadas a conteúdo de A/S.
Exemplos de conteúdo A/S incluem vídeos que:
- Fazer uma pessoa real parecer dizer ou fazer algo que ela não disse ou fez
- Alterar a filmagem de um evento ou lugar real
- Geração de uma cena de aparência realista que não existiu de verdade
Para indicar se um vídeo tem conteúdo A/S, defina a propriedade
status.containsSyntheticMedia
. Essa propriedade pode ser definida ao chamar os métodos
videos.insert
ou
videos.update
. Se definido, a propriedade será retornada no recurso video
.
30 de abril de 2024
Observação:este é um anúncio de suspensão de uso.
Esta atualização contém as seguintes alterações:
A API não oferece mais suporte à inserção ou recuperação de discussões do canal. Essa mudança é consistente com a funcionalidade disponível no site do YouTube, que não permite postar comentários em canais.
13 de março de 2024
Observação:este é um anúncio de suspensão de uso.
Esta atualização contém as seguintes alterações:
O parâmetro sync
para os métodos
captions.insert
e
captions.update
foi descontinuado. O YouTube vai parar de oferecer suporte ao parâmetro em 12 de abril de 2024.
Como resultado dessa mudança, os desenvolvedores precisam incluir informações de tempo ao inserir ou atualizar faixas de legenda. Caso contrário, o envio vai falhar.
12 de março de 2024
Esta atualização contém as seguintes alterações:
A documentação do recurso captions
foi atualizada para informar que o comprimento máximo permitido para o campo snippet.name
é de 150 caracteres. A API retorna um erro nameTooLong
se o nome da faixa for maior.
7 de março de 2024
Observação:este é um anúncio de suspensão de uso.
A propriedade de recurso channel
brandingSettings.channel.moderateComments
foi descontinuada. O YouTube vai parar de oferecer suporte ao parâmetro em 7 de março de 2024.
31 de janeiro de 2024
Esta atualização contém as seguintes alterações:
O novo parâmetro forHandle
do método channels.list
permite recuperar informações sobre um canal especificando o identificador do YouTube dele.
9 de novembro de 2023
Todas as referências ao recurso videoId
em Comments
foram removidas porque o recurso videoId
não está sendo retornado usando uma chamada de API.
12 de setembro de 2023
Observação:este é um anúncio de suspensão de uso.
O método comments.markAsSpam
está descontinuado há vários anos. Esse método já não é compatível com o YouTube e não é mais compatível com a API.
Um aviso de descontinuação foi adicionado a todos os documentos que fazem referência ao método
comments.markAsSpam
.
22 de agosto de 2023
O método search.list
agora é compatível com o parâmetro videoPaidProductPlacement
. Com esse parâmetro, é possível filtrar os resultados da pesquisa para incluir apenas vídeos que o criador de conteúdo indicou como tendo uma promoção paga.
18 de agosto de 2023
A definição do recurso video
liveStreamingDetails.concurrentViewers
foi atualizada para informar que as contagens de espectadores simultâneos retornadas pela API YouTube Data podem
ser diferentes das contagens processadas e sem spam disponíveis no YouTube
Analytics. A Central de Ajuda do YouTube oferece mais informações sobre as métricas de transmissões ao vivo.
7 de agosto de 2023
Conforme anunciado em 12 de junho de 2023, o parâmetro relatedToVideoId
do método search.list
foi descontinuado. Esse parâmetro não é mais compatível, e as referências a ele foram removidas da documentação da API.
28 de junho de 2023
O método thumbnails.set agora é compatível com o
erro uploadRateLimitExceeded
, que indica que o canal enviou muitas
miniaturas nas últimas 24 horas e precisa tentar de novo mais tarde.
12 de junho de 2023
Observação:este é um anúncio de suspensão de uso.
O parâmetro relatedToVideoId
do método search.list foi descontinuado. O YouTube vai desativar o parâmetro
em 7 de agosto de 2023.
No momento, um aviso de descontinuação foi adicionado à documentação do método search.list
. Esse parâmetro será totalmente removido da documentação do search.list
em 7 de agosto de 2023 ou depois dessa data.
Além disso, um exemplo que demonstra como recuperar vídeos relacionados foi removido do guia de implementação da API.
22 de agosto de 2022
Anotações de tipo corrigidas para campos video.statistics de string para unsigned long.
5 de agosto de 2022
O YouTube mudou a forma como os IDs de legenda são gerados e, como parte dessa mudança, está atribuindo novos IDs a todas as faixas de legenda. Essa mudança pode ser incompatível com versões anteriores para aplicativos que armazenam valores de caption_id
, mas não vai afetar aqueles que não armazenam valores de caption_id
.
Entre agora e 1º de dezembro de 2022, os métodos captions.list
, captions.update
, captions.download
e captions.delete
vão oferecer suporte aos IDs de faixa de legenda antigos e novos. No entanto, a partir de 1º de dezembro de 2022, o YouTube
vai parar de oferecer suporte aos IDs antigos de faixa de legenda. Nesse momento, chamar qualquer um desses métodos de API
com um ID de faixa de legenda antigo vai resultar em um erro
captionNotFound
.
Para se preparar para essa mudança, planeje substituir totalmente todos os dados armazenados de faixas de legenda
entre agora e 1º de dezembro de 2022. Isso significa que, para qualquer vídeo em que você armazena dados de faixa de legenda, é necessário excluir os dados armazenados atualmente e chamar o método
captions.list
para recuperar o
conjunto atual de faixas de legenda do vídeo e armazenar os dados na resposta da API como você faria
normalmente.
12 de julho de 2022
Os Termos de Serviço dos Serviços de API do YouTube foram atualizados. Consulte o Histórico de revisões dos Termos de Serviço das APIs do YouTube para mais informações.
27 de abril de 2022
A descrição do método videos.insert
foi atualizada para informar que o tamanho máximo do arquivo para vídeos enviados aumentou de 128 GB para 256 GB.
8 de abril de 2022
As definições de parâmetros myRecentSubscribers
e mySubscribers
do método subscriptions.list
foram atualizadas para informar que o número máximo de inscritos retornado pela API pode ser limitado.
Essa mudança representa uma correção na documentação, não uma mudança no comportamento da API.
15 de dezembro de 2021
Conforme anunciado em 18 de novembro de 2021, em conjunto com as mudanças para tornar privadas as contagens de não gostei em toda a plataforma do YouTube, a propriedade statistics.dislikeCount
do recurso video
agora é privada.
Saiba mais sobre essa mudança no blog oficial do YouTube.
18 de novembro de 2021
Junto com as mudanças para tornar privadas as contagens de marcações "Não gostei" em toda a plataforma do YouTube, a propriedade statistics.dislikeCount
do recurso video
será definida como privada a partir de 13 de dezembro de 2021. Isso significa que a propriedade só será incluída em uma resposta da API do endpoint videos.list
se a solicitação de API tiver sido autenticada pelo proprietário do vídeo.
O endpoint videos.rate
não é afetado
por essa mudança.
Os desenvolvedores que não mostram as contagens de não gostei publicamente e ainda precisam delas para o cliente de API podem solicitar uma exceção e entrar em uma lista de permissões. Para solicitar uma isenção, preencha este formulário de inscrição.
Saiba mais sobre essa mudança no blog oficial do YouTube.
2 de julho de 2021
Observação:este é um anúncio de suspensão de uso.
O endpoint commentThreads.update
foi descontinuado e não tem mais suporte.
Esse endpoint duplicou a funcionalidade disponível em outros endpoints de API. Em vez disso, você pode
chamar o comments.update
commentThreads
, faça uma chamada secundária para o método commentThreads.list
.
1º de julho de 2021
Todos os desenvolvedores que usam os serviços de API do YouTube precisam passar por uma auditoria de conformidade da API para receber mais do que a cota padrão de 10.000 unidades. Até o momento, tanto o processo de auditoria de compliance quanto os pedidos de alocações extras de unidades de cota foram realizados por desenvolvedores que preencheram e enviaram o formulário de auditoria e extensão de cotas dos serviços de API do YouTube.
Para esclarecer esses processos e atender melhor às necessidades dos desenvolvedores que usam nossos serviços de API, estamos adicionando três novos formulários e um guia para preenchê-los:
- Formulário de solicitações de desenvolvedores auditadas: os desenvolvedores que já passaram por uma auditoria de conformidade da API podem preencher e enviar este formulário mais curto para solicitar uma extensão de cota alocada.
- Formulário de contestações: os desenvolvedores cujos projetos de API não passaram em uma auditoria de conformidade ou tiveram um aumento negado na unidade de cota podem preencher e enviar este formulário.
- Formulário de mudança de controle: desenvolvedores ou qualquer parte que opere um cliente de API em nome de um desenvolvedor e que passe por uma mudança de controle (por exemplo, por compra ou venda de ações, fusão ou outra forma de transação corporativa) associada a um projeto de API precisam preencher e enviar este formulário. Isso permite que a equipe de API do YouTube atualize nossos registros, audite a conformidade do caso de uso do novo projeto de API e valide a alocação de cota atual do desenvolvedor.
Cada novo formulário vai informar nosso uso pretendido da API do YouTube e nos ajudar a oferecer um suporte melhor.
Confira mais detalhes no novo guia de auditorias de conformidade da API.
12 de maio de 2021
Observação:este é um anúncio de suspensão de uso.
Esta atualização abrange as seguintes mudanças na API:
-
A propriedade
contentDetails.relatedPlaylists.favorites
do recursochannel
foi descontinuada. A funcionalidade de vídeos favoritos já foi descontinuada há vários anos, conforme observado na entrada do histórico de revisões de 28 de abril de 2016.Antes dessa atualização, a API ainda criava uma playlist se um cliente tentasse adicionar um vídeo a uma playlist de favoritos inexistente. A partir de agora, a playlist não será criada nesse caso, e a API vai retornar um erro. As tentativas de modificar as playlists favoritas adicionando, modificando ou excluindo itens também foram descontinuadas conforme anúncios anteriores e podem começar a retornar erros a qualquer momento.
-
As seguintes propriedades de recursos
channel
foram descontinuadas. Essas propriedades já não são compatíveis com a interface do YouTube Studio e o YouTube. Como resultado, eles também não são mais compatíveis com a API.brandingSettings.channel.defaultTab
brandingSettings.channel.featuredChannelsTitle
brandingSettings.channel.featuredChannelsUrls[]
brandingSettings.channel.profileColor
brandingSettings.channel.showBrowseView
brandingSettings.channel.showRelatedChannels
Todas as propriedades foram removidas da
channel
representação de recurso, e as definições foram removidas da lista de propriedades do recurso. Além disso, os erros associados a essas propriedades foram removidos da documentação específica do método. -
As seguintes propriedades de recursos
channelSection
foram descontinuadas. Essas propriedades já não são compatíveis com a interface do YouTube Studio e o YouTube. Como resultado, eles também não são mais compatíveis com a API.snippet.style
snippet.defaultLanguage
snippet.localized.title
localizations
localizations.(key)
localizations.(key).title
targeting
targeting.languages[]
targeting.regions[]
targeting.countries[]
Junto com essa mudança, o parâmetro
hl
do métodochannelSection.list
também foi descontinuado porque os recursos que ele oferece não são mais compatíveis.Todas as propriedades foram removidas da
channelSection
representação de recurso, e as definições foram removidas da lista de propriedades do recurso. Além disso, os erros associados a essas propriedades foram removidos da documentação específica do método. -
Para a propriedade
snippet.type
do recursochannelSection
, os seguintes valores foram descontinuados. Esses valores já não são compatíveis nas páginas de canais do YouTube e, portanto, também não são mais compatíveis com a API.likedPlaylists
likes
postedPlaylists
postedVideos
recentActivity
recentPosts
-
A propriedade
snippet.tags[]
do recursoplaylist
foi descontinuada. Essa propriedade já não é compatível com o YouTube e, portanto, não é mais compatível com a API.
9 de fevereiro de 2021
O recurso playlistItem
oferece suporte a duas novas propriedades:
- A propriedade
snippet.videoOwnerChannelId
identifica o ID do canal que enviou o vídeo da playlist. - A propriedade
snippet.videoOwnerChannelTitle
identifica o nome do canal que enviou o vídeo da playlist.
28 de janeiro de 2021
Esta atualização contém as seguintes alterações:
-
Os métodos
playlistItems.delete
,playlistItems.insert
,playlistItems.list
,playlistItems.update
,playlists.delete
,playlists.list
eplaylists.update
agora oferecem suporte a um novo erroplaylistOperationUnsupported
. O erro ocorre quando uma solicitação tenta realizar uma operação que não é permitida para uma playlist específica. Por exemplo, um usuário não pode excluir um vídeo da playlist "Vídeos enviados" ou excluir a própria playlist.Em todos os casos, esse erro retorna um código de resposta HTTP
400
(Solicitação inválida). -
Os erros
watchHistoryNotAccessible
ewatchLaterNotAccessible
do métodoplaylistItems.list
foram removidos da documentação. Embora o histórico de exibição e as listas "Assistir mais tarde" dos usuários não sejam acessíveis pela API, esses erros específicos não são retornados por ela.
15 de outubro de 2020
Duas novas seções foram adicionadas às Políticas para desenvolvedores:
- A nova Seção III.E.4.i fornece mais informações sobre os dados coletados e enviados pelo player incorporado do YouTube. Você é responsável por todos os dados de usuários que nos envia usando qualquer player incorporado do YouTube antes que o usuário interaja com o player para indicar a intenção de reprodução. É possível limitar os dados compartilhados com o YouTube antes que um usuário interaja com o player definindo a reprodução automática como "false".
- A nova Seção III.E.4.j se refere à verificação do status "Conteúdo para crianças" (MFK, na sigla em inglês) antes de incorporar o conteúdo nos seus sites e apps. Você é responsável por saber quando os vídeos incorporados no seu cliente de API são feitos para crianças e por tratar os dados coletados do player incorporado de acordo com isso. Portanto, é necessário verificar o status do conteúdo usando o serviço da API de dados do YouTube antes de incorporá-lo ao seu cliente de API em qualquer player incorporado do YouTube.
O novo guia Como encontrar o status "Conteúdo para crianças" de um vídeo explica como pesquisar o status MFK de um vídeo usando o serviço da API YouTube Data.
Junto com essas mudanças, um lembrete foi adicionado à documentação de parâmetros do player incorporado para explicar que se você ativar a reprodução automática, a reprodução vai ocorrer sem interação do usuário com o player. Portanto, a coleta e o compartilhamento de dados de reprodução vão ocorrer no carregamento da página.
8 de outubro de 2020
Esta atualização inclui três pequenas mudanças relacionadas ao recurso
channel
:
- O objeto
snippet.thumbnails
, que identifica as imagens em miniatura de um canal, pode estar vazio para canais recém-criados e levar até um dia para ser preenchido. - A propriedade
statistics.videoCount
reflete apenas a contagem de vídeos públicos do canal, mesmo para os proprietários. Esse comportamento é consistente com as contagens mostradas no site do YouTube. - As palavras-chave do canal, identificadas na propriedade
brandingSettings.channel.keywords
, podem ser truncadas se excederem o tamanho máximo permitido de 500 caracteres ou se contiverem aspas sem escape ("
). O limite de 500 caracteres não é por palavra-chave, mas sim o tamanho total de todas as palavras-chave. Esse comportamento é consistente com o do site do YouTube.
9 de setembro de 2020
Observação:este é um anúncio de suspensão de uso.
Esta atualização aborda as seguintes mudanças na API. Todas as mudanças vão entrar em vigor a partir de 9 de setembro de 2020, a data deste anúncio. Por isso, os desenvolvedores não devem mais depender de nenhum dos recursos de API listados abaixo.
-
Os seguintes recursos, métodos, parâmetros e propriedades de recursos da API foram descontinuados
imediatamente e vão parar de funcionar na data deste anúncio ou depois dela:
- As seguintes propriedades do recurso
channel
:- A propriedade
statistics.commentCount
- O objeto
brandingSettings.image
e todas as propriedades filhas dele - A lista
brandingSettings.hints
e todas as propriedades filhas dela
- A propriedade
- O parâmetro de filtro
categoryId
do métodochannels.list
- O recurso
guideCategories
e o métodoguideCategories.list
- As seguintes propriedades do recurso
-
As respostas da API para o método
channels.list
não contêm mais a propriedadeprevPageToken
se a solicitação de API definir o parâmetromanagedByMe
comotrue
. Essa mudança não afeta a propriedadeprevPageToken
para outras solicitaçõeschannels.list
nem a propriedadenextPageToken
para nenhuma solicitação. -
As propriedades
contentDetails.relatedPlaylists.watchLater
econtentDetails.relatedPlaylists.watchHistory
do recursochannel
foram anunciadas como descontinuadas em 11 de agosto de 2016. O suporte dos métodosplaylistItems.insert
eplaylistItems.delete
para essas playlists também foi totalmente descontinuado, e as duas propriedades foram removidas da documentação. -
O parâmetro
mySubscribers
do métodochannels.list
, que foi anunciado como descontinuado em 30 de julho de 2013, foi removido da documentação. Use o métodosubscriptions.list
e o parâmetromySubscribers
para recuperar uma lista de inscritos no canal do usuário autenticado. -
O objeto
invideoPromotion
do recursochannel
e todas as propriedades filhas, que foram anunciadas como descontinuadas em 27 de novembro de 2017, foram removidas da documentação.
29 de julho de 2020
Simplificamos nosso processo de cobrança de cota para solicitações de API removendo o custo adicional associado ao parâmetro part
. A partir de agora, vamos cobrar apenas o custo básico do método chamado. Saiba mais sobre a cota simplificada neste link.
O efeito dessa mudança é que a maioria das chamadas de API terá um custo de cota marginalmente menor, enquanto algumas ainda terão o mesmo custo. Essa mudança não aumenta o custo de nenhuma chamada de API. No geral, o impacto provável é que sua cota alocada, que pode ser vista no console do Google Cloud, vai durar um pouco mais.
Recomendamos que todos os desenvolvedores concluam uma auditoria de conformidade dos projetos para garantir o acesso contínuo aos Serviços da API do YouTube.
Esta entrada do histórico de revisões foi publicada originalmente em 20 de julho de 2020.
28 de julho de 2020
Todos os vídeos enviados pelo endpoint videos.insert
de projetos de API não verificados criados após 28 de julho de 2020 serão restritos ao
modo de visualização privada. Para remover essa restrição, cada projeto precisa passar por uma auditoria para verificar a conformidade com os Termos de Serviço.
Os criadores de conteúdo que usam um cliente de API não verificado para enviar vídeos vão receber um e-mail explicando que o vídeo foi bloqueado como privado e que é possível evitar a restrição usando um cliente oficial ou auditado.
Os projetos de API criados antes de 28 de julho de 2020 não são afetados por essa mudança no momento. No entanto, recomendamos que todos os desenvolvedores concluam uma auditoria de conformidade nos projetos para garantir o acesso contínuo aos Serviços da API do YouTube.
21 de julho de 2020
[Atualizado em 28 de julho de 2020.] A atualização da documentação mencionada nesta entrada do histórico de revisões foi republicada em 28 de julho de 2020.
Ontem, publicamos uma atualização da documentação relacionada ao nosso processo de cobrança de cota. No entanto, devido a circunstâncias imprevistas, a mudança de cota ainda não está em vigor. Por isso, a documentação foi revertida para garantir a precisão. Para evitar confusão, a entrada do histórico de revisões que explica a mudança foi removida e será republicada em breve.
7 de julho de 2020
Observação:este é um anúncio de suspensão de uso.
Os parâmetros autoLevels
e stabilize
do método videos.insert
foram descontinuados e removidos da documentação. Os valores são ignorados e não afetam a forma como os vídeos recém-enviados são processados.
15 de junho de 2020
O novo guia Conformidade com as políticas para desenvolvedores do YouTube oferece orientações e exemplos para ajudar você a garantir que seus clientes de API sigam partes específicas dos Termos e das Políticas dos serviços de API do YouTube (TOS da API).
Estas orientações oferecem insights sobre como o YouTube aplica determinados aspectos dos Termos de Serviço da API, mas não substituem nenhum documento atual. O guia aborda algumas das perguntas mais comuns que os desenvolvedores fazem durante as auditorias de conformidade da API. Esperamos que isso simplifique seu processo de desenvolvimento de recursos, ajudando você a entender como interpretamos e aplicamos nossas políticas.
4 de junho de 2020
Observação:esta é uma atualização de um anúncio de descontinuação anterior.
O recurso de boletim do canal foi totalmente descontinuado. Essa mudança foi anunciada inicialmente em 17 de abril de 2020 e já entrou em vigor. Como resultado, o método activities.insert
não é mais compatível, e o método activities.list
não retorna mais boletins do canal. Para mais detalhes, consulte a
Central de Ajuda do YouTube.
17 de abril de 2020
Observação:este é um anúncio de suspensão de uso.
O YouTube está desativando o recurso de boletim do canal. Como resultado, o método
activities.insert
será
descontinuado, e o método activities.list
não vai mais retornar boletins do canal. Essas mudanças vão entrar em vigor na API em 18 de maio de 2020 ou depois dessa data. Para mais detalhes, consulte a
Central de Ajuda do YouTube.
31 de março de 2020
Esta atualização contém as seguintes alterações:
-
Novos recursos e métodos
-
O novo recurso
member
representa um assinante de um canal do YouTube. Um membro oferece apoio financeiro recorrente a um criador de conteúdo e recebe benefícios especiais. Por exemplo, os membros podem conversar quando o criador de conteúdo ativa o modo exclusivo para membros em um chat.Esse recurso substitui o recurso
sponsor
, que faz parte da documentação da API YouTube Live Streaming. O recursosponsor
foi descontinuado, e os clientes da API precisam atualizar as chamadas para o métodosponsors.list
e usar o métodomembers.list
. -
O novo recurso
membershipsLevel
identifica um nível de preços gerenciado pelo criador que autorizou a solicitação de API. O métodomembershipsLevels.list
recupera uma lista de todos os níveis de assinatura do criador de conteúdo.
-
10 de janeiro de 2020
Agora a API pode identificar conteúdo direcionado a crianças, que o YouTube chama de "conteúdo para crianças". Saiba mais sobre o conteúdo para crianças na Central de Ajuda do YouTube.
Os recursos channel
e video
oferecem suporte a duas novas propriedades para permitir que criadores de conteúdo e espectadores identifiquem conteúdo para crianças:
-
A propriedade
selfDeclaredMadeForKids
permite que os criadores de conteúdo especifiquem se um canal ou um vídeo é feito para crianças.
Para canais, essa propriedade pode ser definida ao chamar o métodochannels.update
. Para vídeos, essa propriedade pode ser definida ao chamar os métodosvideos.insert
ouvideos.update
.
Essa propriedade só é incluída em respostas da API que contêm recursoschannel
ouvideo
se o proprietário do canal autorizou a solicitação da API. -
A propriedade
madeForKids
permite que qualquer usuário recupere o status "conteúdo para crianças" de um canal ou vídeo. Por exemplo, o status pode ser determinado com base no valor da propriedadeselfDeclaredMadeForKids
. Consulte a Central de Ajuda do YouTube para mais informações sobre como definir o público do seu canal, vídeos ou transmissões.
Também atualizamos os Termos de Serviço e as Políticas para desenvolvedores dos serviços de API do YouTube. Consulte o Histórico de revisões dos Termos de Serviço das APIs do YouTube para mais informações. As mudanças nos Termos de Serviço dos serviços de API do YouTube e nas políticas para desenvolvedores vão entrar em vigor em 10 de janeiro de 2020, no horário do Pacífico.
10 de setembro de 2019
A documentação de referência da API foi atualizada para refletir uma mudança na forma como as contagens de inscritos são informadas no YouTube e, consequentemente, nas respostas da API. Como resultado da mudança, as contagens de inscritos retornadas pelo serviço da API YouTube Data serão arredondadas para baixo até três números significativos quando forem maiores que mil. Essa mudança afeta a propriedade statistics.subscriberCount do recurso channel
.
Observação:essa mudança afeta o valor da propriedade mesmo quando um usuário envia uma solicitação autorizada de dados sobre o próprio canal. Os proprietários de canais ainda podem ver a contagem exata de inscritos no YouTube Studio.
Por exemplo, se um canal tiver 123.456 inscritos, a propriedade
statistics.subscriberCount
vai conter o valor 123000
.
A tabela abaixo mostra exemplos de como as contagens de inscritos são arredondadas nas respostas da API e abreviadas em outras interfaces do usuário do YouTube visíveis publicamente:
Exemplo de contagem de inscritos | API YouTube Data | Interfaces do YouTube visíveis publicamente |
---|---|---|
1,234 | 1230 | 1,23 mil |
12.345 | 12300 | 12,3 mil |
123.456 | 123000 | 123 mil |
1.234.567 | 1230000 | 1,23 mi |
12.345.678 | 12300000 | 12,3 mi |
123,456,789 | 123000000 | 123 mi |
4 de abril de 2019
Esta atualização contém as seguintes alterações:
-
A documentação de referência da API foi atualizada para explicar melhor os casos de uso comuns de cada método e fornecer exemplos de código dinâmicos e de alta qualidade usando o widget do APIs Explorer. Consulte a documentação do método
channels.list
para ver um exemplo. Agora há dois novos elementos nas páginas que descrevem métodos de API:-
Com o widget do APIs Explorer, é possível selecionar escopos de autorização, inserir valores de parâmetros e propriedades de exemplo e enviar solicitações e respostas reais da API. O widget também oferece uma visualização em tela cheia que mostra exemplos de código completos, que são atualizados dinamicamente para usar os escopos e valores inseridos.
-
A seção Casos de uso comuns descreve um ou mais casos de uso comuns para o método explicado na página. Por exemplo, você pode chamar o método
channels.list
para extrair dados sobre um canal específico ou sobre o canal do usuário atual.Use os links nessa seção para preencher o APIs Explorer com valores de amostra para seu caso de uso ou abrir o APIs Explorer em tela cheia com esses valores já preenchidos. Essas mudanças têm como objetivo facilitar a visualização de exemplos de código diretamente aplicáveis ao caso de uso que você está tentando implementar no seu próprio aplicativo.
No momento, os exemplos de código são compatíveis com Java, JavaScript, PHP, Python e curl.
-
-
A ferramenta exemplos de código também foi atualizada com uma nova interface que oferece todos os recursos descritos acima. Com essa ferramenta, é possível explorar casos de uso para diferentes métodos, carregar valores no APIs Explorer e abrir o APIs Explorer em tela cheia para receber exemplos de código em Java, JavaScript, PHP e Python.
Junto com essa mudança, as páginas que listavam exemplos de código disponíveis para Java, JavaScript, PHP e Python foram removidas.
-
Os guias de início rápido para Java, JavaScript, PHP e Python foram atualizados. Os guias revisados explicam como executar uma amostra com uma chave de API e outra com um Client-ID do OAuth 2.0 usando exemplos de código do APIs Explorer.
As mudanças descritas acima substituem uma ferramenta interativa que foi adicionada à documentação da API em 2017.
9 de julho de 2018
Esta atualização contém as seguintes alterações:
-
A definição da propriedade
snippet.thumbnails
do recursochannel
foi atualizada para informar que, ao mostrar miniaturas no aplicativo, seu código precisa usar os URLs de imagem exatamente como são retornados nas respostas da API. Por exemplo, seu aplicativo não pode usar o domíniohttp
em vez do domíniohttps
em um URL retornado em uma resposta da API.A partir de julho de 2018, os URLs das miniaturas dos canais só estarão disponíveis no domínio
https
, que é como os URLs aparecem nas respostas da API. Depois desse período, talvez você veja imagens corrompidas no aplicativo se ele tentar carregar imagens do YouTube no domíniohttp
. -
Observação:este é um anúncio de suspensão de uso.
A propriedade
recordingDetails.location.altitude
do recursovideo
foi descontinuada. Não há garantia de que os vídeos vão retornar valores para essa propriedade. Da mesma forma, mesmo que as solicitações de API tentem definir um valor para essa propriedade, é possível que os dados recebidos não sejam armazenados.
22 de junho de 2018
O guia de implementação, antes conhecido como guia de implementação e migração, foi atualizado para remover as instruções de migração da API v2 para a API v3. Além disso, as instruções para recursos que foram descontinuados na API v3, como vídeos favoritos, também foram removidas.
27 de novembro de 2017
Esta atualização contém as seguintes alterações:
-
Observação:este é um anúncio de suspensão de uso.
O YouTube vai remover o suporte aos recursos Vídeo em destaque e Site em destaque, que são compatíveis com a API pelo objeto
invideoPromotion
do recursochannel
. Como resultado, esse objeto, incluindo todas as propriedades filhas, está sendo descontinuado.Você ainda pode recuperar e definir dados do
invideoPromotion
até 14 de dezembro de 2017. Depois dessa data:- As tentativas de recuperar a parte
invideoPromotion
ao chamarchannels.list
vão retornar uminvideoPromotion
vazio ou não vão retornar nenhum dadoinvideoPromotion
. - As tentativas de atualizar dados de
invideoPromotion
ao chamarchannels.update
vão retornar uma resposta de sucesso até pelo menos 27 de maio de 2018, mas serão tratadas como operações nulas, ou seja, não vão realizar uma atualização.
Depois de 27 de maio de 2018, é possível que essas solicitações retornem mensagens de erro para indicar, por exemplo, que
invalidPromotion
é uma parte inválida. - As tentativas de recuperar a parte
16 de novembro de 2017
Esta atualização contém as seguintes alterações:
-
A ferramenta de snippet de código interativo agora é compatível com exemplos de código Node.js. Os exemplos também estão visíveis na documentação de quase todos os métodos de API, como o
channels.list
.As amostras personalizáveis foram criadas para oferecer um ponto de partida específico para um caso de uso de um aplicativo Node.js. A funcionalidade é semelhante ao código no guia de início rápido do Node.js. No entanto, as amostras contêm algumas funções utilitárias que não aparecem no guia de início rápido:
- A função
removeEmptyParameters
recebe uma lista de pares de chave-valor correspondentes aos parâmetros de solicitação da API e remove os parâmetros que não têm valores. - A função
createResource
usa uma lista de pares de chave-valor correspondentes a propriedades em um recurso de API. Em seguida, ele converte as propriedades em um objeto JSON que pode ser usado em operaçõesinsert
eupdate
. O exemplo abaixo mostra um conjunto de nomes e valores de propriedades e o objeto JSON que o código criaria para eles:# Key-value pairs: {'id': 'ABC123', 'snippet.title': 'Resource title', 'snippet.description': 'Resource description', 'status.privacyStatus': 'private'} # JSON object: { 'id': 'ABC123', 'snippet': { 'title': 'Resource title', 'description': 'Resource description', }, 'status': { 'privacyStatus': 'private' } }
Todas essas amostras foram projetadas para serem baixadas e executadas localmente. Para mais informações, consulte os pré-requisitos para executar exemplos de código completos localmente nas instruções da ferramenta de snippets de código.
- A função
25 de outubro de 2017
Esta atualização contém as seguintes alterações:
-
Os exemplos de código Python na ferramenta de snippet de código interativo foram atualizados para usar as bibliotecas
google-auth
egoogle-auth-oauthlib
em vez daoauth2client
, que agora está descontinuada.Além dessa mudança, a ferramenta agora oferece exemplos de código completos para aplicativos Python instalados e aplicativos de servidor da Web Python, que usam fluxos de autorização um pouco diferentes. Para ver os exemplos completos (e essa mudança):
- Acesse a ferramenta de snippet de código interativo ou a documentação de qualquer método de API, como o método
channels.list
. - Clique na guia
Python
acima dos exemplos de código. - Clique no botão acima das guias para mudar de um snippet para uma amostra completa.
- A guia agora vai mostrar um exemplo de código completo que usa o fluxo de autorização
InstalledAppFlow
. A descrição acima do exemplo explica isso e também vincula a um exemplo de um aplicativo de servidor da Web. - Clique no link para mudar para o exemplo de servidor da Web. Esse exemplo usa o framework de aplicativos da Web Flask e um fluxo de autorização diferente.
Todas essas amostras foram projetadas para serem baixadas e executadas localmente. Se quiser executar os exemplos, consulte as instruções para executar exemplos de código completos localmente nas instruções da ferramenta de snippet de código.
- Acesse a ferramenta de snippet de código interativo ou a documentação de qualquer método de API, como o método
29 de agosto de 2017
Esta atualização contém as seguintes alterações:
- A definição do parâmetro
forContentOwner
do métodosearch.list
foi atualizada para informar que, se esse parâmetro for definido comotrue
, o parâmetrotype
precisará ser definido comovideo
. - A definição do parâmetro
regionCode
do métodosearch.list
foi atualizada para esclarecer que o parâmetro restringe os resultados da pesquisa a vídeos que podem ser assistidos na região especificada. - O YouTube atualizou os logotipos e ícones da marca. Os novos logotipos "desenvolvido com o YouTube" podem ser baixados na página de diretrizes de branding. Outros novos logotipos e ícones do YouTube também são mostrados nessa página e podem ser baixados no site da marca do YouTube.
24 de julho de 2017
Esta atualização contém as seguintes alterações:
- Um novo guia de início rápido da API YouTube Data está disponível para iOS. O guia explica como usar a API YouTube Data em um aplicativo iOS simples escrito em Objective-C ou Swift.
- A ferramenta de snippets de código interativos da API YouTube Data agora inclui documentação explicando alguns dos recursos dela:
- Execução de solicitações de API
- Alternar entre snippets de código e exemplos de código completos
- Como usar funções boilerplate
- Carregando recursos atuais (para métodos de atualização)
Observação:a ferramenta também está incorporada na documentação de referência da API para métodos de API (exemplo).
1º de junho de 2017
Esta atualização contém as seguintes alterações:
-
Observação:este é um anúncio de suspensão de uso.
As seguintes propriedades de recursos
video
estão sendo descontinuadas. Embora as propriedades sejam compatíveis até 1º de dezembro de 2017, não há garantia de que os vídeos continuarão retornando valores para essas propriedades até essa data. Da mesma forma, as solicitaçõesvideos.insert
evideos.update
que definem esses valores de propriedade não vão gerar erros antes dessa data, mas é possível que os dados recebidos não sejam armazenados.
17 de maio de 2017
Esta atualização contém as seguintes alterações:
-
A documentação de referência da API foi atualizada para tornar os snippets de código mais comuns e interativos. As páginas que explicam métodos de API, como
channels.list
ouvideos.rate
, agora têm uma ferramenta interativa que permite visualizar e personalizar snippets de código em Java, JavaScript, PHP, Python, Ruby, Apps Script e Go.Para qualquer método, a ferramenta mostra snippets de código para um ou mais casos de uso, e cada caso descreve uma maneira comum de chamar esse método. Por exemplo, você pode chamar o método
channels.list
para recuperar dados sobre um canal específico ou sobre o canal do usuário atual.Você também pode interagir com exemplos de código:
-
Modifique os valores de parâmetro e propriedade, e os snippets de código serão atualizados dinamicamente para refletir os valores fornecidos.
-
Alternar entre snippets de código e exemplos completos. Um snippet de código mostra a parte do código que chama o método da API. Um exemplo completo contém esse snippet, além de código clichê para autorizar e enviar solicitações. As amostras completas podem ser copiadas e executadas na linha de comando ou em um servidor da Web local.
-
Executar solicitações clicando em um botão. Para executar solicitações, você precisa autorizar a ferramenta a chamar a API em seu nome.
Essa ferramenta substituiu o APIs Explorer nas páginas em que está disponível. Cada página mostra um link para que você também possa carregar a solicitação em que está trabalhando no APIs Explorer.
-
-
A ferramenta Snippets de código da API Data também foi atualizada com uma nova interface que oferece todos os recursos descritos acima. Os principais recursos novos disponíveis nesta página são:
- Suporte para solicitações de API que gravam dados.
- Suporte para exemplos em Java.
- Código boilerplate mais flexível e abrangente para autorizar usuários e criar solicitações de API.
27 de abril de 2017
Esta atualização contém as seguintes alterações:
- Novos guias de início rápido explicam como configurar um aplicativo simples que faz solicitações da API YouTube Data. No momento, os guias estão disponíveis para Android, Apps Script, Go, Java, JavaScript, Node.js, PHP, Python e Ruby.
30 de março de 2017
Esta atualização contém as seguintes alterações:
- A nova propriedade
topicDetails.topicCategories[]
do recursochannel
contém uma lista de URLs da Wikipedia que descrevem o conteúdo do canal. Os URLs correspondem aos IDs de tópico retornados na propriedadetopicDetails.topicIds[]
do recurso. - A nova propriedade
contentDetails.videoPublishedAt
do recursoplaylistItem
identifica a hora em que o vídeo foi publicado no YouTube. O recurso já contém a propriedadesnippet.publishedAt
, que identifica o momento em que o item foi adicionado à playlist. - Assim como o recurso
channel
, o recursovideo
agora retorna a propriedadetopicDetails.topicCategories[]
, que contém uma lista de URLs da Wikipedia que descrevem o conteúdo do vídeo. Para recursosvideo
, os URLs correspondem aos IDs de tópico retornados na propriedadetopicDetails.relevantTopicIds[]
do recurso. - A nova propriedade
contentDetails.contentRating.mpaatRating
do recursovideo
identifica a classificação que a Motion Picture Association of America deu a um trailer ou prévia de filme.
27 de fevereiro de 2017
Conforme anunciado em 11 de agosto de 2016, o YouTube mudou a lista de IDs de temas aceitos para uma lista selecionada. A lista completa de IDs de tópicos compatíveis está incluída nas propriedades topicDetails
dos recursos channel
e video
, bem como no parâmetro topicId
do método search.list
.
Há várias mudanças na lista selecionada:
- Os seguintes tópicos foram adicionados como subtópicos de
Society
:Nome ID do tópico Negócios /m/09s1f
Saúde /m/0kt51
Militar /m/01h6rj
Política /m/05qt0
Religião /m/06bvp
- O tópico
Animated cartoon
, antes um filho deEntertainment
, foi removido. - O tópico
Children's music
, antes um filho deMusic
, foi removido.
Como resultado dessa mudança, os temas relacionados a um vídeo agora são sempre retornados no valor da propriedade topicDetails.relevantTopicIds[]
do recurso video
.
29 de novembro de 2016
Esta atualização contém as seguintes alterações:
-
Há três pequenas mudanças na lista de IDs de temas que serão aceitos a partir de 10 de fevereiro de 2017:
- A categoria
Professional wrestling
, que antes era filha da categoriaSports
, agora é filha deEntertainment
. - A categoria
TV shows
, que é filha deEntertainment
, é nova. - A categoria
Health
, que antes era filha deLifestyle
, foi removida.
Há algumas categorias principais (
Entertainment
,Gaming
,Lifestyle
,Music
eSports
). Qualquer vídeo associado a uma categoria secundária, comoTennis
, também será associado à categoria principal (Sports
). - A categoria
10 de novembro de 2016
Esta atualização contém as seguintes alterações:
-
Conforme anunciado em 11 de agosto de 2016, a descontinuação do Freebase e da API Freebase exige várias mudanças relacionadas aos IDs de tópicos. Os IDs de tópicos identificam os tópicos associados aos recursos
channel
evideo
. Você também pode usar o parâmetro de pesquisatopicId
para encontrar canais ou vídeos relacionados a um tópico específico.Em 10 de fevereiro de 2017, o YouTube vai começar a retornar um pequeno conjunto de IDs de temas em vez do conjunto muito mais granular de IDs retornado até agora. Além disso, observe que não há garantia de que canais e vídeos estejam associados a algum tema, o que é consistente com o comportamento atual da API.
Para que você possa preparar seus clientes de API para essas mudanças, as definições dos seguintes parâmetros e propriedades da API foram atualizadas para listar os IDs de tópicos que serão compatíveis depois desse período. A lista de categorias é a mesma para todas as propriedades.
- A propriedade
topicDetails.topicIds[]
do recursochannel
. - A propriedade
topicDetails.relevantTopicIds[]
do recursovideo
. - O parâmetro
topicId
do métodosearch.list
.
- A propriedade
-
Observação:este é um anúncio de suspensão de uso.
As seguintes propriedades estão sendo descontinuadas:
- A propriedade
topicDetails.topicIds[]
do recursochannel
. Essa propriedade vai ter suporte até 10 de novembro de 2017. - A propriedade
topicDetails.relevantTopicIds[]
do recursovideo
. Essa propriedade vai ter suporte até 10 de novembro de 2017. - A propriedade
topicDetails.topicIds[]
do recursovideo
. Essa propriedade não vai conter valores após 10 de fevereiro de 2017. Depois dessa data, o valor da propriedadetopicDetails.relevantTopicIds[]
vai identificar todos os temas associados a um vídeo.
- A propriedade
-
Como a Freebase já foi descontinuada, o guia Pesquisar com tópicos da Freebase foi removido da documentação. Esse guia forneceu exemplos de código para mostrar como um aplicativo funcionaria com a API Freebase.
Além disso, vários exemplos de código relacionados a IDs de temas foram removidos da documentação do método
search.list
.
2 de novembro de 2016
Esta atualização contém as seguintes alterações:
-
Novas propriedades e parâmetros
-
O recurso
video
contém várias novas propriedades:-
A propriedade
player.embedHtml
contém uma tag<iframe>
que pode ser usada para incorporar um player que reproduz o vídeo. As novas propriedadesplayer.embedHeight
eplayer.embedWidth
identificam as dimensões do player incorporado. Essas propriedades só serão retornadas se a solicitação de API especificar um valor para pelo menos um dos parâmetrosmaxHeight
oumaxWidth
. Esses dois novos parâmetros são explicados mais adiante nesta entrada do histórico de revisões. -
A nova propriedade
hasCustomThumbnail
indica se o usuário que enviou o vídeo forneceu uma imagem de miniatura personalizada para ele. Essa propriedade só fica visível para quem enviou o vídeo. -
O novo
fpbRatingReasons[]
identifica os motivos da classificação do FPB (África do Sul) do vídeo. -
O novo
mcstRating
identifica a classificação que o vídeo recebeu no Vietnã.
-
-
O método
videos.list
aceita dois novos parâmetros,maxHeight
emaxWidth
. É possível usar um ou os dois parâmetros ao recuperar a parteplayer
nos recursosvideo
.Por padrão, a altura do
<iframe>
retornado na propriedadeplayer.embedHtml
é de 360 px. A largura se ajusta para corresponder à proporção do vídeo, garantindo que o player incorporado não tenha barras pretas enquadrando o vídeo. Por exemplo, se a proporção de um vídeo for 16:9, a largura do player será de 640 pixels.Com os novos parâmetros, você pode especificar que, em vez das dimensões padrão, o código de incorporação use uma altura e/ou largura adequadas ao layout do aplicativo. O servidor da API ajusta as dimensões do player conforme necessário para garantir que o player incorporado não tenha barras pretas enquadrando o vídeo. Os dois parâmetros especificam as dimensões máximas do player incorporado. Assim, se os dois parâmetros forem especificados, uma dimensão ainda poderá ser menor que a quantidade máxima permitida para ela.
Por exemplo, suponha que um vídeo tenha uma proporção de 16:9. Assim, a tag
player.embedHtml
vai conter um player de 640 x 360 se o parâmetromaxHeight
oumaxWidth
não estiver definido.- Se o parâmetro
maxHeight
estiver definido como720
e o parâmetromaxWidth
não estiver definido, a API vai retornar um player de 1280 x 720. - Se o parâmetro
maxWidth
estiver definido como960
e o parâmetromaxHeight
não estiver definido, a API vai retornar um player de 960 x 540. - Se o parâmetro
maxWidth
estiver definido como960
e o parâmetromaxHeight
estiver definido como450
, a API vai retornar um player de 800 x 450.
As novas propriedades
player.embedHeight
eplayer.embedWidth
, descritas acima, identificam as dimensões do player. - Se o parâmetro
-
-
Atualizações em métodos, propriedades e parâmetros atuais
-
A descrição do recurso
channelSection
foi atualizada para informar que um canal pode criar no máximo 10 seções sem definir dados de segmentação e no máximo 100 seções com dados de segmentação.Além disso, a propriedade
targeting
do recursochannelSection
foi atualizada para refletir o fato de que as opções de segmentação só podem ser definidas usando a API. As opções de segmentação são excluídas se a seção do canal for modificada usando a interface do usuário no site do YouTube. -
A definição da propriedade
snippet.name
do recursoi18nLanguage
foi corrigida para refletir que o valor representa o nome de um idioma conforme ele é escrito no idioma especificado pelo parâmetrohl
do métodoi18nLanguage.list
. -
A propriedade
contentDetails.note
do recursoplaylistItem
foi atualizada para informar que o comprimento máximo do valor da propriedade é de 280 caracteres. -
As propriedades
contentDetails.startAt
econtentDetails.endAt
do recursoplaylistItem
foram descontinuadas. Esses campos serão ignorados se forem definidos em solicitaçõesplaylistItems.insert
ouplaylistItems.update
. -
Os métodos
playlistItems.delete
eplaylistItems.update
agora são compatíveis com o parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. As solicitações que usam esse método também precisam ser autorizadas com um token que forneça acesso ao escopohttps://www.googleapis.com/auth/youtubepartner
. -
Os parâmetros
publishedBefore
epublishedAfter
do métodosearch.list
foram atualizados para indicar que os valores de parâmetro são inclusivos. Por exemplo, se o parâmetropublishedBefore
estiver definido, a API vai retornar recursos criados antes ou no horário especificado. -
A propriedade
contentDetails.contentRating.grfilmRating
do recursovideo
aceita três valores adicionais:grfilmK12
,grfilmK15
egrfilmK18
. -
A descrição do método
videos.insert
foi atualizada para informar que o tamanho máximo do arquivo para vídeos enviados aumentou de 64 GB para 128 GB.
-
-
Erros novos e atualizados
-
A API é compatível com os seguintes novos erros:
Tipo de erro Detalhe do erro Descrição forbidden (403)
homeParameterDeprecated
O método activities.list
retorna esse erro para indicar que os dados de atividade da página inicial do usuário não estão disponíveis pela API. Esse erro pode ocorrer se você definir o parâmetrohome
comotrue
em uma solicitação não autorizada.invalidValue (400)
invalidContentDetails
O método playlistItems.insert
retorna esse erro para indicar que o objetocontentDetails
na solicitação é inválido. Um motivo para esse erro é que o campocontentDetails.note
tem mais de 280 caracteres.forbidden (403)
watchHistoryNotAccessible
O método playlistItems.list
retorna esse erro para indicar que a solicitação tentou recuperar itens da playlist "Histórico de exibição", mas isso não é possível usando a API.forbidden (403)
watchLaterNotAccessible
O método playlistItems.list
retorna esse erro para indicar que a solicitação tentou recuperar itens da playlist "Assistir mais tarde", mas isso não é possível usando a API.badRequest (400)
uploadLimitExceeded
O método videos.insert
retorna esse erro para indicar que o canal excedeu o número de vídeos que pode enviar.forbidden (403)
forbiddenEmbedSetting
O método videos.update
retorna esse erro para indicar que a solicitação da API tenta definir uma configuração de incorporação inválida para o vídeo. Alguns canais não têm permissão para oferecer players incorporados para transmissões ao vivo. Acesse a Central de Ajuda do YouTube para mais informações. -
O método
playlistItems.insert
não retorna mais um erro se você inserir um vídeo duplicado em uma playlist. Esse erro ocorria em algumas playlists, como vídeos favoritos, que não permitiam duplicados, mas não são mais compatíveis. Em geral, as playlists permitem vídeos duplicados.
-
-
Outras atualizações
-
A entrada do histórico de revisões de 15 de setembro de 2016 foi atualizada para esclarecer que, sempre que as propriedades
contentDetails.relatedPlaylists.watchHistory
econtentDetails.relatedPlaylists.watchLater
do recursochannel
são incluídas em uma resposta, elas sempre contêm os valoresHL
eWL
, respectivamente. Além disso, essas propriedades só são incluídas se um usuário autorizado estiver recuperando dados sobre o próprio canal.
-
15 de setembro de 2016
Esta atualização contém as seguintes alterações:
-
A atualização do histórico de revisões de 11 de agosto de 2016 discutiu várias mudanças relacionadas aos IDs de tópicos, incluindo o fato de que o conjunto de IDs de tópicos compatíveis vai mudar a partir de 10 de fevereiro de 2017. A lista de temas que serão aceitos será publicada até 10 de novembro de 2016.
-
As seguintes mudanças já estão em vigor. O aviso dessas mudanças foi dado na atualização do histórico de revisões em 11 de agosto de 2016:
-
Se o método
activities.list
for chamado com o parâmetrohome
definido comotrue
, a resposta da API vai conter itens semelhantes ao que um usuário desconectado do YouTube veria na página inicial.Essa é uma pequena mudança que visa oferecer uma experiência melhor do que o comportamento descrito na atualização do histórico de revisões de 11 de agosto de 2016. Essa atualização informou que as solicitações que usam o parâmetro
home
retornariam uma lista vazia. -
As propriedades
contentDetails.relatedPlaylists.watchHistory
econtentDetails.relatedPlaylists.watchLater
do recursochannel
agora contêm valores deHL
eWL
, respectivamente, para todos os canais.Essas propriedades só ficam visíveis para um usuário autorizado que recupera dados sobre o próprio canal. As propriedades sempre contêm os valores
HL
eWL
, mesmo para um usuário autorizado que recupera dados sobre o próprio canal. Portanto, não é possível recuperar os IDs do histórico de exibição e da playlist "Assistir mais tarde" pela API.Além disso, as solicitações para recuperar detalhes de playlists (
playlists.list
) ou itens de playlists (playlistItems.list
) do histórico de exibição ou da playlist "Assistir mais tarde" de um canal agora retornam listas vazias. Esse comportamento é válido para os novos valores,HL
eWL
, bem como para qualquer ID de playlist "Assistir mais tarde" ou histórico de exibição que seu cliente da API já tenha armazenado.
-
-
O objeto
fileDetails.recordingLocation
do recursovideo
e as propriedades filho dele não são mais retornados. Antes, esses dados (como o objetofileDetails
principal) só podiam ser recuperados pelo proprietário de um vídeo.
11 de agosto de 2016
Esta atualização contém as seguintes alterações:
-
Os Termos de Serviço dos serviços de API do YouTube recém-publicados ("os Termos atualizados"), discutidos em detalhes no Blog de engenharia e desenvolvedores do YouTube, oferecem um conjunto abrangente de atualizações aos Termos de Serviço atuais. Além dos Termos atualizados, que vão entrar em vigor em 10 de fevereiro de 2017, esta atualização inclui vários documentos de apoio para ajudar a explicar as políticas que os desenvolvedores precisam seguir.
O conjunto completo de novos documentos está descrito no histórico de revisões dos Termos atualizados. Além disso, as mudanças futuras nos Termos atualizados ou nos documentos de suporte também serão explicadas nesse histórico de revisões. Você pode se inscrever em um feed RSS que lista as mudanças no histórico de revisões usando um link no documento.
-
A descontinuação do Freebase e da API Freebase está causando várias mudanças relacionadas aos IDs de tópicos. Os IDs de tópicos são usados nos seguintes recursos e métodos da API:
- A parte
topicDetails
do recursochannel
identifica os tópicos associados ao canal. - A parte
topicDetails
do recursovideo
identifica os temas associados ao vídeo. - O parâmetro
topicId
do métodosearch.list
permite pesquisar vídeos ou canais relacionados a um tópico específico.
As mudanças nesses recursos são:
-
A partir de 10 de fevereiro de 2017, o YouTube vai começar a retornar um pequeno conjunto de IDs de temas em vez do conjunto muito mais granular de IDs retornado até agora. Esse conjunto de tópicos compatíveis identifica categorizações de alto nível, como Esportes ou Basquete, mas não identifica equipes ou jogadores específicos. Vamos anunciar o conjunto de temas aceitos para que você tenha tempo de preparar seu aplicativo para essa mudança.
-
Todos os IDs de tópicos do Freebase que você já recuperou podem ser usados para pesquisar conteúdo até 10 de fevereiro de 2017. No entanto, depois desse período, você só poderá usar o conjunto menor de temas identificados no item anterior para recuperar resultados da pesquisa por tema.
-
Depois de 10 de fevereiro de 2017, se você tentar pesquisar resultados usando um ID de tema que não está no conjunto menor de IDs compatíveis, a API vai retornar um conjunto de resultados vazio.
- A parte
-
Vários campos e parâmetros da API serão descontinuados a partir de 12 de setembro de 2016:
-
O parâmetro
home
do métodoactivities.list
permitia que um usuário autorizado recuperasse o feed de atividades que seria exibido na página inicial do YouTube para esse usuário. As solicitações que usarem esse parâmetro após 12 de setembro de 2016 vão retornar uma lista vazia. -
As propriedades
contentDetails.relatedPlaylists.watchHistory
econtentDetails.relatedPlaylists.watchLater
do recursochannel
só ficam visíveis para um usuário autorizado que recupera dados sobre o próprio canal. Depois de 12 de setembro de 2016, ocontentDetails.relatedPlaylists.watchHistory
vai retornar um valor deHL
, e a propriedadecontentDetails.relatedPlaylists.watchLater
vai retornar um valor deWL
para todos os canais.As solicitações para recuperar detalhes de playlists (
playlists.list
) do histórico de exibição ou da playlist "Assistir mais tarde" de um canal vão retornar uma lista vazia após 12 de setembro de 2016. As solicitações para recuperar itens de playlist (playlistItems.list
) em qualquer uma dessas playlists também vão retornar uma lista vazia após esse período. Isso vale para os novos valores,HL
eWL
, e para os IDs do histórico de exibição ou da playlist "Assistir mais tarde" que o cliente da API já armazenou. -
O objeto
fileDetails.recordingLocation
do recursovideo
ou qualquer uma das propriedades filhas dele não será mais retornado após 12 de setembro de 2016. Esses dados só podem ser recuperados pelo proprietário de um vídeo, já que o objetofileDetails
principal só pode ser recuperado por um proprietário de vídeo.
-
13 de junho de 2016
Esta atualização contém as seguintes alterações:
-
A propriedade
contentDetails.googlePlusUserId
do recursochannel
foi descontinuada. Antes, a propriedade só estava presente se o canal estivesse associado a um perfil do Google+. Após a descontinuação, a propriedade não será mais incluída em nenhum recursochannel
. -
A propriedade
snippet.authorGoogleplusProfileUrl
do recursocomment
foi descontinuada. Antes, a propriedade só estava presente se o canal estivesse associado a um perfil do Google+. Após a descontinuação, a propriedade não será mais incluída em nenhum recursocomment
.
Como nenhuma dessas propriedades será retornada após a descontinuação, ambas foram removidas da documentação do recurso correspondente.
31 de maio de 2016
Esta atualização contém as seguintes alterações:
-
O novo parâmetro
myRecentSubscribers
do métodosubscriptions.list
recupera uma lista dos inscritos no canal do usuário autenticado em ordem cronológica inversa da data de inscrição.O novo parâmetro só permite recuperar os 1.000 inscritos mais recentes no canal do usuário autenticado. Para recuperar uma lista completa de inscritos, use o parâmetro
mySubscribers
. Esse parâmetro, que não retorna assinantes em uma ordem específica, não limita o número de assinantes que podem ser recuperados. -
A definição da propriedade
snippet.thumbnails.(key)
foi atualizada para os recursos activity, playlistItem, playlist, search result, thumbnail e video para informar que tamanhos adicionais de imagens em miniatura estão disponíveis para alguns vídeos.- A imagem
standard
tem 640 px de largura e 480 px de altura. - A imagem
maxres
tem 1280 px de largura e 720 px de altura.
- A imagem
-
A definição do parâmetro
part
do métodochannelSection.list
foi atualizada para informar que a partetargeting
pode ser recuperada a um custo de2
unidades de cota. -
O método
videos.list
agora retorna um erro proibido (403
) quando uma solicitação autorizada de maneira inadequada tenta recuperar as partesfileDetails
,processingDetails
ousuggestions
de um recursovideo
. Essas partes ficam disponíveis apenas para o proprietário do vídeo.
17 de maio de 2016
A nova ferramenta Snippets de código da API Data oferece snippets de código curtos para casos de uso comuns da API YouTube Data. No momento, os snippets de código estão disponíveis para todos os métodos de API somente leitura em Apps Script, Go, JavaScript, PHP, Python e Ruby.
Para cada método, a ferramenta mostra exemplos de código para um ou mais casos de uso. Por exemplo, ele fornece cinco snippets de código para o método search.list
:
- Listar vídeos por palavra-chave
- Listar vídeos por local
- Listar eventos ao vivo
- Pesquisar os vídeos do usuário autenticado
- Listar vídeos relacionados
Para cada caso de uso, a ferramenta mostra os parâmetros usados na solicitação de API. É possível modificar os valores dos parâmetros. Nesse caso, a ferramenta atualiza os snippets de código para refletir os valores que você forneceu.
Por fim, a ferramenta mostra a resposta da API a cada solicitação. Se você modificou os parâmetros da solicitação, a resposta da API se baseia nos valores de parâmetros fornecidos. É necessário autorizar a ferramenta a enviar solicitações em seu nome para que as respostas da API sejam exibidas.
28 de abril de 2016
Esta atualização contém as seguintes alterações:
-
A nova propriedade
contentDetails.projection
do recursovideo
especifica o formato de projeção do vídeo. Os valores válidos da propriedade são360
erectangular
. -
As propriedades
recordingDetails.location
efileDetails.recordingLocation
do recursovideo
foram atualizadas para explicar a diferença entre elas:- A propriedade
recordingDetails.location
identifica o local que o proprietário do vídeo quer associar a ele. É possível editar e pesquisar esse local em vídeos públicos, e ele pode ser mostrado aos usuários em vídeos públicos. - O valor da propriedade
fileDetails.recordingLocation
é imutável e representa o local associado ao arquivo de vídeo original enviado. O valor só é visível para o proprietário do vídeo.
- A propriedade
-
A definição da propriedade
contentDetails.relatedPlaylists.favorites
do recursochannel
foi atualizada para informar que o valor da propriedade pode conter um ID de playlist que se refere a uma playlist vazia e que não pode ser buscada. Isso acontece porque a funcionalidade de vídeos favoritos já foi descontinuada. Essa propriedade não está sujeita à política de suspensão de uso da API. -
A definição do erro
ineligibleAccount
, que pode ser retornado pelos métodoscomments.insert
,comments.update
,commentThreads.insert
oucommentThreads.update
, foi atualizada para refletir que o erro ocorre quando a conta do YouTube usada para autorizar a solicitação da API não foi mesclada com a Conta do Google do usuário.
20 de abril de 2016
Esta atualização contém as seguintes alterações:
-
A definição do parâmetro
part
do métodochannels.update
foi atualizada para informar quelocalizations
também é um valor válido para esse parâmetro. -
A seção Uso da cota do guia "Como começar" foi atualizada para incluir um link para o Console do Google Developers, onde você pode conferir sua cota real e o uso dela.
16 de março de 2016
Esta atualização contém as seguintes alterações:
-
Atualizações de recursos e métodos atuais
-
A documentação do recurso
channelBanner
foi atualizada para informar que o tamanho recomendado para a imagem de banner do canal enviada é de 2560 px por 1440 px. O tamanho mínimo (2048 px por 1152 px) não mudou. -
A nova propriedade
snippet.customUrl
do recursochannel
identifica o URL personalizado associado ao canal. Nem todos os canais têm URLs personalizados. A Central de Ajuda do YouTube explica os requisitos de qualificação para receber um URL personalizado e como configurá-lo. -
O objeto
brandingSettings.watch
do recursochannel
e todas as propriedades filho dele foram descontinuados. -
A resposta da API a uma solicitação
search.list
agora contém uma propriedaderegionCode
. A propriedade identifica o código da região usado na consulta de pesquisa. O código da região instrui a API a retornar resultados da pesquisa para o país especificado.O valor da propriedade é um código de país ISO de duas letras que identifica a região. O método
i18nRegions.list
retorna uma lista de regiões compatíveis. O valor padrão éUS
. Se uma região não compatível for especificada, o YouTube ainda poderá selecionar outra região, em vez do valor padrão, para processar a consulta. -
As definições das propriedades
snippet.label
esnippet.secondaryReasons[].label
do recursovideoAbuseReportReason
foram atualizadas para informar que elas contêm texto de rótulo localizado para os motivos da denúncia de abuso.Além disso, o método
videoAbuseReportReasons.list
agora é compatível com o parâmetrohl
, que especifica o idioma a ser usado no texto do rótulo na resposta da API. O valor padrão do parâmetro éen_US
. -
A nova propriedade
contentDetails.contentRating.ecbmctRating
do recursovideo
identifica a classificação de um vídeo do Conselho de Avaliação e Classificação da Turquia do Ministério da Cultura e Turismo.Além disso, as propriedades da API para outros sistemas de classificação aceitam os seguintes novos valores de propriedade:
contentDetails.contentRating.fpbRating
(África do Sul)
Classificação: 10; valor da propriedade:fpb10
contentDetails.contentRating.moctwRating
(Taiwan)
Classificação: R-12; valor da propriedade:moctwR12
contentDetails.contentRating.moctwRating
(Taiwan)
Classificação: R-15; valor da propriedade:moctwR15
-
A propriedade
liveStreamingDetails.activeLiveChatId
do recursovideo
contém o ID da conversa Live ativa associada ao vídeo. O valor da propriedade só aparece se o vídeo for uma transmissão ao vivo atual com o chat ao vivo ativado. Depois que a transmissão termina e o chat ao vivo é encerrado, a propriedade não é mais retornada para o vídeo. -
A propriedade
status.rejectionReason
do recursovideo
é compatível com o novo valor de propriedadelegal
.
-
-
A API é compatível com os seguintes novos erros:
Tipo de erro Detalhe do erro Descrição badRequest (400)
notEditable
Os métodos channelSections.insert
,channelSections.update
echannelSections.delete
retornam esse erro para indicar que a seção do canal especificada não pode ser criada, atualizada ou excluída.badRequest (400)
styleRequired
Os métodos channelSections.insert
echannelSections.update
retornam esse erro para indicar que o recursochannelSection
enviado na solicitação da API precisa especificar um valor para a propriedadesnippet.style
.badRequest (400)
typeRequired
Os métodos channelSections.insert
echannelSections.update
retornam esse erro para indicar que o recursochannelSection
enviado na solicitação da API precisa especificar um valor para a propriedadesnippet.type
.badRequest (400)
processingFailure
O método commentThreads.list
retorna esse erro para indicar que o servidor da API não conseguiu processar a solicitação. Embora possa ser um erro temporário, geralmente indica que a entrada da solicitação é inválida. Verifique a estrutura do recursocommentThread
no corpo da solicitação para garantir que ela seja válida.forbidden (403)
commentsDisabled
O método commentThreads.list
retorna esse erro para indicar que o vídeo identificado pelo parâmetrovideoId
desativou os comentários.badRequest (400)
commentTextTooLong
O método commentThreads.insert
retorna esse erro para indicar que o recursocomment
que está sendo inserido contém muitos caracteres na propriedadesnippet.topLevelComment.snippet.textOriginal
.invalidValue (400)
videoAlreadyInAnotherSeriesPlaylist
O método playlistItems.insert
retorna esse erro para indicar que o vídeo que você está tentando adicionar à playlist já está em outra playlist em série. Acesse a Central de Ajuda do YouTube para mais informações sobre playlists de séries.badRequest (400)
subscriptionForbidden
O método subscriptions.insert
retorna esse erro para indicar que você atingiu o número máximo de inscrições ou que criou muitas inscrições recentemente. Nesse caso, tente de novo depois de algumas horas.badRequest (400)
invalidCategoryId
O método videos.update
retorna esse erro para indicar que a propriedadesnippet.categoryId
no recursovideo
enviado especificou um ID de categoria inválido. Use o métodovideoCategories.list
para recuperar as categorias compatíveis.badRequest (400)
invalidDescription
O método videos.update
retorna esse erro para indicar que a propriedadesnippet.description
no recursovideo
enviado especificou um valor inválido.badRequest (400)
invalidPublishAt
O método videos.update
retorna esse erro para indicar que a propriedadestatus.publishAt
no recursovideo
enviado especificou um horário de publicação programada inválido.badRequest (400)
invalidRecordingDetails
O método videos.update
retorna esse erro para indicar que o objetorecordingDetails
no recursovideo
enviado especificou detalhes de gravação inválidos.badRequest (400)
invalidTags
O método videos.update
retorna esse erro para indicar que a propriedadesnippet.tags
no recursovideo
enviado especificou um valor inválido.badRequest (400)
invalidTitle
O método videos.update
retorna esse erro para indicar que a propriedadesnippet.title
no recursovideo
enviado especificou um título de vídeo inválido ou vazio.badRequest (400)
invalidVideoMetadata
O método videos.update
retorna esse erro para indicar que os metadados da solicitação são inválidos. Esse erro ocorre se a solicitação atualizar a partesnippet
de um recursovideo
, mas não definir um valor para as propriedadessnippet.title
esnippet.categoryId
.
18 de dezembro de 2015
As leis da União Europeia (UE) exigem que determinadas declarações sejam fornecidas e consentimentos sejam obtidos dos usuários finais na UE. Portanto, para usuários finais na União Europeia, você precisa obedecer à Política de consentimento de usuários da União Europeia. Adicionamos um aviso sobre esse requisito nos Termos de Serviço da API do YouTube.
19 de novembro de 2015
Agora, a API permite definir e recuperar texto localizado para as propriedades snippet.title
e snippet.description
dos recursos playlist
e video
, a propriedade snippet.title
do recurso channelSection
e a propriedade snippet.description
do recurso channel
.
-
Definir títulos e descrições localizadas
É possível definir valores localizados para um recurso ao chamar o método
insert
ouupdate
dele. Para definir valores localizados para um recurso, faça o seguinte:-
Verifique se um valor está definido para a propriedade
snippet.defaultLanguage
do recurso. Essa propriedade identifica o idioma das propriedadessnippet.title
esnippet.description
do recurso. O valor pode ser qualquer idioma de aplicativo compatível ou a maioria dos outros códigos de idioma ISO 639-1:2002. Por exemplo, se você enviar um vídeo com título e descrição em inglês, defina a propriedadesnippet.defaultLanguage
comoen
.Observação sobre a atualização de recursos
channel
:para definir a propriedadesnippet.defaultLanguage
de um recursochannel
, é necessário atualizar a propriedadebrandingSettings.channel.defaultLanguage
. -
Adicione o objeto
localizations
ao recurso que você está atualizando. Cada chave de objeto é uma string que identifica um idioma do aplicativo ou um código de idioma ISO 639-1:2002, e cada chave é mapeada para um objeto que contém o título (e a descrição) localizado do recurso.O snippet de exemplo abaixo define o idioma padrão do recurso como inglês. Ele também adiciona títulos e descrições localizados em alemão e espanhol a um vídeo:
{ "kind": "youtube#video", ... "snippet": { "title": "Playing soccer", "description": "We play soccer in the park on Sundays.", "defaultLanguage": "en", ... }, "localizations": "de": { "title": "Fußball spielen", "description": "Wir spielen Fußball im Park am Sonntag" }, "es": { "title": "Jugar al fútbol", "description": "Nosotros jugamos fútbol en el parque los domingos", } } }
Importante:ao atualizar os dados localizados de um recurso, sua solicitação de API precisa incluir todas as versões localizadas atuais dos dados. Por exemplo, se você enviar uma solicitação subsequente para adicionar dados em português ao vídeo no exemplo acima, ela precisará incluir os dados localizados em alemão, espanhol e português.
-
-
Como recuperar valores localizados
A API oferece duas maneiras de recuperar valores localizados para um recurso:
-
Adicione o parâmetro
hl
à sua solicitaçãochannels.list
,channelSections.list
,playlists.list
ouvideos.list
para recuperar dados localizados de um idioma específico do aplicativo compatível com o site do YouTube. Se os detalhes do recurso localizado estiverem disponíveis nesse idioma, o objetosnippet.localized
do recurso vai conter os valores localizados. No entanto, se os detalhes localizados não estiverem disponíveis, o objetosnippet.localized
vai conter detalhes do recurso no idioma padrão dele.Por exemplo, suponha que uma solicitação
videos.list
tenha recuperado dados para o vídeo descrito acima com dados localizados em alemão e espanhol. Se o parâmetrohl
fosse definido comode
, o recurso conteria os seguintes dados:{ "kind": "youtube#video", ... "snippet": { "title": "Playing soccer", "description": "We play soccer in the park on Sundays.", "defaultLanguage": "en", "localized": { "title": "Fußball spielen", "description": "Wir spielen Fußball im Park am Sonntag" } ... } }
No entanto, se o parâmetro
hl
fosse definido comofr
, o objetosnippet.localized
conteria o título e a descrição em inglês, porque esse é o idioma padrão do recurso, e os detalhes localizados em francês não estão disponíveis.Importante:o parâmetrohl
aceita apenas valores que identificam idiomas de aplicativos compatíveis com o site do YouTube. Para determinar se o texto localizado está disponível em outros idiomas, recupere a partelocalizations
do recurso e filtre para determinar se o texto localizado existe.
Por exemplo, você precisaria recuperar a lista completa de localizações para determinar se o texto localizado está disponível em inglês dos Apalaches.
-
Ao recuperar um recurso, inclua
localizations
no valor do parâmetropart
para recuperar todos os detalhes localizados desse recurso. Se você estiver recuperando dados localizados para um idioma que não é um idioma atual do aplicativo YouTube, use essa abordagem para recuperar todas as localizações e filtre para determinar se os dados localizados desejados existem.
-
-
Erros relacionados a valores de texto localizados
A API também oferece suporte aos seguintes novos erros para valores de texto localizados:
Tipo de erro Detalhe do erro Descrição badRequest (400)
defaultLanguageNotSetError
Esse erro indica que uma solicitação que tenta inserir ou atualizar o objeto localizations
de um recurso está falhando porque a propriedadesnippet.defaultLanguage
não está definida para esse recurso. Os métodoschannels.update
,channelSections.insert
,channelSections.update
,playlists.insert
,playlists.update
,videos.insert
evideos.update
oferecem suporte a esse erro.badRequest (400)
localizationValidationError
Esse erro indica que um dos valores no objeto localizations
de um recurso não foi validado. Por exemplo, esse erro pode ocorrer se o objeto tiver um código de idioma inválido. Os métodoschannels.update
,channelSections.insert
,channelSections.update
,playlists.insert
eplaylists.update
oferecem suporte a esse erro.
4 de novembro de 2015
Esta atualização contém as seguintes alterações:
-
Atualizações de recursos e métodos atuais
-
O parâmetro
order
do métodosearch.list
foi atualizado para informar que, se você classificar as transmissões ao vivo porviewCount
, os resultados da API serão classificados pelo número de espectadores simultâneos das transmissões enquanto elas ainda estiverem em andamento. -
O parâmetro
relatedToVideoId
do métodosearch.list
foi atualizado para informar que, se o parâmetro for definido, os únicos outros parâmetros compatíveis serãopart
,maxResults
,pageToken
,regionCode
,relevanceLanguage
,safeSearch
,type
(que precisa ser definido comovideo
) efields
. Essa atualização não reflete uma mudança no comportamento da API. -
A definição da propriedade
snippet.publishedAt
do recursovideo
foi atualizada para informar que o valor da propriedade, que especifica a data e a hora em que o vídeo foi publicado, pode ser diferente da hora em que o vídeo foi enviado. Por exemplo, se um vídeo for enviado como privado e depois se tornar público, o valor da propriedade vai especificar o momento em que ele foi disponibilizado. A definição atualizada também explica como o valor é preenchido para vídeos privados e não listados.Essa mudança não reflete uma mudança no comportamento da API.
-
A definição da propriedade
status.publishAt
do recursovideo
foi atualizada para observar:- Se você definir o valor dessa propriedade ao chamar o método
videos.update
, também precisará definir o valor da propriedadestatus.privacyStatus
comoprivate
, mesmo que o vídeo já seja particular. - Se a solicitação programar a publicação de um vídeo para algum momento no passado, ele será publicado imediatamente. Assim, o efeito de definir a propriedade
status.publishAt
para uma data e hora no passado é o mesmo de mudar oprivacyStatus
do vídeo deprivate
parapublic
.
- Se você definir o valor dessa propriedade ao chamar o método
-
A propriedade
contentDetails.contentRating.cncRating
do recursovideo
especifica a classificação do vídeo pela Commission de classification cinematographique da França. Essa propriedade substitui acontentDetails.contentRating.fmocRating
, que foi descontinuada. -
A definição do
brandingSettings.channel.keywords
do recursochannel
foi atualizada para refletir corretamente que o valor da propriedade contém uma lista de strings separadas por espaços, e não por vírgulas, como documentado anteriormente. Essa atualização não reflete uma mudança no comportamento da API. -
A documentação do método
thumbnails.set
foi atualizada para refletir com precisão que o corpo da solicitação contém a imagem da miniatura que você está enviando e associando a um vídeo. O corpo da solicitação não contém um recursothumbnail
. Antes, a documentação dizia que não era necessário fornecer um corpo de solicitação ao chamar esse método. Essa atualização não reflete uma mudança no comportamento da API. -
A descrição do recurso
activity
foi atualizada para refletir o fato de que o métodoactivities.list
não inclui recursos relacionados a novos comentários em vídeos. Ossnippet.type
econtentDetails.comment
do recurso também foram atualizados.
-
-
Erros novos e atualizados
-
Agora a API é compatível com os seguintes erros:
Detalhes do erro activities.insert
Código de resposta HTTP badRequest (400)
Motivo invalidMetadata
Descrição A propriedade kind
não corresponde ao tipo de ID fornecido.commentThreads.update
comments.insert
comments.update
Código de resposta HTTP badRequest (400)
Motivo commentTextTooLong
Descrição O recurso comment
que está sendo inserido ou atualizado contém muitos caracteres na propriedadesnippet.topLevelComment.snippet.textOriginal
.playlistItems.insert
playlistItems.update
Código de resposta HTTP forbidden (403)
Motivo playlistItemsNotAccessible
Descrição A solicitação não está autorizada corretamente para inserir, atualizar ou excluir o item de playlist especificado. playlists.delete
playlists.insert
playlists.update
Código de resposta HTTP badRequest (400)
Motivo playlistForbidden
Descrição Essa operação é proibida ou a solicitação não está autorizada corretamente. search.list
Código de resposta HTTP badRequest (400)
Motivo invalidLocation
Descrição O valor do parâmetro location
e/oulocationRadius
foi formatado incorretamente.search.list
Código de resposta HTTP badRequest (400)
Motivo invalidRelevanceLanguage
Descrição O valor do parâmetro relevanceLanguage
foi formatado incorretamente.subscriptions.insert
Código de resposta HTTP badRequest (400)
Motivo subscriptionForbidden
Descrição Esse erro ocorre quando uma das seguintes condições é verdadeira: - A assinatura que você está tentando criar já existe
- Você já atingiu o número máximo de assinaturas
- Você está tentando se inscrever no seu próprio canal, o que não é permitido.
- Você criou muitas inscrições recentemente. Aguarde algumas horas antes de tentar de novo.
videos.update
Código de resposta HTTP badRequest (400)
Motivo invalidDefaultBroadcastPrivacySetting
Descrição A solicitação tenta definir uma configuração de privacidade inválida para a transmissão padrão.
-
28 de agosto de 2015
Esta atualização contém as seguintes alterações:
-
Atualizações de recursos e métodos atuais
-
A propriedade
statistics.favoriteCount
do recursovideo
foi descontinuada.De acordo com nossa política de suspensão de uso, essa propriedade vai continuar sendo incluída nos recursos
video
por pelo menos um ano após este anúncio. No entanto, o valor da propriedade agora é sempre definido como0
.
-
7 de agosto de 2015
Esta atualização contém as seguintes alterações:
-
Atualizações de recursos e métodos atuais
-
A definição da propriedade
snippet.tags[]
do recursovideo
foi atualizada para fornecer mais informações sobre como o servidor de API calcula o comprimento do valor da propriedade. Essa atualização não reflete uma mudança no comportamento da API.Especificamente, a definição agora explica que, se uma tag contiver um espaço, o servidor de API vai processar o valor da tag como se ela estivesse entre aspas, e as aspas contam para o limite de caracteres. Portanto, para fins de limites de caracteres, a tag Foo-Baz contém sete caracteres, mas a tag Foo Baz contém nove caracteres.
-
O método
commentThreads.insert
não é mais compatível com o parâmetroshareOnGooglePlus
, que antes indicava se um comentário e as respostas a ele também deveriam ser postados no perfil do Google+ do autor. Se uma solicitação enviar o parâmetro, o servidor da API vai ignorá-lo, mas processará a solicitação.
-
18 de junho de 2015
Esta atualização contém as seguintes alterações:
-
Atualizações de recursos e métodos atuais
-
O novo parâmetro
order
do métodocommentThreads.list
especifica a ordem em que a resposta da API deve listar as conversas de comentários. As conversas podem ser ordenadas por tempo ou relevância. O comportamento padrão é ordenar por tempo. -
A nova propriedade
snippet.defaultAudioLanguage
do recursovideo
especifica o idioma falado na faixa de áudio padrão do vídeo. -
A definição da propriedade
contentDetails.licensedContent
do recursovideo
foi atualizada para esclarecer que o conteúdo precisa ter sido enviado originalmente para um canal vinculado a um parceiro de conteúdo do YouTube e reivindicado por ele. Isso não representa uma mudança no comportamento real da API. -
Os métodos
captions.delete
,captions.download
,captions.insert
,captions.list
ecaptions.update
agora são compatíveis com o parâmetroonBehalfOfContentOwner
, que já é compatível com vários outros métodos. As solicitações que usam esse método também precisam ser autorizadas com um token que forneça acesso ao escopohttps://www.googleapis.com/auth/youtubepartner
.
-
-
Erros novos e atualizados
-
Agora a API é compatível com os seguintes erros:
Detalhes do erro videos.rate
Código de resposta HTTP badRequest (400)
Motivo emailNotVerified
Descrição O usuário precisa verificar o endereço de e-mail antes de avaliar o vídeo. videos.rate
Código de resposta HTTP badRequest (400)
Motivo videoPurchaseRequired
Descrição Os vídeos alugados só podem ser classificados pelos usuários que os alugaram. -
Os métodos
subscriptions.delete
esubscriptions.insert
não são mais compatíveis com os errosaccountClosed
eaccountSuspended
.
-
27 de abril de 2015
Esta atualização contém as seguintes alterações:
-
Novos recursos e métodos
-
O novo recurso
videoAbuseReportReason
contém informações sobre um motivo para um vídeo ser sinalizado por conter conteúdo abusivo. O métodovideoAbuseReportReasons.list
permite recuperar uma lista de todos os motivos pelos quais os vídeos podem ser sinalizados. -
O novo método
videos.reportAbuse
oferece uma maneira de sinalizar um vídeo que contém conteúdo abusivo. O corpo da solicitação contém um objeto JSON que especifica o vídeo sinalizado e o motivo pelo qual ele é considerado abusivo. Os motivos válidos podem ser obtidos com o métodovideoAbuseReportReason.list
descrito acima.O guia de migração também foi atualizado com um exemplo de como denunciar um vídeo abusivo. Com essa mudança, a API v3 agora oferece suporte a todos os recursos da API v2 que ela está programada para oferecer suporte. Esses recursos também são explicados no guia de migração.
-
-
Atualizações de recursos e métodos atuais
-
O novo parâmetro de filtro
forDeveloper
do métodosearch.list
restringe uma pesquisa para recuperar apenas vídeos enviados pelo aplicativo ou site do desenvolvedor. O parâmetroforDeveloper
pode ser usado com parâmetros de pesquisa opcionais, comoq
.Para esse recurso, cada vídeo enviado é automaticamente marcado com o número do projeto associado ao aplicativo do desenvolvedor no Google Developers Console.
Quando uma solicitação de pesquisa define o parâmetro
forDeveloper
comotrue
, o servidor da API usa as credenciais de autorização da solicitação para identificar o desenvolvedor. Portanto, um desenvolvedor pode restringir os resultados a vídeos enviados pelo próprio app ou site, mas não a vídeos enviados por outros apps ou sites.O novo recurso oferece uma funcionalidade semelhante, mas não idêntica, às tags de desenvolvedor compatíveis com a API v2.
-
A nova propriedade
snippet.country
do recursochannel
permite que os proprietários de canais associem os canais deles a um país específico.Observação:para definir a propriedade
snippet.country
de um recursochannel
, é preciso atualizar a propriedadebrandingSettings.channel.country
. -
A API agora oferece suporte à segmentação de recursos
channelSection
. O direcionamento por seção do canal oferece uma maneira de restringir a visibilidade de uma seção de conteúdo a usuários que atendem a determinados critérios.A API expõe três opções de segmentação. Um usuário precisa atender a todas as configurações de segmentação para que uma seção do canal fique visível.
-
targeting.languages[]
: uma lista de idiomas do aplicativo YouTube. Os usuários que escolheram um desses idiomas podem acessar a seção correspondente do canal. -
targeting.regions[]
: uma lista de regiões de conteúdo preferido do YouTube. A seção do canal fica visível para usuários que selecionaram uma dessas regiões e para aqueles que têm uma delas selecionada automaticamente. -
targeting.countries[]
: uma lista de países em que a seção do canal está visível. Cada valor na lista é um código de país ISO 3166-1 alpha-2.
-
-
A definição da propriedade
contentDetails.duration
do recursovideo
foi corrigida para refletir que o valor pode indicar horas, dias e assim por diante. -
A documentação dos métodos
channelSections.delete
,playlistItems.delete
,playlists.delete
,subscriptions.delete
evideos.delete
foi corrigida para refletir que, quando bem-sucedidos, todos esses métodos retornam um código de resposta HTTP204
(No Content
).
-
-
Erros novos e atualizados
-
Agora a API é compatível com os seguintes erros:
Tipo de erro Detalhe do erro Descrição badRequest (400)
targetInvalidCountry
Os métodos channelSections.insert
echannelSections.update
retornam esse erro se o recursochannelSection
inserido tiver um valor inválido para a propriedadetargeting.countries[]
.badRequest (400)
targetInvalidLanguage
Os métodos channelSections.insert
echannelSections.update
retornam esse erro se o recursochannelSection
inserido tiver um valor inválido para a propriedadetargeting.languages[]
.badRequest (400)
targetInvalidRegion
Os métodos channelSections.insert
echannelSections.update
retornam esse erro se o recursochannelSection
inserido tiver um valor inválido para a propriedadetargeting.regions[]
.badRequest (400)
operationNotSupported
O método comments.insert
retorna esse erro se o usuário da API não puder inserir um comentário em resposta ao comentário de nível superior identificado pela propriedadesnippet.parentId
. Em um recursocommentThread
, a propriedadesnippet.canReply
indica se o espectador atual pode responder à conversa.badRequest (400)
invalidChannelId
O método search.list
retorna esse erro se o parâmetrochannelId
na solicitação especificar um ID de canal inválido.badRequest (400)
subscriptionForbidden
O método subscriptions.insert
retorna esse erro se o usuário da API tentar se inscrever no próprio canal. -
O método
captions.update
não oferece mais suporte aos errosinvalidMetadata
evideoNotFound
.
-
16 de abril de 2015
Esta atualização contém as seguintes alterações:
-
O guia de migração foi atualizado para explicar como migrar aplicativos que ainda usam a funcionalidade de comentários da API v2.
O guia também destaca vários recursos de comentários que a API v2 não aceitava, mas que são compatíveis com a API v3. São eles:
- Como recuperar comentários sobre um canal
- Recuperar todas as conversas de comentários relacionadas a um canal, o que significa que a resposta da API pode conter comentários sobre o canal ou qualquer um dos vídeos dele.
- Atualizar o texto de um comentário
- Marcar um comentário como spam
- Definir o status de moderação de um comentário
-
O guia Como se inscrever para receber notificações push foi atualizado para refletir o fato de que as notificações são enviadas apenas para o hub do Google PubSubHubBub e não também para o hub do Superfeedr, como indicado anteriormente.
9 de abril de 2015
Esta atualização contém as seguintes alterações:
-
Os novos recursos
commentThread
ecomment
da API permitem recuperar, inserir, atualizar, excluir e moderar comentários.-
Um recurso
commentThread
contém informações sobre uma conversa de comentários do YouTube, que inclui um comentário de nível superior e respostas, se houver, a esse comentário. Um recursocommentThread
pode representar comentários sobre um vídeo ou um canal.O comentário de nível superior e as respostas são recursos
comment
aninhados no recursocommentThread
. É importante observar que o recursocommentThread
não contém necessariamente todas as respostas a um comentário. Use o métodocomments.list
se quiser recuperar todas as respostas de um comentário específico. Além disso, alguns comentários não têm respostas.A API é compatível com os seguintes métodos para recursos
commentThread
:commentThreads.list
: recupera uma lista de conversas dos comentários. Use esse método para extrair comentários associados a um vídeo ou canal específico.commentThreads.insert
: cria um novo comentário de nível superior. (Use o métodocomments.insert
para responder a um comentário.)commentThreads.update
– Modifica um comentário de nível superior.
-
Um recurso
comment
contém informações sobre um único comentário do YouTube. Um recursocomment
pode representar um comentário sobre um vídeo ou um canal. Além disso, o comentário pode ser de nível superior ou uma resposta a um comentário de nível superior.A API é compatível com os seguintes métodos para recursos
comment
:comments.list
: recupera uma lista de comentários. Use esse método para recuperar todas as respostas a um comentário específico.comments.insert
: crie uma resposta para um comentário.comments.update
: modifique um comentário.comments.markAsSpam
: marque um ou mais comentários como spam.comments.setModerationStatus
: define o status de moderação de um ou mais comentários. Por exemplo, aprovar um comentário para exibição pública ou rejeitar um comentário por ser inadequado. A solicitação de API precisa ser autorizada pelo proprietário do canal ou vídeo associado aos comentários.comments.delete
: exclui um comentário.
O novo escopo
https://www.googleapis.com/auth/youtube.force-ssl
da API, descrito no histórico de revisões de 2 de abril de 2015, é necessário para chamadas aos métodoscomments.insert
,comments.update
,comments.markAsSpam
,comments.setModerationStatus
,comments.delete
,commentThreads.insert
ecommentThreads.update
. -
-
O novo guia Como se inscrever para receber notificações push explica o novo suporte da API para notificações push via PubSubHubBub, um protocolo de publicação/inscrição de servidor para servidor para recursos acessíveis pela Web. Seu servidor de callback do PubSubHubBub pode receber notificações de feed Atom quando um canal faz alguma das seguintes atividades:
- envia um vídeo
- atualiza o título de um vídeo
- atualiza a descrição de um vídeo
-
O guia de migração também foi atualizado para incluir o novo suporte a notificações push. No entanto, como a API v2 oferecia suporte a vários outros tipos de notificações push que não são compatíveis com a API v3, a menção ao suporte do PubSubHubBub ainda está listada na seção Descontinuado desse guia.
-
O novo escopo
https://www.googleapis.com/auth/youtube.force-ssl
da API agora é válido para qualquer método de API que antes oferecia suporte ao escopohttps://www.googleapis.com/auth/youtube
. -
Agora a API é compatível com os seguintes erros:
Tipo de erro Detalhe do erro Descrição badRequest (400)
invalidRating
O método videos.rate
retorna esse erro se a solicitação contiver um valor inesperado para o parâmetrorating
. -
O método
subscriptions.insert
não aceita mais o errosubscriptionLimitExceeded
, que antes indicava que o assinante identificado com a solicitação tinha excedido o limite de taxa de assinatura.
2 de abril de 2015
Esta atualização contém as seguintes alterações:
-
O novo recurso
captions
representa uma faixa de legenda do YouTube. Uma faixa de legenda descritiva está associada a exatamente um vídeo do YouTube.A API oferece suporte a métodos para listar, inserir, atualizar, baixar e excluir faixas de legenda.
-
O guia de migração também foi atualizado para explicar como migrar aplicativos que ainda usam a funcionalidade de legendas na API v2.
-
O novo escopo
https://www.googleapis.com/auth/youtube.force-ssl
da API exige que a comunicação com o servidor da API aconteça por uma conexão SSL.Esse novo escopo concede o mesmo acesso que o escopo
https://www.googleapis.com/auth/youtube
. Na verdade, esses dois escopos são funcionalmente idênticos porque o servidor da API YouTube só está disponível por um endpoint HTTPS. Como resultado, mesmo que o escopohttps://www.googleapis.com/auth/youtube
não exija uma conexão SSL, não há outra maneira de fazer uma solicitação de API.O novo escopo é necessário para chamadas a todos os métodos do recurso
caption
.
11 de março de 2015
Esta atualização contém as seguintes alterações:
-
O guia de migração da API YouTube Data (v3) tem uma nova guia chamada Novidades na API v3, que lista os recursos compatíveis com a API v3 e não com a v2. Os mesmos recursos estavam e ainda estão listados em outras guias do guia. Por exemplo, o novo recurso que explica como atualizar os dados de uma campanha promocional no vídeo de um canal também está listado na guia Canais (perfis).
-
O guia de migração da API YouTube Data (v3) foi atualizado para informar que a API v3 vai oferecer suporte ao seguinte recurso da API v2:
-
O guia de migração da API YouTube Data (v3) foi atualizado para informar que os seguintes recursos da API v2 não serão compatíveis com a API v3:
-
Recuperar recomendações de vídeo: a API v3 não recupera uma lista que contém apenas vídeos recomendados para o usuário atual da API. No entanto, é possível usar a API v3 para encontrar vídeos recomendados chamando o método
activities.list
e definindo o valor do parâmetrohome
comotrue
.Na resposta da API, um recurso corresponde a um vídeo recomendado se o valor da propriedade
snippet.type
forrecommendation
. Nesse caso, as propriedadescontentDetails.recommendation.reason
econtentDetails.recommendation.seedResourceId
vão conter informações sobre o motivo da recomendação. Não há garantia de que a resposta vai conter um número específico de vídeos recomendados. -
Recuperar vídeos de novas inscrições: a API v3 não recupera uma lista que contém apenas vídeos enviados recentemente para canais em que o usuário da API se inscreveu. No entanto, é possível usar a API v3 para encontrar novos vídeos de inscrição chamando o método
activities.list
e definindo o valor do parâmetrohome
comotrue
.Na resposta da API, um recurso corresponde a um novo vídeo de assinatura se o valor da propriedade
snippet.type
forupload
. Não há garantia de que a resposta vai conter um número específico de vídeos de novas inscrições. -
Notificações push para atualizações de feed: a API v2 oferecia suporte a notificações push, usando o Simple Update Protocol (SUP) ou o PubSubHubbub, para monitorar feeds de atividade de usuários do YouTube. As notificações eram enviadas quando você se inscrevia em um canal ou quando um vídeo era avaliado, compartilhado, marcado como favorito, comentado ou enviado.
A API v3 vai oferecer suporte a notificações push usando o protocolo PubSubHubbub, mas elas vão abranger apenas envios de vídeos e atualizações de títulos ou descrições de vídeos.
-
Local do canal: a API v2 usava a tag
<yt:location>
para identificar o local do usuário conforme inserido no perfil público do canal no YouTube. Embora alguns desenvolvedores tenham usado esse campo para associar um canal a um país específico, os dados do campo não puderam ser usados de forma consistente para essa finalidade. -
Definir ou recuperar tags de desenvolvedor: a API v2 permitia associar palavras-chave ou tags de desenvolvedor a um vídeo no momento do upload. As tags de desenvolvedor não eram mostradas aos usuários do YouTube, mas os proprietários de vídeos podiam recuperar vídeos que correspondiam a uma tag específica.
A API v3 vai oferecer um recurso semelhante, mas não idêntico. Especificamente, um desenvolvedor poderá pesquisar vídeos enviados pelo próprio aplicativo. Para esse recurso, cada vídeo enviado é automaticamente marcado com o número do projeto associado ao aplicativo do desenvolvedor no Google Developers Console. Em seguida, o desenvolvedor usa o mesmo número de projeto para pesquisar vídeos.
-
Listar vídeos por data de publicação, contagem de visualizações ou classificação: na API v2, o parâmetro
orderby
permite classificar vídeos em uma playlist por posição, duração, data de publicação, título e vários outros valores. Na API v3, os itens de playlist geralmente são classificados por posição em ordem crescente, e outras opções de classificação não estão disponíveis.Existem algumas exceções. Um novo envio, vídeo favorito, vídeo marcado como "Gostei" ou vídeo assistido recentemente é adicionado automaticamente como o primeiro item (
snippet.position
=0
) para os seguintes tipos de playlists: Portanto, cada uma dessas listas é classificada do item mais novo ao mais antigo com base nos horários em que os itens foram adicionados.- uploads de usuários
- vídeos favoritos
- vídeos marcados como "Gostei"
- histórico de visualização
No entanto, um novo item adicionado à playlist "Assistir mais tarde" é incluído como o último item da lista, que é classificada do mais antigo para o mais recente.
-
Processamento em lote: a API v3 é compatível com um dos casos de uso de processamento em lote que a API v2 oferecia. Os métodos
channels.list
,channelSections.list
,guideCategories.list
,playlistItems.list
,playlists.list
,subscriptions.list
,videoCategories.list
evideos.list
da API v3 são compatíveis com um parâmetroid
, que pode ser usado para especificar uma lista de IDs separados por vírgula (IDs de vídeo, de canal etc.). Com esses métodos, é possível recuperar uma lista de vários recursos com uma única solicitação.
Com essas mudanças, o guia agora identifica todas as funcionalidades compatíveis com a API antiga (v2) que serão descontinuadas na versão atual da API (v3).
-
4 de março de 2015
Esta atualização contém as seguintes alterações:
-
Os métodos
channelSections.delete
echannelSections.update
agora são compatíveis com o parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. -
As seguintes propriedades e as propriedades filho delas foram descontinuadas:
brandingSettings.image.backgroundImageUrl
brandingSettings.image.largeBrandedBannerImageImapScript
brandingSettings.image.largeBrandedBannerImageUrl
brandingSettings.image.smallBrandedBannerImageImapScript
brandingSettings.image.smallBrandedBannerImageUrl
Observação:nenhuma dessas propriedades estava sujeita à Política de descontinuação de API.
-
A nova propriedade
contentDetails.contentRating.contentDetails.contentRating.djctqRatingReasons
do recursovideo
identifica os motivos que explicam por que o vídeo recebeu a classificação do DJCTQ (Brasil). -
Agora a API é compatível com os seguintes erros:
Tipo de erro Detalhe do erro Descrição notFound (404)
channelNotFound
O método channels.update
retorna esse erro se o parâmetroid
da solicitação especificar um canal que não pode ser encontrado.badRequest (400)
manualSortRequiredinvalidValue
Os métodos playlistItems.insert
eplaylistItems.update
retornam esse erro se a solicitação tentar definir a posição do item da playlist, mas a playlist não usar a classificação manual. Por exemplo, os itens da playlist podem ser classificados por data ou popularidade. Para corrigir esse erro, remova o elementosnippet.position
do recurso enviado no corpo da solicitação. Se você quiser que o item da playlist tenha uma posição específica na lista, primeiro atualize a configuração de ordenação da playlist para Manual. Essa configuração pode ser ajustada no Gerenciador de vídeos do YouTube.forbidden (403)
channelClosed
O método playlists.list
retorna esse erro se o parâmetrochannelId
da solicitação especificar um canal que foi encerrado.forbidden (403)
channelSuspended
O método playlists.list
retorna esse erro se o parâmetrochannelId
da solicitação especificar um canal suspenso.forbidden (403)
playlistForbidden
O método playlists.list
retorna esse erro se o parâmetroid
da solicitação não for compatível com ela ou se a solicitação não estiver autorizada corretamente.notFound (404)
channelNotFound
O método playlists.list
retorna esse erro se o parâmetrochannelId
da solicitação especificar um canal que não pode ser encontrado.notFound (404)
playlistNotFound
O método playlists.list
retorna esse erro se o parâmetroid
da solicitação especificar uma playlist que não pode ser encontrada.notFound (404)
videoNotFound
O método videos.list
retorna esse erro se o parâmetroid
da solicitação especificar um vídeo que não pode ser encontrado.badRequest (400)
invalidRating
O método videos.rate
retorna esse erro se a solicitação contiver um valor inesperado para o parâmetrorating
.
2 de março de 2015
Esta atualização contém as seguintes alterações:
-
O método
search.list
agora oferece suporte ao parâmetrorelevanceLanguage
, que permite solicitar os resultados mais relevantes para um idioma específico.O guia de migração da API YouTube Data (v3) também foi atualizado para explicar como usar esse novo parâmetro. O parâmetro aborda uma lacuna de recursos que existia entre a versão atual da API (v3) e a anterior (v2), que já foi descontinuada.
-
O guia de migração da API YouTube Data (v3) também foi atualizado para indicar a descontinuação dos feeds especiais e campos de metadados que a API v2 oferecia para descrever filmes, trailers, programas e temporadas de TV e episódios de televisão.
14 de janeiro de 2015
Esta atualização contém as seguintes alterações:
-
O guia de migração da API YouTube Data (v3) foi atualizado para explicar como usar a API v3 para enviar vídeos usando JavaScript. Consulte a seção Enviar um vídeo para mais detalhes. Essa funcionalidade é comparável ao envio baseado em navegador que a API v2 oferece. Essa mudança no guia de migração não reflete uma mudança real na API, mas sim a disponibilidade de um novo código de exemplo para fazer upload de vídeos com JavaScript do lado do cliente.
Devido ao suporte para upload de vídeos com a biblioteca de cliente JavaScript e o CORS, o guia de migração não lista mais o upload baseado em navegador como um recurso que pode ser descontinuado na API v3.
-
A documentação do método
videos.insert
foi atualizada para incluir o novo exemplo de código JavaScript descrito acima. A lista de exemplos de código JavaScript da API YouTube Data (v3) também foi atualizada.
11 de novembro de 2014
Esta atualização contém as seguintes alterações:
-
O custo de cota para uma chamada ao método
search.list
mudou para 100 unidades.Importante:em muitos casos, é possível usar outros métodos de API para recuperar informações com um custo de cota menor. Por exemplo, considere estas duas maneiras de encontrar vídeos enviados ao canal GoogleDevelopers.
-
Custo da cota: 100 unidades
Chame o método
search.list
e pesquiseGoogleDevelopers
. -
Custo da cota: 6 unidades
Chame o método
channels.list
para encontrar o ID do canal certo. Defina o parâmetroforUsername
comoGoogleDevelopers
e o parâmetropart
comocontentDetails
. Na resposta da API, a propriedadecontentDetails.relatedPlaylists.uploads
especifica o ID da playlist dos vídeos enviados do canal.Em seguida, chame o método
playlistItems.list
e defina o parâmetroplaylistId
como o ID capturado e o parâmetropart
comosnippet
.
-
8 de outubro de 2014
Esta atualização contém as seguintes alterações:
-
O recurso
channel
contém duas novas propriedades:-
A propriedade
status.longUploadsStatus
indica se o canal está qualificado para enviar vídeos com mais de 15 minutos. Essa propriedade só será retornada se o proprietário do canal autorizar a solicitação de API. Valores de propriedade válidos:allowed
– O canal pode enviar vídeos com mais de 15 minutos de duração.eligible
– O canal atende aos requisitos para enviar vídeos com mais de 15 minutos, mas precisa ativar o recurso primeiro.disallowed
– O canal não pode ou não atende aos requisitos para enviar vídeos com mais de 15 minutos de duração.
Consulte a definição da propriedade para mais informações sobre esses valores. A Central de Ajuda do YouTube também oferece informações mais detalhadas sobre esse recurso.
-
A propriedade
invideoPromotion.useSmartTiming
indica se a campanha promocional do canal usa "programação inteligente". Esse recurso tenta mostrar as promoções em um momento do vídeo em que é mais provável que elas sejam clicadas e menos provável que interrompam a experiência de visualização. Esse recurso também escolhe uma única promoção para mostrar em cada vídeo.
-
-
As definições das propriedades
snippet.title
esnippet.categoryId
do recursovideo
foram atualizadas para esclarecer como a API processa as chamadas ao métodovideos.update
. Se você chamar esse método para atualizar a partesnippet
de um recursovideo
, defina um valor para as duas propriedades.Se você tentar atualizar a parte
snippet
de um recursovideo
e não definir um valor para essas duas propriedades, a API vai retornar um erroinvalidRequest
. A descrição desse erro também foi atualizada. -
A propriedade
contentDetails.contentRating.oflcRating
do recursovideo
, que identifica a classificação de um vídeo do Departamento de Classificação de Filmes e Literatura da Nova Zelândia, agora é compatível com duas novas classificações:oflcRp13
eoflcRp16
. Elas correspondem às classificaçõesRP13
eRP16
, respectivamente. -
O método
channelBanners.insert
agora aceita o seguinte erro:Tipo de erro Detalhe do erro Descrição badRequest
bannerAlbumFull
O álbum de arte do canal do YouTube do proprietário tem muitas imagens. O proprietário do canal precisa acessar http://photos.google.com, navegar até a página de álbuns e remover algumas imagens.
12 de setembro de 2014
Esta atualização contém as seguintes alterações:
-
O custo de cota para uma chamada ao método
search.list
mudou de 1 unidade para 2 unidades, além do custo das partes de recursos especificadas.
13 de agosto de 2014
Esta atualização contém as seguintes alterações:
-
O método
subscriptions.insert
agora aceita o seguinte erro:Tipo de erro Detalhe do erro Descrição badRequest
subscriptionLimitExceeded
O assinante identificado com a solicitação excedeu o limite de taxa de assinatura. Tente fazer mais assinaturas em algumas horas.
12 de agosto de 2014
Esta atualização contém as seguintes alterações:
-
Um novo guia, chamado Migrar seu aplicativo para a API YouTube Data (v3), explica como usar a API YouTube Data (v3) para realizar funcionalidades disponíveis na API YouTube Data (v2). A API mais antiga foi oficialmente descontinuada em 4 de março de 2014. O objetivo do guia é ajudar você a migrar aplicativos que ainda usam a API v2 para a versão mais recente.
8 de julho de 2014
Esta atualização contém as seguintes alterações:
-
O método
playlists.insert
agora aceita o seguinte erro:Tipo de erro Detalhe do erro Descrição badRequest
maxPlaylistExceeded
Esse erro ocorre quando não é possível criar uma playlist porque o canal já tem o número máximo permitido.
18 de junho de 2014
Esta atualização contém as seguintes alterações:
-
A descrição de cada método de API foi atualizada para incluir o custo de cota incorrido por uma chamada a esse método. Da mesma forma, as definições de parâmetros
part
foram atualizadas para especificar o custo de cota de cada parte que pode ser recuperada em uma chamada de API. Por exemplo, uma chamada para o métodosubscriptions.insert
tem um custo de cota de aproximadamente 50 unidades. O recursosubscription
também contém três partes (snippet
,contentDetails
esubscriberSnippet
), e cada uma delas tem um custo de duas unidades.Os custos de cota podem mudar sem aviso prévio.
-
O recurso
video
agora oferece suporte a 43 novos sistemas de classificação de conteúdo, que identificam as classificações recebidas pelos vídeos de várias agências nacionais. Os novos sistemas de classificação são da Argentina, Áustria, Bélgica, Bulgária, Chile (televisão), Chile (filme), República Tcheca, Colômbia, Dinamarca, Egito, Estônia, Finlândia, França, Grécia, Hong Kong, Islândia, Indonésia, Irlanda, Israel, Itália, Quênia, Letônia, Luxemburgo, Malásia, Maldivas, Malta, Países Baixos, Nigéria, Noruega, Peru, Filipinas, Portugal, Romênia, Singapura, Eslováquia, África do Sul, Suécia, Suíça, Taiwan, Tailândia e Venezuela.
28 de maio de 2014
Esta atualização contém as seguintes alterações:
-
O método
search.list
agora é compatível com os parâmetroslocation
elocationRadius
, que permitem pesquisar vídeos associados a uma localização geográfica. Uma solicitação precisa especificar um valor para os dois parâmetros para recuperar resultados com base na localização. A API vai retornar um erro se uma solicitação incluir apenas um dos dois parâmetros.-
O parâmetro
location
especifica as coordenadas de latitude/longitude no centro da área geográfica circular. -
O parâmetro
locationRadius
especifica a distância máxima que o local associado a um vídeo pode estar do centro da área para que o vídeo ainda seja incluído nos resultados da pesquisa.
-
13 de maio de 2014
Esta atualização contém as seguintes alterações:
-
A propriedade
invideoPromotion.items[]
do recursochannel
foi atualizada para informar que, normalmente, só é possível definir um item promovido para seu canal. Se você tentar inserir muitos itens promovidos, a API vai retornar um errotooManyPromotedItems
, que tem um código de status HTTP400
. -
O recurso
channelSection
agora pode conter informações sobre alguns novos tipos de conteúdo em destaque. A propriedadesnippet.type
do recursochannelSection
agora aceita os seguintes valores:postedPlaylists
: playlists postadas pelo proprietário do canal no feed de atividades delepostedVideos
: vídeos que o proprietário do canal postou no feed de atividades dele.subscriptions
: canais em que o proprietário do canal se inscreveu
-
A nova propriedade
contentDetails.contentRating.ifcoRating
do recursovideo
identifica a classificação que um vídeo recebeu do Irish Film Classification Office. -
A definição da propriedade
position.cornerPosition
do recursowatermark
foi atualizada para informar que a marca-d'água sempre aparece no canto superior direito do player. -
A definição do parâmetro
q
para o métodosearch.list
foi atualizada para informar que o termo de consulta pode usar o operador booleano NOT (-
) para excluir vídeos associados a um termo de pesquisa específico. O valor também pode usar o operador booleano OR (|
) para encontrar vídeos associados a um de vários termos de pesquisa. -
A definição da propriedade
pageInfo.totalResults
retornada em uma resposta da API a uma chamadasearch.list
foi atualizada para informar que o valor é uma aproximação e pode não representar um valor exato. Além disso, o valor máximo é 1.000.000. Você não deve usar esse valor para criar links de paginação. Em vez disso, use os valores das propriedadesnextPageToken
eprevPageToken
para determinar se os links de paginação serão mostrados. -
Os métodos
watermarks.set
ewatermarks.unset
foram atualizados para refletir que a API retorna um código de resposta HTTP204
para solicitações bem-sucedidas a esses métodos.
2 de maio de 2014
Esta atualização contém as seguintes alterações:
-
O novo recurso
i18nLanguage
identifica um idioma de aplicativo compatível com o site do YouTube. O idioma do aplicativo também pode ser chamado de idioma da interface. No site do YouTube, um idioma do aplicativo pode ser selecionado automaticamente com base nas configurações da Conta do Google, no idioma do navegador ou na localização do IP. Além disso, um usuário pode selecionar manualmente o idioma da interface desejado no rodapé do site do YouTube.A API oferece suporte a um método para listar os idiomas de aplicativos compatíveis. Os idiomas aceitos podem ser usados como o valor do parâmetro
hl
ao chamar métodos de API comovideoCategories.list
eguideCategories.list
. -
O novo recurso
i18nRegion
identifica uma área geográfica que um usuário do YouTube pode selecionar como a região de conteúdo preferida. A região de conteúdo também pode ser chamada de localidade de conteúdo. No site do YouTube, uma região de conteúdo pode ser selecionada automaticamente com base em heurísticas, como o domínio do YouTube ou o local do IP do usuário. Além disso, o usuário pode selecionar manualmente a região de conteúdo desejada no rodapé do site do YouTube.A API oferece um método para listar as regiões de conteúdo compatíveis. Os códigos de região compatíveis podem ser usados como o valor do parâmetro
regionCode
ao chamar métodos da API, comosearch.list
,videos.list
,activities.list
evideoCategories.list
.
7 de abril de 2014
Esta atualização contém as seguintes alterações:
-
O novo recurso
channelSection
contém informações sobre um conjunto de vídeos que um canal escolheu destacar. Por exemplo, uma seção pode mostrar os envios mais recentes ou mais populares de um canal ou vídeos de uma ou mais playlists.A API oferece suporte a métodos para listar, inserir, atualizar ou excluir seções do canal. É possível recuperar uma lista de seções do canal do usuário autenticado especificando um ID de canal específico ou uma lista de IDs exclusivos de seções do canal.
A documentação de erros também foi atualizada para descrever as mensagens de erro que a API aceita especificamente para esses novos métodos.
-
A definição do objeto
fileDetails
do recursovideo
foi atualizada para explicar que esse objeto só será retornado se a propriedadeprocessingDetails.fileDetailsAvailability
do vídeo tiver um valor deavailable
.Da mesma forma, a definição do objeto
suggestions
do recursovideo
foi atualizada para explicar que esse objeto só será retornado se a propriedadeprocessingDetails.tagSuggestionsAvailability
ouprocessingDetails.editorSuggestionsAvailability
do vídeo tiver um valor deavailable
. -
A documentação dos métodos
videos.insert
evideos.update
foi atualizada para refletir que a propriedadestatus.publishAt
pode ser definida ao chamar esses métodos. -
A definição do objeto
invideoPromotion
do recursochannel
foi atualizada para explicar que o objeto só pode ser recuperado pelo proprietário do canal. -
A lista de parâmetros do método
videos.rate
foi atualizada para refletir que esse método não é compatível com o parâmetroonBehalfOfContentOwner
. Esse foi um erro de documentação, já que as solicitaçõesvideos.rate
que definem esse parâmetro retornam um erro500
.
31 de março de 2014
Esta atualização contém as seguintes alterações:
-
A nova propriedade
status.publishAt
do recursovideo
permite especificar a data e a hora em que um vídeo privado está programado para ser publicado. Essa propriedade só pode ser definida se o status de privacidade do vídeo forprivate
e ele nunca tiver sido publicado. Essa nova propriedade não está sujeita à política de descontinuação.
13 de março de 2014
Esta atualização contém as seguintes alterações:
-
A API agora oferece suporte à parte
contentOwnerDetails
para recursoschannel
. A nova seção contém dados do canal relevantes para parceiros do YouTube vinculados a ele, incluindo o ID do proprietário do conteúdo vinculado ao canal e a data e hora em que o proprietário do conteúdo e o canal foram vinculados. Essa nova parte não está sujeita à política de descontinuação. -
A documentação agora lista o comprimento máximo de caracteres aceito para as seguintes propriedades:
Recurso Propriedade Comprimento máximo channel
invideoPromotion.items[].customMessage
40 caracteres video
snippet.title
100 caracteres video
snippet.description
5.000 bytes video
snippet.tags
500 caracteres. O valor da propriedade é uma lista, e as vírgulas entre os itens contam para o limite. -
A propriedade
brandingSettings.watch.featuredPlaylistId
do recursochannel
foi descontinuada. A API vai retornar um erro se você tentar definir o valor dela. -
As seguintes propriedades de recursos
video
foram adicionadas à lista de valores que podem ser definidos ao inserir ou atualizar um vídeo: -
A documentação de erros agora especifica o código de resposta HTTP para cada tipo de erro.
-
Agora a API é compatível com os seguintes erros:
Tipo de erro Detalhe do erro Descrição badRequest (400)
invalidCriteria
O método channels.list
retorna esse erro se a solicitação especificar parâmetros de filtro que não podem ser usados juntos.badRequest (400)
channelTitleUpdateForbidden
O método channels.update
retorna esse erro se você tentar atualizar a partebrandingSettings
de um canal e mudar o valor da propriedadebrandingSettings.channel.title
. A API não retorna o erro se você omitir a propriedade.badRequest (400)
invalidRecentlyUploadedBy
O método channels.update
retorna esse erro se a propriedadeinvideoPromotion.items[].id.recentlyUploadedBy
especificar um ID de canal inválido.badRequest (400)
invalidTimingOffset
O método channels.update
retorna esse erro se a parteinvideoPromotion
especificar um ajuste de tempo inválido.badRequest (400)
tooManyPromotedItems
O método channels.update
retorna esse erro se a parteinvideoPromotion
especificar mais itens promovidos do que o permitido.forbidden (403)
promotedVideoNotAllowed
O método channels.update
retorna esse erro se a propriedadeinvideoPromotion.items[].id.videoId
especificar um ID de vídeo que não pode ser encontrado ou usado como um item promovido.forbidden (403)
websiteLinkNotAllowed
O método channels.update
retorna esse erro se a propriedadeinvideoPromotion.items[].id.websiteUrl
especificar um URL que não é permitido.required (400)
requiredTimingType
O método channels.update
retorna esse erro se uma solicitação não especificar as configurações de tempo padrão para quando o YouTube deve mostrar um item promovido.required (400)
requiredTiming
O método channels.update
precisa especificar um objetoinvideoPromotion.items[].timing
para cada item promovido.required (400)
requiredWebsiteUrl
O método channels.update
precisa especificar uma propriedadeinvideoPromotion.items[].id.websiteUrl
para cada item promovido.badRequest (400)
invalidPublishAt
O método videos.insert
retorna esse erro se os metadados da solicitação especificarem um horário de publicação programada inválido.
4 de março de 2014
Esta atualização contém as seguintes alterações:
-
A API YouTube Data v3 agora está sujeita à política de descontinuação descrita nos Termos de Serviço das APIs do YouTube. A página que lista as APIs sujeitas à política de descontinuação exclui especificamente algumas funcionalidades da API v3 de serem sujeitas à política.
5 de dezembro de 2013
Esta atualização contém as seguintes alterações:
-
A documentação do método
search.list
foi atualizada para refletir corretamente que não é necessário especificar um valor para exatamente um parâmetro de filtro ao enviar uma solicitação de pesquisa. Em vez disso, é possível definir um valor para zero ou um parâmetro de filtro. -
As definições dos parâmetros do método
search.list
foram atualizadas para informar que você precisa definir o valor do parâmetrotype
comovideo
se também especificar um valor para qualquer um dos seguintes parâmetros:eventType
videoCaption
videoCategoryId
videoDefinition
videoDimension
videoDuration
videoEmbeddable
videoLicense
videoSyndicated
videoType
-
O tamanho mínimo das imagens de banner do canal enviadas foi reduzido para 2048 px por 1152 px. Antes, o tamanho mínimo era de 2.120 px por 1.192 px. Além disso, a documentação do recurso
channel
especifica os tamanhos máximos de todas as imagens de banner veiculadas pela API. Por exemplo, o tamanho máximo da imagembrandingSettings.image.bannerTvImageUrl
para aplicativos de televisão é de 2.120 px por 1.192 px, mas a imagem real pode ser de 2.048 px por 1.152 px. A Central de Ajuda do YouTube oferece mais orientações sobre como otimizar a arte do canal para exibição em diferentes tipos de dispositivos. -
Várias definições de propriedade de recursos
channel
foram atualizadas para refletir as seguintes informações:- O valor da propriedade
brandingSettings.channel.description
tem um comprimento máximo de 1.000 caracteres. - A propriedade
brandingSettings.channel.featuredChannelsTitle
tem um comprimento máximo de 30 caracteres. - A propriedade
brandingSettings.channel.featuredChannelsUrls[]
agora pode listar até 100 canais. - Se definido, o valor da propriedade
brandingSettings.channel.unsubscribedTrailer
precisa especificar o ID de um vídeo público ou não listado do YouTube que pertence ao proprietário do canal.
- O valor da propriedade
-
O método
channels.update
agora oferece suporte a atualizações da propriedadeinvideoPromotion.items[].promotedByContentOwner
. Essa propriedade indica se o nome do proprietário do conteúdo será mostrado ao exibir a promoção. Ele só pode ser definido se a solicitação de API que define o valor da propriedade estiver sendo feita em nome do proprietário do conteúdo usando o parâmetroonBehalfOfContentOwner
. -
Os métodos
playlistItems.list
eplaylistItems.insert
agora são compatíveis com o parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. -
Agora, a propriedade
contentDetails.contentRating.acbRating
pode especificar uma classificação do Australian Classification Board (ACB) para filmes ou da Australian Communications and Media Authority (ACMA) para programação de televisão infantil. -
As novas propriedades
contentDetails.contentRating.catvRating
econtentDetails.contentRating.catvfrRating
identificam as classificações que um vídeo recebeu no Canadian TV Classification System e no sistema de classificação em francês da Régie du cinéma, usado em Quebec, respectivamente. -
A nova propriedade
snippet.assignable
do recursovideoCategory
indica se vídeos atualizados ou enviados recentemente podem ser associados a essa categoria. -
Exemplos de código foram adicionados para os seguintes métodos:
activities.insert
(Go)channelBanners.insert
(Python)channels.update
(Python)playlistItems.list
(Go)search.list
(Go)thumbnails.set
(Java)videos.insert
(Go)
24 de outubro de 2013
Esta atualização contém as seguintes alterações:
-
A API inclui dois recursos adicionais projetados para ajudar a encontrar e destacar conteúdo de transmissão ao vivo:
A nova propriedade
snippet.liveBroadcastContent
nos resultados da pesquisa indica se um recurso de vídeo ou canal tem conteúdo de transmissão ao vivo. Os valores válidos da propriedade sãoupcoming
,active
enone
.-
A nova propriedade
snippet.liveBroadcastContent
do recursovideo
indica se o vídeo é uma transmissão ao vivo futura ou ativa. A lista abaixo explica os valores possíveis da propriedade:upcoming
: o vídeo é uma transmissão ao vivo que ainda não começou.active
– O vídeo é uma transmissão ao vivo em andamento.none
: o vídeo não é uma transmissão ao vivo futura ou ativa. Esse será o valor da propriedade para transmissões concluídas que ainda podem ser assistidas no YouTube.
-
A nova propriedade
liveStreamingDetails
do recursovideo
é um objeto que contém metadados sobre uma transmissão de vídeo ao vivo. Para recuperar esses metadados, inclualiveStreamingDetails
na lista de partes de recursos do valor do parâmetropart
. Os metadados incluem as seguintes propriedades novas:liveStreamingDetails.actualStartTime
: o horário em que a transmissão começou. Esse valor vai aparecer quando o estado da transmissão foractive
.liveStreamingDetails.actualEndTime
: o horário em que a transmissão terminou. Esse valor vai aparecer quando a transmissão terminar.liveStreamingDetails.scheduledStartTime
: o horário em que a transmissão está programada para começar.liveStreamingDetails.scheduledEndTime
: o horário em que a transmissão está programada para terminar. Se o valor da propriedade estiver vazio ou a propriedade não estiver presente, a transmissão será programada para continuar indefinidamente.liveStreamingDetails.concurrentViewers
– O número de pessoas assistindo a transmissão ao vivo.
Para recuperar esses metadados, inclua
liveStreamingDetails
no valor do parâmetropart
ao chamar o métodovideos.list
,videos.insert
ouvideos.update
.
Outros dois recursos para identificar conteúdo de transmissão ao vivo foram lançados em 1º de outubro de 2013: o parâmetro
eventType
do métodosearch.list
e a propriedadesnippet.liveBroadcastContent
do resultado da pesquisa. -
-
O método
videos.insert
agora oferece suporte ao parâmetronotifySubscribers
, que indica se o YouTube deve enviar uma notificação sobre o novo vídeo para os usuários inscritos no canal. O valor padrão do parâmetro éTrue
, que indica que os inscritos serão notificados sobre os vídeos enviados recentemente. No entanto, um proprietário de canal que envia muitos vídeos pode preferir definir o valor comoFalse
para evitar o envio de uma notificação sobre cada novo vídeo aos inscritos do canal. -
A lista de propriedades que podem ser modificadas ao chamar o método
channels.update
foi atualizada para incluir as propriedadesinvideoPromotion.items[].customMessage
einvideoPromotion.items[].websiteUrl
. Além disso, a lista foi modificada para identificar as propriedadesbrandingSettings
que podem ser alteradas. Essas propriedadesbrandingSettings
já eram modificáveis. Portanto, a mudança na documentação não reflete uma alteração na funcionalidade atual da API. -
Os métodos
playlists.insert
,playlists.update
eplaylists.delete
agora são compatíveis com o parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. -
O método
playlists.insert
agora é compatível com o parâmetroonBehalfOfContentOwnerChannel
, que já é aceito por vários outros métodos. -
A propriedade
contentDetails.contentRating.tvpgRating
do recursovideo
agora aceita o valorpg14
, que corresponde a uma classificaçãoTV-14
. -
A definição da propriedade
snippet.liveBroadcastContent
, que faz parte dos resultados da pesquisa, foi corrigida para refletir quelive
é um valor de propriedade válido, masactive
não é. -
A propriedade
contentDetails.contentRating.mibacRating
do recursovideo
agora aceita mais duas classificações:mibacVap
(VAP): crianças precisam estar acompanhadas de um adulto.mibacVm6
(V.M.6): restrito para menores de 6 anos.mibacVm12
(V.M.12): restrito a maiores de 12 anos.
-
A nova propriedade
invideoPromotion.items[].promotedByContentOwner
do recursochannel
indica se o nome do proprietário do conteúdo será mostrado ao exibir a promoção. Esse campo só pode ser definido se a solicitação de API que define o valor estiver sendo feita em nome do proprietário do conteúdo. Consulte o parâmetroonBehalfOfContentOwner
para mais informações.
1º de outubro de 2013
Esta atualização contém as seguintes alterações:
-
O novo objeto
auditDetails
do recursochannel
contém dados do canal que uma Rede multicanal (RM) avaliaria ao determinar se aceita ou rejeita um canal específico. Qualquer solicitação de API que recupere essa parte do recurso precisa fornecer um token de autorização que contenha o escopohttps://www.googleapis.com/auth/youtubepartner-channel-audit
. Além disso, qualquer token que use esse escopo precisa ser revogado quando a MCN decidir aceitar ou rejeitar o canal ou em até duas semanas após a data de emissão do token. -
A propriedade
invideoPromotion.items[].id.type
do recursochannel
agora aceita o valorrecentUpload
, que indica que o item promovido é o vídeo enviado mais recentemente de um canal especificado.Por padrão, o canal é o mesmo para o qual os dados de promoção no vídeo estão definidos. No entanto, é possível promover o vídeo enviado mais recentemente de outro canal definindo o valor da nova propriedade
invideoPromotion.items[].id.recentlyUploadedBy
como o ID do canal em questão. -
O recurso
channel
contém três novas propriedades (brandingSettings.image.bannerTvLowImageUrl
,brandingSettings.image.bannerTvMediumImageUrl
ebrandingSettings.image.bannerTvHighImageUrl
) que especificam os URLs das imagens de banner exibidas nas páginas dos canais em aplicativos de televisão. -
A nova propriedade
snippet.liveBroadcastContent
nos resultados da pesquisa indica se um recurso de vídeo ou canal tem conteúdo de transmissão ao vivo. Os valores válidos da propriedade sãoupcoming
,active
enone
.- Para um recurso
video
, um valor deupcoming
indica que o vídeo é uma transmissão ao vivo que ainda não começou, enquanto um valor deactive
indica que o vídeo é uma transmissão ao vivo em andamento. - Para um recurso
channel
, um valor deupcoming
indica que o canal tem uma transmissão programada que ainda não começou, enquanto um valor deacive
indica que o canal tem uma transmissão ao vivo em andamento.
- Para um recurso
-
No recurso
watermark
, a propriedadetargetChannelId
mudou de um objeto para uma string. Em vez de conter uma propriedade filha que especifica o ID do canal do YouTube a que a imagem da marca-d'água está vinculada, a propriedadetargetChannelId
agora especifica esse valor. Por isso, a propriedadetargetChannelId.value
do recurso foi removida. -
O método
thumbnails.set
agora é compatível com o parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. -
O método
search.list
agora é compatível com o parâmetroeventType
, que restringe uma pesquisa para retornar apenas eventos de transmissão ativos, futuros ou concluídos. -
A nova propriedade
contentDetails.contentRating.mibacRating
identifica a classificação que um vídeo recebeu do Ministério dos Bens e Atividades Culturais e do Turismo da Itália. -
Agora a API é compatível com os seguintes erros:
Tipo de erro Detalhe do erro Descrição badRequest
invalidImage
O método thumbnails.set
retorna esse erro se o conteúdo da imagem fornecida for inválido.forbidden
videoRatingDisabled
O método videos.rate
retorna esse erro se o proprietário do vídeo que está sendo avaliado tiver desativado as classificações para ele.
27 de agosto de 2013
Esta atualização contém as seguintes alterações:
-
O novo recurso
watermark
identifica uma imagem que aparece durante a reprodução dos vídeos de um canal específico. Você também pode especificar um canal de destino ao qual a imagem será vinculada, além dos detalhes de sincronismo que determinam quando uma marca d'água aparece durante reproduções de vídeo e o período em que ela estará visível.O método
watermarks.set
faz upload e define a imagem da marca-d'água de um canal. O métodowatermarks.unset
exclui a imagem de marca-d'água de um canal.A documentação de erros descreve as mensagens de erro que a API aceita especificamente para os métodos
watermarks.set
ewatermarks.unset
. -
A nova propriedade
statistics.hiddenSubscriberCount
do recursochannel
contém um valor booleano que indica se o número de inscritos do canal está oculto. Assim, o valor da propriedade éfalse
se a contagem de inscritos do canal estiver visível publicamente. -
O método
playlists.list
agora é compatível com os parâmetrosonBehalfOfContentOwner
eonBehalfOfContentOwnerChannel
. Os dois parâmetros já são compatíveis com vários outros métodos. -
O método
videos.list
agora oferece suporte ao parâmetroregionCode
, que identifica a região de conteúdo para a qual um gráfico precisa ser extraído. Esse parâmetro só pode ser usado com o parâmetrochart
. O valor do parâmetro é um código de país ISO 3166-1 Alfa 2. -
O
error documentation
descreve o seguinte novo erro comum de solicitação, que pode ocorrer em vários métodos de API:Tipo de erro Detalhe do erro Descrição forbidden
insufficientPermissions
Os escopos associados ao token OAuth 2.0 fornecido para a solicitação são insuficientes para acessar os dados solicitados.
15 de agosto de 2013
Esta atualização contém as seguintes alterações:
-
O objeto
invideoPromotion
do recursochannel
tem as seguintes propriedades novas e atualizadas:-
Agora a API permite especificar um site como um item promovido. Para isso, defina o valor da propriedade
invideoPromotion.items[].id.type
comowebsite
e use a nova propriedadeinvideoPromotion.items[].id.websiteUrl
para especificar o URL. Use também a nova propriedadeinvideoPromotion.items[].customMessage
para definir uma mensagem personalizada que será exibida na promoção.Os links podem ser associados a websites, sites comerciais ou sites de redes sociais. Consulte as instruções da Central de Ajuda do YouTube sobre sites associados e sites de comerciantes para mais informações sobre como ativar links no seu conteúdo.
Ao adicionar links promocionais, você concorda que eles não serão usados para redirecionar o tráfego a sites não autorizados e que vão obedecer às políticas do AdWords, de anúncios do YouTube, diretrizes da comunidade e Termos de Serviço do YouTube.
-
As propriedades relacionadas às configurações de tempo para mostrar itens promovidos durante a reprodução de vídeo foram reestruturadas:
-
O objeto
invideoPromotion.timing
foi movido parainvideoPromotion.items[].timing
. Com esse objeto, é possível personalizar os dados de tempo de cada item promovido na listainvideoPromotion.items[]
. -
O novo objeto
invideoPromotion.defaultTiming
especifica as configurações de tempo padrão da sua promoção. Essas configurações definem quando um item promovido vai aparecer durante a reprodução de um dos vídeos do seu canal. É possível substituir o tempo padrão de um item promovido usando o objetoinvideoPromotion.items[].timing
. -
A nova propriedade
invideoPromotion.items[].timing.durationMs
especifica o tempo, em milissegundos, em que a promoção deve ser exibida. O objetoinvideoPromotion.defaultTiming
também contém um campodurationMs
que especifica o período padrão de exibição do item promovido.
-
-
As propriedades
invideoPromotion.items[].type
einvideoPromotion.items[].videoId
foram movidas para o objetoinvideoPromotion.items[].id
.
-
-
O método
subscriptions.list
agora é compatível com os parâmetrosonBehalfOfContentOwner
eonBehalfOfContentOwnerChannel
. Os dois parâmetros já são compatíveis com vários outros métodos. -
Na resposta da API a uma solicitação
thumbnails.set
, o valor da propriedadekind
mudou deyoutube#thumbnailListResponse
parayoutube#thumbnailSetResponse
. -
Exemplos de código foram adicionados para os seguintes métodos:
channels.update
(Java, Python)playlists.insert
(.NET, PHP)subscriptions.insert
(PHP, Python)thumbnails.set
(PHP, Python)videos.insert
(PHP)videos.list
(PHP)videos.rate
(Python)videos.update
(Java, PHP, Python)
O exemplo em Python do método
playlistItems.insert
também foi removido porque a funcionalidade demonstrada agora é processada pelo métodovideos.rate
. -
O
error documentation
descreve o seguinte novo erro de contexto de solicitação, que pode ocorrer em qualquer método de API que ofereça suporte ao parâmetro de solicitaçãomine
:Tipo de erro Detalhe do erro Descrição badRequest
invalidMine
O parâmetro mine
não pode ser usado em solicitações em que o usuário autenticado é um parceiro do YouTube. Remova o parâmetromine
, faça a autenticação como um usuário do YouTube removendo o parâmetroonBehalfOfContentOwner
ou atue como um dos canais do parceiro fornecendo o parâmetroonBehalfOfContentOwnerChannel
, se disponível para o método chamado.
8 de agosto de 2013
Esta atualização contém as seguintes alterações:
-
A seção Uso da cota do guia Como começar a usar a API YouTube Data foi atualizada para refletir uma mudança no custo de cota de um envio de vídeo, de aproximadamente 16.000 unidades para aproximadamente 1.600 unidades.
30 de julho de 2013
Esta atualização contém as seguintes alterações:
-
Em um recurso
channelBanner
, o valor da propriedadekind
mudou deyoutube#channelBannerInsertResponse
parayoutube#channelBannerResource
. Esse recurso é retornado em resposta a uma solicitaçãochannelBanners.insert
. -
A nova propriedade
brandingSettings.channel.profileColor
do recursochannel
especifica uma cor em destaque que complementa o conteúdo do canal. O valor da propriedade é um sinal de libra (#
) seguido por uma string hexadecimal de seis caracteres, como#2793e6
. -
Agora a API permite especificar se uma inscrição é para todas as atividades de um canal ou apenas para novos envios. A nova propriedade
contentDetails.activityType
do recursosubscription
identifica os tipos de atividades sobre as quais o assinante vai receber notificações. Os valores válidos da propriedade sãoall
euploads
. -
O método
videos.list
oferece suporte a novos parâmetros para recuperar um gráfico dos vídeos mais assistidos no YouTube:- O parâmetro
chart
identifica o gráfico que você quer recuperar. No momento, o único valor aceito émostPopular
. O parâmetrochart
é um parâmetro de filtro, o que significa que não pode ser usado na mesma solicitação que outros parâmetros de filtro (id
emyRating
). - O parâmetro
videoCategoryId
identifica a categoria de vídeo para que o gráfico seja recuperado. Esse parâmetro só pode ser usado com o parâmetrochart
. Por padrão, os gráficos não são restritos a determinada categoria.
- O parâmetro
-
A nova propriedade
topicDetails.relevantTopicIds[]
do recursovideo
fornece uma lista de IDs de tópicos do Freebase relevantes para o vídeo ou o conteúdo dele. Os assuntos podem ser mencionados ou aparecer no vídeo. -
A propriedade
recordingDetails.location.elevation
do recursovideo
foi renomeada comorecordingDetails.location.altitude
, e a propriedadefileDetails.recordingLocation.location.elevation
foi renomeada comofileDetails.recordingLocation.location.altitude
. -
O objeto
contentDetails.contentRating
do recursovideo
especifica as classificações que um vídeo recebeu em vários sistemas, incluindo MPAA, TVPG e outros. Para cada sistema de classificação, a API agora oferece suporte a um valor que indica que o vídeo não foi classificado. Para classificações da MPAA, uma classificação "sem classificação" é usada com frequência para identificar versões sem cortes de filmes que receberam uma classificação oficial. -
A nova propriedade
contentDetails.contentRating.ytRating
do recursovideo
identifica conteúdo com restrição de idade. O valor da propriedade seráytAgeRestricted
se o YouTube identificar que o vídeo tem conteúdo inadequado para usuários com menos de 18 anos. Se a propriedade estiver ausente ou o valor dela estiver vazio, o conteúdo não terá sido identificado como restrito por idade. -
O parâmetro
mySubscribers
do métodochannels.list
foi descontinuado. Use o métodosubscriptions.list
e o parâmetromySubscribers
para recuperar uma lista de inscritos no canal do usuário autenticado. -
Os métodos
channelBanners.insert
,channels.update
,videos.getRating
evideos.rate
agora oferecem suporte ao parâmetroonBehalfOfContentOwner
. Esse parâmetro indica que o usuário autenticado está agindo em nome do proprietário do conteúdo especificado no valor do parâmetro. -
A documentação do método
channels.update
foi atualizada para refletir o fato de que ele pode ser usado para atualizar o objetobrandingSettings
do recursochannel
e as propriedades filhas dele. A documentação também lista a lista atualizada de propriedades que podem ser definidas para o objetoinvideoPromotion
do recursochannel
. -
O
error documentation
descreve os seguintes novos erros:Tipo de erro Detalhe do erro Descrição forbidden
accountDelegationForbidden
Esse erro não é específico de um método de API em particular. Isso indica que o usuário autenticado não está autorizado a agir em nome da Conta do Google especificada. forbidden
authenticatedUserAccountClosed
Esse erro não é específico de um método de API em particular. Indica que a conta do YouTube do usuário autenticado foi encerrada. Se o usuário estiver agindo em nome de outra Conta do Google, esse erro vai indicar que a outra conta foi encerrada. forbidden
authenticatedUserAccountSuspended
Esse erro não é específico de um método de API em particular. Indica que a conta do YouTube do usuário autenticado está suspensa. Se o usuário estiver agindo em nome de outra Conta do Google, esse erro vai indicar que a outra conta está suspensa. forbidden
authenticatedUserNotChannel
Esse erro não é específico de um método de API em particular. Isso indica que o servidor da API não consegue identificar o canal associado à solicitação de API. Se a solicitação for autorizada e usar o parâmetro onBehalfOfContentOwner
, defina também o parâmetroonBehalfOfContentOwnerChannel
.forbidden
cmsUserAccountNotFound
Esse erro não é específico de um método de API em particular. O usuário do CMS não está autorizado a agir em nome do proprietário do conteúdo especificado. notFound
contentOwnerAccountNotFound
Esse erro não é específico de um método de API em particular. Não foi possível encontrar a conta de proprietário do conteúdo especificada. badRequest
invalidPart
Esse erro não é específico de um método de API em particular. O parâmetro part
da solicitação especifica partes que não podem ser gravadas ao mesmo tempo.badRequest
videoChartNotFound
O método videos.list
retorna esse erro quando a solicitação especifica um gráfico de vídeo não disponível ou sem suporte.notFound
videoNotFound
O método videos.update
retorna esse erro para indicar que não foi possível encontrar o vídeo que você está tentando atualizar. Verifique se o valor da propriedadeid
no corpo da solicitação está correto.
10 de junho de 2013
Esta atualização contém as seguintes alterações:
-
O novo parâmetro
forUsername
do métodochannels.list
permite recuperar informações sobre um canal especificando o nome de usuário do YouTube dele. -
O método
activities.list
agora é compatível com o parâmetroregionCode
, que instrui a API a retornar resultados relevantes para o país especificado. O YouTube usa esse valor quando a atividade anterior do usuário autorizado no YouTube não fornece informações suficientes para gerar o feed de atividade. -
Os recursos de playlist agora contêm a propriedade
snippet.tags
. A propriedade só será retornada para usuários autorizados que estiverem recuperando dados sobre as próprias playlists. Os usuários autorizados também podem definir tags de playlist ao chamar os métodosplaylists.insert
ouplaylists.update
. -
O parâmetro
onBehalfOfContentOwner
, que antes era compatível com os métodoschannels.list
esearch.list
, agora também é compatível com os métodosvideos.insert
,videos.update
evideos.delete
. Quando esse parâmetro é usado em uma chamada para o métodovideos.insert
, a solicitação também precisa especificar um valor para o novo parâmetroonBehalfOfContentOwnerChannel
, que identifica o canal a que o vídeo será adicionado. O canal precisa estar vinculado ao proprietário do conteúdo especificado pelo parâmetroonBehalfOfContentOwner
.O parâmetro indica que as credenciais de autorização da solicitação identificam um usuário do CMS do YouTube que está agindo em nome do proprietário do conteúdo especificado no valor do parâmetro. A conta do CMS com a qual o usuário autentica deve estar vinculada ao proprietário do conteúdo do YouTube especificado.
Esse parâmetro é destinado a parceiros de conteúdo que têm e gerenciam vários canais do YouTube diferentes. Com ele, os parceiros podem se autenticar uma vez e acessar todos os dados de vídeo e do canal sem precisar fornecer credenciais de autenticação para cada canal individual.
Especificamente em relação a essa versão, o parâmetro agora permite que um parceiro de conteúdo insira, atualize ou exclua vídeos em qualquer um dos canais do YouTube de propriedade dele.
-
O
error documentation
descreve os seguintes novos erros:Tipo de erro Detalhe do erro Descrição forbidden
insufficientCapabilities
Esse erro não é específico de um método de API em particular. Isso indica que o usuário do CMS que chama a API não tem permissões suficientes para realizar a operação solicitada. Esse erro está associado ao uso do parâmetro onBehalfOfContentOwner
, que é compatível com vários métodos de API.unauthorized
authorizationRequired
O método activities.list
retorna esse erro quando a solicitação usa o parâmetrohome
, mas não está autorizada corretamente. -
No recurso
channels
, a propriedadeinvideoPromotion.channelId
foi removida porque o ID do canal já está especificado usando a propriedadeid
do recurso. -
O novo guia Como trabalhar com IDs de canais explica como a API usa esses IDs. O guia pode ser especialmente útil para desenvolvedores que estão migrando da versão anterior da API e têm aplicativos que solicitam conteúdo para o usuário
default
ou que dependem da ideia de que todo canal do YouTube tem um nome de usuário exclusivo, o que não é mais o caso.
22 de maio de 2013
Esta atualização contém as seguintes alterações:
-
Com o novo método
channelBanners.insert
, é possível fazer upload de uma imagem de banner que pode ser definida como a imagem de banner de um canal usando a nova propriedadebrandingSettings.image.bannerExternalUrl
do recursochannel
. -
A documentação do método
channels.update
foi atualizada para listar as propriedades que podem ser modificadas ao chamar o método. -
A documentação do recurso
video
não lista maisunspecified
como um valor de propriedade válido para as propriedadessuggestions.processingErrors[]
,suggestions.processingHints[]
,suggestions.processingWarnings[]
esuggestions.editorSuggestions[]
. -
O parâmetro
maxResults
do métodovideos.list
agora tem um valor padrão de5
. -
O
error documentation
agora lista erros para os métodoschannelBanners.insert
esubscriptions.list
. Ele também lista vários erros novos para o métodochannels.update
.
14 de maio de 2013
Esta atualização contém as seguintes alterações:
-
As páginas independentes agora listam exemplos de código para Java, .NET, PHP e Ruby.
-
A página que lista exemplos de código Python agora inclui exemplos de como adicionar uma inscrição, criar uma playlist e atualizar um vídeo.
10 de maio de 2013
Esta atualização contém as seguintes alterações:
-
O YouTube não identifica mais os recursos e serviços experimentais da API. Em vez disso, agora fornecemos uma lista de APIs do YouTube sujeitas à política de suspensão de uso.
8 de maio de 2013
Esta atualização contém as seguintes alterações:
-
Os recursos do canal agora são compatíveis com o objeto
inVideoPromotion
, que encapsula informações sobre uma campanha promocional associada ao canal. Um canal pode usar uma campanha promocional no vídeo para mostrar imagens em miniatura de um vídeo promovido no player durante a reprodução dos vídeos do canal.Para recuperar esses dados, inclua
invideoPromotion
no valor do parâmetropart
em uma solicitaçãochannels.list
. -
O novo método
channels.update
pode ser usado para atualizar os dados de uma campanha promocional no vídeo de um canal. O método só aceita atualizações na parteinvideoPromotion
do recursochannel
e ainda não aceita atualizações em outras partes desse recurso.
2 de maio de 2013
Esta atualização contém as seguintes alterações:
-
Os recursos do canal agora oferecem suporte à propriedade
status.isLinked
, que indica se os dados do canal identificam um usuário já vinculado a um nome de usuário do YouTube ou a uma conta do Google+. Um usuário que tenha um desses links já tem uma identidade pública do YouTube, que é um pré-requisito para várias ações, como enviar vídeos. -
Os recursos de assinatura agora são compatíveis com a parte
subscriberSnippet
. Esse objeto encapsula os dados de snippet do canal do assinante. -
A API agora é compatível com o método
videos.getRating
, que recupera as classificações que o usuário autenticado deu a uma lista de um ou mais vídeos. -
O novo parâmetro
myRating
do métodovideos.list
permite recuperar uma lista de vídeos que o usuário autenticado avaliou com uma classificaçãolike
oudislike
.Os parâmetros
myRating
eid
agora são considerados parâmetros de filtro. Isso significa que uma solicitação de API precisa especificar exatamente um dos parâmetros. Antes, o parâmetroid
era obrigatório para esse método.O método retorna um erro
forbidden
para solicitações que tentam recuperar informações de classificação de vídeo, mas não estão autorizadas a fazer isso. -
Com a introdução do parâmetro
myRating
, o métodovideos.list
também foi atualizado para oferecer suporte à paginação. No entanto, os parâmetros de paginação só são compatíveis com solicitações que usam o parâmetromyRating
. Os parâmetros e informações de paginação não são compatíveis com solicitações que usam o parâmetroid
.-
O parâmetro
maxResults
especifica o número máximo de vídeos que a API pode retornar no conjunto de resultados, e o parâmetropageToken
identifica uma página específica no conjunto de resultados que você quer recuperar. -
O recurso
youtube#videoListResponse
, que é retornado em resposta a uma solicitaçãovideos.list
, agora contém o objetopageInfo
, que inclui detalhes como o número total de resultados e o número de resultados incluídos no conjunto de resultados atual. O recursoyoutube#videoListResponse
também pode incluir propriedadesnextPageToken
eprevPageToken
, cada uma delas fornecendo um token que pode ser usado para recuperar uma página específica no conjunto de resultados.
-
-
O método
videos.insert
é compatível com os seguintes parâmetros novos:autoLevels
: defina o valor do parâmetro comotrue
para instruir o YouTube a melhorar automaticamente a iluminação e a cor do vídeo.stabilize
: defina o valor do parâmetro comotrue
para instruir o YouTube a ajustar o vídeo removendo a instabilidade resultante dos movimentos da câmera.
-
A propriedade
channelTitle
foi adicionada aosnippet
para os seguintes recursos:playlistItem
: a propriedade especifica o nome do canal que adicionou o item à playlist.playlist
: a propriedade especifica o nome do canal que criou a playlist.subscription
: a propriedade especifica o nome do canal inscrito.
-
Exemplos de código foram adicionados para os seguintes métodos:
activities.insert
(Ruby)playlistItems.list
(.NET)search.list
(.NET)subscriptions.insert
(Java, Ruby)videos.insert
(.NET, Ruby)
-
O novo parâmetro
mySubscribers
do métodosubscriptions.list
permite recuperar uma lista dos inscritos do usuário autenticado no momento. Esse parâmetro só pode ser usado em uma solicitação devidamente autorizada.Observação:essa funcionalidade foi criada para substituir o parâmetro
mySubscribers
, que atualmente é compatível com o métodochannels.list
. Esse parâmetro será descontinuado. -
Em um recurso
video
, o valor da propriedadeunspecified
não é mais um valor possível para nenhuma das seguintes propriedades: -
As solicitações de API que contêm um parâmetro inesperado agora retornam um erro
badRequest
, e o motivo informado para o erro éunexpectedParameter
. -
O erro que o método
playlistItems.insert
retorna quando a playlist já contém o número máximo de itens permitidos foi atualizado. Agora, o erro é informado como um erroforbidden
, e o motivo éplaylistContainsMaximumNumberOfVideos
.
19 de abril de 2013
Esta atualização contém as seguintes alterações:
-
O novo método
videos.rate
permite que um usuário defina uma classificaçãolike
oudislike
em um vídeo ou remova uma classificação de um vídeo.A documentação de erros também foi atualizada para listar os erros que a API pode retornar em resposta a uma chamada de método
videos.rate
. -
As imagens em miniatura agora são identificadas na documentação da API como um recurso separado, e o novo método
thumbnails.set
permite fazer upload de uma miniatura de vídeo personalizada para o YouTube e definir um vídeo.A documentação de erros também foi atualizada para listar os erros que a API pode retornar em resposta a uma chamada de método
thumbnails.set
.Essa mudança não afeta os recursos atuais que retornam imagens em miniatura. As imagens em miniatura são retornadas nesses recursos da mesma forma que antes, mas a documentação agora lista os nomes dos diferentes tamanhos de miniatura que a API pode retornar.
-
A nova parte
brandingSettings
do recursochannel
identifica configurações, texto e imagens para a página do canal e as páginas de exibição de vídeo. -
O recurso
playlistItem
contém as seguintes propriedades novas:-
O novo objeto
status
encapsula informações de status sobre o item da playlist, e a propriedadestatus.privacyStatus
identifica o status de privacidade dele.
-
-
O recurso
video
contém as seguintes propriedades novas:-
A propriedade
status.publicStatsViewable
indica se as estatísticas de vídeo estendidas na página de exibição estão disponíveis publicamente. Por padrão, essas estatísticas são visíveis, e informações como a contagem de visualizações e as classificações de um vídeo ainda serão públicas, mesmo que o valor dessa propriedade seja definido comofalse
. Você pode definir o valor dessa propriedade ao chamar o métodovideos.insert
ouvideos.update
. -
O objeto
contentDetails.contentRating
encapsula as classificações que o vídeo recebeu em vários sistemas. A lista abaixo identifica os sistemas de classificação compatíveis e fornece um link para a propriedade associada a cada um deles. As definições de propriedade identificam os valores de classificação aceitos para cada sistema.País Sistema de classificação Propriedade United States
Motion Picture Association of America (MPAA) contentDetails.contentRating.mpaaRating
United States
Orientação dos pais para a televisão contentDetails.contentRating.tvpgRating
Australia
Australian Classification Board (ACB) contentDetails.contentRating.acbRating
Brazil
Departamento de Justiça, Classificação, Qualificação e Títulos contentDetails.contentRating.djctqRating
Canada
Canadian Home Video Rating System (CHVRS) contentDetails.contentRating.chvrsRating
France
Centre national du cinéma et de l'image animée (Ministério da Cultura da França) contentDetails.contentRating.fmocRating
Germany
Freiwillige Selbstkontrolle der Filmwirtschaft (FSK) contentDetails.contentRating.fskRating
Great Britain
British Board of Film Classification (BBFC) contentDetails.contentRating.bbfcRating
India
Central Board of Film Certification (CBFC) contentDetails.contentRating.cbfcRating
Japan
映倫管理委員会 (EIRIN) contentDetails.contentRating.eirinRating
Korea
영상물등급위원회 (KMRB) contentDetails.contentRating.kmrbRating
Mexico
Diretoria Geral de Rádio, Televisão e Cinematografia (RTC) contentDetails.contentRating.rtcRating
New Zealand
Office of Film and Literature Classification contentDetails.contentRating.oflcRating
Russia
Registro Nacional de Filmes da Federação Russa contentDetails.contentRating.russiaRating
Spain
Instituto de la Cinematografía y de las Artes Audiovisuales (ICAA)
contentDetails.contentRating.icaaRating
-
-
A documentação do método
playlistItems.update
foi atualizada para refletir o fato de que a propriedadesnippet.resourceId
precisa ser especificada no recurso enviado como o corpo da solicitação. -
O método
search.list
agora oferece suporte à seguinte funcionalidade:-
O novo parâmetro
forMine
restringe uma pesquisa para recuperar apenas os vídeos do usuário autenticado. -
Agora, o parâmetro
order
permite classificar os resultados em ordem alfabética por título (order=title
) ou por contagem de vídeos em ordem decrescente (order=videoCount
). -
O novo parâmetro
safeSearch
indica se os resultados da pesquisa devem incluir conteúdo restrito.
-
-
O método
videos.insert
é compatível com vários erros novos, listados na tabela abaixo:Tipo de erro Detalhe do erro Descrição badRequest
invalidCategoryId
A propriedade snippet.categoryId
especifica um ID de categoria inválido. Use o métodovideoCategories.list
para recuperar as categorias compatíveis.badRequest
invalidRecordingDetails
O metadata
especifica detalhes de gravação inválidos.badRequest
invalidVideoGameRating
Os metadados da solicitação especificam uma classificação de video game inv. badRequest
invalidVideoMetadata
Os metadados da solicitação são inválidos. -
O parâmetro
onBehalfOfContentOwner
foi removido da lista de parâmetros aceitos para os métodosvideos.update
evideos.delete
.
12 de março de 2013
Esta atualização contém as seguintes alterações:
-
A propriedade
channelTitle
foi adicionada aosnippet
para os seguintes recursos: -
O método
search.list
é compatível com os seguintes parâmetros novos:-
O parâmetro
channelType
permite restringir uma pesquisa de canais para recuperar todos os canais ou apenas programas. -
Com o parâmetro
videoType
, é possível restringir uma pesquisa de vídeos para recuperar todos os vídeos ou apenas filmes ou episódios de programas.
-
-
A definição da parte
recordingDetails
do recursovideo
foi atualizada para informar que o objeto só será retornado para um vídeo se os dados de geolocalização ou o horário de gravação dele tiverem sido definidos. -
O método
playlistItems.update
agora retorna um erroinvalidSnippet
, que é retornado se a solicitação da API não especificar um snippet válido. -
Vários métodos de API são compatíveis com novos parâmetros destinados exclusivamente a parceiros de conteúdo do YouTube. Os parceiros de conteúdo do YouTube incluem estúdios de cinema e televisão, gravadoras e outros criadores de conteúdo que disponibilizam o material deles na plataforma.
-
O parâmetro
onBehalfOfContentOwner
indica que as credenciais de autorização da solicitação identificam um usuário do CMS do YouTube que está agindo em nome do proprietário do conteúdo especificado no valor do parâmetro. A conta do CMS com a qual o usuário autentica deve estar vinculada ao proprietário do conteúdo do YouTube especificado.Esse parâmetro é destinado a parceiros de conteúdo que têm e gerenciam vários canais do YouTube diferentes. Com ele, os parceiros podem se autenticar uma vez e acessar todos os dados de vídeo e do canal sem precisar fornecer credenciais de autenticação para cada canal individual.
Os métodos
channels.list
,search.list
,videos.delete
,videos.list
evideos.update
oferecem suporte a esse parâmetro. -
O parâmetro
managedByMe
, que é compatível com o métodochannels.list
, instrui a API a retornar todos os canais de propriedade do proprietário do conteúdo especificado pelo parâmetroonBehalfOfContentOwner
. -
O parâmetro
forContentOwner
, que é compatível com o métodosearch.list
, instrui a API a restringir os resultados da pesquisa para incluir apenas recursos de propriedade do proprietário do conteúdo especificado pelo parâmetroonBehalfOfContentOwner
.
-
25 de fevereiro de 2013
Esta atualização contém as seguintes alterações:
-
A API é compatível com várias novas partes e propriedades para recursos
video
:-
As novas partes
fileDetails
,processingDetails
esuggestions
fornecem informações aos proprietários de vídeos sobre o conteúdo enviado. Esses dados são muito úteis em aplicativos que permitem uploads de vídeo e incluem o seguinte:- status e progresso do processamento
- erros ou outros problemas encontrados durante o processamento de um vídeo
- disponibilidade de imagens em miniatura
- Sugestões para melhorar a qualidade do vídeo ou dos metadados
- detalhes sobre o arquivo original enviado ao YouTube
Todas essas partes só podem ser recuperadas pelo proprietário do vídeo. A lista abaixo descreve brevemente as novas partes, e a documentação do recurso
video
define todas as propriedades que cada parte contém.-
O objeto
fileDetails
contém informações sobre o arquivo de vídeo enviado ao YouTube, incluindo resolução, duração, codecs de áudio e vídeo, taxas de bits de stream e muito mais. -
O objeto
processingProgress
contém informações sobre o progresso do YouTube no processamento do arquivo de vídeo enviado. As propriedades do objeto identificam o status atual do processamento e estimam o tempo restante até que o YouTube termine de processar o vídeo. Esta parte também indica se os diferentes tipos de dados ou de conteúdo, como detalhes do arquivo ou imagens em miniatura, estão disponíveis para o vídeo.Esse objeto foi projetado para ser pesquisado para que o usuário que enviou o vídeo possa acompanhar o progresso do YouTube no processamento do arquivo de vídeo enviado.
-
O objeto
suggestions
contém sugestões que identificam oportunidades para melhorar a qualidade do vídeo ou os metadados do conteúdo enviado.
-
A parte
contentDetails
contém quatro novas propriedades. Essas propriedades podem ser recuperadas com solicitações não autenticadas.dimension
: indica se o vídeo está disponível em 2D ou 3D.definition
: indica se o vídeo está disponível em definição padrão ou alta definição.caption
– Indica se as legendas estão disponíveis para o vídeo.licensedContent
: indica se o vídeo tem conteúdo reivindicado por um parceiro de conteúdo do YouTube.
-
A parte
status
contém duas novas propriedades. Os proprietários de vídeos podem definir valores para as duas propriedades ao inserir ou atualizar um vídeo. Essas propriedades também podem ser recuperadas com solicitações não autenticadas.embeddable
: indica se o vídeo pode ser incorporado em outro site.license
: especifica a licença do vídeo. Os valores válidos sãocreativeCommon
eyoutube
.
-
-
A definição do parâmetro
part
foi atualizada para os métodosvideos.list
,videos.insert
evideos.update
. Agora, ela lista as partes recém-adicionadas descritas acima, além da parterecordingDetails
, que havia sido omitida por engano. -
A nova propriedade
contentDetails.googlePlusUserId
do recursochannel
especifica o ID do perfil do Google+ associado ao canal. Esse valor pode ser usado para gerar um link para o perfil do Google+. -
Cada objeto de miniatura agora especifica a largura e a altura da imagem. No momento, as imagens em miniatura são retornadas nos recursos
activity
,channel
,playlist
,playlistItem
,search result
,subscription
evideo
. -
O
playlistItems.list
agora oferece suporte ao parâmetrovideoId
, que pode ser usado com o parâmetroplaylistId
para recuperar apenas o item da playlist que representa o vídeo especificado.A API retorna um erro
notFound
se o vídeo identificado pelo parâmetro não for encontrado na playlist. -
A documentação de erros descreve um novo erro
forbidden
, que indica que uma solicitação não está autorizada corretamente para a ação solicitada. -
A propriedade
snippet.channelId
do recursochannel
foi removida. A propriedadeid
do recurso fornece o mesmo valor.
30 de janeiro de 2013
Esta atualização contém as seguintes alterações:
-
A nova página error lista os erros que a API pode retornar. A página inclui erros gerais, que podem ocorrer em vários métodos de API diferentes, bem como erros específicos do método.
16 de janeiro de 2013
Esta atualização contém as seguintes alterações:
-
Exemplos de código agora estão disponíveis para os métodos e linguagens mostrados na lista abaixo:
activities.insert
– JavaplaylistItems.insert
: PythonplaylistItems.list
– Java, JavaScript, PHP, Python, Rubyplaylists.insert
– Java, JavaScript, Pythonsearch.list
– Java, JavaScript, Python, Rubyvideos.insert
– Java
-
Agora, um recurso
activity
pode informar uma açãochannelItem
, que ocorre quando o YouTube adiciona um vídeo a um canal do YouTube gerado automaticamente. O algoritmo do YouTube identifica temas com uma presença significativa no site e gera canais automaticamente para eles. -
Os seguintes parâmetros
search.list
foram atualizados:- O parâmetro
q
não é mais designado como um filtro, o que significa que... - O parâmetro
relatedToVideo
foi renomeado comorelatedToVideoId
. - O parâmetro
published
foi substituído por dois novos parâmetros,publishedAfter
epublishedBefore
, descritos abaixo.
- O parâmetro
-
O método
search.list
é compatível com os seguintes parâmetros novos:Nome do parâmetro Valor Descrição channelId
string
Retorna os recursos criados pelo canal especificado. publishedAfter
datetime
Retorna recursos criados após o horário especificado. publishedBefore
datetime
Retorna recursos criados antes do horário especificado. regionCode
string
Retorna recursos para o país especificado. videoCategoryId
string
Filtra os resultados da pesquisa de vídeo para incluir apenas vídeos associados à categoria de vídeo especificada. videoEmbeddable
string
Filtre os resultados da pesquisa de vídeo para incluir apenas vídeos que podem ser reproduzidos em um player incorporado em uma página da Web. Defina o valor do parâmetro como true
para recuperar apenas vídeos incorporáveis.videoSyndicated
string
Filtre os resultados da pesquisa de vídeo para incluir apenas vídeos que podem ser reproduzidos fora do YouTube.com. Defina o valor do parâmetro como true
para recuperar apenas vídeos distribuídos. -
Vários recursos da API são compatíveis com novas propriedades. A tabela abaixo identifica os recursos e as novas propriedades:
Recurso Nome da propriedade Valor Descrição activity
contentDetails.playlistItem.playlistItemId
string
O ID do item da playlist que o YouTube atribuiu para identificar o item de forma exclusiva na playlist. activity
contentDetails.channelItem
object
Um objeto que contém informações sobre um recurso adicionado a um canal. Essa propriedade só estará presente se o snippet.type
forchannelItem
.activity
contentDetails.channelItem.resourceId
object
Um objeto que identifica o recurso adicionado ao canal. Assim como outras propriedades resourceId
, ela contém uma propriedadekind
que especifica o tipo de recurso, como vídeo ou playlist. Ele também contém exatamente uma de várias propriedades (videoId
,playlistId
etc.) que especifica o ID que identifica exclusivamente esse recurso.channel
status
object
Esse objeto encapsula informações sobre o status de privacidade do canal. channel
status.privacyStatus
string
O status de privacidade do canal. Os valores válidos são: private
epublic
.playlist
contentDetails
object
Esse objeto contém metadados sobre o conteúdo da playlist. playlist
contentDetails.itemCount
unsigned integer
O número de vídeos na playlist. playlist
player
object
Esse objeto contém informações que você usaria para tocar a playlist em um player incorporado. playlist
player.embedHtml
string
Uma tag <iframe>
que incorpora um player de vídeo que reproduz a playlist.video
recordingDetails
object
Esse objeto encapsula informações que identificam ou descrevem o local e a hora em que o vídeo foi gravado. video
recordingDetails.location
object
Esse objeto contém informações de geolocalização associadas ao vídeo. video
recordingDetails.location.latitude
double
Latitude em graus. video
recordingDetails.location.longitude
double
Longitude em graus. video
recordingDetails.location.elevation
double
Altitude acima da Terra, em metros. video
recordingDetails.locationDescription
string
Uma descrição textual do local onde o vídeo foi gravado. video
recordingDetails.recordingDate
datetime
A data e a hora em que o vídeo foi gravado. O valor é especificado no formato ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ
). -
A documentação de vários métodos de API agora identifica propriedades que precisam ser especificadas no corpo da solicitação ou que são atualizadas com base nos valores no corpo da solicitação. A tabela abaixo lista esses métodos e as propriedades obrigatórias ou modificáveis.
Observação:a documentação de outros métodos já pode listar propriedades obrigatórias e modificáveis.
Método Propriedades activities.insert
Propriedades obrigatórias: snippet.description
snippet.description
contentDetails.bulletin.resourceId
playlists.update
Propriedades obrigatórias: id
playlistItems.update
Propriedades obrigatórias: id
videos.update
Propriedades obrigatórias: id
-
A API não informa mais um erro
playlistAlreadyExists
se você tentar criar ou atualizar uma playlist com o mesmo título de uma que já existe no mesmo canal. -
Vários métodos de API são compatíveis com novos tipos de erros. A tabela abaixo identifica o método e os erros com suporte recente:
Método Tipo de erro Detalhe do erro Descrição guideCategories.list
notFound
notFound
Não foi possível encontrar a categoria do guia identificada pelo parâmetro id
. Use o método guideCategories.list para recuperar uma lista de valores válidos.playlistItems.delete
forbidden
playlistItemsNotAccessible
A solicitação não está devidamente autorizada a excluir o item da playlist especificado. videoCategories.list
notFound
videoCategoryNotFound
Não foi possível encontrar a categoria de vídeo identificada pelo parâmetro id
. Use o método videoCategories.list para recuperar uma lista de valores válidos.