REST Resource: spaces

Ressource : Space

Un espace dans Google Chat. Les espaces sont des conversations entre deux utilisateurs ou plus, ou des messages privés entre un utilisateur et une application Chat.

Représentation JSON
{
  "name": string,
  "type": enum (Type),
  "spaceType": enum (SpaceType),
  "singleUserBotDm": boolean,
  "threaded": boolean,
  "displayName": string,
  "externalUserAllowed": boolean,
  "spaceThreadingState": enum (SpaceThreadingState),
  "spaceDetails": {
    object (SpaceDetails)
  },
  "spaceHistoryState": enum (HistoryState),
  "importMode": boolean,
  "createTime": string,
  "lastActiveTime": string,
  "adminInstalled": boolean,
  "membershipCount": {
    object (MembershipCount)
  },
  "accessSettings": {
    object (AccessSettings)
  },
  "spaceUri": string,
  "sessionState": enum (SpaceSessionState),
  "sessionEnableTime": string,
  "importModeExpireTime": string,
  "customer": string,

  "predefinedPermissionSettings": enum (PredefinedPermissionSettings),
  "permissionSettings": {
    object (PermissionSettings)
  }
}
Champs
name

string

Identifiant. Nom de ressource de l'espace.

Format : spaces/{space}

où {space} représente l'ID attribué par le système pour l'espace. Vous pouvez obtenir l'ID de l'espace en appelant la méthode spaces.list() ou à partir de l'URL de l'espace. Par exemple, si l'URL de l'espace est https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA, l'ID de l'espace est AAAAAAAAA.

type
(deprecated)

enum (Type)

Uniquement en sortie. Obsolète : utilisez spaceType à la place. Type d'un espace.

spaceType

enum (SpaceType)

Facultatif. Type d'espace. Obligatoire lors de la création d'un espace ou de la modification du type d'un espace. Uniquement en sortie pour d'autres utilisations.

singleUserBotDm

boolean

Facultatif. Indique si l'espace est un message privé entre une application Chat et un seul utilisateur.

threaded
(deprecated)

boolean

Uniquement en sortie. Obsolète : utilisez spaceThreadingState à la place. Indique si les messages sont organisés en fils de discussion dans cet espace.

displayName

string

Facultatif. Nom à afficher de l'espace. Obligatoire lorsque vous créez un espace avec un spaceType de SPACE. Si le message d'erreur ALREADY_EXISTS s'affiche lorsque vous créez un espace ou que vous modifiez le displayName, essayez un autre displayName. Un espace existant dans l'organisation Google Workspace utilise peut-être déjà ce nom à afficher.

Pour les messages privés, ce champ peut être vide.

Peut contenir jusqu'à 128 caractères.

externalUserAllowed

boolean

Facultatif. Immuable. Indique si cet espace autorise n'importe quel utilisateur de Google Chat en tant que membre. Saisie lors de la création d'un espace dans une organisation Google Workspace. Omettez ce champ lorsque vous créez des espaces dans les conditions suivantes :

  • L'utilisateur authentifié utilise un compte personnel (compte utilisateur non géré). Par défaut, un espace créé par un compte personnel autorise tous les utilisateurs de Google Chat.

Pour les espaces existants, ce champ est en sortie uniquement.

spaceThreadingState

enum (SpaceThreadingState)

Uniquement en sortie. État des fils de discussion dans l'espace Chat.

spaceDetails

object (SpaceDetails)

Facultatif. Détails sur l'espace, y compris sa description et ses règles.

spaceHistoryState

enum (HistoryState)

Facultatif. État de l'historique des messages pour les messages et les fils de discussion de cet espace.

importMode

boolean

Facultatif. Indique si cet espace est créé dans Import Mode dans le cadre d'une migration de données vers Google Workspace. Pendant l'importation des espaces, les utilisateurs ne peuvent pas les voir tant qu'elle n'est pas terminée.

La création d'un espace dans Import Mode nécessite l'authentification de l'utilisateur.

createTime

string (Timestamp format)

Facultatif. Immuable. Pour les espaces créés dans Chat, date et heure de création de l'espace. Ce champ est réservé à la sortie, sauf s'il est utilisé dans des espaces en mode importation.

