Questa guida spiega come utilizzare il metodo
delete()
nella risorsa Membership
dell'API Google Chat per rimuovere i membri da uno spazio, operazione nota anche come eliminazione di un'iscrizione. I gestori dello spazio non possono essere rimossi se
sono gli unici gestori dello spazio. Assegna il ruolo di gestore dello spazio a un altro utente prima di rimuovere queste iscrizioni.
Se sei un amministratore di Google Workspace, puoi rimuovere utenti, Gruppi Google o app di chat da qualsiasi spazio della tua organizzazione Google Workspace.
La risorsa
Membership
indica se un utente umano o un'app Google Chat è invitato a, fa parte di o non è presente in uno spazio.
Prerequisiti
Node.js
- Un account Google Workspace Business o Enterprise con accesso a Google Chat.
- Configura l'ambiente:
- Crea un progetto Google Cloud.
- Configura la schermata per il consenso OAuth.
- Attiva e configura l'API Google Chat con un nome, un'icona e una descrizione per la tua app di chat.
- Installa la libreria client Cloud Node.js.
- Crea le credenziali di accesso in base al modo in cui vuoi autenticarti nella richiesta dell'API Google Chat:
- Per l'autenticazione come utente di Chat,
crea le credenziali dell'ID client OAuth e salvale come file JSON denominato
credentials.json
nella directory locale. - Per l'autenticazione come app Chat,
crea le credenziali
dell'account di servizio e salvale come file JSON denominato
credentials.json
.
- Per l'autenticazione come utente di Chat,
crea le credenziali dell'ID client OAuth e salvale come file JSON denominato
- Scegli un ambito di autorizzazione in base al fatto che tu voglia eseguire l'autenticazione come utente o come app Chat.
- Uno spazio di Google Chat. Per crearne uno utilizzando l'API Google Chat, consulta Crea uno spazio. Per crearne uno in Chat, visita la documentazione del Centro assistenza.
Rimuovere un membro da uno spazio come utente
Per rimuovere un utente, un gruppo Google o un'app di chat da uno spazio con autenticazione utente, trasmetti quanto segue nella richiesta:
- Specifica l'ambito di autorizzazione
chat.memberships
. L'utente che autorizza deve disporre dell'autorizzazione per rimuovere l'utente o il gruppo Google dallo spazio. Per rimuovere un'app di chat, specifica l'ambito di autorizzazionechat.memberships.app
(le app possono eliminare solo la propria appartenenza, non quella di altre app). Come best practice, scegli l'ambito più restrittivo che consenta comunque alla tua app di funzionare. - Chiama il metodo
DeleteMembership()
. - Passa il
name
dell'abbonamento da eliminare. Se l'iscrizione appartiene all'unico gestore di uno spazio, assegna il ruolo di gestore dello spazio a un altro utente prima di eliminare l'iscrizione.
Ecco come eliminare un abbonamento con autenticazione utente:
Node.js
Per eseguire questo esempio, sostituisci quanto segue:
SPACE_NAME
: l'ID diname
dello spazio. Puoi ottenere l'ID chiamando il metodoListSpaces()
o dall'URL dello spazio.MEMBER_NAME
: l'ID delname
del membro. Puoi ottenere l'ID chiamando il metodoListMemberships()
.
In caso di esito positivo, il corpo della risposta restituisce l'abbonamento con
'state': 'NOT_A_MEMBER'
, a indicare che l'abbonato non fa più parte dello spazio.
{ "name": "spaces/SPACE_NAME/members/MEMBER_NAME", "state": "NOT_A_MEMBER" }
Rimuovere un membro da uno spazio come app Chat
L'autenticazione dell'app richiede l'approvazione dell'amministratore una sola volta.
Per rimuovere un utente, un gruppo Google o un'app Chat da uno spazio con autenticazione dell'app, trasmetti quanto segue nella richiesta:
- Specifica l'ambito di autorizzazione
chat.app.memberships
. L'eliminazione dell'iscrizione di un gestore dello spazio è supportata solo negli spazi creati dalle app di chat. - Chiama il metodo
delete
sulla risorsamembership
. - Passa il
name
dell'abbonamento da eliminare. Se l'iscrizione appartiene all'unico gestore di uno spazio, assegna il ruolo di gestore dello spazio a un altro utente prima di eliminare l'iscrizione.
Scrivere uno script che chiama l'API Chat
Ecco come eliminare un abbonamento con l'autenticazione dell'app:
Python
- Nella directory di lavoro, crea un file denominato
chat_membership_delete_app.py
. Includi il seguente codice in
chat_membership_delete_app.py
:from google.oauth2 import service_account from apiclient.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.app.memberships"] def main(): ''' Authenticates with Chat API using app authentication, then deletes the specified membership. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # 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()
Nel codice, sostituisci quanto segue:
SPACE
: il nome di uno spazio, che puoi ottenere dal metodospaces.list
nell'API Chat o dall'URL di uno spazio.MEMBER
: il nome di un abbonamento, che puoi ottenere dal metodospaces.members.list
nell'API Chat. Per eliminare l'abbonamento di un'app, sostituisciMEMBER
conapp
.
Nella directory di lavoro, compila ed esegui l'esempio:
python3 chat_membership_delete_app.py
In caso di esito positivo, il corpo della risposta restituisce l'abbonamento con
'state': 'NOT_A_MEMBER'
, a indicare che l'abbonato non fa più parte dello spazio.
{ "name": "spaces/SPACE/members/MEMBER", "state": "NOT_A_MEMBER" }
Rimuovere utenti o Gruppi Google da uno spazio come amministratore Google Workspace
Se sei un amministratore di Google Workspace, puoi chiamare il metodo
DeleteMembership()
per rimuovere utenti, Gruppi Google o app di Chat da qualsiasi spazio della tua organizzazione Google Workspace.
Per chiamare questo metodo in qualità di amministratore di Google Workspace:
- Chiama il metodo utilizzando l'autenticazione utente e specifica un ambito di autorizzazione che supporti la chiamata del metodo utilizzando privilegi amministrativi.
- Nella richiesta, specifica il parametro di query
useAdminAccess
sutrue
.
Per ulteriori informazioni ed esempi, vedi Gestire gli spazi di Google Chat come amministratore di Google Workspace.
Limitazioni e considerazioni
- Con l'autenticazione delle app, un'app di Chat può rimuovere utenti, ma non Gruppi Google o app di Chat.
Argomenti correlati
- Visualizzare i dettagli dell'abbonamento di un utente o di un'app di chat.
- Elencare i membri di uno spazio.
- Aggiorna l'iscrizione di un utente a uno spazio Google Chat.
- Invitare o aggiungere un utente o un'app di chat a uno spazio.