Configurar o OAuth para seu aplicativo

Para configurar o OAuth no seu app, configure um fluxo de trabalho do OAuth e ative os escopos do OAuth da API Data Portability.

Configurar um fluxo de trabalho OAuth

Para configurar um fluxo OAuth para seu app, siga as etapas básicas na documentação do Google Identity.

A maioria dos desenvolvedores usa o fluxo de apps da Web do lado do servidor para receber o consentimento do OAuth, mas você também pode usar o fluxo de apps da Web JavaScript ou o fluxo de apps para dispositivos móveis e computadores.

Escopos do OAuth da API Data Portability

Ao configurar o aplicativo da API Data Portability para OAuth, ative os escopos OAuth da API Data Portability que forem relevantes para o aplicativo. Alguns escopos são sensitive e restricted e estão sujeitos a requisitos adicionais.

Quando você adiciona os escopos da API Data Portability ao fluxo OAuth, pode haver casos em que o usuário concede consentimento para alguns escopos, mas não para todos. O app precisa ser capaz de lidar com esses casos:

  • Como permitir exportações de dados parciais
  • Notificar o usuário de que ele não selecionou todos os escopos necessários (e falhar graciosamente)
  • Pedir os consentimentos restantes ao usuário

O consentimento de um usuário permite uma exportação de dados para esse consentimento específico. Para fazer o download dos dados novamente, é necessário um novo consentimento do usuário.

Além disso, durante o fluxo de OAuth, o app não sabe qual Conta do Google foi usada para dar consentimento. O token OAuth que seu aplicativo recebe é opaco.

Para saber como os usuários compartilham dados, consulte Compartilhar uma cópia dos seus dados com terceiros.

Restrições de escopo

Esta seção aborda restrições em escopos que resultam em erros.

Escopos mistos

As solicitações para escopos da API Data Portability (como https://www.googleapis.com/auth/dataportability.*) não podem ser misturadas com outros escopos (como https://www.googleapis.com/auth/userinfo.email). Confira um exemplo de solicitação inválida, com a parte restrita em negrito:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search+https://www.googleapis.com/auth/userinfo.email&
include_granted_scopes=false

Escopos concedidos anteriormente

Nunca defina include_granted_scopes=true ao solicitar escopos do DPAPI. Confira um exemplo de solicitação inválida, com a parte restrita em negrito:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search&
include_granted_scopes=true

Categorias de escopos

Para conferir a lista de todos os escopos do OAuth aceitos pela API Data Portability e as categorias, consulte Escopos do OAuth disponíveis. Para uma lista de todos os grupos de recursos e escopos do OAuth aceitos por um serviço específico, consulte a página de referência do esquema desse serviço.