Pour les espaces en mode d'importation, définissez ce champ sur le code temporel historique auquel l'espace a été créé dans la source afin de conserver l'heure de création d'origine.

Renseigné dans la sortie uniquement lorsque spaceType est défini sur GROUP_CHAT ou SPACE.

lastActiveTime

string (Timestamp format)

Uniquement en sortie. Code temporel du dernier message de l'espace.

adminInstalled

boolean

Uniquement en sortie. Pour les espaces de messages privés (MP) avec une application Chat, si l'espace a été créé par un administrateur Google Workspace. Les administrateurs peuvent installer et configurer un message privé avec une application Chat au nom des utilisateurs de leur organisation.

Pour permettre l'installation par l'administrateur, votre application Chat doit proposer la messagerie privée.

membershipCount

object (MembershipCount)

Uniquement en sortie. Nombre d'abonnements rejoints, regroupés par type de membre. Renseigné lorsque spaceType est SPACE, DIRECT_MESSAGE ou GROUP_CHAT.

accessSettings

object (AccessSettings)

Facultatif. Spécifie le paramètre d'accès de l'espace. N'est renseigné que lorsque spaceType est défini sur SPACE.

spaceUri

string

Uniquement en sortie. URI permettant à un utilisateur d'accéder à l'espace.

sessionState

enum (SpaceSessionState)

Uniquement en sortie. État de la session de l'espace.

sessionEnableTime

string (Timestamp format)

Uniquement en sortie. Code temporel auquel l'état de compatibilité de la session de l'espace devient compatible. Non défini si la compatibilité avec les sessions n'est pas activée pour l'espace.

importModeExpireTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle l'espace sera automatiquement supprimé par le système s'il reste en mode importation.

Chaque espace créé en mode importation doit quitter ce mode avant l'expiration de ce délai à l'aide de spaces.completeImport.

Ce champ n'est renseigné que pour les espaces créés en mode importation.

customer

string

Facultatif. Immuable. Numéro client du domaine de l'espace. Obligatoire uniquement lors de la création d'un espace avec l'authentification de l'application et si SpaceType est défini sur SPACE. Sinon, ne doit pas être défini.

Au format customers/{customer}, où customer est l'élément id de la ressource client du SDK Admin. Les applications privées peuvent également utiliser l'alias customers/my_customer pour créer l'espace dans la même organisation Google Workspace que l'application.

Ce champ n'est pas renseigné pour les messages privés (MP) ni lorsque l'espace est créé par des utilisateurs non Google Workspace.

Représente les paramètres d'autorisation d'un espace. N'est renseigné que lorsque space_type est défini sur SPACE. Voici une liste de champs mutuellement exclusifs. Au maximum, un des champs sera défini dans une réponse :
predefinedPermissionSettings

enum (PredefinedPermissionSettings)

Facultatif. Uniquement en entrée. Paramètres d'autorisation d'espace prédéfinis, à saisir uniquement lors de la création d'un espace. Si le champ n'est pas défini, un espace de collaboration est créé. Une fois l'espace créé, les paramètres sont renseignés dans le champ PermissionSettings.

La définition de paramètres d'autorisation prédéfinis est compatible avec les éléments suivants :

permissionSettings

object (PermissionSettings)

Facultatif. Paramètres d'autorisation des espaces existants. Entrée permettant de modifier les paramètres d'autorisation exacts de l'espace, où les paramètres d'autorisation existants sont remplacés. La sortie liste les paramètres d'autorisation actuels.

La lecture et la modification des paramètres d'autorisation sont compatibles avec les éléments suivants :

Fin des champs mutuellement exclusifs.

Type

Obsolète : utilisez SpaceType à la place.

Enums
TYPE_UNSPECIFIED Réservé.
ROOM Conversations entre deux humains ou plus.
DM Message privé entre un humain et une application Chat, où tous les messages sont plats. Notez que cela n'inclut pas les messages privés entre deux personnes.

SpaceType

Type d'espace. Obligatoire lors de la création ou de la mise à jour d'un espace. Uniquement en sortie pour d'autres utilisations.

Enums
SPACE_TYPE_UNSPECIFIED Réservé.
SPACE Un espace où les utilisateurs peuvent envoyer des messages, partager des fichiers et collaborer. Un SPACE peut inclure des applications Chat.
GROUP_CHAT Conversations de groupe entre trois personnes ou plus. Un GROUP_CHAT peut inclure des applications Chat.
DIRECT_MESSAGE Messages privés entre deux personnes ou entre une personne et une application Chat.

