Neste guia, explicamos como usar o método delete
no recurso membership
da API Google Chat para remover um usuário ou app do Chat de um espaço, também conhecido como exclusão de associação. Não será possível remover os administradores se eles forem os únicos
administradores de um espaço. Atribua outro usuário como administrador do espaço antes de remover essas
assinaturas.
O
recurso Membership
representa se um usuário humano ou app do Google Chat foi convidado,
parte de ou ausente de um espaço.
Pré-requisitos
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 na interface de linha de comando:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Um projeto do Google Cloud com a API Google Chat ativada e configurada. Veja as etapas em Criar um app do Google Chat.
Autorização configurada para o app do Chat. A exclusão de uma assinatura requer a autenticação do usuário com o escopo de autorização
chat.memberships
ouchat.memberships.app
de um usuário que tenha permissão para excluir a assinatura especificada.
Remover um usuário ou um app do Chat de um espaço
Para remover um usuário ou um app do Chat de um espaço:
- Para remover um usuário, especifique o escopo de autorização
chat.memberships
. Para remover um app do Chat, especifique o escopo de autorizaçãochat.memberships.app
. Os apps só podem excluir a própria assinatura, e não a de outros apps. Como prática recomendada, escolha o escopo mais restritivo que ainda permita o funcionamento do app. - Chame o método
delete
no recursomembership
. - Transmita o
name
da assinatura a ser excluída. Se a associação pertencer ao único administrador do espaço em um espaço, atribua outro usuário como administrador antes de excluir a assinatura.
Saiba como excluir uma assinatura:
Python
- No diretório de trabalho, crie um arquivo chamado
chat_membership_delete.py
. Inclua o seguinte código em
chat_membership_delete.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.memberships.app"] def main(): ''' Authenticates with Chat API via user credentials, then deletes the specified membership. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().members().delete( # The membership to delete. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBER with a membership name. # Obtain the membership name from the memberships resource of # Chat API. To delete a Chat app's membership, replace MEMBER # with app; an alias for the app calling the API. name='spaces/SPACE/members/MEMBER' ).execute() # Print Chat API's response in your command line interface. # When deleting a membership, the response body is empty. print(result) if __name__ == '__main__': main()
No código, substitua o seguinte:
SPACE
: um nome de espaço, que pode ser encontrado no métodospaces.list
na API Chat ou no URL de um espaço.MEMBER
: um nome de assinatura, que pode ser obtido no métodospaces.members.list
na API Chat. Para excluir a assinatura de um app, substituaMEMBER
porapp
.
No diretório de trabalho, crie e execute a amostra:
python3 chat_membership_delete.py
Se a solicitação for bem-sucedida, o corpo da resposta retornará a associação com
'state': 'NOT_A_MEMBER'
, indicando que o membro não está mais no espaço.
{ "name": "spaces/SPACE/members/MEMBER", "state": "NOT_A_MEMBER" }
Temas relacionados
- Ver detalhes sobre a assinatura de um usuário ou um app do Chat.
- Listar os participantes em um espaço
- Atualizar a associação de um usuário em um espaço do Google Chat.
- Convidar ou adicionar um usuário ou app do Chat a um espaço