REST Resource: spaces

Ресурс: Космос

Место в Google Chat. Пространства — это разговоры между двумя или более пользователями или сообщения один на один между пользователем и приложением чата.

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,
  "customer": string,

  // Union field space_permission_settings can be only one of the following:
  "predefinedPermissionSettings": enum (PredefinedPermissionSettings),
  "permissionSettings": {
    object (PermissionSettings)
  }
  // End of list of possible types for union field space_permission_settings.
}
Поля
name

string

Имя ресурса пространства.

Формат: spaces/{space}

Где {space} представляет собой назначенный системой идентификатор пространства. Вы можете получить идентификатор пространства, вызвав метод spaces.list() или по URL-адресу пространства. Например, если URL-адрес темы — https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA , идентификатор темы — AAAAAAAAA .

type
(deprecated)

enum ( Type )

Только вывод. Устарело: вместо этого используйте spaceType . Тип помещения.

spaceType

enum ( SpaceType )

Тип помещения. Требуется при создании пространства или обновлении типа пространства. Вывод только для другого использования.

singleUserBotDm

boolean

Необязательный. Является ли пространство личным сообщением между приложением чата и одним человеком.

threaded
(deprecated)

boolean

Только вывод. Устарело: вместо этого используйте spaceThreadingState . Размещаются ли сообщения в этом пространстве.

displayName

string

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

Для прямых сообщений это поле может быть пустым.

Поддерживает до 128 символов.

externalUserAllowed

boolean

Неизменяемый. Разрешается ли в этом пространстве любому пользователю Google Chat быть участником. Ввод при создании пространства в организации Google Workspace. Пропустите это поле при создании пространств в следующих условиях:

  • Аутентифицированный пользователь использует учетную запись потребителя (неуправляемую учетную запись пользователя). По умолчанию пространство, созданное потребительской учетной записью, разрешено любому пользователю Google Chat.

Для существующих пространств это поле предназначено только для вывода.

spaceThreadingState

enum ( SpaceThreadingState )

Только вывод. Состояние потока в пространстве чата.

spaceDetails

object ( SpaceDetails )

Подробная информация о пространстве, включая описание и правила.

spaceHistoryState

enum ( HistoryState )

Состояние истории сообщений и потоков в этом пространстве.

importMode

boolean

Необязательный. Создано ли это пространство в Import Mode в рамках переноса данных в Google Workspace. Во время импорта пространств они не видны пользователям до завершения импорта.

Создание пространства в Import Mode требует аутентификации пользователя .

createTime

string ( Timestamp format)

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

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

Заполняется в выходных данных только в том случае, если spaceType имеет значение GROUP_CHAT или SPACE .

lastActiveTime

string ( Timestamp format)

Только вывод. Временная метка последнего сообщения в пространстве.

adminInstalled

boolean

Только вывод. Для пространств прямого обмена сообщениями (DM) с приложением Chat: было ли пространство создано администратором Google Workspace. Администраторы могут установить и настроить прямое сообщение с помощью приложения Chat от имени пользователей в своей организации.

Чтобы поддерживать установку администратора, ваше приложение Chat должно поддерживать прямой обмен сообщениями.

membershipCount

object ( MembershipCount )

Только вывод. Количество присоединившихся участников, сгруппированных по типу участников. Заполняется, когда spaceType имеет значение SPACE , DIRECT_MESSAGE или GROUP_CHAT .

accessSettings

object ( AccessSettings )

Необязательный. Указывает настройки доступа к пространству. Заполняется только в том случае, если spaceType равен SPACE .

spaceUri

string

Только вывод. URI для доступа пользователя к пространству.

customer

string

Необязательный. Неизменяемый. Идентификатор клиента домена пространства. Требуется только при создании пространства с аутентификацией приложения и SpaceTypeSPACE , в противном случае его не следует задавать.

