Method: spaces.setup

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

Чтобы указать добавляемых членов-людей, добавьте членство с соответствующим member.name в SetUpSpaceRequest . Чтобы добавить пользователя-человека, используйте users/{user} , где {user} — это либо {person_id} для человека из People API, либо id пользователя в Admin SDK Directory API. Например, если resourceName People API Person Name — people/123456789 , вы можете добавить пользователя в пространство, включив членство с users/123456789 в качестве member.name .

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

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

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

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

Пространства с цепочками ответов или гостевым доступом не поддерживаются.

Требуется аутентификация пользователя и область действия chat.spaces.create или chat.spaces .

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 .

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

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

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

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

requestId

string

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

memberships[]

object ( Membership )

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

Набор в настоящее время позволяет до 20 членств (в дополнение к звонящему).

Поле Membership.member должно содержать пользователя с заполненным name и User.Type.HUMAN . Все остальные поля игнорируются.

Необязательно при установке 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

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