Method: spaces.setup

Crée un espace et y ajoute les utilisateurs spécifiés. L'utilisateur appelant est automatiquement ajouté à l'espace et ne doit pas être spécifié en tant que membre dans la requête. Pour obtenir un exemple, consultez Configurer un espace avec des membres initiaux.

Pour spécifier les membres humains à ajouter, ajoutez des membres avec le membership.member.name approprié. Pour ajouter un utilisateur humain, utilisez users/{user}, où {user} peut être l'adresse e-mail de l'utilisateur. Pour les utilisateurs de la même organisation Workspace, {user} peut également être l'id de la personne provenant de l'API People ou l'id de l'utilisateur dans l'API Directory. Par exemple, si l'ID de profil de la personne de l'API People pour user@example.com est 123456789, vous pouvez ajouter l'utilisateur à l'espace en définissant membership.member.name sur users/user@example.com ou users/123456789.

Pour spécifier les groupes Google à ajouter, ajoutez des membres avec le membership.group_member.name approprié. Pour ajouter ou inviter un groupe Google, utilisez groups/{group}, où {group} est le id du groupe provenant de l'API Cloud Identity Groups. Par exemple, vous pouvez utiliser l'API de recherche Cloud Identity Groups pour récupérer l'ID 123456789 pour l'adresse e-mail du groupe group@example.com, puis ajouter le groupe à l'espace en définissant membership.group_member.name sur groups/123456789. L'adresse e-mail du groupe n'est pas acceptée, et les groupes Google ne peuvent être ajoutés qu'en tant que membres dans des espaces nommés.

Pour un espace nommé ou un chat de groupe, si l'appelant bloque certains membres, est bloqué par certains membres ou n'est pas autorisé à ajouter certains membres, ces membres ne sont pas ajoutés à l'espace créé.

Pour créer un message privé (MP) entre l'utilisateur appelant et un autre utilisateur humain, spécifiez exactement un membre pour représenter l'utilisateur humain. Si un utilisateur bloque l'autre, la requête échoue et le message privé n'est pas créé.

Pour créer un MP entre l'utilisateur appelant et l'application appelante, définissez Space.singleUserBotDm sur true et ne spécifiez aucun membre. Vous ne pouvez utiliser cette méthode que pour configurer un MP avec l'application d'appel. Pour ajouter l'application d'appel en tant que membre d'un espace ou d'un MP existant entre deux utilisateurs humains, consultez Inviter ou ajouter un utilisateur ou une application à un espace.

Si un MP existe déjà entre deux utilisateurs, même si l'un d'eux bloque l'autre au moment où une requête est effectuée, le MP existant est renvoyé.

Les espaces avec des réponses organisées en fils de discussion ne sont pas acceptés. Si le message d'erreur ALREADY_EXISTS s'affiche lorsque vous configurez un espace, essayez un autre displayName. Un espace existant au sein de l'organisation Google Workspace peut déjà utiliser ce nom à afficher.

Nécessite l'authentification de l'utilisateur avec l'un des niveaux d'accès des autorisations suivants :

  • https://www.googleapis.com/auth/chat.spaces.create
  • https://www.googleapis.com/auth/chat.spaces

Requête HTTP

POST https://chat.googleapis.com/v1/spaces:setup

L'URL utilise la syntaxe de transcodage gRPC.

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "space": {
    object (Space)
  },
  "requestId": string,
  "memberships": [
    {
      object (Membership)
    }
  ]
}
Champs
space

object (Space)

Obligatoire. Le champ Space.spaceType est obligatoire.

Pour créer un espace, définissez Space.spaceType sur SPACE et définissez Space.displayName. Si le message d'erreur ALREADY_EXISTS s'affiche lorsque vous configurez un espace, essayez un autre displayName. Un espace existant au sein de l'organisation Google Workspace peut déjà utiliser ce nom à afficher.

Pour créer un chat de groupe, définissez Space.spaceType sur GROUP_CHAT. Ne définissez pas Space.displayName.

Pour créer une conversation privée entre des personnes, définissez Space.spaceType sur DIRECT_MESSAGE et Space.singleUserBotDm sur false. Ne définissez pas Space.displayName ni Space.spaceDetails.

Pour créer une conversation privée entre une personne et l'application Chat appelante, définissez Space.spaceType sur DIRECT_MESSAGE et Space.singleUserBotDm sur true. Ne définissez pas Space.displayName ni Space.spaceDetails.

Si un espace DIRECT_MESSAGE existe déjà, il est renvoyé au lieu d'en créer un.

requestId

string

Facultatif. ID unique pour cette requête. Nous vous recommandons d'utiliser un UUID aléatoire. La spécification d'un ID de requête rend la requête idempotente, ce qui garantit que plusieurs requêtes identiques avec le même ID de requête n'entraînent la création que d'un seul espace. Les requêtes suivantes avec le même ID de requête renvoient l'espace existant et ne le mettent pas à jour, même si les détails demandés diffèrent de l'état actuel.

Pour utiliser ce champ efficacement :

  • Assurez-vous que les requêtes suivantes sont identiques et utilisent les mêmes identifiants d'authentification que la requête d'origine.
  • Si un espace a déjà été créé avec l'ID de requête fourni, la requête renvoie cet espace. Notez que l'espace renvoyé peut ne pas être entièrement rempli. L'API fait écho à l'espace de votre requête avec le nom de ressource attribué par le système. Pour récupérer les dernières métadonnées de l'espace, appelez spaces.get.
  • La réutilisation d'un ID de requête existant avec un utilisateur authentifié différent génère une erreur.
memberships[]

object (Membership)

Facultatif. Utilisateurs ou groupes Google Chat à inviter à rejoindre l'espace. Omettez l'utilisateur appelant, car il est ajouté automatiquement.

L'ensemble autorise actuellement jusqu'à 49 membres (en plus de l'appelant).

Pour un membre humain, le Membership.member champ doit contenir un user avec name renseigné (format : users/{user}) et type défini sur User.Type.HUMAN. Vous ne pouvez ajouter des utilisateurs humains que lorsque vous configurez un espace (l'ajout d'applications Chat n'est compatible qu'avec la configuration de messages privés avec l'application appelante). Vous pouvez également ajouter des membres en utilisant l'adresse e-mail de l'utilisateur comme alias pour {user}. Par exemple, le user.name peut être users/example@gmail.com. Pour inviter des utilisateurs Gmail ou des utilisateurs de domaines Google Workspace externes, l'adresse e-mail de l'utilisateur doit être utilisée pour {user}.

Pour l'appartenance à un groupe Google, le champ Membership.group_member doit contenir un group avec name renseigné (format groups/{group}). Vous ne pouvez ajouter des groupes Google que lorsque vous définissez Space.spaceType sur SPACE.

Facultatif lorsque vous définissez Space.spaceType sur SPACE.

Obligatoire lorsque vous définissez Space.spaceType sur GROUP_CHAT, avec au moins deux membres.

Obligatoire lorsque vous définissez Space.spaceType sur DIRECT_MESSAGE avec un utilisateur humain, avec exactement un membre.

Doit être vide lorsque vous créez une conversation privée entre une personne et l'application Chat appelante (lorsque vous définissez Space.spaceType sur DIRECT_MESSAGE et Space.singleUserBotDm sur true).

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient une instance de Space.

Niveaux d'accès des autorisations

Nécessite l'un des champs d'application OAuth suivants :

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.create

Pour en savoir plus, consultez le guide d'autorisation.