Ce guide explique comment utiliser la méthode create()
sur la ressource Membership
de l'API Google Chat pour inviter ou ajouter un utilisateur, un groupe Google ou une application Chat à un espace (également appelé "créer un accès"). Lorsque vous créez un accès, si la règle d'acceptation automatique du membre spécifié est désactivée, il est invité et doit accepter l'invitation à l'espace avant de le rejoindre. Sinon, la création d'une adhésion ajoute le membre directement à l'espace spécifié.
Si vous êtes administrateur Google Workspace, vous pouvez ajouter des utilisateurs, des groupes Google ou des applications Chat à n'importe quel espace de votre organisation Google Workspace.
La ressource Membership
indique si un utilisateur humain ou une application Google Chat est invité, membre ou absent d'un espace.
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 manière dont vous souhaitez vous authentifier dans votre requête API Google Chat :
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
client_secrets.json
dans 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 en tant que 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.
Python
- 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 pour Python.
- Créez des identifiants d'accès en fonction de la méthode d'authentification que vous souhaitez utiliser dans votre requête API Google Chat :
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
client_secrets.json
dans votre répertoire local. - Pour vous authentifier en tant qu'application Chat, créez des identifiants de compte de service et enregistrez-les en tant que fichier JSON nommé
credentials.json
.
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
- Choisissez un champ d'application de l'autorisation en fonction de votre choix d'authentification en tant qu'utilisateur ou en tant qu'application Chat.
Java
- 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 Java.
- Créez des identifiants d'accès en fonction de la méthode d'authentification que vous souhaitez utiliser dans votre requête API Google Chat :
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
client_secrets.json
dans votre répertoire local. - Pour vous authentifier en tant qu'application Chat, créez des identifiants de compte de service et enregistrez-les en tant que fichier JSON nommé
credentials.json
.
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
- Choisissez un champ d'application de l'autorisation en fonction de votre choix d'authentification en tant qu'utilisateur ou en tant qu'application Chat.
Apps Script
- Un 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.
- Créez un projet Apps Script autonome et activez le service Chat avancé.
- Dans ce guide, vous devez utiliser l'authentification des utilisateurs ou des applications. Pour vous authentifier en tant qu'application Chat, créez des identifiants de compte de service. Pour connaître la procédure à suivre, consultez la section S'authentifier et autoriser en tant qu'application Google Chat.
- Choisissez un champ d'application d'autorisation selon que vous souhaitez vous authentifier en tant qu'utilisateur ou en tant qu'application Chat.
Inviter ou ajouter un utilisateur à un espace en tant qu'utilisateur
Pour inviter ou ajouter un utilisateur à un espace avec authentification utilisateur, transmettez les éléments suivants dans votre requête:
- Spécifiez le champ d'application de l'autorisation
chat.memberships
. - Appelez la méthode
CreateMembership()
. - Transmettez
parent
comme nom de ressource de l'espace dans lequel créer l'appartenance. - Transmettez
membership
en tant qu'instance deMembership
avec son champmember
défini comme suit :- Le champ
type
défini surHUMAN
. - Le champ
name
défini surusers/{user}
, où{user}
est la personne que vous souhaitez ajouter à l'espace. Pour spécifier l'utilisateur Chat, remplacez{user}
par l'un des éléments suivants :- ID de la personne dans l'API People. Par exemple, si person (personne)
resourceName
de l'API People estpeople/123456789
, utilisez la valeurusers/123456789
. - ID de l'utilisateur dans l'API Directory.
- Adresse e-mail de l'utilisateur. Par exemple,
users/[email protected]
ouusers/[email protected]
. Si l'utilisateur utilise un compte Google ou appartient à une autre organisation Google Workspace, vous devez utiliser son adresse e-mail.
- ID de la personne dans l'API People. Par exemple, si person (personne)
- Le champ
L'exemple suivant ajoute un utilisateur à un espace avec authentification de l'utilisateur:
Node.js
Python
Java
Apps Script
Pour exécuter l'exemple, remplacez les éléments suivants:
SPACE_NAME
: ID de l'name
de l'espace. Vous pouvez obtenir l'ID en appelant la méthodeListSpaces()
ou à partir de l'URL de l'espace.USER_NAME
: ID utilisateur.
L'API Chat renvoie une instance de Membership
qui détaille l'appartenance de l'utilisateur créée.
Inviter ou ajouter un groupe Google à un espace
Pour inviter ou ajouter un groupe Google à un espace avec authentification utilisateur (l'authentification de l'application n'est pas compatible avec l'invitation ou l'ajout d'un groupe Google à un espace), transmettez les éléments suivants dans votre requête:
- Spécifiez le champ d'application de l'autorisation
chat.memberships
. - Appelez la méthode
CreateMembership()
. - Transmettez
parent
comme nom de ressource de l'espace dans lequel créer l'appartenance. - Transmettez
membership
en tant qu'instance deMembership
, où le champname
degroupMember
est défini surgroups/{group}
, où{group}
est l'ID de groupe pour lequel vous souhaitez créer une appartenance. L'ID du groupe peut être récupéré à l'aide de l'API Cloud Identity.
Vous ne pouvez pas ajouter de groupes Google à un chat de groupe ni à un message privé, mais uniquement à un espace nommé.
L'exemple suivant ajoute un groupe à un espace nommé avec authentification des utilisateurs:
Node.js
Python
Java
Apps Script
Pour exécuter l'exemple, remplacez les éléments suivants:
SPACE_NAME
: ID de l'name
de l'espace. Vous pouvez obtenir l'ID en appelant la méthodeListSpaces()
ou à partir de l'URL de l'espace.GROUP_NAME
: ID de groupe.
L'API Chat renvoie une instance de Membership
qui détaille l'appartenance de l'utilisateur créée.
Ajouter une application Chat à un espace
Une application Chat ne peut pas ajouter une autre application en tant que membre d'un espace. Pour ajouter une application Chat à un espace ou à un message privé entre deux utilisateurs humains, transmettez les éléments suivants dans votre requête avec l'authentification de l'utilisateur (l'authentification des applications ne permet pas d'inviter ni d'ajouter une application Chat à un espace):
- Spécifiez le champ d'application de l'autorisation
chat.memberships.app
. - Appelez la méthode
CreateMembership()
. - Transmettez
parent
comme nom de ressource de l'espace dans lequel créer l'appartenance. - Transmettez
membership
en tant qu'instance deMembership
avec son champmember
défini comme suit :- Le champ
type
défini surBOT
. - Le champ
name
défini surusers/app
, un alias représentant l'application qui appelle l'API Chat.
- Le champ
L'exemple suivant ajoute une application Chat à un espace:
Node.js
Python
Java
Apps Script
Pour exécuter l'exemple, remplacez SPACE_NAME
par l'ID de l'name
de l'espace.
Vous pouvez obtenir l'ID en appelant la méthode ListSpaces()
ou à partir de l'URL de l'espace.
L'API Chat renvoie une instance de Membership
qui détaille l'appartenance de l'utilisateur créée.
Inviter ou ajouter un utilisateur à un espace en tant qu'application Chat
L'authentification des applications nécessite une approbation de l'administrateur unique.
Pour inviter ou ajouter un utilisateur à un espace avec authentification de l'application, transmettez les éléments suivants dans votre requête:
- Spécifiez le champ d'application de l'autorisation
chat.app.memberships
. - Appelez la méthode
create
sur la ressourcemembership
. - Définissez
parent
sur le nom de la ressource de l'espace dans lequel créer l'appartenance. - Définissez
member
surusers/{user}
, où{user}
correspond à la personne pour laquelle vous souhaitez créer un membre et est :- ID de la personne dans l'API People. Par exemple, si person (personne)
resourceName
de l'API People estpeople/123456789
, définissezmembership.member.name
surusers/123456789
. - ID de l'utilisateur dans l'API Directory.
- Adresse e-mail de l'utilisateur. Par exemple,
users/[email protected]
ouusers/[email protected]
. Si l'utilisateur utilise un compte Google ou appartient à une autre organisation Google Workspace, vous devez utiliser son adresse e-mail.
- ID de la personne dans l'API People. Par exemple, si person (personne)
Créer une clé API
Pour appeler une méthode d'API Preview développeur, vous devez utiliser une version Preview développeur non publique du document de découverte de l'API. Pour authentifier la requête, vous devez transmettre une clé API.
Pour créer la clé API, ouvrez le projet Google Cloud de votre application et procédez comme suit:
- Dans la console Google Cloud, accédez à Menu > API et services > Identifiants.
- Cliquez sur Créer des identifiants > Clé API.
- Votre nouvelle clé API s'affiche.
- Cliquez sur Copier pour copier votre clé API et l'utiliser dans le code de votre application. La clé API se trouve également dans la section "Clés API" des identifiants de votre projet.
- Cliquez sur Restreindre la clé pour mettre à jour les paramètres avancés et limiter l'utilisation de votre clé API. Pour en savoir plus, consultez Appliquer des restrictions de clé API.
Écrire un script qui appelle l'API Chat
L'exemple suivant ajoute un utilisateur à un espace avec authentification de l'application:
Python
- Dans votre répertoire de travail, créez un fichier nommé
chat_membership_app_create.py
. Ajoutez le code suivant dans
chat_membership_app_create.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 adds a user to a Chat space by creating a 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, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().members().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Specify which user the membership is for. body = { 'member': { 'name':'users/USER', 'type': 'HUMAN' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
Dans le code, remplacez les éléments suivants:
API_KEY
: clé API que vous avez créée pour créer le point de terminaison de service de l'API Chat.SPACE
: nom d'un espace, que vous pouvez obtenir à partir de la méthodespaces.list
dans l'API Chat ou à partir de l'URL d'un espace.USER
: un ID utilisateur
Dans votre répertoire de travail, créez et exécutez l'exemple:
python3 chat_membership_app_create.py
Ajouter des utilisateurs ou des groupes Google à un espace en tant qu'administrateur Google Workspace
Si vous êtes administrateur Google Workspace, vous pouvez appeler la méthode create()
pour ajouter des utilisateurs, des groupes Google ou des applications Chat à 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 utilisateur et spécifiez un champ d'application de l'autorisation compatible avec l'appel de la méthode à l'aide de droits d'administrateur.
- Dans votre requête, définissez le paramètre de requête
useAdminAccess
surtrue
.
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 inviter ou ajouter des utilisateurs, mais pas les applications Google Groups ou Chat. Pour s'ajouter elle-même, une application Chat doit utiliser l'authentification des utilisateurs avec le champ d'application de l'autorisation
chat.memberships
.
Articles associés
- Obtenez des informations sur l'adhésion d'un utilisateur ou dans l'application Chat.
- Répertoriez les membres d'un espace.
- Modifier l'appartenance d'un utilisateur à un espace Google Chat
- Exclure un utilisateur ou une application Chat d'un espace