Esta página lista as alterações da API de dados do YouTube (v3) e as atualizações da documentação. Inscreva-se neste log de mudanças.
30 de abril de 2024
Observação:este é um anúncio de descontinuação.
Esta atualização contém as seguintes alterações:
A API não permite mais inserir ou recuperar discussões de canal. Essa mudança é consistente com a funcionalidade suportada no site do YouTube, que não é compatível com a postagem de comentários em canais.
13 de março de 2024
Observação:este é um anúncio de descontinuação.
Esta atualização contém as seguintes alterações:
O parâmetro sync
dos métodos captions.insert
e captions.update
foi descontinuado. O YouTube não vai mais oferecer suporte ao
parâmetro a partir de 12 de abril de 2024.
Como resultado dessa mudança, os desenvolvedores precisam incluir informações de tempo ao inserir ou atualizar as faixas de legenda. Caso contrário, o upload 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 tamanho máximo permitido para o campo snippet.name
é de 150 caracteres. A API vai retornar um erro nameTooLong
se o nome da faixa for maior que isso.
7 de março de 2024
Observação:este é um anúncio de descontinuação.
O uso da propriedade de recurso channel
brandingSettings.channel.moderateComments
foi descontinuado. O YouTube não dará mais
suporte ao parâmetro a partir de 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.
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 descontinuação.
O método comments.markAsSpam
foi descontinuado há vários anos. Esse método já não é mais compatível com o YouTube e não é mais aceito pela 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
. Este parâmetro permite que você filtre os resultados da pesquisa para incluir somente vídeos que o criador de conteúdo determinou como tendo uma promoção paga.
18 de agosto de 2023
A definição de liveStreamingDetails.concurrentViewers
do recurso video
foi atualizada para indicar que as contagens de espectadores simultâneos que a API YouTube Data retorna podem ser diferentes das contagens de espectadores simultâneos processados e sem spam disponíveis no YouTube Analytics. A Central de Ajuda do YouTube tem 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 suportado, e as referências a ele foram removidas da documentação da API.
28 de junho de 2023
O método thumbnails.set agora suporta o erro uploadRateLimitExceeded
, que indica que o canal enviou muitas miniaturas nas últimas 24 horas e deve tentar novamente mais tarde.
12 de junho de 2023
Observação:este é um anúncio de descontinuação.
O uso do parâmetro relatedToVideoId
do método
search.list foi descontinuado. O YouTube não vai mais oferecer suporte ao
parâmetro a partir de 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
a partir de 7 de agosto de 2023.
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
Correção das anotações de tipo nos campos video.statistics para string de longo não assinado.
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 caption_id
, embora não afete aplicativos que não armazenam valores caption_id
.
Entre hoje e 1o de dezembro de 2022, os métodos
captions.list
,
captions.update
,
captions.download
e
captions.delete
vão ser
compatíveis com os IDs de faixa de legenda antigos e novos. No entanto, a partir de 1o de dezembro de 2022, o YouTube
não vai mais oferecer suporte aos IDs de faixa de legenda antigos. Nesse momento, chamar qualquer um desses métodos de API com um ID de faixa de legenda antigo resultará em um erro captionNotFound
.
Como preparação para essa mudança, substitua totalmente todos os dados das faixas de legendas armazenados
entre hoje e 1o de dezembro de 2022. Isso significa que, para qualquer vídeo em que você armazene dados de faixa de legenda, é necessário excluir os dados armazenados no momento e chamar o método captions.list
para recuperar o conjunto atual de faixas de legenda para o vídeo e armazenar os dados na resposta da API normalmente.
12 de julho de 2022
Os Termos de Serviço dos serviços de APIs do YouTube foram atualizados. Consulte os Termos de Serviço dos serviços da API do YouTube: histórico de revisões 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 de arquivo para vídeos enviados aumentou de 128 GB para 256 GB.
8 de abril de 2022
As definições de parâmetro myRecentSubscribers
e mySubscribers
do método subscriptions.list
foram atualizadas para indicar que o número máximo de assinantes retornados pela API pode ser limitado.
Essa mudança representa uma correção da documentação, não uma mudança no comportamento da API.
15 de dezembro de 2021
Conforme anunciado em 18 de novembro de 2021, além das
mudanças para tornar a contagem de "Não gostei"
privada em toda a plataforma do YouTube, a propriedade
statistics.dislikeCount
do recurso video
agora é particular.
Saiba mais sobre essa mudança no blog oficial do YouTube.
18 de novembro de 2021
Junto com as mudanças para
tornar a contagem de marcações "Não gostei" particular em toda a plataforma do YouTube, a propriedade
statistics.dislikeCount
do recurso video
se tornará privada a partir de 13 de dezembro de 2021. Isso significa que a propriedade só será incluída em uma resposta de 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 a contagem de marcações "Não gostei" publicamente e ainda precisam dessa contagem para o cliente da API podem se inscrever para serem colocados em uma lista de permissões para uma isenção. 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 descontinuação.
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 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 da API do YouTube precisam concluir uma Auditoria de conformidade com a API para receber mais do que a alocação de cota padrão de 10 mil unidades. Até o momento, o processo de auditoria de conformidade e as solicitações de alocações adicionais de unidades de cota foram conduzidos por desenvolvedores que preencheram e enviaram o Formulário de auditoria e extensão de cota 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, adicionamos três novos formulários e um guia para o preenchimento deles:
- Formulário de solicitações de desenvolvedores auditados: os desenvolvedores que já foram aprovados em uma auditoria de compliance da API podem preencher e enviar este formulário mais curto para solicitar uma extensão de cota alocada.
- Formulário de contestação: os desenvolvedores que tiveram projetos de API reprovados em uma auditoria de compliance ou sem aumento de unidade de cota podem preencher e enviar este formulário.
- Formulário de mudança de controle: os desenvolvedores ou qualquer parte que opera um cliente de API em nome de um desenvolvedor que tenha uma mudança de controle (por exemplo, em função de 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, faça uma auditoria da conformidade com o caso de uso do novo projeto de API e valide a alocação de cota atual do desenvolvedor.
Cada novo formulário informa o uso pretendido da API do YouTube para que possamos ajudar você da melhor maneira possível.
Mais detalhes estão disponíveis no novo guia de auditorias de compliance da API.
12 de maio de 2021
Observação:este é um anúncio de descontinuação.
Esta atualização abrange as seguintes mudanças na API:
-
O uso da propriedade
contentDetails.relatedPlaylists.favorites
do recursochannel
foi descontinuado. A funcionalidade de vídeos favoritos foi suspensa 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 nova playlist se um cliente da API tentasse adicionar um vídeo a uma playlist de favoritos inexistente. Nesse caso, a playlist não será criada, e a API retornará um erro. Todas as tentativas de modificar as playlists favoritas adicionando, modificando ou excluindo itens também foram descontinuadas de acordo com os anúncios anteriores e podem começar a retornar erros a qualquer momento.
-
As propriedades do recurso
channel
a seguir foram descontinuadas. Essas propriedades já não são compatíveis com a interface do YouTube Studio e no YouTube. Como resultado, elas também não são mais suportadas pela 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 representação de recursos
channel
, e as definições delas 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 propriedades do recurso
channelSection
a seguir foram descontinuadas. Essas propriedades já não são compatíveis com a interface do YouTube Studio e no YouTube. Como resultado, elas também não são mais suportadas pela API.snippet.style
snippet.defaultLanguage
snippet.localized.title
localizations
localizations.(key)
localizations.(key).title
targeting
targeting.languages[]
targeting.regions[]
targeting.countries[]
Em conjunto com essa mudança, o parâmetro
hl
do métodochannelSection.list
também foi descontinuado, já que os recursos a que ele aceita não são compatíveis.Todas as propriedades foram removidas da representação de recursos
channelSection
, e as definições delas 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 valores a seguir foram descontinuados. Esses valores já não são mais compatíveis com as páginas de canais do YouTube e, como resultado, também não são mais aceitos pela API.likedPlaylists
likes
postedPlaylists
postedVideos
recentActivity
recentPosts
-
O uso da propriedade
snippet.tags[]
do recursoplaylist
foi descontinuado. Essa propriedade já não é mais compatível com o YouTube e, como resultado, não é mais suportada pela API.
9 de fevereiro de 2021
O recurso playlistItem
é compatível com 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
aceitam um novo erroplaylistOperationUnsupported
. O erro ocorre quando uma solicitação tenta executar 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 de vídeos enviados ou 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 possam ser acessados 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 disponibiliza mais informações sobre os dados coletados e enviados pelo player incorporado do YouTube. Você é responsável por todos os dados do usuário que enviar por qualquer player incorporado do YouTube antes da interação do usuário com o player para indicar a intenção de reprodução. Você pode limitar os dados compartilhados com o YouTube antes que um usuário interaja com o player. Para isso, defina a reprodução automática como falsa.
- A nova Seção III.E.4.j está relacionada à verificação do status de conteúdo para crianças (MFK, na sigla em inglês) de conteúdo antes de incorporá-lo aos seus sites e apps. Você é responsável por saber quando os vídeos incorporados ao seu cliente de API são destinados a crianças e por tratar adequadamente os dados coletados do player incorporado. Por isso, você precisa verificar o status do conteúdo usando o serviço da API YouTube Data antes de incorporá-lo ao seu cliente da API por meio de qualquer player incorporado do YouTube.
O novo guia Como encontrar o status de um vídeo MadeForKids explica como procurar o status de conteúdo para crianças de um vídeo usando o serviço da API YouTube Data.
Em conjunto com essas mudanças, um lembrete foi adicionado à documentação dos parâmetros do player incorporado para explicar que, se você ativar a reprodução automática, a reprodução ocorrerá sem nenhuma interação do usuário com o player. Portanto, a coleta e o compartilhamento de dados de reprodução ocorrem após o carregamento da página.
8 de outubro de 2020
Esta atualização abrange 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 pode levar até um dia para ser preenchido. - A propriedade
statistics.videoCount
reflete apenas a contagem dos 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 de canal, identificadas na propriedade
brandingSettings.channel.keywords
, poderão ser truncadas se excederem o comprimento máximo permitido de 500 caracteres ou se contiverem aspas sem escape ("
). O limite de 500 caracteres não é um limite por palavra-chave, mas um limite no comprimento 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 descontinuação.
Esta atualização abrange as seguintes mudanças na API. Todas as mudanças entrarão em vigor a partir de 9 de setembro de 2020, a data deste anúncio. Com isso em mente, os desenvolvedores não precisam mais confiar em nenhum dos recursos da API listados abaixo.
-
Os seguintes recursos, métodos, parâmetros e propriedades da API foram descontinuados
imediatamente e vão deixar de funcionar a partir da data deste anúncio:
- 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 conterão mais a propriedadeprevPageToken
se a solicitação de API definir o parâmetromanagedByMe
comotrue
. Essa mudança não afeta a propriedadeprevPageToken
de outras solicitaçõeschannels.list
nem a propriedadenextPageToken
de 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
, 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 dele, anunciadas como obsoletas em 27 de novembro de 2017, foram removidas da documentação.
29 de julho de 2020
Simplificamos nosso processo de cobrança de cotas de solicitações de API removendo o custo adicional associado ao parâmetro part
. Com efeito imediato, cobraremos apenas o custo base do método chamado. Veja mais informações sobre a cota simplificada aqui.
O efeito dessa mudança é que a maioria das chamadas de API terá um custo de cota ligeiramente menor, enquanto algumas chamadas de API ainda terão o mesmo custo. Essa mudança não aumenta o custo das chamadas de API. No geral, o impacto provável é que a cota alocada, que pode ser vista no console do Google Cloud, será um pouco maior.
Recomendamos que todos os desenvolvedores concluam uma auditoria de conformidade dos projetos para garantir acesso contínuo aos serviços da API 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 estarão restritos ao
modo de visualização particular. 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 usarem um cliente de API não verificado para enviar vídeos vão receber um e-mail explicando que o vídeo está bloqueado como privado e que é possível evitar a restrição usando um cliente oficial ou auditado.
No momento, os projetos de API criados antes de 28 de julho de 2020 não serão afetados por essa mudança. No entanto, recomendamos que todos os desenvolvedores realizem uma auditoria de conformidade dos projetos para garantir acesso contínuo aos serviços da API 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 na documentação relacionada ao nosso processo de cobrança de cotas. No entanto, devido a circunstâncias imprevistas, a alteração da cota ainda não está em vigor. Como resultado, a documentação foi revertida para fins de precisão. Para evitar confusão, a entrada do histórico de revisões que explica a alteração foi removida e será republicada em breve.
7 de julho de 2020
Observação:este é um anúncio de descontinuação.
Os parâmetros autoLevels
e stabilize
do método videos.insert
foram descontinuados, e ambos os parâmetros foram removidos da documentação. Os valores delas 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 Como obedecer às Políticas para desenvolvedores do YouTube fornece orientações e exemplos para ajudar você a garantir que os clientes da API sigam partes específicas dos Termos e Políticas (TOS da API) dos serviços de API do YouTube.
Essa orientação oferece insights sobre como o YouTube aplica alguns aspectos dos TOS da API, mas não substitui os documentos atuais. Neste guia, abordamos algumas das perguntas mais comuns que os desenvolvedores fazem durante auditorias de conformidade da API. Esperamos que ele simplifique o processo de desenvolvimento de recursos para ajudar 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 de canais foi totalmente descontinuado. Essa mudança foi anunciada inicialmente
em 17 de abril de 2020 e agora está 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 de canais. Para mais detalhes, consulte a
Central de Ajuda do YouTube.
17 de abril de 2020
Observação:este é um anúncio de descontinuação.
O YouTube está descontinuando o recurso de boletim do canal. Como resultado, o método
activities.insert
será
suspenso, e o método activities.list
deixará de retornar boletins de canais. Essas mudanças entrarão em vigor na API a partir de 18 de maio de 2020. 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 membro de um canal do YouTube. Um membro oferece apoio monetário recorrente ao criador e recebe benefícios especiais. Por exemplo, os membros podem conversar quando o criador de conteúdo ativar o modo exclusivo para membros no chat.Este recurso substitui o recurso
sponsor
, que é documentado como parte da API YouTube Live Streaming. O uso do recursosponsor
foi descontinuado, e os clientes da API precisam atualizar as chamadas para o métodosponsors.list
para usar o métodomembers.list
. -
O novo recurso
membershipsLevel
identifica um nível de preço 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.
-
10 de janeiro de 2020
Agora, a API é compatível com a capacidade de identificar conteúdo feito para crianças, o que o YouTube chama de "conteúdo para crianças". Saiba mais sobre 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 e espectadores identifiquem conteúdo para crianças:
-
A propriedade
selfDeclaredMadeForKids
permite que os criadores de conteúdo especifiquem se um canal ou vídeo tem conteúdo 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 autorizar a solicitação de API. -
A propriedade
madeForKids
permite que qualquer usuário recupere o status de "conteúdo para crianças" de um canal ou vídeo. Por exemplo, o status pode ser determinado com base no valor da propriedadeselfDeclaredMadeForKids
. Acesse a Central de Ajuda do YouTube para mais informações sobre como configurar o público do seu canal, vídeos ou transmissões.
Também atualizamos os Termos de Serviço e as políticas de desenvolvedor dos serviços da API YouTube. Consulte os Termos de Serviço dos serviços da API do YouTube: histórico de revisões para mais informações. As mudanças nos Termos de Serviço e nas políticas de desenvolvedor dos serviços da API YouTube entrarão em vigor em 10 de janeiro de 2020, 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 maneira 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 são arredondadas para três valores significativos em casos com mais de 1.000 inscritos. Essa mudança afeta a
propriedade
statistics.subscriberCount
do recurso channel
.
Observação:essa mudança afeta esse valor de propriedade mesmo nos casos em que um usuário envia uma solicitação autorizada de dados sobre o próprio canal. Os proprietários de canais ainda podem conferir a contagem exata no YouTube Studio.
Por exemplo, se um canal tem 123.456 inscritos, a propriedade statistics.subscriberCount
terá 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 de 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 por meio do 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 os métodos da API:-
O widget do APIs Explorer permite selecionar escopos de autorização, inserir exemplos de valores de propriedades e parâmetros e, em seguida, enviar solicitações de API e ver as respostas reais da API. O widget também oferece uma visualização em tela cheia que mostra exemplos completos de código, 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 do método explicado na página. 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.É possível usar links nessa seção para preencher o APIs Explorer com exemplos de valores para seu caso de uso ou para abrir a ferramenta em tela cheia com os valores já preenchidos. O objetivo dessas mudanças é facilitar a visualização de exemplos de código diretamente aplicáveis ao caso de uso que você está tentando implementar no seu aplicativo.
No momento, amostras de código são compatíveis com Java, JavaScript, PHP, Python e curl.
-
-
A ferramenta de exemplos de código também foi atualizada com uma nova interface que oferece os mesmos recursos descritos acima. Com essa ferramenta, é possível explorar casos de uso de diferentes métodos, carregar valores no APIs Explorer e abrir o APIs Explorer em tela cheia para ver exemplos de código em Java, JavaScript, PHP e Python.
Em conjunto com essa mudança, as páginas que listavam os 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 um exemplo com uma chave de API e outro exemplo com um ID de cliente 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 mostrar que, ao exibir miniaturas no seu aplicativo, o 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 de miniaturas de canais só estarão disponíveis no domínio
https
, que é como os URLs aparecem nas respostas da API. Após esse período, o aplicativo poderá mostrar imagens corrompidas se ele tentar carregar imagens do YouTube do domíniohttp
. -
Observação:este é um anúncio de descontinuação.
O uso da propriedade
recordingDetails.location.altitude
do recursovideo
foi descontinuado. Não há garantia de que os vídeos retornem valores dessa propriedade. Da mesma forma, mesmo se as solicitações da API tentarem 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, anteriormente conhecido como Guia de implementação e migração, foi atualizado para remover instruções de migração da API v2 para a API v3. Além disso, as instruções também foram removidas para recursos que foram descontinuados na API v3, como vídeos favoritos.
27 de novembro de 2017
Esta atualização contém as seguintes alterações:
-
Observação:este é um anúncio de descontinuação.
O YouTube está removendo o suporte para os recursos Vídeo em destaque e Site em destaque, que são suportados na API por meio do objeto
invideoPromotion
do recursochannel
. Como resultado, esse objeto, incluindo todas as suas propriedades filhas, está sendo descontinuado.Ainda é possível recuperar e definir dados do
invideoPromotion
até 14 de dezembro de 2017. Depois dessa data:- As tentativas de recuperar a parte do
invideoPromotion
ao chamarchannels.list
vão retornar uminvideoPromotion
vazio ou não retornar nenhum dado doinvideoPromotion
. - As tentativas de atualizar os dados do
invideoPromotion
ao chamarchannels.update
vão retornar uma resposta bem-sucedida até pelo menos 27 de maio de 2018, mas serão tratadas como inativas, o que significa que não vão realizar uma atualização de fato.
Depois de 27 de maio de 2018, é possível que essas solicitações retornem mensagens de erro indicando, por exemplo, que
invalidPromotion
é uma parte inválida. - As tentativas de recuperar a parte do
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 em Node.js. As amostras também podem ser vistas na documentação de quase todos os métodos de API, como
channels.list
.As amostras personalizáveis são projetadas para oferecer um ponto de partida específico do caso de uso para um aplicativo Node.js. A funcionalidade é semelhante ao código no guia de início rápido do Node.js. No entanto, os exemplos 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 de 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 às propriedades em um recurso da API. Em seguida, ele converte as propriedades em um objeto JSON que pode ser usado nas 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 elas:# 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 transferidas por download e executadas localmente. Para mais informações, consulte os pré-requisitos para executar amostras de código completas localmente nas instruções da ferramenta de snippet 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 foi descontinuada.Além dessa mudança, a ferramenta agora fornece exemplos de código completos para aplicativos Python instalados e aplicativos de servidor da Web Python, que usam fluxos de autorização ligeiramente 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
channels.list
. - Clique na guia
Python
acima dos exemplos de código. - Clique no botão acima das guias para alternar da visualização de um snippet para uma amostra completa.
- A guia vai mostrar um exemplo de código completo que usa o fluxo de autorização do
InstalledAppFlow
. A descrição acima do exemplo explica isso e também vincula a uma amostra de um aplicativo de servidor da Web. - Clique no link e mude para o exemplo do 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 transferidas por download e executadas localmente. Se você quiser executar as amostras, consulte as instruções da ferramenta de snippet de código para executar amostras de código completas localmente.
- Acesse a ferramenta de snippet de código interativo ou a documentação de qualquer método de API, como
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 mostrar 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. É possível fazer o download dos novos logotipos "desenvolvidos com o YouTube" na página de diretrizes da promoção de marca. Outros logotipos e ícones novos também são mostrados nessa página e podem ser salvos no site da marca 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 de dados do YouTube em um aplicativo iOS simples escrito em Objective-C ou Swift.
- A ferramenta de snippet de código interativo para a API YouTube Data agora inclui uma documentação que explica alguns dos recursos da ferramenta:
- Execução de solicitações de API
- Alternar entre snippets de código e amostras completas
- Como usar funções boilerplate
- Como carregar 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 descontinuação.
As propriedades de recurso
video
a seguir estão sendo descontinuadas. As propriedades serão compatíveis até 1o de dezembro de 2017, mas não há garantia de que os vídeos continuarão retornando valores dessas 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 onipresentes e interativos. As páginas que explicam os métodos da API, como
channels.list
ouvideos.rate
, agora apresentam 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 de uso 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.Também é possível interagir com exemplos de código:
-
Modifique os valores de parâmetro e propriedade para que os snippets de código sejam atualizados dinamicamente para refletir os valores fornecidos.
-
Alterne entre snippets de código e amostras completas. Um snippet de código mostra a parte do código que chama o método de API. Uma amostra completa contém esse snippet, bem como o código boilerplate 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.
-
Execute solicitações clicando em um botão. Para executar solicitações, é necessário 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 exibe um link para que você também tenha a opção de 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 os mesmos recursos descritos acima. Os principais novos recursos disponíveis nessa página são:
- Suporte para solicitações de API que gravam dados.
- Suporte para amostras 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:
- Os 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 Wikipédia que descrevem o conteúdo do canal. Os URLs correspondem aos IDs de tópicos 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 a hora 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 Wikipédia que descrevem o conteúdo do vídeo. Para recursosvideo
, os URLs correspondem aos IDs de tópicos 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 um filme.
27 de fevereiro de 2017
Conforme anunciado em 11 de agosto de 2016, o YouTube mudou a lista compatível de IDs de tópicos 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 Empresa /m/09s1f
Saúde /m/0kt51
Militar /m/01h6rj
Política /m/05qt0
Religião /m/06bvp
- O tópico
Animated cartoon
, anteriormente filho deEntertainment
, foi removido. - O tópico
Children's music
, anteriormente 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:
-
Houve três pequenas alterações na lista de IDs de tópicos que serão compatíveis a partir de 10 de fevereiro de 2017:
- A categoria
Professional wrestling
, que era filha da categoriaSports
, agora é filha deEntertainment
. - A categoria
TV shows
, filha deEntertainment
, é nova. - A categoria
Health
, que era filha deLifestyle
, foi removida.
Além disso, existem algumas categorias principais (
Entertainment
,Gaming
,Lifestyle
,Music
eSports
). Todos os vídeos associados a uma categoria secundária, comoTennis
, também serão associados à categoria principal (Sports
). - A categoria
10 de novembro de 2016
Esta atualização contém as seguintes alterações:
-
Conforme anunciado pela primeira vez 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 dos tópicos identificam os assuntos associados aos recursos de
channel
evideo
. Você também pode usar o parâmetro de pesquisatopicId
para encontrar canais ou vídeos relacionados a um tema específico.A partir de 10 de fevereiro de 2017, o YouTube começará a retornar um pequeno conjunto de IDs de tema, em vez do conjunto muito mais granular de IDs retornado até o momento. Além disso, não há garantia de que canais e vídeos serão associados a tópicos, 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 parâmetros e propriedades da API a seguir foram atualizadas para listar os IDs de tópicos que serão compatíveis após esse 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 descontinuação.
As seguintes propriedades serão descontinuadas:
- A propriedade
topicDetails.topicIds[]
do recursochannel
. Essa propriedade terá suporte até 10 de novembro de 2017. - A propriedade
topicDetails.relevantTopicIds[]
do recursovideo
. Essa propriedade terá suporte até 10 de novembro de 2017. - A propriedade
topicDetails.topicIds[]
do recursovideo
. Esta propriedade não conterá valores após 10 de fevereiro de 2017. Depois dessa data, o valor da propriedadetopicDetails.relevantTopicIds[]
vai identificar todos os tópicos associados a um vídeo.
- A propriedade
-
Como o Freebase já foi descontinuado, o guia Pesquisar com tópicos do Freebase foi removido da documentação. Nesse guia, apresentamos exemplos de código que mostram como um aplicativo funcionaria com a API Freebase.
Além disso, vários exemplos de código relacionados a IDs de tópicos 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 da API especificar um valor para pelo menos um dos parâmetrosmaxHeight
oumaxWidth
. Esses dois novos parâmetros são explicados posteriormente nesta entrada do histórico de revisões. -
A nova propriedade
hasCustomThumbnail
indica se o usuário que fez o envio do vídeo forneceu uma imagem de miniatura personalizada para o vídeo. Essa propriedade só é visível para o usuário que fez o envio do vídeo. -
O novo
fpbRatingReasons[]
identifica os motivos para o vídeo receber a classificação FPB (África do Sul). -
O novo
mcstRating
identifica a classificação que o vídeo recebeu no Vietnã.
-
-
O método
videos.list
oferece suporte a dois novos parâmetros,maxHeight
emaxWidth
. É possível usar um dos parâmetros ou ambos ao recuperar a parte doplayer
em recursos devideo
.Por padrão, a altura da
<iframe>
retornada na propriedadeplayer.embedHtml
é de 360 px. A largura é ajustada 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 px.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 apropriada para o layout do seu aplicativo. O servidor da API dimensiona as dimensões do player conforme apropriado 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 ambos os parâmetros forem especificados, uma dimensão ainda poderá ser menor do que o valor máximo permitido para ela.
Por exemplo, suponha que um vídeo tenha uma proporção de 16:9. Assim, a tag
player.embedHtml
conteria um player de 640 x 360 se o parâmetromaxHeight
oumaxWidth
não estivesse definido.- Se o parâmetro
maxHeight
for 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
for 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 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 de métodos, propriedades e parâmetros atuais
-
A descrição do recurso
channelSection
foi atualizada para mostrar que um canal pode criar até 10 estantes sem configurar os dados de segmentação e pode criar até 100 estantes 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 serão excluídas se a seção do canal for modificada com 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 escrito na linguagem especificada pelo parâmetrohl
do métodoi18nLanguage.list
-
A propriedade
contentDetails.note
do recursoplaylistItem
foi atualizada para mostrar que o tamanho máximo do valor é de 280 caracteres. -
O uso das propriedades
contentDetails.startAt
econtentDetails.endAt
do recursoplaylistItem
foi descontinuado. Esses campos serão ignorados se forem definidos nas solicitaçõesplaylistItems.insert
ouplaylistItems.update
. -
Os métodos
playlistItems.delete
eplaylistItems.update
agora oferecem suporte ao 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 dos parâmetros são inclusivos. Por exemplo, se o parâmetropublishedBefore
for definido, a API vai retornar os recursos criados antes ou no horário especificado. -
A propriedade
contentDetails.contentRating.grfilmRating
do recursovideo
oferece suporte a mais três valores:grfilmK12
,grfilmK15
egrfilmK18
. -
A descrição do método
videos.insert
foi atualizada para informar que o tamanho máximo de arquivo para vídeos enviados aumentou de 64 GB para 128 GB.
-
-
Erros novos e atualizados
-
A API oferece suporte aos 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 por essa 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. Esse erro ocorre porque 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 do "histórico de exibição", mas eles não podem ser recuperados 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 eles não podem ser recuperados 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 podem ser enviados.forbidden (403)
forbiddenEmbedSetting
O método videos.update
retorna esse erro para indicar que a solicitação de API tenta definir uma configuração de incorporação inválida para o vídeo. Alguns canais podem não ter 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 anteriormente em algumas playlists, como vídeos favoritos, que não permitiam cópias, 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
forem incluídas em uma resposta, elas sempre conterão os valoresHL
eWL
, respectivamente. Além disso, essas propriedades só serão incluídas se um usuário autorizado estiver recuperando dados sobre o próprio canal do usuário.
-
15 de setembro de 2016
Esta atualização contém as seguintes alterações:
-
Em 11 de agosto de 2016, a atualização do histórico de revisões discutiu várias mudanças relacionadas aos IDs de tópicos, incluindo o fato de que o conjunto de IDs de tópico compatíveis será alterado a partir de 10 de fevereiro de 2017. A lista de temas compatíveis será publicada até 10 de novembro de 2016.
-
As seguintes mudanças 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 aos que um usuário do YouTube desconectado veria na página inicial.Essa é uma pequena alteração que tem como objetivo proporcionar uma melhor experiência do usuário do que o comportamento descrito na atualização do histórico de revisões de 11 de agosto de 2016. Essa atualização indicou 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.Para esclarecer, essas propriedades só são visíveis para um usuário autorizado que esteja recuperando dados sobre o próprio canal do usuário. As propriedades sempre contêm os valores
HL
eWL
, mesmo para um usuário autorizado que esteja recuperando dados sobre o próprio canal do usuário. Portanto, os IDs do histórico de exibição e da playlist "Assistir mais tarde" não podem ser recuperados pela API.Além disso, as solicitações para recuperar detalhes da playlist (
playlists.list
) ou itens da playlist (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
, assim como para todos os códigos do histórico de exibição ou da playlist "Assistir mais tarde" que o cliente da API possa ter armazenado.
-
-
O objeto
fileDetails.recordingLocation
do recursovideo
e as propriedades filhas dele não são mais retornados. Antes, esses dados (como o objetofileDetails
pai) 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 da API YouTube recém-publicados ("os Termos atualizados"), que são abordados em detalhes no Blog de engenharia e desenvolvedores do YouTube e contêm um grande conjunto de atualizações dos Termos de Serviço atuais. Além dos Termos atualizados, que entrarão em vigor a partir de 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 futuras alterações nos Termos Atualizados ou nos documentos complementares também serão explicadas no histórico de revisões. Você pode se inscrever em um feed RSS listando as alterações do histórico de revisões por 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 temas associados ao canal. - A parte
topicDetails
do recursovideo
identifica temas associados ao vídeo. - Com o parâmetro
topicId
do métodosearch.list
, você pode pesquisar vídeos ou canais relacionados a um tema específico.
Estas são as mudanças:
-
A partir de 10 de fevereiro de 2017, o YouTube começará a retornar um pequeno conjunto de IDs de tema, em vez do conjunto muito mais granular de IDs retornados até agora. Esse conjunto de temas compatíveis vai identificar categorizações de alto nível, como Esportes ou Basquete, mas, por exemplo, não vai identificar equipes ou jogadores específicos. Vamos anunciar o conjunto de temas compatíveis para que você tenha tempo de preparar sua inscrição para essa mudança.
-
Qualquer ID de tópico do Freebase que você já recuperou pode ser usado para pesquisar conteúdo até 10 de fevereiro de 2017. No entanto, após esse período, você poderá usar apenas o menor conjunto de temas identificados no item anterior para recuperar os resultados da pesquisa por assunto.
-
Depois de 10 de fevereiro de 2017, se você tentar pesquisar resultados usando um ID de tópico que não esteja no conjunto menor de IDs de tópicos compatíveis, a API retornará um conjunto de resultados vazio.
- A parte
-
Vários campos e parâmetros da API estão sendo descontinuados a partir de 12 de setembro de 2016:
-
O parâmetro
home
do métodoactivities.list
permitiu 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 retornarão uma lista vazia. -
As propriedades
contentDetails.relatedPlaylists.watchHistory
econtentDetails.relatedPlaylists.watchLater
do recursochannel
ficam visíveis apenas para um usuário autorizado que recupera dados sobre o próprio canal do usuário. Depois de 12 de setembro de 2016,contentDetails.relatedPlaylists.watchHistory
retornará um valorHL
e a propriedadecontentDetails.relatedPlaylists.watchLater
retornará um valorWL
para todos os canais.As solicitações para recuperar os detalhes da playlist (
playlists.list
) do histórico de exibição de um canal ou da playlist "Assistir mais tarde" retornarão uma lista vazia após 12 de setembro de 2016. As solicitações para recuperar itens da playlist (playlistItems.list
) em qualquer uma dessas playlists também retornarão uma lista vazia após esse período. Isso é válido para os novos valores,HL
eWL
, bem como para todos os códigos do histórico de exibição ou da playlist "Assistir mais tarde" que o cliente da API já tiver armazenado. -
O objeto
fileDetails.recordingLocation
do recursovideo
ou qualquer uma das propriedades filhas dele não serão mais retornados 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 do vídeo.
-
13 de junho de 2016
Esta atualização contém as seguintes alterações:
-
O uso da propriedade
contentDetails.googlePlusUserId
do recursochannel
foi descontinuado. Antes, a propriedade só estava presente se o canal estava associado a um perfil do Google+. Após a descontinuação, a propriedade não será mais incluída em nenhum recursochannel
. -
O uso da propriedade
snippet.authorGoogleplusProfileUrl
do recursocomment
foi descontinuado. Antes, a propriedade só estava presente se o canal estava 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 de inscritos do canal do usuário autenticado em ordem cronológica inversa do momento em que eles se inscreveram no canal.Observe que o novo parâmetro suporta apenas a recuperação dos últimos 1.000 inscritos no canal do usuário autenticado. Para recuperar uma lista completa de assinantes, use o parâmetro
mySubscribers
. Esse parâmetro, que não retorna os inscritos em uma determinada ordem, 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, resultado da pesquisa, miniatura e vídeo para observar que há outros tamanhos de imagem de miniatura 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 incorretamente tenta recuperar as partesfileDetails
,processingDetails
ousuggestions
de um recursovideo
. Essas partes estão 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 fornece 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 amostras de código para um ou mais casos de uso. Por exemplo, ela 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 exibe os parâmetros usados na solicitação de API. Você pode modificar os valores dos parâmetros. Nesse caso, a ferramenta atualiza os snippets de código para refletir os valores de parâmetro fornecidos.
Por fim, a ferramenta exibe a resposta da API para cada solicitação. Se você modificou os parâmetros de solicitação, a resposta da API se baseia nos valores de parâmetro 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 de propriedade válidos 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 ao vídeo. Este local é editável, pesquisável em vídeos públicos e pode ser exibido 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ó fica visível para o proprietário do vídeo.
- A propriedade
-
A definição da propriedade
contentDetails.relatedPlaylists.favorites
do recursochannel
foi atualizada para indicar que o valor da propriedade pode conter um ID que se refere a uma playlist vazia e que não pode ser buscado. Isso ocorre porque a funcionalidade de vídeos favoritos foi descontinuada. Essa propriedade não está sujeita à política de descontinuação da API. -
A definição do erro
ineligibleAccount
, que pode ser retornada 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 de API não é 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 mostrar quelocalizations
também é um valor válido para esse parâmetro -
A seção Uso da cota do Guia de primeiros passos foi atualizada para vincular ao Google Developer Console, onde você pode ver sua cota e o uso de cota reais.
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 mostrar que o tamanho recomendado para a imagem do banner do canal enviada é 2.560 x 1.440 pixels. O tamanho mínimo (2.048 x 1.152 pixels) 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 ter um URL personalizado e como configurá-lo. -
O uso do objeto
brandingSettings.watch
do recursochannel
e de todas as propriedades filhas dele foi descontinuado. -
A resposta da API a uma solicitação
search.list
agora contém uma propriedaderegionCode
. A propriedade identifica o código da região que foi usado para a consulta de pesquisa. O código de região instrui a API a retornar resultados de 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 suportada 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 indicar que elas contêm texto do rótulo localizado por motivos de denúncia de abuso.Além disso, o método
videoAbuseReportReasons.list
agora oferece suporte ao parâmetrohl
, que especifica o idioma que será usado para o 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 do Ministério da Cultura e Turismo da Turquia.Além disso, as propriedades da API para outros sistemas de classificação são compatíveis com os novos valores de propriedade a seguir:
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 do chat ao vivo ativo associado ao vídeo. O valor da propriedade só vai estar presente se o vídeo for uma transmissão ao vivo com chat ao vivo ativado. Depois que a transmissão termina e o chat ao vivo termina, a propriedade do vídeo não é mais retornada. -
A propriedade
status.rejectionReason
do recursovideo
aceita o novo valor de propriedadelegal
.
-
-
A API oferece suporte aos 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 de 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 de 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 falhou ao processar a solicitação. Embora possa ser um erro temporário, ele geralmente indica que a entrada da solicitação é inválida. Verifique a estrutura do recursocommentThread
no corpo da solicitação para garantir que ele é válido.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 em série.badRequest (400)
subscriptionForbidden
O método subscriptions.insert
retorna esse erro para indicar que você atingiu o número máximo de assinaturas ou que criou muitas assinaturas recentes. No último caso, é possível fazer a solicitação novamente após 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 programado 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 ocorrerá 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 certas divulgações sejam fornecidas e recebam o consentimento dos usuários finais na UE. Portanto, os usuários finais da União Europeia precisam 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
A API agora oferece suporte à capacidade de definir e extrair texto localizado para as propriedades snippet.title
e snippet.description
dos recursos playlist
e video
, além das propriedades snippet.title
dos recursos channelSection
e snippet.description
dos channel
.
-
Como definir títulos e descrições localizados
É possível definir valores localizados para um recurso ao chamar o método
insert
ouupdate
para ele. Para definir valores localizados para um recurso, siga estas etapas:-
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ê fizer upload de 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
para 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 o idioma de um aplicativo ou o código de idioma ISO 639-1:2002, e cada chave mapeia para um objeto que contém o título (e a descrição) localizado para o recurso.O snippet de amostra abaixo define o idioma padrão do recurso como o inglês. Ele também adiciona títulos e descrições em alemão e espanhol localizados em 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 dos dados. Por exemplo, se você enviar outra solicitação para adicionar dados em português ao vídeo no exemplo acima, será necessário incluir os dados localizados para alemão, espanhol e português.
-
-
Como recuperar valores localizados
A API aceita duas formas de recuperar valores localizados para um recurso:
-
Adicione o parâmetro
hl
à solicitaçãochannels.list
,channelSections.list
,playlists.list
ouvideos.list
para recuperar dados localizados para um idioma do aplicativo específico compatível com o site do YouTube. Se os detalhes do recurso localizado estiverem disponíveis nesse idioma, o objetosnippet.localized
do recurso conterá os valores localizados. No entanto, se os detalhes localizados não estiverem disponíveis, o objetosnippet.localized
vai conter os detalhes do recurso no idioma padrão.Por exemplo, suponha que uma solicitação
videos.list
recupere os dados do 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 o inglês é o idioma padrão do recurso, e os detalhes em francês não estão disponíveis.Importante:o parâmetrohl
é compatível apenas com valores que identificam os idiomas do aplicativo aceitos no site do YouTube. Para determinar se o texto localizado está disponível para outros idiomas, extraia a parte dolocalizations
do recurso e filtre para determinar se o texto localizado existe.
Por exemplo, você precisa 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 de um idioma que não seja um idioma atual do aplicativo do YouTube, use essa abordagem para recuperar todas as localizações e, em seguida, filtrar 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
aceitam esse erro.badRequest (400)
localizationValidationError
Esse erro indica que um dos valores no objeto localizations
de um recurso não foi validado. Por exemplo, este erro poderá ocorrer se o objeto contiver um código de idioma inválido. Os métodoschannels.update
,channelSections.insert
,channelSections.update
,playlists.insert
eplaylists.update
são compatíveis com 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 mostrar 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 estão 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 precisam ser definidos 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 mostrar 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 é enviado como privado e torna-se público mais tarde, o valor da propriedade especifica a hora em que o vídeo se tornou público. 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 incluir estas informações:- 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 privado. - Se a solicitação programar a publicação de um vídeo em algum momento no passado, a publicação vai ser imediata. Dessa forma, o efeito de definir a propriedade
status.publishAt
para uma data e hora anteriores é o mesmo que mudar aprivacyStatus
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 da Comissão de classificação cinematográfica da França. Essa propriedade substitui acontentDetails.contentRating.fmocRating
, que foi descontinuada. -
A definição de brandingSettings.channel.keywords do recurso
channel
foi atualizada para refletir corretamente que o valor da propriedade contém uma lista de strings separadas por espaços, e não uma lista separada por vírgulas, conforme 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 em miniatura que você está enviando e associando a um vídeo. O corpo da solicitação não contém um recursothumbnail
. Anteriormente, a documentação dizia que você não precisa 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 de vídeo no momento.snippet.type
econtentDetails.comment
do recurso também foram atualizados.
-
-
Erros novos e atualizados
-
A API agora oferece suporte aos 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á devidamente autorizada a inserir, atualizar ou excluir o item da playlist especificado. playlists.delete
playlists.insert
playlists.update
Código de resposta HTTP badRequest (400)
Motivo playlistForbidden
Descrição Esta operação é proibida ou a solicitação não está devidamente autorizada. 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 qualquer uma das seguintes situações é verdadeira: - A assinatura que você está tentando criar já existe
- Você já atingiu o número máximo de inscrições
- Você está tentando se inscrever em seu próprio canal, o que não é compatível.
- Você criou muitas assinaturas recentemente e precisa esperar algumas horas antes de repetir a solicitação.
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
-
O uso da propriedade
statistics.favoriteCount
do recursovideo
foi descontinuado.De acordo com nossa política de descontinuação, essa propriedade vai continuar sendo incluída nos recursos do
video
por pelo menos um ano após este anúncio. No entanto, o valor da propriedade agora fica 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 da 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 da API processará o valor da tag como se ela estivesse entre aspas, e as aspas contam para o limite de caracteres. Portanto, em relação aos 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 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 ignorará o parâmetro, mas manipulará a solicitação de outra forma.
-
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 vai 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 originalmente enviado a um canal vinculado a um parceiro de conteúdo do YouTube e depois reivindicado por esse parceiro. 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 oferecem suporte ao 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
.
-
-
Erros novos e atualizados
-
A API agora oferece suporte aos seguintes erros:
Detalhes do erro videos.rate
Código de resposta HTTP badRequest (400)
Motivo emailNotVerified
Descrição A usuária precisa verificar seu endereço de e-mail antes de classificar o vídeo. videos.rate
Código de resposta HTTP badRequest (400)
Motivo videoPurchaseRequired
Descrição Os vídeos disponíveis para locação podem ser avaliados somente 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 o motivo de um vídeo ser sinalizado por conter conteúdo abusivo. O métodovideoAbuseReportReasons.list
permite recuperar uma lista de todos os motivos para os vídeos serem sinalizados. -
O novo método
videos.reportAbuse
oferece uma maneira de sinalizar um vídeo que tenha conteúdo abusivo. O corpo da solicitação contém um objeto JSON que especifica o vídeo que está sendo sinalizado, bem como o motivo pelo qual o vídeo é considerado com conteúdo abusivo. Confira os motivos válidos usando o métodovideoAbuseReportReason.list
descrito acima.O guia de migração também foi atualizado com um exemplo de denúncia de um vídeo abusivo. Com essa alteração, a API v3 agora oferece suporte a todos os recursos da API v2 para os quais está programado. 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 extrair apenas os vídeos enviados pelo app ou site do desenvolvedor. O parâmetroforDeveloper
pode ser usado com parâmetros de pesquisa opcionais, comoq
.Para esse recurso, cada vídeo enviado é marcado automaticamente 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. Assim, o desenvolvedor pode restringir os resultados aos vídeos enviados pelo próprio app ou site, mas não aos vídeos enviados por outros apps ou sites.O novo recurso oferece uma funcionalidade semelhante, mas não idêntica à das tags de desenvolvedor, compatível com a API v2.
-
A nova propriedade
snippet.country
do recursochannel
permite que os proprietários de canais associem os canais a um país específico.Observação:para definir a propriedade
snippet.country
para um recursochannel
, é necessário atualizar a propriedadebrandingSettings.channel.country
. -
A API agora oferece suporte à segmentação de recursos
channelSection
. A segmentação por seção do canal oferece uma maneira de restringir a visibilidade de uma seção de conteúdo aos usuários que correspondem a critérios específicos.A API expõe três opções de segmentação. O usuário precisa atender a todas as configurações de segmentação para que uma seção de canal fique visível.
-
targeting.languages[]
: uma lista de idiomas do aplicativo do YouTube. Os usuários que escolheram um desses idiomas podem ver a seção do canal correspondente. -
targeting.regions[]
: uma lista de regiões de conteúdo preferenciais do YouTube. A seção do canal fica visível para os usuários que selecionaram uma dessas regiões, bem como para os usuários para os quais uma dessas regiões é selecionada automaticamente. -
targeting.countries[]
: uma lista de países onde a seção do canal está visível. Cada valor na lista é um código de país ISO 3166-1 alfa-2.
-
-
A definição da propriedade
contentDetails.duration
do recursovideo
foi corrigida para refletir que o valor pode refletir 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, esses métodos retornam um código de resposta HTTP204
(No Content
).
-
-
Erros novos e atualizados
-
A API agora oferece suporte aos 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 continha 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 continha 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 continha um valor inválido para a propriedadetargeting.regions[]
.badRequest (400)
operationNotSupported
O método comments.insert
retornará esse erro se o usuário da API não conseguir 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 leitor atual pode responder à conversa.badRequest (400)
invalidChannelId
O método search.list
retornará esse erro se o parâmetrochannelId
na solicitação especificar um ID do canal inválido.badRequest (400)
subscriptionForbidden
O método subscriptions.insert
retornará esse erro se o usuário da API tentar se inscrever no próprio canal do usuário. -
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 não eram compatíveis com a API v2, mas que são compatíveis com a API v3. Por exemplo:
- Recuperar comentários sobre um canal
- Recuperar todos os tópicos de comentários relacionados 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
- Como 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 PubSubHubBub do Google, e não 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 do YouTube, que compreende 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, na verdade, recursos
comment
aninhados dentro do recursocommentThread
. É importante observar que o recursocommentThread
não contém necessariamente todas as respostas a um comentário, e você precisa usar o métodocomments.list
se quiser recuperar todas as respostas de um comentário específico. Além disso, alguns comentários não têm respostas.A API oferece suporte aos seguintes métodos para recursos
commentThread
:commentThreads.list
: recupera uma lista de conversas de comentários. Use este método para recuperar 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 já existente.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 oferece suporte aos seguintes métodos para recursos
comment
:comments.list
: recupera uma lista de comentários. Use este método para recuperar todas as respostas a um comentário específico.comments.insert
: cria uma resposta a um comentário existente.comments.update
: modificar um comentário.comments.markAsSpam
– Sinaliza um ou mais comentários como spam.comments.setModerationStatus
: define o status de moderação de um ou mais comentários. Por exemplo, remova um comentário para exibição pública ou rejeite um comentário como inadequado para exibição. 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, é obrigatório para chamadas para os métodoscomments.insert
,comments.update
,comments.markAsSpam
,comments.setModerationStatus
,comments.delete
,commentThreads.insert
ecommentThreads.update
. -
-
O novo guia Como se inscrever em notificações push explica o novo suporte da API para notificações push via PubSubHubBub, um protocolo de publicação/assinatura de servidor para servidor para recursos acessíveis pela Web. Seu servidor de retorno de chamada PubSubHubBub pode receber notificações de feed Atom quando um canal realiza uma 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 era compatível com vários outros tipos de notificações push que não são compatíveis com a API v3, a menção ao suporte 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 era compatível com o escopohttps://www.googleapis.com/auth/youtube
. -
A API agora oferece suporte aos seguintes erros:
Tipo de erro Detalhe do erro Descrição badRequest (400)
invalidRating
O método videos.rate
retornará esse erro se a solicitação contiver um valor inesperado para o parâmetrorating
. -
O método
subscriptions.insert
não é mais compatível com o errosubscriptionLimitExceeded
, que indicava anteriormente que o assinante identificado com a solicitação havia excedido o limite da 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 é associada exatamente a um vídeo do YouTube.A API oferece suporte a métodos para listar, inserir, atualizar, fazer o download 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 dela ocorra 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 do YouTube está disponível apenas por meio de um endpoint HTTPS. Consequentemente, 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 é obrigatório em chamadas para 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) contém uma nova guia, chamada Novo na API v3, que lista os recursos compatíveis com a API v3 e com os quais a API v2 não tem suporte. Os mesmos recursos eram anteriormente 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 em vídeo do 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 será compatível com o 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ídeos – 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 vai corresponder a um vídeo recomendado se o valor da propriedade
snippet.type
forrecommendation
. Nesse caso, as propriedadescontentDetails.recommendation.reason
econtentDetails.recommendation.seedResourceId
terão informações sobre por que o vídeo foi recomendado. Não há garantia de que a resposta vai conter um número específico de vídeos recomendados. -
Recuperar novos vídeos de inscrição – A API v3 não recupera uma lista que contém apenas os vídeos que foram enviados recentemente aos canais nos quais 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 vai corresponder a um novo vídeo de inscrição se o valor da propriedade
snippet.type
forupload
. Não há garantia de que a resposta terá qualquer número específico de novos vídeos de inscrição. -
Notificações push para atualizações de feed – A API v2 oferecia notificações push usando o protocolo de atualização simples (SDK) ou o PubSubHubbub (links em inglês) para monitorar os feeds de atividade dos usuários do YouTube. Notificações eram fornecidas sobre novas inscrições em canais e quando os vídeos eram avaliados, compartilhados, marcados como favoritos, comentados ou enviados.
A API v3 será compatível com notificações push usando o protocolo PubSubHubbub, mas as notificações abrangerão apenas uploads e atualizações de títulos ou descrições de vídeos.
-
Localização do canal: a API v2 usou a tag
<yt:location>
para identificar a localização do usuário, conforme inserido no perfil público do canal no YouTube. Alguns desenvolvedores usaram esse campo para associar um canal a um país específico, mas os dados do campo não eram usados de maneira consistente para esse propósito. -
Definir ou recuperar tags de desenvolvedor – A API v2 oferecia a capacidade de associar palavras-chave, ou tags de desenvolvedor, a um vídeo no momento em que o vídeo foi enviado. As tags de desenvolvedor não seriam exibidas para usuários do YouTube, mas os proprietários de vídeos poderiam recuperar vídeos que correspondessem a uma tag de desenvolvedor específica.
A API v3 fornecerá um recurso semelhante, mas não idêntico. Especificamente, um desenvolvedor poderá pesquisar por vídeos enviados pelo próprio aplicativo do desenvolvedor. Para esse recurso, cada vídeo enviado é marcado automaticamente 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.
-
Liste vídeos por data de publicação, contagem de visualizações ou classificação – Na API v2, o parâmetro
orderby
permite classificar os vídeos de uma playlist por posição, duração, data de publicação, título e vários outros valores. Na API v3, os itens da lista de reprodução são normalmente 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 com "Gostei" ou vídeo assistido recentemente é adicionado automaticamente como o primeiro item (
snippet.position
=0
) para os seguintes tipos de playlists. Cada uma dessas listas é classificada efetivamente em ordem do item mais recente para o mais antigo, com base nos horários em que os itens foram adicionados à lista.- envios do usuário
- vídeos favoritos
- vídeos marcados como "Gostei"
- histórico de visualização
No entanto, um novo item adicionado à playlist "Assistir mais tarde" é adicionado como o último item da lista. Assim, ela é classificada do item mais antigo ao mais recente.
-
Processamento em lote: a API v3 é compatível com um dos casos de uso de processamento em lote para os quais a API v2 tinha suporte. Os métodos
channels.list
,channelSections.list
,guideCategories.list
,playlistItems.list
,playlists.list
,subscriptions.list
,videoCategories.list
evideos.list
da API v3 aceitam um parâmetroid
, que pode ser usado para especificar uma lista de IDs delimitada por vírgulas (IDs de vídeo, IDs de canal etc.). Ao usar esses métodos, você pode recuperar uma lista de vários recursos com uma única solicitação.
Com essas alterações, o guia identifica todas as funcionalidades que eram suportadas na 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 oferecem suporte ao parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. -
O uso das seguintes propriedades e das propriedades filhas foi descontinuado:
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 da 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 DJCQT (Brasil). -
A API agora oferece suporte aos seguintes erros:
Tipo de erro Detalhe do erro Descrição notFound (404)
channelNotFound
O método channels.update
retornará 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 tenta definir a posição do item da playlist, mas a playlist não usa a classificação manual. Por exemplo, os itens da playlist podem ser classificados por data ou popularidade. Para solucionar esse erro, remova o elementosnippet.position
do recurso enviado no corpo da solicitação. Para que o item da playlist tenha uma posição específica na lista, primeiro é necessário atualizar a configuração de ordem da playlist para Manual. É possível ajustar essa configuração no Gerenciador de vídeos do YouTube.forbidden (403)
channelClosed
O método playlists.list
retornará esse erro se o parâmetrochannelId
da solicitação especificar um canal que foi fechado.forbidden (403)
channelSuspended
O método playlists.list
retornará esse erro se o parâmetrochannelId
da solicitação especificar um canal que foi suspenso.forbidden (403)
playlistForbidden
O método playlists.list
retornará esse erro se o parâmetroid
da solicitação não for compatível com a solicitação ou se ela não estiver autorizada corretamente.notFound (404)
channelNotFound
O método playlists.list
retornará 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
retornará 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
retornará 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
retornará esse erro se a solicitação tiver 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 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 resolve uma lacuna de recursos entre a versão atual da API (v3) e a anterior (v2), que não é mais usada.
-
O Guia de migração da API YouTube Data (v3) também foi atualizado para indicar a descontinuação dos campos de feeds e metadados especiais que a API v2 fornecia para descrever filmes, trailers, programas de televisão, temporadas 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 com JavaScript. Consulte a seção Enviar um vídeo para mais detalhes. Essa funcionalidade é comparável à funcionalidade de upload pelo navegador compatível com a API v2. Essa mudança no guia de migração não reflete uma mudança real na API, mas sim a disponibilidade do novo exemplo de código para upload de vídeos com JavaScript do lado do cliente.
Considerando o suporte ao upload de vídeos com a biblioteca cliente JavaScript e o CORS, o guia de migração não lista mais o upload baseado no 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 para a API YouTube Data (v3) também foi atualizada.
11 de novembro de 2014
Esta atualização contém as seguintes alterações:
-
O custo da cota de uma chamada para o método
search.list
foi alterado para 100 unidades.Importante:em muitos casos, é possível usar outros métodos de API para recuperar informações com um custo menor. Por exemplo, considere estas duas maneiras de encontrar vídeos enviados para o 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 correto. Defina o parâmetroforUsername
comoGoogleDevelopers
e o parâmetropart
comocontentDetails
. Na resposta da API, a propriedadecontentDetails.relatedPlaylists.uploads
especifica o ID da playlist para os 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 de duração. Essa propriedade só é retornada se o proprietário do canal autorizar a solicitação de API. Os valores de propriedade válidos são:allowed
– O canal pode enviar vídeos com mais de 15 minutos.eligible
– O canal está qualificado para enviar vídeos com mais de 15 minutos, mas precisa ativar o recurso primeiro.disallowed
– O canal não pode ou não se qualifica 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 fornece informações mais detalhadas sobre esse recurso.
-
A propriedade
invideoPromotion.useSmartTiming
indica se a campanha promocional do canal usa "tempo inteligente". Esse recurso tenta exibir promoções em um ponto do vídeo em que elas têm mais chances de serem clicados e menos chances de atrapalharem a experiência de visualização. Esse recurso também seleciona 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 chamadas para o métodovideos.update
Se você chamar esse método para atualizar a partesnippet
de um recursovideo
, será necessário definir um valor para as duas propriedades.Se você tentar atualizar a parte
snippet
de um recursovideo
e não definir um valor para as duas propriedades, a API vai retornar um erroinvalidRequest
. A descrição do erro também foi atualizada. -
A propriedade
contentDetails.contentRating.oflcRating
do recursovideo
, que identifica a classificação de um vídeo do Escritório de Classificação de Filmes e Literatura da Nova Zelândia, agora aceita duas novas classificações:oflcRp13
eoflcRp16
. Elas correspondem às classificaçõesRP13
eRP16
, respectivamente. -
O método
channelBanners.insert
agora oferece suporte ao seguinte erro:Tipo de erro Detalhe do erro Descrição badRequest
bannerAlbumFull
O álbum de arte do canal do YouTube do proprietário do canal tem muitas imagens. O proprietário do canal precisa acessar http://photos.google.com, acessar a página dos álbuns e remover algumas imagens do álbum.
12 de setembro de 2014
Esta atualização contém as seguintes alterações:
-
O custo da cota para uma chamada para o método
search.list
mudou de uma unidade para duas 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 oferece suporte ao seguinte erro:Tipo de erro Detalhe do erro Descrição badRequest
subscriptionLimitExceeded
O assinante identificado com a solicitação ultrapassou o limite da taxa de assinatura. Você pode tentar mais assinaturas em algumas horas.
12 de agosto de 2014
Esta atualização contém as seguintes alterações:
-
Um novo guia, intitulado Como migrar seu aplicativo para a API YouTube Data (v3), explica como usar a API YouTube Data (v3) para aproveitar as funcionalidades disponíveis na API de dados do YouTube (v2). A API mais antiga foi oficialmente descontinuada em 4 de março de 2014. Este guia tem como objetivo ajudá-lo a migrar aplicativos que ainda usam a API v2 para a API mais recente.
8 de julho de 2014
Esta atualização contém as seguintes alterações:
-
O método
playlists.insert
agora oferece suporte ao 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 de playlists.
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 para esse método. Da mesma forma, as definições dos parâmetros
part
foram atualizadas para especificar o custo da 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.Lembre-se de que os custos da 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 que os vídeos receberam de várias agências nacionais de classificação. Filipinas}{14.
28 de maio de 2014
Esta atualização contém as seguintes alterações:
-
O método
search.list
agora oferece suporte aos parâmetroslocation
elocationRadius
, que permitem pesquisar vídeos associados a uma localização geográfica. Uma solicitação deve especificar um valor para ambos os parâmetros para recuperar os resultados com base no local, e a API 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 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 que o proprietário do canal postou no feed de atividades do canalpostedVideos
: vídeos que o proprietário do canal postou no feed de atividades do canalsubscriptions
: 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 Escritório de Classificação de Filmes da Irlanda. -
A definição da propriedade
position.cornerPosition
do recursowatermark
foi atualizada para mostrar 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 mostrar 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 dos vários termos de pesquisa. -
A definição da propriedade
pageInfo.totalResults
que é retornada em uma resposta da API a uma chamadasearch.list
foi atualizada para mostrar 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 de propriedadenextPageToken
eprevPageToken
para determinar se os links de paginação serão mostrados ou não. -
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 para 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 que o site do YouTube suporta. O idioma do aplicativo também pode ser chamado de linguagem da interface. Para o site do YouTube, um idioma de aplicativo pode ser selecionado automaticamente com base nas configurações da Conta do Google, idioma do navegador ou local do IP, e um usuário também pode selecionar manualmente o idioma desejado para a interface no rodapé do site do YouTube.A API suporta 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 região de conteúdo preferida. A região de conteúdo também pode ser chamada de localidade de conteúdo. Para o site do YouTube, uma região de conteúdo pode ser selecionada automaticamente com base em heurística como o domínio do YouTube ou a localização do IP do usuário, e um usuário também pode selecionar manualmente a região de conteúdo desejada no rodapé do site do YouTube.A API aceita um método para listar 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 de 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 decidiu apresentar. Por exemplo, uma seção pode mostrar os envios mais recentes, os envios mais populares ou os vídeos de uma ou mais playlists.A API é compatível com métodos para listar, inserir, atualizar ou excluir seções de canais. Para recuperar uma lista de seções de canais do usuário autenticado, especifique um determinado ID ou uma lista de IDs exclusivos de seção do canal.
A documentação de erros também foi atualizada para descrever as mensagens de erro compatíveis com a API especificamente para esses novos métodos.
-
A definição do objeto
fileDetails
do recursovideo
foi atualizada para explicar que esse objeto só vai ser retornado se a propriedadeprocessingDetails.fileDetailsAvailability
do vídeo tiver o valoravailable
.Da mesma forma, a definição do objeto
suggestions
do recursovideo
foi atualizada para explicar que esse objeto só vai ser retornado se a propriedadeprocessingDetails.tagSuggestionsAvailability
ouprocessingDetails.editorSuggestionsAvailability
do vídeo tiver um valoravailable
. -
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 é realmente compatível com o parâmetroonBehalfOfContentOwner
. Esse foi um erro de documentação, porque 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. Esta propriedade só poderá ser definida se o status de privacidade do vídeo forprivate
e o vídeo 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 parte contém dados do canal relevantes para parceiros do YouTube vinculados ao canal, 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 tamanho máximo de caracteres permitido para as seguintes propriedades:
Resource Propriedade Tamanho 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 da lista são contabilizadas no limite. -
O uso da propriedade
brandingSettings.watch.featuredPlaylistId
do recursochannel
foi descontinuado. A API retornará um erro se você tentar definir o valor. -
As seguintes propriedades de recurso
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.
-
A API agora oferece suporte aos 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 em conjunto.badRequest (400)
channelTitleUpdateForbidden
O método channels.update
retornará esse erro se você tentar atualizar a partebrandingSettings
de um canal e mudar o valor da propriedadebrandingSettings.channel.title
. A API não retornará o erro se você omitir a propriedade.badRequest (400)
invalidRecentlyUploadedBy
O método channels.update
retornará esse erro se a propriedadeinvideoPromotion.items[].id.recentlyUploadedBy
especificar um ID do canal inválido.badRequest (400)
invalidTimingOffset
O método channels.update
retornará esse erro se a parteinvideoPromotion
especificar um deslocamento de tempo inválido.badRequest (400)
tooManyPromotedItems
O método channels.update
retornará esse erro se a parteinvideoPromotion
especificar um número maior de itens promovidos do que o permitido.forbidden (403)
promotedVideoNotAllowed
O método channels.update
retornará esse erro se a propriedadeinvideoPromotion.items[].id.videoId
especificar um ID de vídeo que não pode ser encontrado ou não pode ser usado como um item promovido.forbidden (403)
websiteLinkNotAllowed
O método channels.update
retornará esse erro se a propriedadeinvideoPromotion.items[].id.websiteUrl
especificar um URL não permitido.required (400)
requiredTimingType
O método channels.update
retornará esse erro se uma solicitação não especificar as configurações de tempo padrão para quando o YouTube deve exibir 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
retornará esse erro se os metadados da solicitação especificarem um horário de publicação programado 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 que algumas funcionalidades da API v3 estão 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 indicar corretamente que não é preciso especificar um valor para exatamente um parâmetro de filtro ao enviar uma solicitação de pesquisa. Em vez disso, você pode definir um valor para nenhum parâmetro de filtro ou para um parâmetro de filtro. -
As definições dos parâmetros do método
search.list
foram atualizadas para informar que você vai precisar definir o valor do parâmetrotype
comovideo
se também especificar um valor para qualquer um dos parâmetros abaixo:eventType
videoCaption
videoCategoryId
videoDefinition
videoDimension
videoDuration
videoEmbeddable
videoLicense
videoSyndicated
videoType
-
O tamanho mínimo das imagens de banner do canal enviadas foi reduzido para 2048px por 1152px. Antes, o tamanho mínimo era de 2120px por 1192px. Além disso, a documentação do recurso
channel
especifica os tamanhos máximos de todas as imagens de banner exibidas pela API. Por exemplo, o tamanho máximo da imagembrandingSettings.image.bannerTvImageUrl
para apps de televisão é de 2.120 x 1.192 pixels, mas a imagem real pode ter 2.048 x 1.152 pixels. A Central de Ajuda do YouTube fornece orientações adicionais para otimizar a arte do canal para exibição em diferentes tipos de dispositivos. -
Várias definições de propriedades 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 tamanho máximo de 30 caracteres. - Agora, a propriedade
brandingSettings.channel.featuredChannelsUrls[]
pode listar até 100 canais. - O valor da propriedade
brandingSettings.channel.unsubscribedTrailer
, se definido, precisa especificar o ID do vídeo do YouTube de um vídeo público ou não listado 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 quando a promoção for exibida. Ela só poderá ser definida se a solicitação de API que define o valor da propriedade for feita em nome do proprietário do conteúdo usando o parâmetroonBehalfOfContentOwner
. -
Os métodos
playlistItems.list
eplaylistItems.insert
agora oferecem suporte ao parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. -
A propriedade
contentDetails.contentRating.acbRating
agora pode especificar uma classificação da Australian Classification Board (ACB) para filmes ou da Australian Communications and Media Authority (ACMA) para a programação de televisão infantil. -
As novas propriedades
contentDetails.contentRating.catvRating
econtentDetails.contentRating.catvfrRating
identificam as classificações que um vídeo recebeu de acordo com o sistema de classificação de TV do Canadá e o sistema de classificação em francês Régie du cinéma, usado no Quebec, respectivamente. -
A nova propriedade
snippet.assignable
do recursovideoCategory
indica se os vídeos atualizados ou enviados recentemente podem ser associados a essa categoria de vídeo. -
Foram adicionados exemplos de código para os seguintes métodos:
activities.insert
(Ir)channelBanners.insert
(Python)channels.update
(Python)playlistItems.list
(Ir)search.list
(Ir)thumbnails.set
(Java)videos.insert
(Ir)
24 de outubro de 2013
Esta atualização contém as seguintes alterações:
-
A API inclui dois recursos adicionais desenvolvidos para ajudar a encontrar e apresentar 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 de propriedade válidos 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 possíveis valores 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. Este será o valor da propriedade para transmissões concluídas que ainda podem ser visualizadas 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 estará presente quando o estado da transmissão foractive
.liveStreamingDetails.actualEndTime
: o horário em que a transmissão realmente terminou. Esse valor será exibido 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 à transmissão ao vivo.
Para recuperar esses metadados, inclua
liveStreamingDetails
no valor do parâmetropart
ao chamar os métodosvideos.list
,videos.insert
ouvideos.update
.
Dois outros recursos de identificação de conteúdo de transmissão ao vivo foram lançados em 1o 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 precisa enviar uma notificação sobre o novo vídeo aos usuários que se inscreverem no canal do vídeo. O valor padrão do parâmetro éTrue
, que indica que os inscritos serão notificados sobre vídeos recém-enviados. No entanto, o proprietário de um canal que envia muitos vídeos pode preferir definir o valor comoFalse
para evitar o envio de notificações 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 modificadas. Essas propriedadesbrandingSettings
já eram modificáveis. Portanto, a alteração na documentação não reflete uma mudança na funcionalidade existente da API. -
Os métodos
playlists.insert
,playlists.update
eplaylists.delete
agora oferecem suporte ao parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos. -
O método
playlists.insert
agora oferece suporte ao parâmetroonBehalfOfContentOwnerChannel
, que já é aceito por vários outros métodos -
A propriedade
contentDetails.contentRating.tvpgRating
do recursovideo
agora aceita um valor depg14
, 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 duas outras classificações:mibacVap
(VAP): as crianças devem estar acompanhadas por um adulto.mibacVm6
(V.M.6): restrito a 6 anos ou mais.mibacVm12
(V.M.12): restrito a 12 anos ou mais.
-
A nova propriedade
invideoPromotion.items[].promotedByContentOwner
do recursochannel
indica se o nome do proprietário do conteúdo será mostrado quando a promoção for mostrada. Esse campo só pode ser definido se a solicitação à API que define o valor estiver sendo feita em nome do proprietário do conteúdo. Consulte o parâmetroonBehalfOfContentOwner
para mais informações.
1o de outubro de 2013
Esta atualização contém as seguintes alterações:
-
O novo objeto
auditDetails
do recursochannel
contém dados de canal que uma rede multicanal (RM) avalia ao determinar se aceita ou rejeita um canal específico. Observe que qualquer solicitação de API que recupera 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 precisará ser revogado quando a RM decidir aceitar ou rejeitar o canal ou até duas semanas após a data de emissão do token. -
A propriedade
invideoPromotion.items[].id.type
do recursochannel
agora é compatível com 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 in-video são definidos. No entanto, você pode promover o vídeo enviado mais recentemente de outro canal, definindo o valor da nova propriedade
invideoPromotion.items[].id.recentlyUploadedBy
como o ID desse canal. -
O recurso
channel
contém três novas propriedades –brandingSettings.image.bannerTvLowImageUrl
,brandingSettings.image.bannerTvMediumImageUrl
,brandingSettings.image.bannerTvHighImageUrl
– que especificam os URLs para as imagens de banner que são exibidas nas páginas de 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 de propriedade válidos sãoupcoming
,active
enone
.- Para um recurso
video
, o valorupcoming
indica que o vídeo é uma transmissão ao vivo que ainda não foi iniciada, enquanto o valoractive
indica que o vídeo é uma transmissão ao vivo em andamento. - Para um recurso
channel
, o valorupcoming
indica que o canal tem uma transmissão programada que ainda não foi iniciada, enquanto o valoracive
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 especifique o ID do canal do YouTube ao qual a imagem de marca d'água está vinculada, a propriedadetargetChannelId
agora especifica esse valor em si. Dessa forma, a propriedadetargetChannelId.value
do recurso foi removida. -
O método
thumbnails.set
agora oferece suporte ao parâmetroonBehalfOfContentOwner
, que já é aceito por vários outros métodos -
O método
search.list
agora oferece suporte ao 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 Ministero dei Beni e delle Attivita Culturali e del Turismo da Itália. -
A API agora oferece suporte aos seguintes erros:
Tipo de erro Detalhe do erro Descrição badRequest
invalidImage
O método thumbnails.set
retornará esse erro se o conteúdo da imagem fornecido for inválido.forbidden
videoRatingDisabled
O método videos.rate
retornará esse erro se o proprietário do vídeo que está sendo avaliado tiver desativado as classificações para esse vídeo.
27 de agosto de 2013
Esta atualização contém as seguintes alterações:
-
O novo recurso
watermark
identifica uma imagem que é mostrada durante reproduções de vídeos de um canal especificado. 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 de marca d'água de um canal. O métodowatermarks.unset
exclui a imagem de marca d'água de um canal.A documentação do erro descreve as mensagens de erro que a API oferece suporte 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 seráfalse
se a contagem de inscritos do canal for visível publicamente. -
O método
playlists.list
agora oferece suporte aos parâmetrosonBehalfOfContentOwner
eonBehalfOfContentOwnerChannel
. Ambos os 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 recuperado. Este parâmetro pode ser usado apenas em conjunto com o parâmetrochart
. O valor do parâmetro é um código de país ISO 3166-1 Alfa 2. -
error documentation
descreve o novo erro de solicitação comum a seguir, 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 não são suficientes 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:-
A API agora oferece suporte à capacidade de 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á mostrada 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 para sites associados e sites de comerciantes e saiba como ativar links para seu conteúdo.
Ao adicionar links promocionais, você concorda que eles não serão usados para redirecionar tráfego para sites não autorizados e que esses links obedecerão às políticas do Google AdWords, às políticas de anúncios do YouTube, às diretrizes da comunidade e aos Termos de Serviço do YouTube.
-
As propriedades relacionadas às configurações de tempo para exibir itens promovidos durante a reprodução do vídeo foram reestruturadas:
-
O objeto
invideoPromotion.timing
foi movido parainvideoPromotion.items[].timing
. Este objeto agora permite que você personalize os dados de marcação de tempo de cada item promovido na lista doinvideoPromotion.items[]
. -
O novo objeto
invideoPromotion.defaultTiming
especifica as configurações de tempo padrão para sua promoção. Essas configurações definem quando um item promovido será exibido durante a reprodução de um dos vídeos do seu canal. É possível substituir o tempo padrão de qualquer item promovido usando o objetoinvideoPromotion.items[].timing
. -
A nova propriedade
invideoPromotion.items[].timing.durationMs
especifica o tempo, em milissegundos, de exibição da promoção. O objetoinvideoPromotion.defaultTiming
também contém um campodurationMs
que especifica o tempo 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 oferece suporte aos parâmetrosonBehalfOfContentOwner
eonBehalfOfContentOwnerChannel
. Ambos os 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
. -
Foram adicionados exemplos de código 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 para o método
playlistItems.insert
também foi removido, já que a funcionalidade demonstrada agora é processada pelo métodovideos.rate
. -
error documentation
descreve o novo erro de contexto de solicitação a seguir, que pode ocorrer em qualquer método de API compatível com o 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. Você precisa remover o parâmetromine
, fazer a autenticação como um usuário do YouTube removendo o parâmetroonBehalfOfContentOwner
ou atuar 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 Introdução à API de dados do YouTube foi atualizada para refletir uma alteração no custo de cota do upload de um vídeo de aproximadamente 16.000 para 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 de destaque que complementa o conteúdo do canal. O valor da propriedade é um sinal de cerquilha (#
) seguido por uma string hexadecimal de seis caracteres, como#2793e6
. -
A API agora 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 será notificado. Os valores de propriedade válidos sãoall
euploads
. -
O método
videos.list
aceita 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. Atualmente, o único valor compatível émostPopular
. O parâmetrochart
é de filtro, ou seja, 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 a qual o gráfico precisa ser recuperado. Este parâmetro pode ser usado apenas em conjunto 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 desses temas 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
dela foi renomeada comofileDetails.recordingLocation.location.altitude
-
O objeto
contentDetails.contentRating
do recursovideo
especifica as classificações que um vídeo recebeu de acordo com vários esquemas, incluindo classificações MPAA, classificações TVPG e assim por diante. Para cada sistema de classificação, a API agora oferece suporte a um valor de classificação que indica que o vídeo não foi classificado. Observe que, para as classificações MPAA, uma classificação "sem classificação" é frequentemente usada para identificar versões não cortadas de filmes para os quais a versão cortada do filme recebeu uma classificação oficial. -
A nova propriedade
contentDetails.contentRating.ytRating
do recursovideo
identifica o conteúdo com restrição de idade. O valor da propriedade seráytAgeRestricted
se o YouTube identificar que o vídeo apresenta conteúdo impróprio para usuários com menos de 18 anos. Se a propriedade estiver ausente ou se o valor da propriedade estiver vazio, o conteúdo não terá sido identificado como uma restrição de idade. -
O uso do 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 de parâmetro. -
A documentação do método
channels.update
foi atualizada para refletir o fato de que esse método 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 específico. 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 específico. 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 indicaria que a outra conta foi encerrada. forbidden
authenticatedUserAccountSuspended
Esse erro não é específico de um método de API específico. Isso 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 indicaria que a outra conta está suspensa. forbidden
authenticatedUserNotChannel
Esse erro não é específico de um método de API específico. Isso indica que o servidor da API não consegue identificar o canal associado à solicitação de API. Se a solicitação estiver autorizada e usar o parâmetro onBehalfOfContentOwner
, você também precisará definir o parâmetroonBehalfOfContentOwnerChannel
.forbidden
cmsUserAccountNotFound
Esse erro não é específico de um método de API específico. 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 específico. A conta especificada do proprietário do conteúdo não foi encontrada. badRequest
invalidPart
Esse erro não é específico de um método de API específico. 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 incompatível ou indisponível.notFound
videoNotFound
O método videos.update
retorna esse erro para indicar que o vídeo que você está tentando atualizar não pode ser encontrado. Verifique o valor da propriedadeid
no corpo da solicitação para garantir que ele 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. -
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 playlists agora contêm a propriedade
snippet.tags
. A propriedade será retornada somente para usuários autorizados que estiverem recuperando dados sobre as próprias playlists. Os usuários autorizados também podem definir tags de playlists 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 ao qual 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 possuem e gerenciam muitos canais do YouTube diferentes. O parâmetro permite que esses parceiros se autentiquem uma vez e obtenham acesso a 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 sua propriedade.
-
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 específico. Isso indica que o usuário do CMS que está chamando 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 pode ser usado em 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á devidamente autorizada. -
No recurso
channels
, a propriedadeinvideoPromotion.channelId
foi removida porque o ID do canal já foi especificado usando a propriedadeid
do recurso. -
O novo guia Como trabalhar com IDs de canal explica como a API usa IDs de canal. O guia pode ser especialmente útil para desenvolvedores que estão migrando da versão anterior da API e que têm aplicativos que solicitam conteúdo para o usuário do
default
ou que dependem da ideia de que cada 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:
-
O novo método
channelBanners.insert
permite fazer upload de uma imagem de banner que pode ser definida posteriormente como a imagem do banner para 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 parasuggestions.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 dos métodoschannelBanners.insert
esubscriptions.list
. Ele também lista vários novos erros para o métodochannels.update
.
14 de maio de 2013
Esta atualização contém as seguintes alterações:
-
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 para adicionar uma assinatura, 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 oferecem suporte ao objeto
inVideoPromotion
, que encapsula informações sobre uma campanha promocional associada ao canal. Um canal pode usar uma campanha promocional em vídeo para exibir imagens em miniatura de um vídeo promovido no player durante as reproduções dos vídeos do canal.É possível extrair esses dados incluindo
invideoPromotion
no valor de parâmetropart
em uma solicitaçãochannels.list
. -
O novo método
channels.update
pode ser usado para atualizar os dados de campanhas promocionais em vídeo de um canal. O método só oferece suporte a atualizações da parteinvideoPromotion
do recursochannel
e ainda não oferece suporte a atualizações de 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 que já está 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 oferecem suporte à parte
subscriberSnippet
. Esse objeto encapsula os dados de snippets do canal do inscrito. -
A API agora oferece suporte ao método
videos.getRating
, que recupera as classificações que o usuário autenticado deu para uma lista de um ou mais vídeos. -
O novo parâmetro
myRating
do métodovideos.list
permite que você recupere uma lista de vídeos que o usuário autenticado avaliou comlike
oudislike
.Os parâmetros
myRating
eid
agora são considerados parâmetros de filtro, o que significa que uma solicitação de API precisa especificar exatamente um dos parâmetros. Anteriormente, 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 devidamente 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 as 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 contém 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 as propriedadesnextPageToken
eprevPageToken
. Cada uma delas fornece um token que pode ser usado para recuperar uma página específica no conjunto de resultados.
-
-
O método
videos.insert
oferece suporte aos novos parâmetros a seguir:autoLevels
: defina esse valor de parâmetro comotrue
para instruir o YouTube a melhorar automaticamente a iluminação e a cor do vídeo.stabilize
: defina esse valor de 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 da playlist.playlist
: a propriedade especifica o nome do canal que criou a playlist.subscription
: a propriedade especifica o nome do canal que está inscrito.
-
Foram adicionados exemplos de código 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 que você recupere uma lista dos assinantes do usuário autenticado no momento. Esse parâmetro só pode ser usado em uma solicitação autorizada corretamente.Observação:essa funcionalidade destina-se a substituir o parâmetro
mySubscribers
atualmente compatível com o métodochannels.list
. Esse parâmetro será descontinuado. -
Em um recurso
video
, o valor da propriedadeunspecified
não é mais possível para nenhuma destas 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 retornado pelo método
playlistItems.insert
quando a playlist já contém o número máximo de itens permitidos foi atualizado. O erro agora é relatado como um erroforbidden
, e o motivo do erro é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 avaliaçã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 enviar uma miniatura de vídeo personalizada para o YouTube e configurá-la para 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
.Observe que essa mudança não afeta os recursos existentes que retornam imagens em miniatura. As imagens em miniatura são retornadas nesses recursos da mesma forma que eram antes, embora a documentação agora liste os nomes dos diferentes tamanhos de miniatura que a API pode retornar.
-
A nova parte do
brandingSettings
do recursochannel
identifica configurações, textos e imagens para a página do canal e as páginas de exibição de vídeos do canal. -
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 do item.
-
-
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 são visíveis publicamente. Por padrão, essas estatísticas são visíveis, e estatísticas como a contagem de visualizações e as notas de um vídeo ainda ficarão visíveis publicamente, 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 de acordo com vários esquemas de classificação. 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 suportados para cada sistema.País Sistema de classificação Propriedade Estados Unidos Motion Picture Association of America (MPAA) contentDetails.contentRating.mpaaRating
Estados Unidos Orientação dos pais para a televisão contentDetails.contentRating.tvpgRating
Austrália Conselho de Classificação da Austrália (ACB, na sigla em inglês) contentDetails.contentRating.acbRating
Brasil Departamento de Justiça, Classificação, Qualificação e Títulos contentDetails.contentRating.djctqRating
Canadá Canadense Home Video Rating System (CHVRS) contentDetails.contentRating.chvrsRating
França Centre National du cinéma et de l'image animée (Ministério da Cultura da França) contentDetails.contentRating.fmocRating
Alemanha Freiwillige Selbstkontrolle der Filmwirtschaft (FSK) contentDetails.contentRating.fskRating
Grã-Bretanha Conselho Britânico de Classificação de Filmes (BBFC, na sigla em inglês) contentDetails.contentRating.bbfcRating
Índia Conselho Central de Certificação de Filmes (CBFC, na sigla em inglês) contentDetails.contentRating.cbfcRating
Japão 映倫管理委員分 (EIRIN) contentDetails.contentRating.eirinRating
Coreia do Sul 📔 물자자자쌉 (KMRB) contentDetails.contentRating.kmrbRating
México Direção Geral de Rádio, Televisão e Cinematografia (RTC) contentDetails.contentRating.rtcRating
Nova Zelândia Escritório de classificação de filmes e literatura contentDetails.contentRating.oflcRating
Rússia Registro Nacional de Filmes da Federação Russa contentDetails.contentRating.russiaRating
Espanha 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 a esta funcionalidade:-
O novo parâmetro
forMine
restringe uma pesquisa para recuperar apenas os vídeos do usuário autenticado. -
O parâmetro
order
agora 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 precisam incluir conteúdo restrito.
-
-
O método
videos.insert
é compatível com vários novos erros, que estão 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 specifies invalid recording details.
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 compatíveis com 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
oferece suporte aos novos parâmetros a seguir:-
O parâmetro
channelType
permite restringir uma pesquisa a canais para recuperar todos os canais ou apenas programas. -
O parâmetro
videoType
permite restringir uma pesquisa de vídeos para recuperar todos os vídeos ou apenas filmes ou apenas episódios de programas.
-
-
A definição da parte
recordingDetails
do recursovideo
foi atualizada para mostrar que o objeto só será retornado para um vídeo se os dados de geolocalização ou o tempo de gravação do vídeo tiverem sido definidos. -
O método
playlistItems.update
agora retorna um erroinvalidSnippet
, que será retornado se a solicitação da API não especificar um snippet válido. -
Vários métodos de API suportam 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 que disponibilizam o conteúdo deles no YouTube.
-
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 possuem e gerenciam muitos canais do YouTube diferentes. O parâmetro permite que esses parceiros se autentiquem uma vez e obtenham acesso a 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
aceitam esse parâmetro. -
O parâmetro
managedByMe
, que tem suporte do métodochannels.list
, instrui a API a retornar todos os canais do proprietário do conteúdo especificados pelo parâmetroonBehalfOfContentOwner
. -
O parâmetro
forContentOwner
, que tem suporte do métodosearch.list
, instrui a API a restringir os resultados da pesquisa para incluir apenas recursos 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ídeo sobre os vídeos enviados por eles. Esses dados são muito úteis em aplicativos que permitem o upload de vídeos e incluem:- 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 para o 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 de recursos
video
define todas as propriedades que cada parte contém.-
O objeto
fileDetails
contém informações sobre o arquivo de vídeo que foi enviado ao YouTube, incluindo a resolução, a duração, os codecs de áudio e vídeo, as taxas de bits do 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 de processamento atual 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 criado para ser pesquisado para que o usuário que fez o envio do vídeo possa acompanhar o progresso que o YouTube teve no processamento do arquivo de vídeo enviado.
-
O objeto
suggestions
contém sugestões que identificam oportunidades para melhorar a qualidade ou os metadados do vídeo 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 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 que foi reivindicado por um parceiro de conteúdo do YouTube.
-
A parte
status
contém duas novas propriedades. Os proprietários de vídeo podem definir valores para ambas as 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
para listar as partes recém-adicionadas descritas acima, bem como a parterecordingDetails
, que foi omitida acidentalmente. -
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 imagem em miniatura agora especifica a largura e a altura da imagem. No momento, as imagens de 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 em conjunto com o parâmetroplaylistId
para recuperar apenas o item da playlist que representa o vídeo especificado.A API retornará um erro
notFound
se o vídeo identificado pelo parâmetro não puder ser encontrado na playlist. -
A documentação de erros descreve um novo erro
forbidden
, que indica que uma solicitação não está devidamente autorizada 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 com diferentes métodos de API, além de erros específicos de cada método.
16 de janeiro de 2013
Esta atualização contém as seguintes alterações:
-
Os exemplos de código já estão disponíveis para os métodos e as linguagens mostradas 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
-
Um recurso
activity
agora pode informar uma açãochannelItem
, que ocorre quando o YouTube adiciona um vídeo a um canal gerado automaticamente. O YouTube identifica, por meio de algoritmos, os tópicos que têm uma presença significativa no site do YouTube 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
oferece suporte aos novos parâmetros a seguir:Nome do parâmetro Valor Descrição channelId
string
Retorna recursos criados pelo canal especificado. publishedAfter
datetime
Retorna recursos criados após o tempo especificado. publishedBefore
datetime
Retorna recursos criados antes do tempo especificado. regionCode
string
Retorna recursos para o país especificado. videoCategoryId
string
Filtre os resultados da pesquisa para incluir somente conteúdo associado à categoria de vídeo especificada. videoEmbeddable
string
Filtre os resultados da pesquisa de vídeo para incluir somente 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 os vídeos distribuídos. -
Vários recursos da API oferecem suporte a novas propriedades. A tabela abaixo identifica os recursos e as novas propriedades:
Resource Nome da propriedade Valor Descrição activity
contentDetails.playlistItem.playlistItemId
string
O código do item da playlist que o YouTube atribuiu para identificar de forma exclusiva. activity
contentDetails.channelItem
object
Um objeto que contém informações sobre um recurso que foi adicionado a um canal. Essa propriedade só estará presente se snippet.type
forchannelItem
.activity
contentDetails.channelItem.resourceId
object
Um objeto que identifica o recurso que foi adicionado ao canal. Assim como outras propriedades resourceId
, ela contém umakind
que especifica o tipo de recurso, como vídeo ou playlist. Ele também contém exatamente uma das várias propriedades (videoId
,playlistId
etc.) que especificam 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
Este 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 reproduzir a lista de reprodução 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 o horário em que o vídeo foi gravado. video
recordingDetails.location
object
Este 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 em texto 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 do 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 talvez já liste as 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 informará 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 erro. A tabela abaixo identifica o método e os novos erros compatíveis:
Método Tipo de erro Detalhe do erro Descrição guideCategories.list
notFound
notFound
A categoria de guia identificada pelo parâmetro id
não foi encontrada. 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
A categoria de vídeo identificada pelo parâmetro id
não foi encontrada. Use o método videoCategories.list para recuperar uma lista de valores válidos.