SpaceThreadingState

Spécifie le type d'état des fils de discussion dans l'espace Chat.

Enums
SPACE_THREADING_STATE_UNSPECIFIED Réservé.
THREADED_MESSAGES Espaces compatibles avec les fils de discussion. Lorsqu'un utilisateur répond à un message, il peut le faire dans le fil de discussion, ce qui permet de conserver le contexte du message d'origine.
GROUPED_MESSAGES Espaces nommés dans lesquels la conversation est organisée par sujet. Les sujets et leurs réponses sont regroupés.
UNTHREADED_MESSAGES

Espaces qui ne sont pas compatibles avec les fils de discussion. Cet état de fil de discussion n'est utilisé que dans des cas particuliers, par exemple :

  • Chat de réunion continu où les fils de discussion sont intentionnellement désactivés.
  • Conversations de groupe anciennes créées avant 2022.

SpaceDetails

Détails sur l'espace, y compris sa description et ses règles.

Représentation JSON
{
  "description": string,
  "guidelines": string
}
Champs
description

string

Facultatif. Description de l'espace. Par exemple, décrivez le sujet de discussion, l'objectif fonctionnel ou les participants de l'espace.

Peut contenir jusqu'à 4 096 caractères.

guidelines

string

Facultatif. Les règles, les attentes et les usages de l'espace.

5 000 caractères maximum.

HistoryState

État de l'historique des messages et des espaces. Spécifie la durée de conservation des messages et des fils de conversation après leur création.

Enums
HISTORY_STATE_UNSPECIFIED Valeur par défaut. Ne pas utiliser.
HISTORY_OFF Historique désactivé. Les messages et les fils de discussion sont conservés pendant 24 heures.
HISTORY_ON Historique activé. Les règles de conservation de Vault de l'organisation spécifient la durée de conservation des messages et des fils de discussion.

MembershipCount

Représente le nombre de membres d'un espace, regroupés par catégories.

Représentation JSON
{
  "joinedDirectHumanUserCount": integer,
  "joinedGroupCount": integer
}
Champs
joinedDirectHumanUserCount

integer

Uniquement en sortie. Nombre d'utilisateurs humains ayant rejoint directement l'espace, sans compter les utilisateurs ayant rejoint l'espace en tant que membres d'un groupe.

joinedGroupCount

integer

Uniquement en sortie. Nombre de tous les groupes qui ont rejoint directement l'espace.

AccessSettings

Représente le paramètre d'accès de l'espace.

Représentation JSON
{
  "accessState": enum (AccessState),
  "audience": string,
  "accessPermissionSettings": {
    object (AccessPermissionSettings)
  }
}
Champs
accessState

enum (AccessState)

Uniquement en sortie. Indique l'état d'accès de l'espace.

audience

string

Facultatif. Nom de ressource de l'audience cible qui peut découvrir l'espace, le rejoindre et prévisualiser les messages qu'il contient. Si cette option n'est pas définie, seuls les utilisateurs ou les groupes Google qui ont été invités ou ajoutés individuellement à l'espace peuvent y accéder. Pour en savoir plus, consultez Rendre un espace visible par une audience cible.

Format : audiences/{audience}

Pour utiliser l'audience cible par défaut de l'organisation Google Workspace, définissez la valeur sur audiences/default.

Lecture des supports de l'audience cible :

Ce champ n'est pas renseigné lorsque vous utilisez le champ d'application chat.bot avec l'authentification de l'application.

La définition de l'audience cible nécessite l'authentification de l'utilisateur.

accessPermissionSettings

object (AccessPermissionSettings)

Facultatif. Accédez aux paramètres d'autorisation de l'espace.

Pour définir l'audience cible lors de la création d'un espace, spécifiez le champ accessSettings.audience dans votre requête.

AccessState

Représente l'état d'accès de l'espace.

Enums
ACCESS_STATE_UNSPECIFIED L'état d'accès est inconnu ou n'est pas pris en charge dans cette API.
PRIVATE Seuls les utilisateurs ou les groupes Google qui ont été ajoutés ou invités individuellement par d'autres utilisateurs ou par des administrateurs Google Workspace peuvent découvrir l'espace et y accéder.
DISCOVERABLE