В формате customers/{customer} , где customer — это id из [ресурс клиента Admin SDK]( https://developers.google.com/admin-sdk/directory/reference/rest/v1/customers) . Частные приложения также могут использовать псевдоним customers/my_customer для создания пространства в той же организации Google Workspace, что и приложение.

Для личных сообщений это поле не заполняется.

Поле объединения space_permission_settings . Представляет настройки разрешений пространства. Заполняется только в том случае, если space_type равен SPACE .

Требует аутентификации пользователя . space_permission_settings может быть только одним из следующих:

predefinedPermissionSettings

enum ( PredefinedPermissionSettings )

Необязательный. Только ввод. Предопределенные настройки разрешений пространства, вводимые только при создании пространства. Если поле не задано, создается пространство для совместной работы. После создания пространства параметры заполняются в поле PermissionSettings .

permissionSettings

object ( PermissionSettings )

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

Тип

Устарело: вместо этого используйте SpaceType .

Перечисления
TYPE_UNSPECIFIED Сдержанный.
ROOM Разговоры между двумя и более людьми.
DM 1:1 Прямое сообщение между человеком и приложением чата, где все сообщения однородны. Обратите внимание, что сюда не входят прямые сообщения между двумя людьми.

Тип пространства

Тип помещения. Требуется при создании или обновлении пространства. Вывод только для другого использования.

Перечисления
SPACE_TYPE_UNSPECIFIED Сдержанный.
SPACE Место, где люди отправляют сообщения, обмениваются файлами и сотрудничают. SPACE может включать в себя приложения чата.
GROUP_CHAT Групповые беседы между 3 и более людьми. GROUP_CHAT может включать приложения чата.
DIRECT_MESSAGE Сообщения 1:1 между двумя людьми или человеком и приложением чата.

SpaceThreadingState

Указывает тип состояния потока в пространстве чата.

Перечисления
SPACE_THREADING_STATE_UNSPECIFIED Сдержанный.
THREADED_MESSAGES Именованные пространства, поддерживающие потоки сообщений. Когда пользователи отвечают на сообщение, они могут ответить в цепочке, что сохраняет их ответ в контексте исходного сообщения.
GROUPED_MESSAGES Именованные пространства, где беседа организована по темам. Темы и ответы на них сгруппированы вместе.
UNTHREADED_MESSAGES Прямые сообщения (DM) между двумя людьми и групповые беседы между 3 или более людьми.

ПространствоДетали

Подробная информация о пространстве, включая описание и правила.

JSON-представление
{
  "description": string,
  "guidelines": string
}
Поля
description

string

Необязательный. Описание помещения. Например, опишите тему обсуждения, функциональное назначение или участников пространства.

Поддерживает до 150 символов.

guidelines

string

Необязательный. Правила, ожидания и этикет этого места.

Поддерживает до 5000 символов.

Состояние истории

Состояние истории сообщений и пространств. Указывает, как долго сообщения и цепочки разговоров хранятся после создания.

Перечисления
HISTORY_STATE_UNSPECIFIED Значение по умолчанию. Не используйте.
HISTORY_OFF История отключена. Сообщения и темы хранятся 24 часа .
HISTORY_ON История включена. Правила хранения Сейфа организации определяют, как долго хранятся сообщения и цепочки.

ЧленствоКаунт

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

JSON-представление
{
  "joinedDirectHumanUserCount": integer,
  "joinedGroupCount": integer
}
Поля
joinedDirectHumanUserCount

integer

Количество пользователей-людей, которые напрямую присоединились к пространству, не считая пользователей, присоединившихся путем членства в присоединенной группе.

joinedGroupCount

integer

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

Доступ к настройкам

Представляет настройки доступа к пространству.

JSON-представление
{
  "accessState": enum (AccessState),
  "audience": string
}
Поля
accessState

enum ( AccessState )

Только вывод. Указывает состояние доступа к пространству.

audience

string

Необязательный. Имя ресурса целевой аудитории , которая может обнаружить пространство, присоединиться к нему и просмотреть сообщения в пространстве. Если этот параметр не установлен, доступ к нему смогут получить только пользователи или группы Google, которые были индивидуально приглашены или добавлены в пространство. Подробности см. в разделе «Как сделать пространство доступным для просмотра целевой аудиторией» .

Формат: audiences/{audience}

Чтобы использовать целевую аудиторию по умолчанию для организации Google Workspace, установите значение audiences/default .

Чтение целевой аудитории поддерживает:

Это поле не заполняется при использовании области chat.bot с аутентификацией приложения .

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

Аксессстате

Представляет состояние доступа к пространству.

Перечисления
ACCESS_STATE_UNSPECIFIED Состояние доступа неизвестно или не поддерживается в этом API.
PRIVATE Только пользователи или группы Google, которые были индивидуально добавлены или приглашены другими пользователями или администраторами Google Workspace, могут находить это пространство и получать к нему доступ.
DISCOVERABLE

Менеджер пространства предоставил целевой аудитории доступ к пространству. Пользователи или группы Google, которые были индивидуально добавлены или приглашены в пространство, также могут находить его и получать к нему доступ. Дополнительные сведения см. в разделе Как сделать пространство доступным для просмотра определенным пользователям .

Создание обнаруживаемых пространств требует аутентификации пользователя .

Предопределенные параметры разрешений

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

Перечисления
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED Не указано. Не используйте.
COLLABORATION_SPACE Настройка, позволяющая сделать это пространство пространством для совместной работы, где все участники могут публиковать сообщения.
ANNOUNCEMENT_SPACE Настройка, позволяющая сделать пространство пространством объявлений, где только менеджеры пространства могут публиковать сообщения.

Настройки разрешений

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

Чтобы задать настройки разрешений при создании пространства, укажите в запросе поле PredefinedPermissionSettings .

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)
  }
}
Поля
manageMembersAndGroups

object ( PermissionSetting )

Настройка управления участниками и группами в пространстве.

modifySpaceDetails

object ( PermissionSetting )

Настройка обновления названия пространства, аватара, описания и рекомендаций.

toggleHistory

object ( PermissionSetting )

Настройка включения и выключения истории пространства.

useAtMentionAll

object ( PermissionSetting )

Настройка использования @all в пространстве.

manageApps

object ( PermissionSetting )

Настройка управления приложениями в пространстве.

manageWebhooks

object ( PermissionSetting )

Настройка управления веб-перехватчиками в пространстве.

postMessages

object ( PermissionSetting )

Только вывод. Настройка публикации сообщений в пространстве.

replyMessages

object ( PermissionSetting )

Настройка ответа на сообщения в пространстве.

Настройка разрешений

Представляет параметр разрешения пространства.

JSON-представление
{
  "managersAllowed": boolean,
  "membersAllowed": boolean
}
Поля
managersAllowed

boolean

Есть ли у менеджеров пространств это разрешение.

membersAllowed

boolean

Имеют ли участники, не являющиеся менеджерами, это разрешение.

Методы

completeImport

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

create

Создает пространство без участников.

delete

Удаляет именованное пространство.

findDirectMessage

Возвращает существующее прямое сообщение указанному пользователю.

get

Возвращает подробную информацию о пространстве.

list

Перечисляет пространства, членом которых является вызывающий абонент.

patch

Обновляет пространство.
Возвращает список пространств в организации Google Workspace на основе поиска администратора.

setup

Создает пространство и добавляет в него указанных пользователей.