Ce guide explique comment utiliser la
update()
méthode sur la ressource Membership de l'API Google Chat pour modifier les attributs
d'une appartenance, par exemple pour faire passer un membre d'un espace au rôle de gestionnaire de l'espace ou
de propriétaire.
Si vous êtes administrateur Google Workspace, vous pouvez appeler la méthode update() pour modifier l'appartenance à n'importe quel espace de votre organisation Google Workspace.
Prérequis
Node.js
- Compte Google Workspace Business ou Enterprise ayant accès à Google Chat.
- Configurez votre environnement :
- Créez un projet Google Cloud.
- Configurez l'écran de consentement 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 niveau d'accès d'autorisation selon que vous souhaitez vous authentifier en tant qu'utilisateur ou en tant qu'application Chat.
Modifier une appartenance
Pour modifier l'appartenance à un espace, transmettez les éléments suivants dans votre requête :
- Spécifiez un niveau d'accès d'autorisation :
- Avec l'authentification de l'utilisateur,
spécifiez le niveau d'accès d'autorisation
chat.memberships. - Avec
l'authentification de l'application,
spécifiez le niveau d'accès d'autorisation
chat.app.memberships. Lorsque vous modifiez une appartenance avec l'authentification de l'application, vous ne pouvez modifier que les appartenances dans les espaces créés par les applications Chat. L'authentification de l'application nécessite une approbation unique de l'administrateur.
- Avec l'authentification de l'utilisateur,
spécifiez le niveau d'accès d'autorisation
- Appelez la
UpdateMembership()méthode. - Transmettez
membershipen tant qu'instance deMembershipavec les éléments suivants :- Le champ
namedéfini sur l'appartenance à modifier, qui inclut un ID d'espace et un ID de membre. - Les champs d'appartenance à modifier définis sur les nouvelles valeurs.
- Le champ
- Transmettez
updateMaskpour spécifier les aspects de l'appartenance à modifier. Il inclut les éléments suivants :role: rôle de l'utilisateur dans un espace Chat, qui détermine les actions autorisées dans l'espace. Pour obtenir des explications détaillées sur les autorisations, consultezMembershipRoledans la documentation de référence de l'API Chat. Valeurs possibles :ROLE_MEMBER: membre de l'espace. Dans l'UI Chat, ce rôle est appelé Membre.ROLE_ASSISTANT_MANAGER: gestionnaire d'espace. Dans l'UI Chat, ce rôle est appelé Gestionnaire.ROLE_MANAGER: propriétaire de l'espace. Dans l'UI Chat, ce rôle est appelé Propriétaire.
Faire passer un membre au rôle de propriétaire (authentification de l'utilisateur)
L'exemple suivant appelle l'API Chat à l'aide de
l'authentification de l'utilisateur
pour faire passer un membre d'espace ordinaire au rôle de propriétaire en spécifiant role comme
ROLE_MANAGER :
Node.js
Pour exécuter l'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 de l'appartenancename. Vous pouvez obtenir l'ID en appelant laListMemberships()méthode, ou à partir du corps de la réponse renvoyée après avoir créé une appartenance de manière asynchrone avec l'API Chat.ROLE_NAME: rôle modifié,ROLE_MANAGER. Vous pouvez définir cette valeur sur n'importe quelle valeur deMembershipRole. Par exemple, pour faire passer le membre ordinaire au rôle de gestionnaire de l'espace, remplacezROLE_NAMEparROLE_ASSISTANT_MANAGER.
L'API Google Chat modifie l'appartenance spécifiée en propriétaire d'espace et renvoie
une instance de
Membership.
Faire passer un propriétaire au rôle de membre (authentification de l'utilisateur)
L'exemple suivant appelle l'API Chat à l'aide de
l'authentification de l'utilisateur
pour faire passer un propriétaire d'espace au rôle de membre d'espace ordinaire en spécifiant role comme
ROLE_MEMBER :
Node.js
Pour exécuter l'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 de l'appartenancename. Vous pouvez obtenir l'ID en appelant laListMemberships()méthode, ou à partir du corps de la réponse renvoyée après avoir créé une appartenance de manière asynchrone avec l'API Chat.ROLE_NAME: rôle modifié,ROLE_MEMBER.
L'API Google Chat modifie l'appartenance spécifiée en propriétaire d'espace et renvoie
une instance de
Membership.
Faire passer un membre au rôle de propriétaire (authentification de l'application Chat)
L'authentification de l'application nécessite une approbation unique de l'administrateur.
Écrire un script qui appelle l'API Chat
L'exemple suivant appelle l'API Chat à l'aide de
l'authentification de l'application
pour faire passer un membre d'espace ordinaire au rôle de propriétaire en spécifiant role comme
ROLE_MANAGER dans le body qui spécifie les attributs d'appartenance modifiés :
Python
- Dans votre répertoire de travail, créez un fichier nommé
chat_membership_update_to_owner_app.py. Incluez le code suivant dans
chat_membership_update_to_owner_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 updates a specified space member to change it from a regular member to a space owner. ''' # 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().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', # Replace ROLE with a MembershipRole value. # Obtain the MembershipRole values from the membership of Chat API. body={'role': 'ROLE'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()Dans le code, remplacez les éléments suivants :
SPACE: nom d'espace, que vous pouvez obtenir à partir de la méthodespaces.listde l'API Chat ou à partir de l'URL d'un espace.MEMBERSHIP: nom d'appartenance, que vous pouvez obtenir à partir de laspaces.members.listméthode de l'API Chat.ROLE: rôle modifié,ROLE_MANAGER. Vous pouvez définir cette valeur sur n'importe quelle valeur deMembershipRole. Par exemple, pour faire passer le membre ordinaire au rôle de gestionnaire de l'espace, remplacezROLEparROLE_ASSISTANT_MANAGERau lieu de cela.
Dans votre répertoire de travail, compilez et exécutez l'exemple :
python3 chat_membership_update_to_owner_app.py
Faire passer un propriétaire au rôle de membre (authentification de l'application Chat)
L'authentification de l'application nécessite une approbation unique de l'administrateur.
Écrire un script qui appelle l'API Chat
L'exemple suivant appelle l'API Chat à l'aide de
l'authentification de l'application
pour faire passer un propriétaire d'espace au rôle de membre d'espace ordinaire en spécifiant role comme
ROLE_MEMBER dans le body qui spécifie les attributs d'appartenance modifiés :
Python
- Dans votre répertoire de travail, créez un fichier nommé
chat_membership_update_to_member_app.py. Incluez le code suivant dans
chat_membership_update_to_member_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 via user credentials, then updates a specified space owner to change it to a regular member. ''' # 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().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MEMBER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()Dans le code, remplacez les éléments suivants :
SPACE: nom d'espace, que vous pouvez obtenir à partir de la méthodespaces.listde l'API Chat ou à partir de l'URL d'un espace.MEMBERSHIP: nom d'appartenance, que vous pouvez obtenir à partir de laspaces.members.listméthode de l'API Chat.
Dans votre répertoire de travail, compilez et exécutez l'exemple :
python3 chat_membership_update_to_member_app.py
Modifier des appartenances en tant qu'administrateur Google Workspace
Si vous êtes administrateur Google Workspace, vous pouvez appeler la méthode update() pour modifier les appartenances 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 niveau d'accès d'autorisation qui permet d'appeler la méthode à l'aide des droits d'administrateur.
- Dans votre requête, spécifiez 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.
Articles associés
- Inviter ou ajouter un utilisateur ou une application Google Chat à un espace.
- Obtenir des informations sur l'appartenance d'un utilisateur ou d'une application Chat.
- Afficher la liste des membres d'un espace.
- Supprimer un utilisateur ou une application Chat d'un espace.