Un gestionnaire de l'espace a accordé l'accès à l'espace à une audience cible. Les utilisateurs ou les groupes Google qui ont été ajoutés ou invités individuellement à l'espace peuvent également le trouver et y accéder. Pour en savoir plus, consultez Rendre un espace visible pour des utilisateurs spécifiques.

La création d'espaces visibles nécessite l'authentification de l'utilisateur.

AccessPermissionSettings

accéder aux paramètres d'autorisation d'un espace ;

Représentation JSON
{
  "discoverSpaceSetting": {
    object (AccessPermissionSetting)
  },
  "joinSpaceSetting": {
    object (AccessPermissionSetting)
  },
  "viewSpaceMembershipSetting": {
    object (AccessPermissionSetting)
  }
}
Champs
discoverSpaceSetting

object (AccessPermissionSetting)

Facultatif. Paramètre d'autorisation d'accès pour découvrir l'espace.

joinSpaceSetting

object (AccessPermissionSetting)

Facultatif. Paramètre d'autorisation d'accès pour rejoindre l'espace.

viewSpaceMembershipSetting

object (AccessPermissionSetting)

Facultatif. Paramètre d'autorisation d'accès pour afficher les membres d'un espace. Doit être spécifié avec PermissionSettings.view_space_membership dans le masque de mise à jour et le corps de la requête lorsque vous modifiez qui peut voir les membres de l'espace. Lorsque vous accordez un accès en lecture à une audience cible, vous devez également accorder PermissionSettings.view_space_membership à tous les membres dans la même requête. Pour supprimer une audience cible existante (par exemple, pour limiter l'accès en lecture aux gestionnaires ou gestionnaires adjoints de l'espace uniquement), spécifiez un AccessPermissionSetting vide (sans principals).

AccessPermissionSetting

Un paramètre d'autorisation d'accès.

Représentation JSON
{
  "principals": [
    {
      object (Principal)
    }
  ]
}
Champs
principals[]

object (Principal)

Facultatif. Liste à puces. Comptes principaux autorisés pour cette autorisation.

Principal

Compte principal représentant une entité autorisée à accéder à la ressource.

Représentation JSON
{

  "audience": {
    object (Audience)
  }
}
Champs
Type de compte principal. Voici une liste de champs mutuellement exclusifs. Au maximum, un des champs sera défini dans une réponse :
audience

object (Audience)

Une audience.

Fin des champs mutuellement exclusifs.

Audience

Une audience cible dans Google Chat. Une audience cible représente un groupe d'utilisateurs au sein d'une organisation Google Workspace, défini par un administrateur. Les audiences cibles permettent de configurer les paramètres d'accès et de visibilité des ressources, par exemple pour rendre un espace visible par un groupe d'utilisateurs spécifique.

Pour en savoir plus, consultez Audiences cibles et Rendre un espace visible pour une audience cible.

Représentation JSON
{
  "name": string
}
Champs
name

string

Nom de ressource de l'audience cible qui peut découvrir ou rejoindre l'espace. Pour en savoir plus, consultez Rendre un espace visible par une audience cible. Format : audiences/{audience}

Pour utiliser l'audience cible par défaut de l'organisation Google Workspace, définissez la valeur sur audiences/default.

PredefinedPermissionSettings

Paramètres d'autorisation prédéfinis que vous ne pouvez spécifier que lors de la création d'un espace nommé. D'autres paramètres pourraient être ajoutés à l'avenir. Pour en savoir plus sur les paramètres d'autorisation des espaces nommés, consultez En savoir plus sur les espaces.

Enums
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED Non spécifié. À ne pas utiliser.
COLLABORATION_SPACE Paramètre permettant de transformer l'espace en espace de collaboration où tous les membres peuvent publier des messages.
ANNOUNCEMENT_SPACE Paramètre permettant de transformer l'espace en espace d'annonce où seuls les gestionnaires de l'espace peuvent publier des messages.

PermissionSettings

Paramètres d'autorisation que vous pouvez spécifier lors de la mise à jour d'un espace nommé existant.

