Method: spaces.setup

Создает пространство и добавляет в него указанных пользователей. Вызывающий пользователь автоматически добавляется в пространство и не должен указываться как член в запросе. Пример см. в разделе «Настройка пространства с первоначальными участниками» .

Чтобы указать добавляемых участников-людей, добавьте членство с соответствующим membership.member.name . Чтобы добавить пользователя-человека, используйте users/{user} , где {user} может быть адресом электронной почты пользователя. Для пользователей в одной организации Workspace {user} также может быть id человека из API People или id пользователя в API каталога. Например, если идентификатор профиля пользователя People API для user@example.com123456789 , вы можете добавить пользователя в пространство, задав для membership.member.name users/user@example.com илиusers users/123456789 .

Чтобы указать группы Google для добавления, добавьте членство с соответствующим membership.group_member.name . Чтобы добавить или пригласить группу Google, используйте groups/{group} , где {group} — это id группы из Cloud Identity Groups API. Например, вы можете использовать API поиска групп Cloud Identity для получения идентификатора 123456789 для адреса электронной почты группы group@example.com , а затем добавить группу в пространство, задав для membership.group_member.name значение groups/123456789 . Групповая электронная почта не поддерживается, а группы Google можно добавлять только в качестве участников в именованных пространствах.

Если для именованного пространства или группового чата вызывающий абонент блокируется или заблокирован некоторыми участниками или не имеет разрешения на добавление некоторых участников, то эти участники не добавляются в созданное пространство.

Чтобы создать прямое сообщение (DM) между вызывающим пользователем и другим пользователем-человеком, укажите ровно одно членство, которое будет представлять пользователя-человека. Если один пользователь блокирует другого, запрос не выполняется и DM не создается.

Чтобы создать DM между вызывающим пользователем и вызывающим приложением, установите для Space.singleUserBotDm значение true и не указывайте членство. Вы можете использовать этот метод только для настройки DM с вызывающим приложением. Чтобы добавить вызывающее приложение в качестве участника пространства или существующего DM между двумя пользователями-людьми, см. Приглашение или добавление пользователя или приложения в пространство .

Если DM уже существует между двумя пользователями, даже если один пользователь блокирует другого во время запроса, тогда возвращается существующая DM.

Темы с цепочками ответов не поддерживаются. Если при настройке пространства вы получаете сообщение об ошибке ALREADY_EXISTS , попробуйте другое displayName . Возможно, это отображаемое имя уже используется в существующем пространстве в организации Google Workspace.

Требует аутентификации пользователя .

HTTP-запрос

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

URL-адрес использует синтаксис транскодирования gRPC .

Тело запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "space": {
    object (Space)
  },
  "requestId": string,
  "memberships": [
    {
      object (Membership)
    }
  ]
}
Поля
space

object ( Space )

Необходимый. Поле Space.spaceType является обязательным.

Чтобы создать пространство, установите для Space.spaceType значение SPACE и установите Space.displayName . Если при настройке пространства вы получаете сообщение об ошибке ALREADY_EXISTS , попробуйте другое displayName . Возможно, это отображаемое имя уже используется в существующем пространстве в организации Google Workspace.

Чтобы создать групповой чат, установите для Space.spaceType значение GROUP_CHAT . Не устанавливайте Space.displayName .

Чтобы создать диалог 1:1 между людьми, установите для Space.spaceType значение DIRECT_MESSAGE и установите для Space.singleUserBotDm значение false . Не устанавливайте Space.displayName или Space.spaceDetails .

Чтобы создать разговор 1:1 между человеком и вызывающим приложением чата, установите для Space.spaceType значение DIRECT_MESSAGE и Space.singleUserBotDm значение true . Не устанавливайте Space.displayName или Space.spaceDetails .

Если пространство DIRECT_MESSAGE уже существует, оно возвращается вместо создания нового пространства.

request Id

string

Необязательный. Уникальный идентификатор этого запроса. Рекомендуется использовать случайный UUID. Указание существующего идентификатора запроса возвращает пространство, созданное с этим идентификатором, вместо создания нового пространства. Указание существующего идентификатора запроса из того же приложения чата с другим пользователем, прошедшим проверку подлинности, возвращает ошибку.

memberships[]

object ( Membership )

Необязательный. Пользователи или группы Google Chat, которых можно пригласить присоединиться к группе. Опустите вызывающего пользователя, поскольку он добавляется автоматически.

В настоящее время набор допускает до 49 участников (помимо вызывающего абонента).

Для человеческого членства поле Membership.member должно содержать user с заполненным name (формат: users/{user} ) и type установленным на User.Type.HUMAN . Вы можете добавлять пользователей только при настройке пространства (добавление приложений чата поддерживается только для настройки прямого сообщения с помощью вызывающего приложения). Вы также можете добавлять участников, используя адрес электронной почты пользователя в качестве псевдонима для {user}. Например, user.name может быть users/example@gmail.com . Чтобы пригласить пользователей Gmail или пользователей из внешних доменов Google Workspace, для {user} необходимо использовать адрес электронной почты пользователя.

Для членства в группах Google поле Membership.group_member должно содержать group с заполненным name (формат groups/{group} ). Вы можете добавлять группы Google только при установке для Space.spaceType значения SPACE .

Необязательно, если для Space.spaceType задано значение SPACE .

Требуется при установке для Space.spaceType GROUP_CHAT вместе с как минимум двумя членствами.

Требуется при установке для Space.spaceType значения DIRECT_MESSAGE с пользователем-человеком вместе с ровно одним членом.

Должно быть пустым при создании разговора 1:1 между человеком и вызывающим приложением чата (при установке для Space.spaceType значения DIRECT_MESSAGE и Space.singleUserBotDm в значение true ).

Тело ответа

В случае успеха тело ответа содержит экземпляр Space .

Области авторизации

Требуется одна из следующих областей OAuth:

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

Дополнительную информацию см. в руководстве по авторизации .