Implementar a autorização do OAuth 2.0

O YouTube Reporting API e o YouTube Analytics API são compatíveis com o protocolo OAuth 2.0 para autorizar o acesso a dados particulares do usuário. A lista abaixo explica alguns dos principais conceitos do OAuth 2.0:

  • Quando um usuário tenta usar uma funcionalidade no aplicativo pela primeira vez que exige que o usuário esteja conectado a um Google Account or YouTube account, o aplicativo inicia o processo de autorização do OAuth 2.0.

  • Seu aplicativo redireciona o usuário ao servidor de autorização do Google. O link para essa página especifica o scope de acesso que seu aplicativo está solicitando para a conta do usuário. O scope especifica os recursos que seu aplicativo pode recuperar, inserir, atualizar ou excluir quando atuar como usuário autenticado.

  • Se o usuário consentir em autorizar seu aplicativo para acessar os recursos, o Google retorna um token a seu aplicativo. Dependendo do tipo do aplicativo, ele valida ou token ou troca-o por um tipo de token diferente.

    Por exemplo, um aplicativoda Web do lado do servidor troca o token retornado por um token de acesso e um token de atualização. Com o token de acesso, o aplicativo pode autorizar solicitações em nome do usuário. Já o token de atualização permite que o aplicativo recupere um novo token de acesso quando o token de acesso original expirar.

Importante:você precisa ter credenciais de autorização no Console de APIs do Google para usar a autorização do OAuth 2.0.

Fluxos do OAuth 2.0

As APIs do Google oferecem suporte a vários casos de uso do OAuth 2.0:

  • O fluxo de apps da Web do lado do servidor é compatível com aplicativos da Web que podem armazenar informações persistentes com segurança.
  • O fluxo de apps da Web JavaScript é compatível com aplicativos JavaScript executados em um navegador.
  • O fluxo de apps para dispositivos móveis e computador é compatível com aplicativos instalados em um dispositivo, como um telefone ou computador.
  • O fluxo OAuth 2.0 para TVs e dispositivos de entrada limitada é compatível com dispositivos com recursos de entrada limitados, como consoles de jogos e câmeras de vídeo. The YouTube Reporting and YouTube Analytics APIs do not currently support the OAuth 2.0 flow for devices.
  • O fluxo do OAuth 2.0 para o fluxo da conta de serviço é compatível com interações de servidor para servidor que não acessam informações do usuário. No entanto, YouTube Reporting API e YouTube Analytics API não são compatíveis com esse fluxo. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate an error.

Identificar escopos de acesso

Os escopos permitem que seu aplicativo solicite acesso apenas aos recursos necessários e, ao mesmo tempo, permitem que os usuários controlem o nível de acesso que concedem ao aplicativo. Assim, pode haver uma relação inversa entre o número de escopos solicitados e a probabilidade de obter o consentimento do usuário.

Antes de começar a implementar a autorização do OAuth 2.0, recomendamos que você identifique os escopos que seu app vai precisar de permissão de acesso.

A API YouTube Analytics usa os seguintes escopos:

Scopes
https://www.googleapis.com/auth/youtube Gerenciar sua conta do YouTube
https://www.googleapis.com/auth/youtube.readonly Visualize sua conta do YouTube
https://www.googleapis.com/auth/youtubepartner Visualize e gerencie seus ativos e conteúdo associado no YouTube
https://www.googleapis.com/auth/yt-analytics-monetary.readonly Visualize relatórios monetários e não monetários do YouTube Analytics para seu conteúdo do YouTube
https://www.googleapis.com/auth/yt-analytics.readonly Visualize relatórios do YouTube Analytics para seu conteúdo do YouTube

A API YouTube Reporting usa os seguintes escopos:

Scopes
https://www.googleapis.com/auth/yt-analytics-monetary.readonly Visualize relatórios monetários e não monetários do YouTube Analytics para seu conteúdo do YouTube
https://www.googleapis.com/auth/yt-analytics.readonly Visualize relatórios do YouTube Analytics para seu conteúdo do YouTube

O documento Escopos da API OAuth 2.0 contém uma lista completa dos escopos que podem ser usados para acessar as APIs do Google.