Pour définir les paramètres d'autorisation lors de la création d'un espace, spécifiez le champ PredefinedPermissionSettings dans votre requête.

Représentation JSON
{
  "manageMembersAndGroups": {
    object (PermissionSetting)
  },
  "modifySpaceDetails": {
    object (PermissionSetting)
  },
  "toggleHistory": {
    object (PermissionSetting)
  },
  "useAtMentionAll": {
    object (PermissionSetting)
  },
  "manageApps": {
    object (PermissionSetting)
  },
  "manageWebhooks": {
    object (PermissionSetting)
  },
  "postMessages": {
    object (PermissionSetting)
  },
  "replyMessages": {
    object (PermissionSetting)
  },
  "viewSpaceMembership": {
    object (PermissionSetting)
  }
}
Champs
manageMembersAndGroups

object (PermissionSetting)

Facultatif. Paramètre permettant de gérer les membres et les groupes d'un espace.

modifySpaceDetails

object (PermissionSetting)

Facultatif. Paramètre permettant de modifier le nom, l'avatar, la description et les consignes d'un espace.

toggleHistory

object (PermissionSetting)

Facultatif. Paramètre permettant d'activer ou de désactiver l'historique des espaces.

useAtMentionAll

object (PermissionSetting)

Facultatif. Paramètre permettant d'utiliser @tous dans un espace.

manageApps

object (PermissionSetting)

Facultatif. Paramètre permettant de gérer les applications dans un espace.

manageWebhooks

object (PermissionSetting)

Facultatif. Paramètre permettant de gérer les webhooks dans un espace.

postMessages

object (PermissionSetting)

Uniquement en sortie. Paramètre permettant de publier des messages dans un espace.

replyMessages

object (PermissionSetting)

Facultatif. Paramètre permettant de répondre aux messages dans un espace.

viewSpaceMembership

object (PermissionSetting)

Facultatif. Paramètre permettant d'afficher les membres d'un espace. Doit être spécifié avec AccessPermissionSettings.view_space_membership_setting dans le masque de mise à jour et le corps de la requête lorsque vous modifiez qui peut voir les membres de l'espace. Lorsque vous limitez l'accès en lecture à des rôles spécifiques (par exemple, gestionnaires d'espace ou gestionnaires adjoints uniquement), spécifiez ici les autorisations de rôle souhaitées et fournissez un AccessPermissionSettings.view_space_membership_setting vide dans la même requête. Si une audience cible est configurée dans AccessPermissionSettings.view_space_membership_setting, ce paramètre doit être accordé à tous les membres.

PermissionSetting

Représente un paramètre d'autorisation d'espace.

Représentation JSON
{
  "managersAllowed": boolean,
  "membersAllowed": boolean,
  "assistantManagersAllowed": boolean
}
Champs
managersAllowed

boolean

Facultatif. Indique si les propriétaires d'espaces (ROLE_MANAGER) disposent de cette autorisation.

membersAllowed

boolean

Facultatif. Indique si les membres de l'espace de base (ROLE_MEMBER) disposent de cette autorisation.

assistantManagersAllowed

boolean

Facultatif. Indique si les gestionnaires d'espace (ROLE_ASSISTANT_MANAGER) disposent de cette autorisation.

SpaceSessionState

État de la session de l'espace.

Enums
SPACE_SESSION_STATE_UNSPECIFIED Non spécifié. À ne pas utiliser.
NOT_SUPPORTED L'espace n'est pas compatible avec les sessions.
THREAD L'espace est compatible avec les sessions basées sur les fils de discussion.

Méthodes

completeImport

Termine le processus d'importation pour l'espace spécifié et le rend visible par les utilisateurs.

create

Crée un espace.

delete

Supprime un espace nommé.

findDirectMessage

Renvoie le message privé existant avec l'utilisateur spécifié.

findGroupChats

Renvoie tous les espaces avec spaceType == GROUP_CHAT, dont les membres humains contiennent exactement l'utilisateur appelant et les utilisateurs spécifiés dans FindGroupChatsRequest.users.

get

Renvoie des informations sur un espace.

list

Répertorie les espaces dont l'appelant est membre.

patch

Met à jour un espace.
Renvoie la liste des espaces d'une organisation Google Workspace.

setup

Crée un espace et y ajoute les utilisateurs spécifiés.