Nesta página, explicamos como excluir uma assinatura do Google Workspace usando o
método
subscriptions.delete()
.
Quando você exclui uma assinatura, o app não recebe mais eventos. Se uma assinatura expirar, a API Google Workspace Events a excluirá automaticamente.
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 projeto padrão criado automaticamente pelo Apps Script.
- Para todos os escopos adicionados para configurar a tela de permissão OAuth, é preciso adicioná-los ao arquivo
appsscript.json
no seu projeto do Apps Script. Exemplo:
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
- Ative
o serviço avançado
Google Workspace Events
.
Python
- Python 3.6 ou superior
- 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 autenticação de usuário, requer um escopo que seja 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, exige o escopo
chat.bot
(apenas apps do Google Chat).
Excluir uma assinatura autorizada por um usuário
O exemplo de código a seguir exclui um
recurso Subscription
usando a autenticação do usuário.
Para excluir uma assinatura, faça o seguinte:
Apps Script
No projeto do Apps Script, crie um novo arquivo de script chamado
deleteSubscription
e adicione o seguinte código:function deleteSubscription() { // The name of the subscription to delete. const name = 'subscriptions/SUBSCRIPTION_ID'; // Call the Workspace Events API using the advanced service. const response = WorkspaceEvents.Subscriptions.remove(name); console.log(response); }
Substitua:
Para excluir a assinatura, execute a função
deleteSubscription
no seu projeto do Apps Script.
Python
No diretório de trabalho, crie um arquivo chamado
delete_subscription.py
e adicione o seguinte código:"""Delete 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' response = service.subscriptions().delete(name=NAME).execute() print(response)
Substitua:
SCOPE
: um escopo do OAuth compatível com pelo menos um tipo de evento da assinatura. Por exemplo, se sua assinatura receber eventos em 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 destas 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 se autenticar no Google Workspace e receber credenciais de usuário. Para instruções, consulte Criar credenciais de ID do cliente OAuth.Para excluir a assinatura, execute o seguinte no seu terminal:
python3 delete_subscription.py
Subscription
.