REST Resource: spaces

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

Пространство в Google Chat. Пространства — это беседы между двумя или более пользователями или сообщения 1:1 между пользователем и приложением 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,
  "importModeExpireTime": 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 . Если при создании пространства или обновлении displayName возникает сообщение об ошибке ALREADY_EXISTS , попробуйте использовать другое 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)

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

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

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

lastActiveTime

string ( Timestamp format)

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

adminInstalled

boolean

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

Для поддержки установки администратором ваше приложение чата должно поддерживать функцию прямого обмена сообщениями.

membershipCount

object ( MembershipCount )

Только вывод. Количество присоединённых участников, сгруппированных по типу участника. Заполняется, если spaceTypeSPACE , DIRECT_MESSAGE или GROUP_CHAT .

accessSettings

object ( AccessSettings )

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

spaceUri

string

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

importModeExpireTime

string ( Timestamp format)

Только вывод. Время, через которое пространство будет автоматически удалено системой, если оно остаётся в режиме импорта.

Каждое пространство, созданное в режиме импорта, должно выйти из этого режима до истечения указанного времени с помощью spaces.completeImport .

Это поле заполняется только для пространств, созданных в режиме импорта.

customer

string

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

В формате customers/{customer} , где customer — это id из ресурса customer из Admin SDK . Частные приложения также могут использовать псевдоним customers/my_customer для создания пространства в той же организации Google Workspace, что и приложение.

Для DM это поле не заполняется.

Поле объединения space_permission_settings . Представляет настройки разрешений пространства. Заполняется только если space_typeSPACE . space_permission_settings может принимать только одно из следующих значений:
predefinedPermissionSettings

enum ( PredefinedPermissionSettings )

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

Настройка предопределенных параметров разрешений поддерживает:

permissionSettings

object ( PermissionSettings )

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

Чтение и обновление настроек разрешений поддерживает:

Тип

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

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

SpaceType

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

Перечисления
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 и более людьми.

SpaceDetails

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

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

string

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

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

guidelines

string

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

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

ИсторияГосударство

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

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

MembershipCount

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

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 с аутентификацией приложения .

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

AccessState

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

Перечисления
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

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