Ce guide explique comment utiliser la
delete()
méthode sur la ressource Membership de l'API Google Chat pour supprimer des membres d'un
espace, ce qui revient à supprimer une adhésion. Les gestionnaires d'un espace ne peuvent pas être supprimés s'ils sont les seuls gestionnaires de l'espace. Attribuez le rôle de gestionnaire de l'espace à un autre utilisateur avant de supprimer ces adhésions.
Si vous êtes administrateur Google Workspace, vous pouvez supprimer des utilisateurs, des groupes Google ou des applications Chat de n'importe quel espace de votre organisation Google Workspace.
Prérequis
Node.js
- Configurez votre environnement :
- Créez un projet Google Cloud.
- Configurez l'écran d'autorisation OAuth.
- Activez et configurez l'API Google Chat avec un nom, une icône et une description pour votre application Chat.
- Installez la bibliothèque cliente Cloud Node.js.
- Créez des identifiants d'accès en fonction de la façon dont vous souhaitez vous authentifier dans votre requête d'API Google Chat
:
- Pour vous authentifier en tant qu'utilisateur Chat,
créez des identifiants d'ID client OAuth et enregistrez-les dans un fichier JSON nommé
credentials.jsondans votre répertoire local. - Pour vous authentifier en tant qu'application Chat,
créez des identifiants de compte de service et enregistrez-les dans un fichier JSON nommé
credentials.json.
- Pour vous authentifier en tant qu'utilisateur Chat,
créez des identifiants d'ID client OAuth et enregistrez-les dans un fichier JSON nommé
- Choisissez un champ d'application d'autorisation selon que vous souhaitez vous authentifier en tant qu'utilisateur ou en tant qu'application Chat.
- Un espace Google Chat. Pour en créer un à l'aide de l'API Google Chat, consultez Créer un espace. Pour en créer un dans Chat, consultez la documentation du Centre d'aide.
Supprimer un membre d'un espace en tant qu'utilisateur
Pour supprimer un utilisateur, un groupe Google ou une application Chat d'un espace avec authentification de l'utilisateur, transmettez les éléments suivants dans votre requête :
- Spécifiez le champ d'application d'autorisation
chat.memberships. L'utilisateur autorisant doit être autorisé à supprimer l'utilisateur ou le groupe Google de l'espace. Pour supprimer une application Chat, spécifiez le champ d'application d'autorisationchat.memberships.app(les applications ne peuvent supprimer que leur propre adhésion, et non celle d'autres applications). Nous vous recommandons de choisir le champ d'application le plus restrictif qui permette à votre application de fonctionner. - Appelez la
DeleteMembership()méthode. - Transmettez le
namede l'adhésion à supprimer. Si l'adhésion appartient au seul gestionnaire d'un espace, attribuez le rôle de gestionnaire de l'espace à un autre utilisateur avant de supprimer cette adhésion.
Voici comment supprimer une adhésion avec authentification de l'utilisateur :
Node.js
Pour exécuter cet exemple, remplacez les éléments suivants :
SPACE_NAME: ID dunamede l'espace. Vous pouvez obtenir l'ID en appelant laListSpaces()méthode ou à partir de l'URL de l'espace.MEMBER_NAME: ID du membrename. Vous pouvez obtenir l'ID en appelant laListMemberships()méthode.
Si la requête aboutit, le corps de la réponse renvoie l'adhésion avec
'state': 'NOT_A_MEMBER', ce qui indique que le membre ne fait plus partie de l'espace.
{
"name": "spaces/SPACE_NAME/members/MEMBER_NAME",
"state": "NOT_A_MEMBER"
}
Supprimer un membre d'un espace en tant qu'application Chat
L'authentification des applications nécessite une approbation unique de l'administrateur.
Pour supprimer un utilisateur, un groupe Google ou une application Chat d'un espace avec authentification de l'application, transmettez les éléments suivants dans votre requête :
- Spécifiez le champ d'application d'autorisation
chat.app.memberships. La suppression de l'adhésion d'un gestionnaire d'espace n'est possible que dans les espaces créés par des applications Chat. - Appelez la
deleteméthode sur lamembershipressource. - Transmettez le
namede l'adhésion à supprimer. Si l'adhésion appartient au seul gestionnaire d'un espace, attribuez le rôle de gestionnaire de l'espace à un autre utilisateur avant de supprimer cette adhésion.
Écrire un script qui appelle l'API Chat
Voici comment supprimer une adhésion avec authentification de l'application :
Python
- Dans votre répertoire de travail, créez un fichier nommé
chat_membership_delete_app.py. Incluez le code suivant dans
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()Dans le code, remplacez les éléments suivants :
SPACE: nom d'un espace, que vous pouvez obtenir à partir de la méthodespaces.listde l'API Chat ou de l'URL d'un espace.MEMBER: nom d'une adhésion, que vous pouvez obtenir à partir de la méthodespaces.members.listde l'API Chat. Pour supprimer l'adhésion d'une application, remplacezMEMBERparapp.
Dans votre répertoire de travail, compilez et exécutez l'exemple :
python3 chat_membership_delete_app.py
Si la requête aboutit, le corps de la réponse renvoie l'adhésion avec
'state': 'NOT_A_MEMBER', ce qui indique que le membre ne fait plus partie de l'espace.
{
"name": "spaces/SPACE/members/MEMBER",
"state": "NOT_A_MEMBER"
}
Supprimer des utilisateurs ou des groupes Google d'un espace en tant qu'administrateur Google Workspace
Si vous êtes administrateur Google Workspace, vous pouvez appeler la méthode DeleteMembership() pour supprimer des utilisateurs, des groupes Google ou des applications Chat de n'importe quel espace de votre organisation Google Workspace.
Pour appeler cette méthode en tant qu'administrateur Google Workspace, procédez comme suit :
- Appelez la méthode à l'aide de l'authentification de l'utilisateur et spécifiez un champ d'application d'autorisation qui permet d'appeler la méthode à l'aide de privilèges d'administrateur.
- Dans votre requête, définissez le paramètre de requête
useAdminAccesssurtrue.
Pour en savoir plus et obtenir des exemples, consultez Gérer les espaces Google Chat en tant qu'administrateur Google Workspace.
Limites et points à noter
- Avec l'authentification des applications, une application Chat peut supprimer des utilisateurs, mais pas des groupes Google ni les applications Chat.
Articles associés
- Obtenir des informations sur l'adhésion d'un utilisateur ou d'une application Chat.
- Afficher la liste des membres d'un espace.
- Modifier l'adhésion d'un utilisateur à un espace Google Chat.
- Inviter ou ajouter un utilisateur ou une application Chat à un espace.