Esta página explica como conferir detalhes sobre uma assinatura do Google Workspace
usando o método
subscriptions.get()
.
Quando você chama esse método com a autenticação do usuário, ele retorna detalhes sobre uma assinatura autorizada pelo usuário. Quando você usa a autenticação do app, o método pode retornar detalhes sobre qualquer assinatura do app.
Pré-requisitos
Apps Script
- Uma assinatura do Google Workspace. Para criar uma, consulte Criar uma assinatura.
Requer autenticação do usuário com um ou mais escopos compatíveis com todos os tipos de evento da assinatura.
- Um projeto do Apps Script:
- Use seu projeto do Google Cloud em vez do padrão criado automaticamente pelo Apps Script.
- Para todos os escopos que você adicionou para configurar a tela de consentimento do OAuth, também é necessário adicionar os escopos ao arquivo
appsscript.json
no seu projeto do Apps Script. Exemplo: - Ative
o serviço avançado
Google Workspace Events
.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
Python
- Python 3.6 ou mais recente
- A ferramenta de gerenciamento de pacotes pip
- As bibliotecas de cliente mais recentes do Google para Python. Para instalar ou atualizar, execute o seguinte comando na interface de linha de comando:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Uma assinatura do Google Workspace. Para criar uma, consulte Criar uma assinatura.
Requer autenticação:
- Para a autenticação do usuário, é necessário um escopo compatível com pelo menos um dos tipos de evento da assinatura. Para identificar um escopo, consulte Escopos por tipo de evento.
- Para a autenticação de apps, requer o escopo
chat.bot
(somente apps do Google Chat).
Autorizar uma assinatura por um usuário
O exemplo de código abaixo recebe detalhes sobre um
recurso Subscription
usando a autenticação do usuário. Quando autenticado como um usuário, o método retorna uma
assinatura que o usuário autorizou o app a criar.
Para receber uma assinatura autorizada por um usuário:
Apps Script
No projeto do Apps Script, crie um novo arquivo de script chamado
getSubscription
e adicione o seguinte código:function getSubscription() { // The name of the subscription to get. const name = 'subscriptions/SUBSCRIPTION_ID'; // Call the Workspace Events API using the advanced service. const subscription = WorkspaceEvents.Subscriptions.get(name); console.log(subscription); }
Substitua:
Para receber a assinatura, execute a função
getSubscription
no seu projeto do Apps Script.
Python
No diretório de trabalho, crie um arquivo chamado
get_subscription.py
e adicione o seguinte código:"""Get subscription.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Specify required scopes. SCOPES = ['SCOPE'] # Authenticate with Google Workspace and get user authentication. flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES) CREDENTIALS = flow.run_local_server() # Call the Workspace Events API using the service endpoint. service = build( 'workspaceevents', 'v1', credentials=CREDENTIALS, ) NAME = 'subscriptions/SUBSCRIPTION_ID' subscription = service.subscriptions().get(name=NAME).execute() print(subscription)
Substitua:
SCOPE
: um escopo do OAuth que oferece suporte a pelo menos um tipo de evento da assinatura. Por exemplo, se a assinatura receber eventos de um espaço do Chat atualizado,https://www.googleapis.com/auth/chat.spaces.readonly
.SUBSCRIPTION_ID
: o ID da assinatura. Para conseguir o ID, use uma das seguintes opções:
No diretório de trabalho, verifique se você armazenou as credenciais do ID do cliente OAuth e nomeou o arquivo como
client_secrets.json
. O exemplo de código usa esse arquivo JSON para autenticar com o Google Workspace e receber as credenciais do usuário. Para instruções, consulte Criar credenciais de ID do cliente do OAuth.Para receber a assinatura, execute o seguinte no terminal:
python3 get_subscription.py