Package google.chat.v1

Индекс

Сервис чата

Позволяет разработчикам создавать приложения для чата и интеграции на платформе Google Chat.

CompleteImportSpace

rpc CompleteImportSpace( CompleteImportSpaceRequest ) returns ( CompleteImportSpaceResponse )

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

Требуется аутентификация пользователя и делегирование полномочий в масштабе всего домена с указанием области авторизации :

  • https://www.googleapis.com/auth/chat.import

Для получения дополнительной информации см. раздел «Разрешить приложениям Google Chat импортировать данные» .

Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.import

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

Создать пользовательские эмодзи

rpc CreateCustomEmoji( CreateCustomEmojiRequest ) returns ( CustomEmoji )

Создаёт пользовательский эмодзи.

Пользовательские эмодзи доступны только для учетных записей Google Workspace, и администратор должен включить их использование для всей организации. Для получения дополнительной информации см. разделы « Узнайте больше о пользовательских эмодзи в Google Chat» и «Управление разрешениями на использование пользовательских эмодзи» .

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

  • https://www.googleapis.com/auth/chat.customemojis
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.customemojis

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

Создать членство

rpc CreateMembership( CreateMembershipRequest ) returns ( Membership )

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

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с подтверждением администратора и указанием области авторизации:

    • https://www.googleapis.com/auth/chat.app.memberships
  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.memberships.app (для добавления приложения для звонков в пространство)
    • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true , и используется следующая область авторизации:
      • https://www.googleapis.com/auth/chat.admin.memberships

Аутентификация приложений не поддерживается в следующих случаях:

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

Примеры использования см. в:

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.app

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

Создать сообщение

rpc CreateMessage( CreateMessageRequest ) returns ( Message )

Создает сообщение в чате Google. Пример см. в разделе «Отправка сообщения» .

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с указанием области авторизации:
    • https://www.googleapis.com/auth/chat.bot
  • Аутентификация пользователя с использованием одной из следующих областей авторизации:
    • https://www.googleapis.com/auth/chat.messages.create
    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)

В зависимости от типа аутентификации, используемого в запросе, чат по-разному определяет отправителя сообщения.

На следующем изображении показано, как Chat присваивает сообщениям атрибуты при использовании аутентификации приложения. Chat отображает приложение Chat в качестве отправителя сообщения. Содержимое сообщения может включать текст ( text ), карточки ( cardsV2 ) и дополнительные виджеты ( accessoryWidgets ).

Сообщение отправлено с аутентификацией приложения.

На следующем изображении показано, как Chat присваивает сообщениям атрибуты при использовании аутентификации пользователя. Chat отображает пользователя как отправителя сообщения и присваивает сообщению имя приложения Chat. Содержимое сообщения может содержать только текст ( text ).

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

Максимальный размер сообщения, включая его содержимое, составляет 32 000 байт.

В случае запросов через веб-перехватчик ответ не содержит полного сообщения. В ответ, помимо информации, содержащейся в запросе, заполняются только поля name и thread.name

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.create

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

Создать реакцию

rpc CreateReaction( CreateReactionRequest ) returns ( Reaction )

Создает реакцию и добавляет ее к сообщению. Пример см. в разделе «Добавление реакции к сообщению» .

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

  • https://www.googleapis.com/auth/chat.messages.reactions.create
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.create

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

СоздатьСекцию

rpc CreateSection( CreateSectionRequest ) returns ( Section )

Создает раздел в Google Chat. Разделы помогают пользователям группировать беседы и настраивать список разделов, отображаемых на панели навигации чата. Можно создавать только разделы типа CUSTOM_SECTION . Подробнее см. раздел «Создание и организация разделов в Google Chat» .

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

  • https://www.googleapis.com/auth/chat.users.sections
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.sections

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

CreateSpace

rpc CreateSpace( CreateSpaceRequest ) returns ( Space )

Создает пространство. Может использоваться для создания именованного пространства или группового чата в Import mode . Пример см. в разделе «Создание пространства» .

Поддерживаются следующие типы аутентификации :

При аутентификации в качестве приложения поле space.customer должно быть указано в запросе.

При аутентификации в качестве приложения приложение «Чат» добавляется в качестве участника пространства. Однако, в отличие от аутентификации человека, приложение «Чат» не добавляется в качестве менеджера пространства. По умолчанию приложение «Чат» может быть удалено из пространства всеми участниками пространства. Чтобы разрешить удаление приложения из пространства только менеджерам пространства, установите space.permission_settings.manage_apps в значение managers_allowed .

Состав участников пространства при его создании зависит от того, создано ли пространство в Import mode :

  • Режим импорта: Участники не создаются.
  • Во всех остальных режимах: вызывающий пользователь добавляется в качестве участника. Это:
    • Само приложение при использовании аутентификации приложения.
    • Пользователь-человек при использовании аутентификации пользователя.

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

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

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

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

DeleteCustomEmoji

rpc DeleteCustomEmoji( DeleteCustomEmojiRequest ) returns ( Empty )

Удаляет созданный пользователем эмодзи. По умолчанию пользователи могут удалять только созданные ими самими эмодзи. Менеджеры эмодзи , назначенные администратором, могут удалять любые созданные ими эмодзи в организации. См. раздел «Подробнее о созданных пользователем эмодзи в Google Chat» .

Пользовательские эмодзи доступны только для учетных записей Google Workspace, и администратор должен включить их использование для всей организации. Для получения дополнительной информации см. разделы « Узнайте больше о пользовательских эмодзи в Google Chat» и «Управление разрешениями на использование пользовательских эмодзи» .

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

  • https://www.googleapis.com/auth/chat.customemojis
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.customemojis

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

Удалить членство

rpc DeleteMembership( DeleteMembershipRequest ) returns ( Membership )

Удаляет членство. Пример см. в разделе «Удаление пользователя или приложения Google Chat из пространства» .

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с подтверждением администратора и указанием области авторизации:

    • https://www.googleapis.com/auth/chat.app.memberships
  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.memberships.app (чтобы удалить приложение для звонков из этого пространства)
    • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true , и используется следующая область авторизации:
      • https://www.googleapis.com/auth/chat.admin.memberships

Аутентификация приложений не поддерживается в следующих случаях:

  • Удаление группы Google из пространства.
  • Удаление приложения чата из рабочего пространства.

Для удаления членства для администраторов пространства запрашивающий должен быть администратором пространства. Если вы используете аутентификацию через приложение, то приложение «Чат» должно быть создано пользователем пространства.

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.app

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

Удалить сообщение

rpc DeleteMessage( DeleteMessageRequest ) returns ( Empty )

Удаляет сообщение. Пример см. в разделе «Удаление сообщения» .

Поддерживаются следующие типы аутентификации :

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

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages

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

DeleteReaction

rpc DeleteReaction( DeleteReactionRequest ) returns ( Empty )

Удаляет реакцию на сообщение. Пример см. в разделе «Удаление реакции» .

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

  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.reactions

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

Удалить раздел

rpc DeleteSection( DeleteSectionRequest ) returns ( Empty )

Удаляет раздел типа CUSTOM_SECTION .

Если раздел содержит такие элементы, как пробелы, эти элементы перемещаются в стандартные разделы Google Chat и не удаляются.

Подробнее см. раздел «Создание и организация разделов в Google Chat» .

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

  • https://www.googleapis.com/auth/chat.users.sections
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.sections

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

DeleteSpace

rpc DeleteSpace( DeleteSpaceRequest ) returns ( Empty )

Удаляет именованное пространство. Всегда выполняет каскадное удаление, что означает, что дочерние ресурсы пространства — такие как сообщения, опубликованные в пространстве, и членство в пространстве — также удаляются. Пример см. в разделе «Удаление пространства» .

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с подтверждением администратора и указанием области авторизации:

    • https://www.googleapis.com/auth/chat.app.delete (только в тех местах, которые создало приложение)
  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.delete
    • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true , и используется следующая область авторизации:
      • https://www.googleapis.com/auth/chat.admin.delete
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.app.delete
  • https://www.googleapis.com/auth/chat.admin.delete
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.delete

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

FindDirectMessage

rpc FindDirectMessage( FindDirectMessageRequest ) returns ( Space )

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

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

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

Поддерживаются следующие типы аутентификации :

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.bot

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

FindGroupChats

rpc FindGroupChats( FindGroupChatsRequest ) returns ( FindGroupChatsResponse )

Возвращает все пространства с spaceType == GROUP_CHAT , в которых в списке участников, состоящих из людей, содержится ровно тот же пользователь, который совершил звонок, и пользователи, указанные в FindGroupChatsRequest.memberships .

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

Указанный набор пользователей должен содержать только данные о пользователях-людях (не приложениях). Запрос, содержащий данные о пользователях-нелюдях, не возвращает никаких пробелов.

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

  • https://www.googleapis.com/auth/chat.memberships.readonly
  • https://www.googleapis.com/auth/chat.memberships
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly

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

Получить вложение

rpc GetAttachment( GetAttachmentRequest ) returns ( Attachment )

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

Требуется аутентификация приложения с указанием области авторизации :

  • https://www.googleapis.com/auth/chat.bot
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.bot

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

GetCustomEmoji

rpc GetCustomEmoji( GetCustomEmojiRequest ) returns ( CustomEmoji )

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

Пользовательские эмодзи доступны только для учетных записей Google Workspace, и администратор должен включить их использование для всей организации. Для получения дополнительной информации см. разделы « Узнайте больше о пользовательских эмодзи в Google Chat» и «Управление разрешениями на использование пользовательских эмодзи» .

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

  • https://www.googleapis.com/auth/chat.customemojis.readonly
  • https://www.googleapis.com/auth/chat.customemojis
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.customemojis
  • https://www.googleapis.com/auth/chat.customemojis.readonly

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

GetMembership

rpc GetMembership( GetMembershipRequest ) returns ( Membership )

Возвращает подробную информацию о членстве. Пример см. в разделе «Получение подробной информации о членстве пользователя или приложения Google Chat» .

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с использованием одной из следующих областей авторизации:

  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.memberships.readonly
    • https://www.googleapis.com/auth/chat.memberships
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true и используется одна из следующих областей авторизации:
      • https://www.googleapis.com/auth/chat.admin.memberships.readonly
      • https://www.googleapis.com/auth/chat.admin.memberships
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships.readonly
  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly

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

GetMessage

rpc GetMessage( GetMessageRequest ) returns ( Message )

Возвращает подробную информацию о сообщении. Пример см. в разделе «Получение подробной информации о сообщении» .

Поддерживаются следующие типы аутентификации :

Примечание: Возможно, ответ будет получен от заблокированного пользователя или сообщества.

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.app.messages.readonly

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

GetSpace

rpc GetSpace( GetSpaceRequest ) returns ( Space )

Возвращает подробную информацию о пространстве. Пример см. в разделе «Получение подробной информации о пространстве» .

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с использованием одной из следующих областей авторизации:

  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.spaces.readonly
    • https://www.googleapis.com/auth/chat.spaces
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true и используется одна из следующих областей авторизации:
      • https://www.googleapis.com/auth/chat.admin.spaces.readonly
      • https://www.googleapis.com/auth/chat.admin.spaces

Аутентификация приложений имеет следующие ограничения:

  • Параметр space.access_settings заполняется только при использовании области видимости chat.app.spaces .
  • space.predefind_permission_settings и space.permission_settings заполняются только при использовании области действия chat.app.spaces и только для пространств, созданных приложением.
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.admin.spaces
  • https://www.googleapis.com/auth/chat.admin.spaces.readonly
  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.app.spaces

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

GetSpaceEvent

rpc GetSpaceEvent( GetSpaceEventRequest ) returns ( SpaceEvent )

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

Примечание: Поле permissionSettings не возвращается в объекте Space данных события Space для этого запроса.

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

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

В качестве примера см. раздел «Получение подробной информации о событии из пространства Google Chat» .

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.app.messages.readonly
  • https://www.googleapis.com/auth/chat.app.spaces
  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.readonly

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

GetSpaceNotificationSetting

rpc GetSpaceNotificationSetting( GetSpaceNotificationSettingRequest ) returns ( SpaceNotificationSetting )

Получает настройки уведомлений о наличии свободного места. Пример см. в разделе «Получение настроек уведомлений о наличии свободного места для вызывающего абонента» .

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

  • https://www.googleapis.com/auth/chat.users.spacesettings
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.spacesettings

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

GetSpaceReadState

rpc GetSpaceReadState( GetSpaceReadStateRequest ) returns ( SpaceReadState )

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

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

  • https://www.googleapis.com/auth/chat.users.readstate.readonly
  • https://www.googleapis.com/auth/chat.users.readstate
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.users.readstate
  • https://www.googleapis.com/auth/chat.users.readstate.readonly

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

GetThreadReadState

rpc GetThreadReadState( GetThreadReadStateRequest ) returns ( ThreadReadState )

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

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

  • https://www.googleapis.com/auth/chat.users.readstate.readonly
  • https://www.googleapis.com/auth/chat.users.readstate
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.users.readstate
  • https://www.googleapis.com/auth/chat.users.readstate.readonly

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

ListCustomEmojis

rpc ListCustomEmojis( ListCustomEmojisRequest ) returns ( ListCustomEmojisResponse )

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

Пользовательские эмодзи доступны только для учетных записей Google Workspace, и администратор должен включить их использование для всей организации. Для получения дополнительной информации см. разделы « Узнайте больше о пользовательских эмодзи в Google Chat» и «Управление разрешениями на использование пользовательских эмодзи» .

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

  • https://www.googleapis.com/auth/chat.customemojis.readonly
  • https://www.googleapis.com/auth/chat.customemojis
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.customemojis
  • https://www.googleapis.com/auth/chat.customemojis.readonly

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

ListMemberships

rpc ListMemberships( ListMembershipsRequest ) returns ( ListMembershipsResponse )

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

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с использованием одной из следующих областей авторизации:

  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.memberships.readonly
    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true и используется одна из следующих областей авторизации:
      • https://www.googleapis.com/auth/chat.admin.memberships.readonly
      • https://www.googleapis.com/auth/chat.admin.memberships
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships.readonly
  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly

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

ListMessages

rpc ListMessages( ListMessagesRequest ) returns ( ListMessagesResponse )

Выводит список сообщений в пространстве, членом которого является вызывающий абонент, включая сообщения от заблокированных участников и пространств. Системные сообщения, например, сообщения о новых участниках пространства, не включаются. Если вы выводите список сообщений из пространства, в котором нет сообщений, ответ будет пустым объектом. При использовании интерфейса REST/HTTP ответ содержит пустой JSON-объект {} . Пример см. в разделе «Вывод списка сообщений» .

Поддерживаются следующие типы аутентификации :

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.app.messages.readonly

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

ListReactions

rpc ListReactions( ListReactionsRequest ) returns ( ListReactionsResponse )

Выводит список реакций на сообщение. Пример см. в разделе «Список реакций на сообщение» .

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

  • https://www.googleapis.com/auth/chat.messages.reactions.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.messages
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.readonly

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

ListSectionItems

rpc ListSectionItems( ListSectionItemsRequest ) returns ( ListSectionItemsResponse )

Отображает список товаров в разделе.

В настоящее время только пробелы могут быть элементами раздела. Подробнее см. раздел «Создание и организация разделов в Google Chat» .

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

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly

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

ListSections

rpc ListSections( ListSectionsRequest ) returns ( ListSectionsResponse )

Список разделов, доступных пользователю чата. Разделы помогают пользователям группировать свои беседы и настраивать список разделов, отображаемых на панели навигации чата. Подробнее см. раздел «Создание и организация разделов в Google Chat» .

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

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly

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

ListSpaceEvents

rpc ListSpaceEvents( ListSpaceEventsRequest ) returns ( ListSpaceEventsResponse )

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

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

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

В качестве примера см. раздел «Список событий из пространства Google Chat» .

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.app.messages.readonly
  • https://www.googleapis.com/auth/chat.app.spaces
  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.readonly

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

ListSpaces

rpc ListSpaces( ListSpacesRequest ) returns ( ListSpacesResponse )

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

Поддерживаются следующие типы аутентификации :

Чтобы получить список всех именованных пространств по организации Google Workspace, используйте метод spaces.search() с правами администратора Workspace.

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.bot

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

Переместить элемент секции

rpc MoveSectionItem( MoveSectionItemRequest ) returns ( MoveSectionItemResponse )

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

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

  • https://www.googleapis.com/auth/chat.users.sections
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.sections

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

Раздел позиции

rpc PositionSection( PositionSectionRequest ) returns ( PositionSectionResponse )

Изменяет порядок сортировки раздела. Подробнее см. раздел «Создание и организация разделов в Google Chat» .

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

  • https://www.googleapis.com/auth/chat.users.sections
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.sections

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

SearchSpaces

rpc SearchSpaces( SearchSpacesRequest ) returns ( SearchSpacesResponse )

Возвращает список пространств в организации Google Workspace на основе поиска администратора. В запросе установите use_admin_access в true . Пример см. в разделе «Поиск и управление пространствами» .

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

  • https://www.googleapis.com/auth/chat.admin.spaces.readonly
  • https://www.googleapis.com/auth/chat.admin.spaces
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.admin.spaces
  • https://www.googleapis.com/auth/chat.admin.spaces.readonly

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

SetUpSpace

rpc SetUpSpace( SetUpSpaceRequest ) returns ( Space )

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

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

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

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

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

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

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

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

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

  • https://www.googleapis.com/auth/chat.spaces.create
  • https://www.googleapis.com/auth/chat.spaces
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

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

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

Обновить членство

rpc UpdateMembership( UpdateMembershipRequest ) returns ( Membership )

Обновляет данные о членстве. Пример см. в разделе «Обновление данных пользователя в пространстве» .

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с подтверждением администратора и указанием области авторизации:

    • https://www.googleapis.com/auth/chat.app.memberships (только в созданных приложением полях)
  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true , и используется следующая область авторизации:
      • https://www.googleapis.com/auth/chat.admin.memberships
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships

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

Обновление сообщения

rpc UpdateMessage( UpdateMessageRequest ) returns ( Message )

Обновляет сообщение. Существует разница между методами patch и update . Метод patch использует запрос patch , а метод update — запрос put . Мы рекомендуем использовать метод patch . Пример см. в разделе «Обновление сообщения» .

Поддерживаются следующие типы аутентификации :

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

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages

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

UpdateSection

rpc UpdateSection( UpdateSectionRequest ) returns ( Section )

Обновляет раздел. Обновлять можно только разделы типа CUSTOM_SECTION . Подробнее см. раздел «Создание и организация разделов в Google Chat» .

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

  • https://www.googleapis.com/auth/chat.users.sections
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.sections

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

ОбновлениеПространства

rpc UpdateSpace( UpdateSpaceRequest ) returns ( Space )

Обновляет пространство. Пример см. в разделе «Обновление пространства» .

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

Поддерживаются следующие типы аутентификации :

  • Аутентификация приложения с подтверждением администратора и одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.app.spaces
  • Аутентификация пользователя с использованием одной из следующих областей авторизации:

    • https://www.googleapis.com/auth/chat.spaces
    • https://www.googleapis.com/auth/chat.import (только для пробелов в режиме импорта)
    • Аутентификация пользователя предоставляет права администратора, когда учетная запись администратора проходит аутентификацию, use_admin_access имеет true , и используются следующие области авторизации:
      • https://www.googleapis.com/auth/chat.admin.spaces

Аутентификация приложений имеет следующие ограничения:

  • Для обновления параметров space.predefined_permission_settings или space.permission_settings приложение должно быть создателем пространства.
  • Обновление параметра space.access_settings.audience для аутентификации приложений не поддерживается.
Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://www.googleapis.com/auth/chat.app.spaces
  • https://www.googleapis.com/auth/chat.admin.spaces
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.spaces

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

UpdateSpaceNotificationSetting

rpc UpdateSpaceNotificationSetting( UpdateSpaceNotificationSettingRequest ) returns ( SpaceNotificationSetting )

Обновляет настройку уведомлений о свободном доступе. Пример см. в разделе «Обновление настройки уведомлений о свободном доступе для вызывающего абонента» .

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

  • https://www.googleapis.com/auth/chat.users.spacesettings
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.spacesettings

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

UpdateSpaceReadState

rpc UpdateSpaceReadState( UpdateSpaceReadStateRequest ) returns ( SpaceReadState )

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

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

  • https://www.googleapis.com/auth/chat.users.readstate
Области полномочий

Требуется следующая область действия OAuth:

  • https://www.googleapis.com/auth/chat.users.readstate

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

AccessoryWidget

Один или несколько интерактивных виджетов, которые отображаются внизу сообщения. Подробнее см. раздел «Добавление интерактивных виджетов внизу сообщения» .

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

ButtonList

Список кнопок.

ДействиеОтвет

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

Поля
type

ResponseType

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

url

string

Только для ввода. URL-адрес для аутентификации или настройки пользователей. (Только для типов ответов REQUEST_CONFIG .)

dialog_action

DialogAction

Только ввод. Ответ на событие взаимодействия, связанное с диалогом . Должен сопровождаться ResponseType.Dialog .

updated_widget

UpdatedWidget

Только ввод данных. Ответ обновленного виджета.

Тип ответа

Тип ответа приложения для чата.

Перечисления
TYPE_UNSPECIFIED Тип по умолчанию, обрабатываемый как NEW_MESSAGE .
NEW_MESSAGE Опубликовать как новое сообщение в этой теме.
UPDATE_MESSAGE Обновить сообщение в чате. Это разрешено только при событии CARD_CLICKED , где тип отправителя сообщения — BOT .
UPDATE_USER_MESSAGE_CARDS Обновить карточки в сообщении пользователя. Это разрешено только в ответ на событие MESSAGE с соответствующим URL-адресом или событие CARD_CLICKED , где тип отправителя сообщения — HUMAN . Текст игнорируется.
REQUEST_CONFIG Запросить у пользователя дополнительную аутентификацию или настройку в частном порядке.
DIALOG Представляет диалог .
UPDATE_WIDGET Варианты автозаполнения текста виджета.

Элементы выбора

Список результатов автозаполнения виджета.

Поля
items[]

SelectionItem

Массив объектов SelectionItem.

Обновленный виджет

Для виджетов selectionInput возвращаются подсказки автозаполнения для меню с множественным выбором.

Поля
widget

string

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

Поле объединения updated_widget . Виджет обновляется в ответ на действие пользователя. updated_widget может принимать только одно из следующих значений:
suggestions

SelectionItems

Список результатов автозаполнения виджета

ActionStatus

Отображает статус запроса на запуск или отправку диалога .

Поля
status_code

Code

Код состояния.

user_facing_message

string

Сообщение, которое необходимо отправить пользователям о статусе их запроса. Если параметр не задан, отправляется стандартное сообщение, основанное на status_code .

Аннотация

Только для вывода. Аннотации могут быть связаны с текстовым телом сообщения или с фрагментами, которые ссылаются на ресурсы Google Workspace, такие как Google Docs или Google Sheets, с start_index и length 0. Чтобы добавить базовое форматирование к текстовому сообщению, см. раздел «Форматирование текстовых сообщений» .

Пример текста сообщения в открытом виде:

Hello @FooBot how are you!"

Соответствующие метаданные аннотаций:

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
Поля
type

AnnotationType

Тип данной аннотации.

length

int32

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

start_index

int32

Эта аннотация соответствует начальному индексу (начиная с 0 включительно) в текстовом теле сообщения.

metadata поля объединения. Дополнительные метаданные об аннотации. metadata могут быть только одним из следующих типов:
user_mention

UserMentionMetadata

Метаданные упоминания пользователя.

slash_command

SlashCommandMetadata

Метаданные для команды с косой чертой.

custom_emoji_metadata

CustomEmojiMetadata

Метаданные для пользовательского эмодзи.

AnnotationType

Тип аннотации.

Перечисления
ANNOTATION_TYPE_UNSPECIFIED Значение по умолчанию для перечисления. Не использовать.
USER_MENTION Упоминается пользователь.
SLASH_COMMAND Выполняется команда с косой чертой.
CUSTOM_EMOJI Пользовательская аннотация в виде эмодзи.

AppCommandMetadata

Метаданные о команде приложения чата .

Поля
app_command_id

int32

Идентификатор команды, указанной в конфигурации API чата.

app_command_type

AppCommandType

Тип команды приложения «Чат».

AppCommandType

Тип команды приложения «Чат». Подробнее см. раздел «Типы команд приложения «Чат»» .

Перечисления
APP_COMMAND_TYPE_UNSPECIFIED Значение по умолчанию. Не указано.
SLASH_COMMAND Команда, состоящая из двух символов (слэша). Пользователь отправляет команду в сообщении чата.
QUICK_COMMAND Быстрая команда. Пользователь выбирает команду из меню чата в области ответа на сообщение.

AttachedGif

GIF-изображение, заданное URL-адресом.

Поля
uri

string

Только вывод. URL-адрес, на котором размещено GIF-изображение.

Вложение

Вложение в Google Чате.

Поля
name

string

Идентификатор. Имя ресурса вложения.

Формат: spaces/{space}/messages/{message}/attachments/{attachment} .

content_name

string

Только вывод. Исходное имя файла с содержимым, а не полный путь.

content_type

string

Только вывод. Тип содержимого (MIME-тип) файла.

thumbnail_uri

string

Только для вывода. URL-адрес миниатюры, который следует использовать для предварительного просмотра вложения пользователем. Приложения для чата не должны использовать этот URL-адрес для загрузки содержимого вложений.

download_uri

string

Только для вывода. URL-адрес для скачивания, который должен использоваться для того, чтобы пользователь мог загрузить вложение. Приложения для чата не должны использовать этот URL-адрес для загрузки содержимого вложений.

source

Source

Только вывод. Источник вложения.

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

AttachmentDataRef

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

drive_data_ref

DriveDataRef

Только для вывода. Ссылка на вложение в Google Диск. Это поле используется с API Google Диска.

Источник

Источник вложения.

Перечисления
SOURCE_UNSPECIFIED Сдержанный.
DRIVE_FILE Это файл из Google Диска.
UPLOADED_CONTENT Файл загружен в чат.

AttachmentDataRef

Ссылка на прикрепленные данные.

Поля
resource_name

string

Необязательно. Имя ресурса данных вложения. Это поле используется с API для работы с медиафайлами для загрузки данных вложения.

attachment_upload_token

string

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

CalendarEventLinkData

Данные для ссылок на события календаря.

Поля
calendar_id

string

Идентификатор календаря , к которому ведет ссылка.

event_id

string

Идентификатор события связанного события календаря.

CardWithId

Карточка в сообщении Google Chat.

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

Создавайте и просматривайте карточки с помощью конструктора карточек.

Откройте конструктор карточек.

Поля
card_id

string

Обязательно, если сообщение содержит несколько карточек. Уникальный идентификатор для карточки в сообщении.

card

Card

Карта памяти. Максимальный размер — 32 КБ.

ChatSpaceLinkData

Данные для ссылок в чате.

Поля
space

string

Пространство связанного ресурса чата.

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

thread

string

Обсуждение в связанном чате.

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

message

string

Сообщение, содержащееся в связанном ресурсе чата.

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

CompleteImportSpaceRequest

Запрос на отправку сообщения для завершения процесса импорта пространства.

Поля
name

string

Обязательно. Имя ресурса пространства режима импорта.

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

CompleteImportSpaceResponse

Сообщение об успешном завершении процесса импорта пространства.

Поля
space

Space

Пространство режимов импорта.

ContextualAddOnMarkup

Этот тип не содержит полей.

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

Карта

Карточка — это элемент пользовательского интерфейса, который может содержать виджеты пользовательского интерфейса, такие как текст и изображения.

Поля
header

CardHeader

Заголовок карточки. Заголовок обычно содержит название и изображение.

sections[]

Section

Разделы обозначены разделительной линией.

card_actions[]

CardAction

Действия этой карты.

name

string

Название карты.

CardAction

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

Не поддерживается приложениями Google Chat.

Поля
action_label

string

Ранее эта метка отображалась в пункте меню действий.

on_click

OnClick

Действие по клику для этого элемента действия.

CardHeader

Поля
title

string

Необходимо указать заголовок. Высота верхнего колонтитула фиксирована: если указаны и заголовок, и подзаголовок, каждый занимает одну строку. Если указан только заголовок, он занимает обе строки.

subtitle

string

Подзаголовок заголовка карточки.

image_style

ImageStyle

Тип изображения (например, квадратная или круглая рамка).

image_url

string

URL изображения в заголовке карточки.

ImageStyle

Перечисления
IMAGE_STYLE_UNSPECIFIED
IMAGE Квадратная рамка.
AVATAR Круглая граница.

Раздел

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

Поля
header

string

Заголовок раздела. Поддерживается форматированный текст. Для получения дополнительной информации о форматировании текста см. разделы «Форматирование текста в приложениях Google Chat» и «Форматирование текста в надстройках Google Workspace».

widgets[]

WidgetMarkup

Раздел должен содержать как минимум один виджет.

CreateCustomEmojiRequest

A request to create a custom emoji.

Fields
custom_emoji

CustomEmoji

Required. The custom emoji to create.

CreateMembershipRequest

Request message for creating a membership.

Fields
parent

string

Required. The resource name of the space for which to create the membership.

Format: spaces/{space}

membership

Membership

Required. The membership relation to create.

The memberType field must contain a user with the user.name and user.type fields populated. The server will assign a resource name and overwrite anything specified.

When a Chat app creates a membership relation for a human user, it must use certain authorization scopes and set specific values for certain fields:

  • When authenticating as a user , the chat.memberships authorization scope is required.

  • When authenticating as an app , the chat.app.memberships authorization scope is required.

  • Set user.type to HUMAN , and set user.name with format users/{user} , where {user} can be the email address for the user. For users in the same Workspace organization {user} can also be the id of the person from the People API, or the id for the user in the Directory API. For example, if the People API Person profile ID for user@example.com is 123456789 , you can add the user to the space by setting the membership.member.name to users/user@example.com or users/123456789 .

Inviting users external to the Workspace organization that owns the space requires user authentication .

When a Chat app creates a membership relation for itself, it must authenticate as a user and use the chat.memberships.app scope, set user.type to BOT , and set user.name to users/app .

use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires the chat.admin.memberships OAuth 2.0 scope .

Creating app memberships or creating memberships for users outside the administrator's Google Workspace organization isn't supported using admin access.

CreateMessageRequest

Creates a message.

Fields
parent

string

Required. The resource name of the space in which to create a message.

Format: spaces/{space}

message

Message

Required. Message body.

thread_key
(deprecated)

string

Optional. Deprecated: Use thread.thread_key instead. ID for the thread. Supports up to 4000 characters. To start or add to a thread, create a message and specify a threadKey or the thread.name . For example usage, see Start or reply to a message thread .

request_id

string

Optional. A unique request ID for this message. Specifying an existing request ID returns the message created with that ID instead of creating a new message.

message_reply_option

MessageReplyOption

Optional. Specifies whether a message starts a thread or replies to one. Only supported in named spaces.

When responding to user interactions , this field is ignored. For interactions within a thread, the reply is created in the same thread. Otherwise, the reply is created as a new thread.

message_id

string

Optional. A custom ID for a message. Lets Chat apps get, update, or delete a message without needing to store the system-assigned ID in the message's resource name (represented in the message name field).

The value for this field must meet the following requirements:

  • Begins with client- . For example, client-custom-name is a valid custom ID, but custom-name is not.
  • Contains up to 63 characters and only lowercase letters, numbers, and hyphens.
  • Is unique within a space. A Chat app can't use the same custom ID for different messages.

For details, see Name a message .

MessageReplyOption

Specifies how to reply to a message. More states might be added in the future.

Перечисления
MESSAGE_REPLY_OPTION_UNSPECIFIED Default. Starts a new thread. Using this option ignores any thread ID or thread_key that's included.
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD Creates the message as a reply to the thread specified by thread ID or thread_key . If it fails, the message starts a new thread instead.
REPLY_MESSAGE_OR_FAIL Creates the message as a reply to the thread specified by thread ID or thread_key . If a new thread_key is used, a new thread is created. If the message creation fails, a NOT_FOUND error is returned instead.

CreateReactionRequest

Creates a reaction to a message.

Fields
parent

string

Required. The message where the reaction is created.

Format: spaces/{space}/messages/{message}

reaction

Reaction

Required. The reaction to create.

CreateSectionRequest

Request message for creating a section.

Fields
parent

string

Required. The parent resource name where the section is created.

Format: users/{user}

section

Section

Required. The section to create.

CreateSpaceRequest

A request to create a named space with no members.

Fields
space

Space

Required. The displayName and spaceType fields must be populated. Only SpaceType.SPACE and SpaceType.GROUP_CHAT are supported. SpaceType.GROUP_CHAT can only be used if importMode is set to true.

If you receive the error message ALREADY_EXISTS , try a different displayName . An existing space within the Google Workspace organization might already use this display name.

The space name is assigned on the server so anything specified in this field will be ignored.

request_id

string

Optional. A unique identifier for this request. A random UUID is recommended. Specifying an existing request ID returns the space created with that ID instead of creating a new space. Specifying an existing request ID from the same Chat app with a different authenticated user returns an error.

CustomEmoji

Represents a custom emoji .

Fields
name

string

Identifier. The resource name of the custom emoji, assigned by the server.

Format: customEmojis/{customEmoji}

uid

string

Output only. Unique key for the custom emoji resource.

emoji_name

string

Optional. Immutable. User-provided name for the custom emoji, which is unique within the organization.

Required when the custom emoji is created, output only otherwise.

Emoji names must start and end with colons, must be lowercase and can only contain alphanumeric characters, hyphens, and underscores. Hyphens and underscores should be used to separate words and cannot be used consecutively.

Example: :valid-emoji-name:

temporary_image_uri

string

Output only. A temporary image URL for the custom emoji, valid for at least 10 minutes. Note that this is not populated in the response when the custom emoji is created.

payload

CustomEmojiPayload

Optional. Input only. Payload data. Required when the custom emoji is created.

CustomEmojiPayload

Payload data for the custom emoji.

Fields
file_content

bytes

Required. Input only. The image used for the custom emoji.

The payload must be under 256 KB and the dimension of the image must be square and between 64 and 500 pixels. The restrictions are subject to change.

filename

string

Required. Input only. The image file name.

Supported file extensions: .png , .jpg , .gif .

CustomEmojiMetadata

Annotation metadata for custom emoji.

Fields
custom_emoji

CustomEmoji

The custom emoji.

DeleteCustomEmojiRequest

Request for deleting a custom emoji.

Fields
name

string

Required. Resource name of the custom emoji to delete.

Format: customEmojis/{customEmoji}

You can use the emoji name as an alias for {customEmoji} . For example, customEmojis/:example-emoji: where :example-emoji: is the emoji name for a custom emoji.

DeleteMembershipRequest

Request to delete a membership in a space.

Fields
name

string

Required. Resource name of the membership to delete. Chat apps can delete human users' or their own memberships. Chat apps can't delete other apps' memberships.

When deleting a human membership, requires the chat.memberships scope with user authentication or the chat.memberships.app scope with app authentication and the spaces/{space}/members/{member} format. You can use the email as an alias for {member} . For example, spaces/{space}/members/example@gmail.com where example@gmail.com is the email of the Google Chat user.

When deleting an app membership, requires the chat.memberships.app scope and spaces/{space}/members/app format.

Format: spaces/{space}/members/{member} or spaces/{space}/members/app .

use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires the chat.admin.memberships OAuth 2.0 scope .

Deleting app memberships in a space isn't supported using admin access.

DeleteMessageRequest

Request to delete a message.

Fields
name

string

Required. Resource name of the message.

Format: spaces/{space}/messages/{message}

If you've set a custom ID for your message, you can use the value from the clientAssignedMessageId field for {message} . For details, see Name a message .

force

bool

Optional. When true , deleting a message also deletes its threaded replies. When false , if a message has threaded replies, deletion fails.

Only applies when authenticating as a user . Has no effect when authenticating as a Chat app .

DeleteReactionRequest

Deletes a reaction to a message.

Fields
name

string

Required. Name of the reaction to delete.

Format: spaces/{space}/messages/{message}/reactions/{reaction}

DeleteSectionRequest

Request message for deleting a section.

Fields
name

string

Required. The name of the section to delete.

Format: users/{user}/sections/{section}

DeleteSpaceRequest

Request for deleting a space.

Fields
name

string

Required. Resource name of the space to delete.

Format: spaces/{space}

use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires the chat.admin.delete OAuth 2.0 scope .

DeletionMetadata

Information about a deleted message. A message is deleted when delete_time is set.

Fields
deletion_type

DeletionType

Indicates who deleted the message.

DeletionType

Who deleted the message and how it was deleted. More values may be added in the future. See Edit or delete a message in Google Chat for details on when messages can be deleted.

Перечисления
DELETION_TYPE_UNSPECIFIED This value is unused.
CREATOR User deleted their own message.
SPACE_OWNER An owner or manager deleted the message.
ADMIN A Google Workspace administrator deleted the message. Administrators can delete any message in the space, including messages sent by any space member or Chat app.
APP_MESSAGE_EXPIRY A Chat app deleted its own message when it expired.
CREATOR_VIA_APP A Chat app deleted the message on behalf of the creator (using user authentication).
SPACE_OWNER_VIA_APP A Chat app deleted the message on behalf of a space manager (using user authentication).
SPACE_MEMBER A member of the space deleted the message. Users can delete messages sent by apps.

Диалог

Wrapper around the card body of the dialog.

Fields
body

Card

Input only. Body of the dialog, which is rendered in a modal. Google Chat apps don't support the following card entities: DateTimePicker , OnChangeAction .

DialogAction

Contains a dialog and request status code.

Fields
action_status

ActionStatus

Input only. Status for a request to either invoke or submit a dialog . Displays a status and message to users, if necessary. For example, in case of an error or success.

Union field action . Action to perform. action can be only one of the following:
dialog

Dialog

Input only. Dialog for the request.

DriveDataRef

A reference to the data of a drive attachment.

Fields
drive_file_id

string

The ID for the drive file. Use with the Drive API.

DriveLinkData

Data for Google Drive links.

Fields
drive_data_ref

DriveDataRef

A DriveDataRef which references a Google Drive file.

mime_type

string

The mime type of the linked Google Drive resource.

Эмодзи

An emoji that is used as a reaction to a message.

Fields
Union field content . Required. The content of the emoji. content can be only one of the following:
unicode

string

Optional. A basic emoji represented by a unicode string.

custom_emoji

CustomEmoji

A custom emoji.

EmojiReactionSummary

The number of people who reacted to a message with a specific emoji.

Fields
emoji

Emoji

Output only. Emoji associated with the reactions.

reaction_count

int32

Output only. The total number of reactions using the associated emoji.

FindDirectMessageRequest

A request to get direct message space based on the user resource.

Fields
name

string

Required. Resource name of the user to find direct message with.

Format: users/{user} , where {user} is either the id for the person from the People API, or the id for the user in the Directory API. For example, if the People API profile ID is 123456789 , you can find a direct message with that person by using users/123456789 as the name . When authenticated as a user , you can use the email as an alias for {user} . For example, users/example@gmail.com where example@gmail.com is the email of the Google Chat user.

FindGroupChatsRequest

A request to get group chat spaces based on user resources.

Fields
user[]

string

Resource names of all human users in group chat with the calling user. Chat apps cannot be included in the request.

Format: users/{user} , where {user} is either the id for the person from the People API, or the id for the user in the Directory API. For example, to find all group chats with the calling user and two other users, with People API profile IDs 123456789 and 987654321 , you can use users/123456789 and users/987654321 . You can also use the email as an alias for {user} . For example, users/example@gmail.com where example@gmail.com is the email of the Google Chat user.

When the calling user is a Google Workspace user, all requested users must be members of the same Google Workspace organization as the calling user.

page_size

int32

Optional. The maximum number of spaces to return. The service might return fewer than this value.

If unspecified, at most 100 spaces are returned.

The maximum value is 1000. If you use a value more than 1000, it's automatically changed to 1000.

Negative values return an INVALID_ARGUMENT error.

page_token

string

Optional. A page token, received from a previous call to find group chats. Provide this parameter to retrieve the subsequent page.

When paginating, all other parameters provided should match the call that provided the token. Passing different values may lead to unexpected results.

space_view

SpaceView

Requested space view type. If unset, defaults to SPACE_VIEW_RESOURCE_NAME_ONLY . Requests that specify SPACE_VIEW_EXPANDED must include scopes that allow reading space data, for example, https://www.googleapis.com/auth/chat.spaces or https://www.googleapis.com/auth/chat.spaces.readonly .

FindGroupChatsResponse

A response containing group chat spaces with exactly the calling user and the requested users.

Fields
spaces[]

Space

List of spaces in the requested (or first) page.

next_page_token

string

A token that you can send as pageToken to retrieve the next page of results. If empty, there are no subsequent pages.

GetAttachmentRequest

Request to get an attachment.

Fields
name

string

Required. Resource name of the attachment, in the form spaces/{space}/messages/{message}/attachments/{attachment} .

GetCustomEmojiRequest

A request to return a single custom emoji.

Fields
name

string

Required. Resource name of the custom emoji.

Format: customEmojis/{customEmoji}

You can use the emoji name as an alias for {customEmoji} . For example, customEmojis/:example-emoji: where :example-emoji: is the emoji name for a custom emoji.

GetMembershipRequest

Request to get a membership of a space.

Fields
name

string

Required. Resource name of the membership to retrieve.

To get the app's own membership by using user authentication , you can optionally use spaces/{space}/members/app .

Format: spaces/{space}/members/{member} or spaces/{space}/members/app

You can use the user's email as an alias for {member} . For example, spaces/{space}/members/example@gmail.com where example@gmail.com is the email of the Google Chat user.

use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires the chat.admin.memberships or chat.admin.memberships.readonly OAuth 2.0 scopes .

Getting app memberships in a space isn't supported when using admin access.

GetMessageRequest

Request to get a message.

Fields
name

string

Required. Resource name of the message.

Format: spaces/{space}/messages/{message}

If you've set a custom ID for your message, you can use the value from the clientAssignedMessageId field for {message} . For details, see Name a message .

GetSpaceEventRequest

Request message for getting a space event.

Fields
name

string

Required. The resource name of the space event.

Format: spaces/{space}/spaceEvents/{spaceEvent}

GetSpaceNotificationSettingRequest

Request message to get space notification setting. Only supports getting notification setting for the calling user.

Fields
name

string

Required. Format: users/{user}/spaces/{space}/spaceNotificationSetting

  • users/me/spaces/{space}/spaceNotificationSetting , OR
  • users/user@example.com/spaces/{space}/spaceNotificationSetting , OR
  • users/123456789/spaces/{space}/spaceNotificationSetting . Note: Only the caller's user id or email is allowed in the path.

GetSpaceReadStateRequest

Request message for GetSpaceReadState API.

Fields
name

string

Required. Resource name of the space read state to retrieve.

Only supports getting read state for the calling user.

To refer to the calling user, set one of the following:

  • The me alias. For example, users/me/spaces/{space}/spaceReadState .

  • Their Workspace email address. For example, users/user@example.com/spaces/{space}/spaceReadState .

  • Their user id. For example, users/123456789/spaces/{space}/spaceReadState .

Format: users/{user}/spaces/{space}/spaceReadState

GetSpaceRequest

A request to return a single space.

Fields
name

string

Required. Resource name of the space, in the form spaces/{space} .

Format: spaces/{space}

use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires the chat.admin.spaces or chat.admin.spaces.readonly OAuth 2.0 scopes .

GetThreadReadStateRequest

Request message for GetThreadReadStateRequest API.

Fields
name

string

Required. Resource name of the thread read state to retrieve.

Only supports getting read state for the calling user.

To refer to the calling user, set one of the following:

  • The me alias. For example, users/me/spaces/{space}/threads/{thread}/threadReadState .

  • Their Workspace email address. For example, users/user@example.com/spaces/{space}/threads/{thread}/threadReadState .

  • Their user id. For example, users/123456789/spaces/{space}/threads/{thread}/threadReadState .

Format: users/{user}/spaces/{space}/threads/{thread}/threadReadState

Группа

A Google Group in Google Chat.

Fields
name

string

Resource name for a Google Group.

Represents a group in Cloud Identity Groups API.

Format: groups/{group}

HistoryState

The history state for messages and spaces. Specifies how long messages and conversation threads are kept after creation.

Перечисления
HISTORY_STATE_UNSPECIFIED Default value. Do not use.
HISTORY_OFF History off. Messages and threads are kept for 24 hours .
HISTORY_ON History on. The organization's Vault retention rules specify for how long messages and threads are kept.

ListCustomEmojisRequest

A request to return a list of custom emojis.

Fields
page_size

int32

Optional. The maximum number of custom emojis returned. The service can return fewer custom emojis than this value. If unspecified, the default value is 25. The maximum value is 200; values above 200 are changed to 200.

page_token

string

Optional. (If resuming from a previous query.)

A page token received from a previous list custom emoji call. Provide this to retrieve the subsequent page.

When paginating, the filter value should match the call that provided the page token. Passing a different value might lead to unexpected results.

filter

string

Optional. A query filter.

Supports filtering by creator.

To filter by creator, you must specify a valid value. Currently only creator("users/me") and NOT creator("users/me") are accepted to filter custom emojis by whether they were created by the calling user or not.

For example, the following query returns custom emojis created by the caller:

creator("users/me")

Invalid queries are rejected with an INVALID_ARGUMENT error.

ListCustomEmojisResponse

A response to list custom emojis.

Fields
custom_emojis[]

CustomEmoji

Unordered list. List of custom emojis.

next_page_token

string

A token that you can send as pageToken to retrieve the next page of results. If empty, there are no subsequent pages.

ListMembershipsRequest

Request message for listing memberships.

Fields
parent

string

Required. The resource name of the space for which to fetch a membership list.

Format: spaces/{space}

page_size

int32

Optional. The maximum number of memberships to return. The service might return fewer than this value.

If unspecified, at most 100 memberships are returned.

The maximum value is 1000. If you use a value more than 1000, it's automatically changed to 1000.

Negative values return an INVALID_ARGUMENT error.

page_token

string

Optional. A page token, received from a previous call to list memberships. Provide this parameter to retrieve the subsequent page.

When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.

filter

string

Optional. A query filter.

You can filter memberships by a member's role ( role ) and type ( member.type ).

To filter by role, set role to ROLE_MEMBER or ROLE_MANAGER .

To filter by type, set member.type to HUMAN or BOT . You can also filter for member.type using the != operator.

To filter by both role and type, use the AND operator. To filter by either role or type, use the OR operator.

Either member.type = "HUMAN" or member.type != "BOT" is required when use_admin_access is set to true. Other member type filters will be rejected.

For example, the following queries are valid:

role = "ROLE_MANAGER" OR role = "ROLE_MEMBER"
member.type = "HUMAN" AND role = "ROLE_MANAGER"

member.type != "BOT"

The following queries are invalid:

member.type = "HUMAN" AND member.type = "BOT"
role = "ROLE_MANAGER" AND role = "ROLE_MEMBER"

Invalid queries are rejected by the server with an INVALID_ARGUMENT error.

show_groups

bool

Optional. When true , also returns memberships associated with a Google Group , in addition to other types of memberships. If a filter is set, Google Group memberships that don't match the filter criteria aren't returned.

show_invited

bool

Optional. When true , also returns memberships associated with invited members, in addition to other types of memberships. If a filter is set, invited memberships that don't match the filter criteria aren't returned.

Currently requires user authentication .

use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires either the chat.admin.memberships.readonly or chat.admin.memberships OAuth 2.0 scope .

Listing app memberships in a space isn't supported when using admin access.

ListMembershipsResponse

Response to list memberships of the space.

Fields
memberships[]

Membership

Unordered list. List of memberships in the requested (or first) page.

next_page_token

string

A token that you can send as pageToken to retrieve the next page of results. If empty, there are no subsequent pages.

ListMessagesRequest

Lists messages in the specified space, that the user is a member of.

Fields
parent

string

Required. The resource name of the space to list messages from.

Format: spaces/{space}

page_size

int32

Optional. The maximum number of messages returned. The service might return fewer messages than this value.

If unspecified, at most 25 are returned.

The maximum value is 1000. If you use a value more than 1000, it's automatically changed to 1000.

Negative values return an INVALID_ARGUMENT error.

page_token

string

Optional. A page token received from a previous list messages call. Provide this parameter to retrieve the subsequent page.

When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.

filter

string

Optional. A query filter.

You can filter messages by date ( create_time ) and thread ( thread.name ).

To filter messages by the date they were created, specify the create_time with a timestamp in RFC-3339 format and double quotation marks. For example, "2023-04-21T11:30:00-04:00" . You can use the greater than operator > to list messages that were created after a timestamp, or the less than operator < to list messages that were created before a timestamp. To filter messages within a time interval, use the AND operator between two timestamps.

To filter by thread, specify the thread.name , formatted as spaces/{space}/threads/{thread} . You can only specify one thread.name per query.

To filter by both thread and date, use the AND operator in your query.

For example, the following queries are valid:

create_time > "2012-04-21T11:30:00-04:00"

create_time > "2012-04-21T11:30:00-04:00" AND
  thread.name = spaces/AAAAAAAAAAA/threads/123

create_time > "2012-04-21T11:30:00+00:00" AND

create_time < "2013-01-01T00:00:00+00:00" AND
  thread.name = spaces/AAAAAAAAAAA/threads/123

thread.name = spaces/AAAAAAAAAAA/threads/123

Invalid queries are rejected by the server with an INVALID_ARGUMENT error.

order_by

string

Optional. How the list of messages is ordered. Specify a value to order by an ordering operation. Valid ordering operation values are as follows:

  • ASC for ascending.

  • DESC for descending.

The default ordering is create_time ASC .

show_deleted

bool

Optional. Whether to include deleted messages. Deleted messages include deleted time and metadata about their deletion, but message content is unavailable.

ListMessagesResponse

Response message for listing messages.

Fields
messages[]

Message

List of messages.

next_page_token

string

You can send a token as pageToken to retrieve the next page of results. If empty, there are no subsequent pages.

ListReactionsRequest

Lists reactions to a message.

Fields
parent

string

Required. The message users reacted to.

Format: spaces/{space}/messages/{message}

page_size

int32

Optional. The maximum number of reactions returned. The service can return fewer reactions than this value. If unspecified, the default value is 25. The maximum value is 200; values above 200 are changed to 200.

page_token

string

Optional. (If resuming from a previous query.)

A page token received from a previous list reactions call. Provide this to retrieve the subsequent page.

When paginating, the filter value should match the call that provided the page token. Passing a different value might lead to unexpected results.

filter

string

Optional. A query filter.

You can filter reactions by emoji (either emoji.unicode or emoji.custom_emoji.uid ) and user ( user.name ).

To filter reactions for multiple emojis or users, join similar fields with the OR operator, such as emoji.unicode = "🙂" OR emoji.unicode = "👍" and user.name = "users/AAAAAA" OR user.name = "users/BBBBBB" .

To filter reactions by emoji and user, use the AND operator, such as emoji.unicode = "🙂" AND user.name = "users/AAAAAA" .

If your query uses both AND and OR , group them with parentheses.

For example, the following queries are valid:

user.name = "users/{user}"
emoji.unicode = "🙂"
emoji.custom_emoji.uid = "{uid}"
emoji.unicode = "🙂" OR emoji.unicode = "👍"
emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}"
emoji.unicode = "🙂" AND user.name = "users/{user}"
(emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}")
AND user.name = "users/{user}"

The following queries are invalid:

emoji.unicode = "🙂" AND emoji.unicode = "👍"
emoji.unicode = "🙂" AND emoji.custom_emoji.uid = "{uid}"
emoji.unicode = "🙂" OR user.name = "users/{user}"
emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}" OR
user.name = "users/{user}"
emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}"
AND user.name = "users/{user}"

Invalid queries are rejected with an INVALID_ARGUMENT error.

ListReactionsResponse

Response to a list reactions request.

Fields
reactions[]

Reaction

List of reactions in the requested (or first) page.

next_page_token

string

Continuation token to retrieve the next page of results. It's empty for the last page of results.

ListSectionItemsRequest

Request message for listing section items.

Fields
parent

string

Required. The parent, which is the section resource name that owns this collection of section items. Only supports listing section items for the calling user.

Format: users/{user}/sections/{section}

page_size

int32

Optional. The maximum number of section items to return. The service may return fewer than this value.

If unspecified, at most 10 section items will be returned.

The maximum value is 100. If you use a value more than 100, it's automatically changed to 100.

Negative values return an INVALID_ARGUMENT error.

page_token

string

Optional. A page token, received from a previous list section items call. Provide this to retrieve the subsequent page.

When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.

filter

string

Optional. A query filter.

Currently only supports filtering by space.

For example, space = spaces/{space} .

Invalid queries are rejected with an INVALID_ARGUMENT error.

ListSectionItemsResponse

Response message for listing section items.

Fields
section_items[]

SectionItem

The section items from the specified section.

next_page_token

string

A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.

ListSectionsRequest

Request message for listing sections.

Fields
parent

string

Required. The parent, which is the user resource name that owns this collection of sections. Only supports listing sections for the calling user. To refer to the calling user, set one of the following:

  • The me alias. For example, users/me .

  • Their Workspace email address. For example, users/user@example.com .

  • Their user id. For example, users/123456789 .

Format: users/{user}

page_size

int32

Optional. The maximum number of sections to return. The service may return fewer than this value.

If unspecified, at most 10 sections will be returned.

The maximum value is 100. If you use a value more than 100, it's automatically changed to 100.

Negative values return an INVALID_ARGUMENT error.

page_token

string

Optional. A page token, received from a previous list sections call. Provide this to retrieve the subsequent page.

When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.

ListSectionsResponse

Response message for listing sections.

Fields
sections[]

Section

The sections from the specified user.

next_page_token

string

A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.

ListSpaceEventsRequest

Request message for listing space events.

Fields
parent

string

Required. Resource name of the Google Chat space where the events occurred.

Format: spaces/{space} .

page_size

int32

Optional. The maximum number of space events returned. The service might return fewer than this value.

Negative values return an INVALID_ARGUMENT error.

page_token

string

Optional. A page token, received from a previous list space events call. Provide this to retrieve the subsequent page.

When paginating, all other parameters provided to list space events must match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.

filter

string

Required. A query filter.

You must specify at least one event type ( event_type ) using the has : operator. To filter by multiple event types, use the OR operator. Omit batch event types in your filter. The request automatically returns any related batch events. For example, if you filter by new reactions ( google.workspace.chat.reaction.v1.created ), the server also returns batch new reactions events ( google.workspace.chat.reaction.v1.batchCreated ). For a list of supported event types, see the SpaceEvents reference documentation .

Optionally, you can also filter by start time ( start_time ) and end time ( end_time ):

  • start_time : Exclusive timestamp from which to start listing space events. You can list events that occurred up to 28 days ago. If unspecified, lists space events from the past 28 days.
  • end_time : Inclusive timestamp until which space events are listed. If unspecified, lists events up to the time of the request.

To specify a start or end time, use the equals = operator and format in RFC-3339 . To filter by both start_time and end_time , use the AND operator.

For example, the following queries are valid:

start_time="2023-08-23T19:20:33+00:00" AND
end_time="2023-08-23T19:21:54+00:00"
start_time="2023-08-23T19:20:33+00:00" AND
(event_types:"google.workspace.chat.space.v1.updated" OR
event_types:"google.workspace.chat.message.v1.created")

The following queries are invalid:

start_time="2023-08-23T19:20:33+00:00" OR
end_time="2023-08-23T19:21:54+00:00"
event_types:"google.workspace.chat.space.v1.updated" AND
event_types:"google.workspace.chat.message.v1.created"

Invalid queries are rejected by the server with an INVALID_ARGUMENT error.

ListSpaceEventsResponse

Response message for listing space events.

Fields
space_events[]

SpaceEvent

Results are returned in chronological order (oldest event first). Note: The permissionSettings field is not returned in the Space object for list requests.

next_page_token

string

Continuation token used to fetch more events. If this field is omitted, there are no subsequent pages.

ListSpacesRequest

A request to list the spaces the caller is a member of.

Fields
page_size

int32

Optional. The maximum number of spaces to return. The service might return fewer than this value.

If unspecified, at most 100 spaces are returned.

The maximum value is 1000. If you use a value more than 1000, it's automatically changed to 1000.

Negative values return an INVALID_ARGUMENT error.

page_token

string

Optional. A page token, received from a previous list spaces call. Provide this parameter to retrieve the subsequent page.

When paginating, the filter value should match the call that provided the page token. Passing a different value may lead to unexpected results.

filter

string

Optional. A query filter.

You can filter spaces by the space type ( space_type ).

To filter by space type, you must specify valid enum value, such as SPACE or GROUP_CHAT (the space_type can't be SPACE_TYPE_UNSPECIFIED ). To query for multiple space types, use the OR operator.

For example, the following queries are valid:

space_type = "SPACE"
spaceType = "GROUP_CHAT" OR spaceType = "DIRECT_MESSAGE"

Invalid queries are rejected by the server with an INVALID_ARGUMENT error.

ListSpacesResponse

The response for a list spaces request.

Fields
spaces[]

Space

List of spaces in the requested (or first) page. Note: The permissionSettings field is not returned in the Space object for list requests.

next_page_token

string

You can send a token as pageToken to retrieve the next page of results. If empty, there are no subsequent pages.

MatchedUrl

A matched URL in a Chat message. Chat apps can preview matched URLs. For more information, see Preview links .

Fields
url

string

Output only. The URL that was matched.

MeetSpaceLinkData

Data for Meet space links.

Fields
meeting_code

string

Meeting code of the linked Meet space.

type

Type

Indicates the type of the Meet space.

huddle_status

HuddleStatus

Optional. Output only. If the Meet is a Huddle, indicates the status of the huddle. Otherwise, this is unset.

HuddleStatus

The status of the huddle

Перечисления
HUDDLE_STATUS_UNSPECIFIED Default value for the enum. Don't use.
STARTED The huddle has started.
ENDED The huddle has ended. In this case the Meet space URI and identifiers will no longer be valid.
MISSED The huddle has been missed. In this case the Meet space URI and identifiers will no longer be valid.

Тип

The type of the Meet space.

Перечисления
TYPE_UNSPECIFIED Default value for the enum. Don't use.
MEETING The Meet space is a meeting.
HUDDLE The Meet space is a huddle.

Членство

Represents a membership relation in Google Chat, such as whether a user or Chat app is invited to, part of, or absent from a space.

Fields
name

string

Identifier. Resource name of the membership, assigned by the server.

Format: spaces/{space}/members/{member}

state

MembershipState

Output only. State of the membership.

role

MembershipRole

Optional. User's role within a Chat space, which determines their permitted actions in the space.

This field can only be used as input in UpdateMembership .

create_time

Timestamp

Optional. Immutable. The creation time of the membership, such as when a member joined or was invited to join a space. This field is output only, except when used to import historical memberships in import mode spaces.

delete_time

Timestamp

Optional. Immutable. The deletion time of the membership, such as when a member left or was removed from a space. This field is output only, except when used to import historical memberships in import mode spaces.

Union field memberType . Member associated with this membership. Other member types might be supported in the future. memberType can be only one of the following:
member

User

Optional. The Google Chat user or app the membership corresponds to. If your Chat app authenticates as a user , the output populates the user name and type .

group_member

Group

Optional. The Google Group the membership corresponds to.

Reading or mutating memberships for Google Groups requires user authentication .

MembershipRole

Represents a user's permitted actions in a Chat space. More enum values might be added in the future.

Перечисления
MEMBERSHIP_ROLE_UNSPECIFIED Default value. For users : they aren't a member of the space, but can be invited. For Google Groups : they're always assigned this role (other enum values might be used in the future).
ROLE_MEMBER

A member of the space. In the Chat UI, this role is called Member.

The user has basic permissions, like sending messages to the space. Managers and owners can grant members additional permissions in a space, including:

  • Add or remove members.
  • Modify space details.
  • Turn history on or off.
  • Mention everyone in the space with @all .
  • Manage Chat apps and webhooks installed in the space.

In direct messages and unnamed group conversations, everyone has this role.

ROLE_MANAGER

A space owner. In the Chat UI, this role is called Owner.

The user has the complete set of space permissions to manage the space, including:

  • Change the role of other members in the space to member, manager, or owner.
  • Delete the space.

Only supported in SpaceType.SPACE (named spaces).

To learn more, see Learn more about your role as a space owner or manager .

ROLE_ASSISTANT_MANAGER

A space manager. In the Chat UI, this role is called Manager.

The user has all basic permissions of ROLE_MEMBER , and can be granted a subset of administrative permissions by an owner. By default, managers have all the permissions of an owner except for the ability to:

  • Delete the space.
  • Make another space member an owner.
  • Change an owner's role.

By default, managers permissions include but aren't limited to:

  • Make another member a manager.
  • Delete messages in the space.
  • Manage space permissions.
  • Receive notifications for requests to join the space if the manager has the "manage members" permission in the space settings.
  • Make a space discoverable.

Only supported in SpaceType.SPACE (named spaces).

To learn more, see Manage space settings .

MembershipState

Specifies the member's relationship with a space. Other membership states might be supported in the future.

Перечисления
MEMBERSHIP_STATE_UNSPECIFIED Default value. Don't use.
JOINED The user is added to the space, and can participate in the space.
INVITED The user is invited to join the space, but hasn't joined it.
NOT_A_MEMBER The user doesn't belong to the space and doesn't have a pending invitation to join the space.

MembershipBatchCreatedEventData

Event payload for multiple new memberships.

Event type: google.workspace.chat.membership.v1.batchCreated

Fields
memberships[]

MembershipCreatedEventData

A list of new memberships.

MembershipBatchDeletedEventData

Event payload for multiple deleted memberships.

Event type: google.workspace.chat.membership.v1.batchDeleted

Fields
memberships[]

MembershipDeletedEventData

A list of deleted memberships.

MembershipBatchUpdatedEventData

Event payload for multiple updated memberships.

Event type: google.workspace.chat.membership.v1.batchUpdated

Fields
memberships[]

MembershipUpdatedEventData

A list of updated memberships.

MembershipCreatedEventData

Event payload for a new membership.

Event type: google.workspace.chat.membership.v1.created .

Fields
membership

Membership

The new membership.

MembershipDeletedEventData

Event payload for a deleted membership.

Event type: google.workspace.chat.membership.v1.deleted

Fields
membership

Membership

The deleted membership. Only the name and state fields are populated.

MembershipUpdatedEventData

Event payload for an updated membership.

Event type: google.workspace.chat.membership.v1.updated

Fields
membership

Membership

The updated membership.

Сообщение

A message in a Google Chat space.

Fields
name

string

Identifier. Resource name of the message.

Format: spaces/{space}/messages/{message}

Where {space} is the ID of the space where the message is posted and {message} is a system-assigned ID for the message. For example, spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB .

If you set a custom ID when you create a message, you can use this ID to specify the message in a request by replacing {message} with the value from the clientAssignedMessageId field. For example, spaces/AAAAAAAAAAA/messages/client-custom-name . For details, see Name a message .

sender

User

Output only. The user who created the message. If your Chat app authenticates as a user , the output populates the user name and type .

create_time

Timestamp

Optional. Immutable. For spaces created in Chat, the time at which the message was created. This field is output only, except when used in import mode spaces.

For import mode spaces, set this field to the historical timestamp at which the message was created in the source in order to preserve the original creation time.

last_update_time

Timestamp

Output only. The time at which the message was last edited by a user. If the message has never been edited, this field is empty.

delete_time

Timestamp

Output only. The time at which the message was deleted in Google Chat. If the message is never deleted, this field is empty.

text

string

Optional. Plain-text body of the message. The first link to an image, video, or web page generates a preview chip . You can also @mention a Google Chat user , or everyone in the space.

To learn about creating text messages, see Send a message .

formatted_text

string

Output only. Contains the message text with markups added to communicate formatting. This field might not capture all formatting visible in the UI, but includes the following:

  • Markup syntax for bold, italic, strikethrough, monospace, monospace block, and bulleted list.

  • User mentions using the format <users/{user}> .

  • Custom hyperlinks using the format <{url}|{rendered_text}> where the first string is the URL and the second is the rendered text—for example, <http://example.com|custom text> .

  • Custom emoji using the format :{emoji_name}: —for example, :smile: . This doesn't apply to Unicode emoji, such as U+1F600 for a grinning face emoji.

  • Bullet list items using asterisks ( * )—for example, * item .

For more information, see View text formatting sent in a message

cards[]
(deprecated)

Card

Deprecated: Use cards_v2 instead.

Rich, formatted, and interactive cards that you can use to display UI elements such as: formatted texts, buttons, and clickable images. Cards are normally displayed below the plain-text body of the message. cards and cards_v2 can have a maximum size of 32 KB.

cards_v2[]

CardWithId

Optional. An array of cards .

Only Chat apps can create cards. If your Chat app authenticates as a user , the messages can't contain cards.

To learn how to create a message that contains cards, see Send a message .

Design and preview cards with the Card Builder.

Open the Card Builder

annotations[]

Annotation

Output only. Annotations can be associated with the plain-text body of the message or with chips that link to Google Workspace resources like Google Docs or Sheets with start_index and length of 0.

thread

Thread

The thread the message belongs to. For example usage, see Start or reply to a message thread .

space

Space

Output only. If your Chat app authenticates as a user , the output only populates the space name .

fallback_text

string

Optional. A plain-text description of the message's cards, used when the actual cards can't be displayed—for example, mobile notifications.

action_response

ActionResponse

Input only. Parameters that a Chat app can use to configure how its response is posted.

argument_text

string

Output only. Plain-text body of the message with all Chat app mentions stripped out.

slash_command

SlashCommand

Output only. Slash command information, if applicable.

attachment[]

Attachment

Optional. User-uploaded attachment.

matched_url

MatchedUrl

Output only. A URL in spaces.messages.text that matches a link preview pattern. For more information, see Preview links .

thread_reply

bool

Output only. When true , the message is a response in a reply thread. When false , the message is visible in the space's top-level conversation as either the first message of a thread or a message with no threaded replies.

If the space doesn't support reply in threads, this field is always false .

client_assigned_message_id

string

Optional. A custom ID for the message. You can use field to identify a message, or to get, delete, or update a message. To set a custom ID, specify the messageId field when you create the message. For details, see Name a message .

emoji_reaction_summaries[]

EmojiReactionSummary

Output only. The list of emoji reaction summaries on the message.

private_message_viewer

User

Optional. Immutable. Input for creating a message, otherwise output only. The user that can view the message. When set, the message is private and only visible to the specified user and the Chat app. To include this field in your request, you must call the Chat API using app authentication and omit the following:

For details, see Send a message privately .

deletion_metadata

DeletionMetadata

Output only. Information about a deleted message. A message is deleted when delete_time is set.

quoted_message_metadata

QuotedMessageMetadata

Optional. Information about a message that another message quotes.

When you create a message, you can quote messages within the same thread, or quote a root message to create a new root message. However, you can't quote a message reply from a different thread.

When you update a message, you can't add or replace the quotedMessageMetadata field, but you can remove it.

For example usage, see Quote another message .

attached_gifs[]

AttachedGif

Output only. GIF images that are attached to the message.

accessory_widgets[]

AccessoryWidget

Optional. One or more interactive widgets that appear at the bottom of a message. You can add accessory widgets to messages that contain text, cards, or both text and cards. Not supported for messages that contain dialogs. For details, see Add interactive widgets at the bottom of a message .

Creating a message with accessory widgets requires app authentication .

MessageBatchCreatedEventData

Event payload for multiple new messages.

Event type: google.workspace.chat.message.v1.batchCreated

Fields
messages[]

MessageCreatedEventData

A list of new messages.

MessageBatchDeletedEventData

Event payload for multiple deleted messages.

Event type: google.workspace.chat.message.v1.batchDeleted

Fields
messages[]

MessageDeletedEventData

A list of deleted messages.

MessageBatchUpdatedEventData

Event payload for multiple updated messages.

Event type: google.workspace.chat.message.v1.batchUpdated

Fields
messages[]

MessageUpdatedEventData

A list of updated messages.

MessageCreatedEventData

Event payload for a new message.

Event type: google.workspace.chat.message.v1.created

Fields
message

Message

The new message.

MessageDeletedEventData

Event payload for a deleted message.

Event type: google.workspace.chat.message.v1.deleted

Fields
message

Message

The deleted message. Only the name , createTime , and deletionMetadata fields are populated.

MessageUpdatedEventData

Event payload for an updated message.

Event type: google.workspace.chat.message.v1.updated

Fields
message

Message

The updated message.

MoveSectionItemRequest

Request message for moving a section item across sections.

Fields
name

string

Required. The resource name of the section item to move.

Format: users/{user}/sections/{section}/items/{item}

target_section

string

Required. The resource name of the section to move the section item to.

Format: users/{user}/sections/{section}

MoveSectionItemResponse

Response message for moving a section item.

Fields
section_item

SectionItem

The updated section item.

PositionSectionRequest

Request message for positioning a section.

Fields
name

string

Required. The resource name of the section to position.

Format: users/{user}/sections/{section}

Union field position . Required. The new position of the section. position can be only one of the following:
sort_order

int32

Optional. The absolute position of the section in the list of sections. The position must be greater than 0. If the position is greater than the number of sections, the section will be appended to the end of the list. This operation inserts the section at the given position and shifts the original section at that position, and those below it, to the next position.

relative_position

Position

Optional. The relative position of the section in the list of sections.

Позиция

The position of the section.

Перечисления
POSITION_UNSPECIFIED Unspecified position.
START Start of the list of sections.
END End of the list of sections.

PositionSectionResponse

Response message for positioning a section.

Fields
section

Section

The updated section.

QuotedMessageMetadata

Information about a message that another message quotes.

When you create a message, you can quote messages within the same thread, or quote a root message to create a new root message. However, you can't quote a message reply from a different thread.

When you update a message, you can't add or replace the quotedMessageMetadata field, but you can remove it.

For example usage, see Quote another message .

Fields
name

string

Required. Resource name of the message that is quoted.

Format: spaces/{space}/messages/{message}

last_update_time

Timestamp

Required. The timestamp when the quoted message was created or when the quoted message was last updated.

If the message was edited, use this field, last_update_time . If the message was never edited, use create_time .

If last_update_time doesn't match the latest version of the quoted message, the request fails.

Реакция

A reaction to a message.

Fields
name

string

Identifier. The resource name of the reaction.

Format: spaces/{space}/messages/{message}/reactions/{reaction}

user

User

Output only. The user who created the reaction.

emoji

Emoji

Required. The emoji used in the reaction.

ReactionBatchCreatedEventData

Event payload for multiple new reactions.

Event type: google.workspace.chat.reaction.v1.batchCreated

Fields
reactions[]

ReactionCreatedEventData

A list of new reactions.

ReactionBatchDeletedEventData

Event payload for multiple deleted reactions.

Event type: google.workspace.chat.reaction.v1.batchDeleted

Fields
reactions[]

ReactionDeletedEventData

A list of deleted reactions.

ReactionCreatedEventData

Event payload for a new reaction.

Event type: google.workspace.chat.reaction.v1.created

Fields
reaction

Reaction

The new reaction.

ReactionDeletedEventData

Event payload for a deleted reaction.

Type: google.workspace.chat.reaction.v1.deleted

Fields
reaction

Reaction

The deleted reaction.

RichLinkMetadata

A rich link to a resource. Rich links can be associated with the plain-text body of the message or represent chips that link to Google Workspace resources like Google Docs or Sheets with start_index and length of 0.

Fields
uri

string

The URI of this link.

Union field data . Data for the linked resource. data can be only one of the following:

RichLinkType

The rich link type. More types might be added in the future.

Перечисления
DRIVE_FILE A Google Drive rich link type.
CHAT_SPACE A Chat space rich link type. For example, a space smart chip.
GMAIL_MESSAGE A Gmail message rich link type. Specifically, a Gmail chip from Share to Chat . The API only supports reading messages with GMAIL_MESSAGE rich links.
MEET_SPACE A Meet message rich link type. For example, a Meet chip.
CALENDAR_EVENT A Calendar message rich link type. For example, a Calendar chip.

SearchSpacesRequest

Request to search for a list of spaces based on a query.

Fields
use_admin_access

bool

When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires either the chat.admin.spaces.readonly or chat.admin.spaces OAuth 2.0 scope .

This method currently only supports admin access, thus only true is accepted for this field.

page_size

int32

The maximum number of spaces to return. The service may return fewer than this value.

If unspecified, at most 100 spaces are returned.

The maximum value is 1000. If you use a value more than 1000, it's automatically changed to 1000.

page_token

string

A token, received from the previous search spaces call. Provide this parameter to retrieve the subsequent page.

When paginating, all other parameters provided should match the call that provided the page token. Passing different values to the other parameters might lead to unexpected results.

query

string

Required. A search query.

You can search by using the following parameters:

  • create_time
  • customer
  • display_name
  • external_user_allowed
  • last_active_time
  • space_history_state
  • space_type

create_time and last_active_time accept a timestamp in RFC-3339 format and the supported comparison operators are: = , < , > , <= , >= .

customer is required and is used to indicate which customer to fetch spaces from. customers/my_customer is the only supported value.

display_name only accepts the HAS ( : ) operator. The text to match is first tokenized into tokens and each token is prefix-matched case-insensitively and independently as a substring anywhere in the space's display_name . For example, Fun Eve matches Fun event or The evening was fun , but not notFun event or even .

external_user_allowed accepts either true or false .

space_history_state only accepts values from the historyState field of a space resource.

space_type is required and the only valid value is SPACE .

Across different fields, only AND operators are supported. A valid example is space_type = "SPACE" AND display_name:"Hello" and an invalid example is space_type = "SPACE" OR display_name:"Hello" .

Among the same field, space_type doesn't support AND or OR operators. display_name , 'space_history_state', and 'external_user_allowed' only support OR operators. last_active_time and create_time support both AND and OR operators. AND can only be used to represent an interval, such as last_active_time < "2022-01-01T00:00:00+00:00" AND last_active_time > "2023-01-01T00:00:00+00:00" .

The following example queries are valid:

customer = "customers/my_customer" AND space_type = "SPACE"

customer = "customers/my_customer" AND space_type = "SPACE" AND
display_name:"Hello World"

customer = "customers/my_customer" AND space_type = "SPACE" AND
(last_active_time < "2020-01-01T00:00:00+00:00" OR last_active_time >
"2022-01-01T00:00:00+00:00")

customer = "customers/my_customer" AND space_type = "SPACE" AND
(display_name:"Hello World" OR display_name:"Fun event") AND
(last_active_time > "2020-01-01T00:00:00+00:00" AND last_active_time <
"2022-01-01T00:00:00+00:00")

customer = "customers/my_customer" AND space_type = "SPACE" AND
(create_time > "2019-01-01T00:00:00+00:00" AND create_time <
"2020-01-01T00:00:00+00:00") AND (external_user_allowed = "true") AND
(space_history_state = "HISTORY_ON" OR space_history_state = "HISTORY_OFF")
order_by

string

Optional. How the list of spaces is ordered.

Supported attributes to order by are:

  • membership_count.joined_direct_human_user_count — Denotes the count of human users that have directly joined a space.
  • last_active_time — Denotes the time when last eligible item is added to any topic of this space.
  • create_time — Denotes the time of the space creation.

Valid ordering operation values are:

  • ASC for ascending. Default value.

  • DESC for descending.

The supported syntax are:

  • membership_count.joined_direct_human_user_count DESC
  • membership_count.joined_direct_human_user_count ASC
  • last_active_time DESC
  • last_active_time ASC
  • create_time DESC
  • create_time ASC

SearchSpacesResponse

Response with a list of spaces corresponding to the search spaces request.

Fields
spaces[]

Space

A page of the requested spaces.

next_page_token

string

A token that can be used to retrieve the next page. If this field is empty, there are no subsequent pages.

total_size

int32

The total number of spaces that match the query, across all pages. If the result is over 10,000 spaces, this value is an estimate.

Раздел

Represents a section in Google Chat. Sections help users organize their spaces. There are two types of sections:

  1. System Sections: These are predefined sections managed by Google Chat. Their resource names are fixed, and they cannot be created, deleted, or have their display_name modified. Examples include:

    • users/{user}/sections/default-direct-messages
    • users/{user}/sections/default-spaces
    • users/{user}/sections/default-apps
  2. Custom Sections: These are sections created and managed by the user. Creating a custom section using CreateSection requires a display_name . Custom sections can be updated using UpdateSection and deleted using DeleteSection .

Fields
name

string

Identifier. Resource name of the section.

For system sections, the section ID is a constant string:

  • DEFAULT_DIRECT_MESSAGES: users/{user}/sections/default-direct-messages
  • DEFAULT_SPACES: users/{user}/sections/default-spaces
  • DEFAULT_APPS: users/{user}/sections/default-apps

Format: users/{user}/sections/{section}

display_name

string

Required. The section's display name. Only populated for sections of type CUSTOM_SECTION . Supports up to 80 characters. Required when creating a CUSTOM_SECTION .

sort_order

int32

Output only. The order of the section in relation to other sections. Sections with a lower sort_order value appear before sections with a higher value.

type

SectionType

Required. The type of the section.

SectionType

Section types.

Перечисления
SECTION_TYPE_UNSPECIFIED Unspecified section type.
CUSTOM_SECTION Custom section.
DEFAULT_DIRECT_MESSAGES Default section containing DIRECT_MESSAGE between two human users or GROUP_CHAT spaces that don't belong to any custom section.
DEFAULT_SPACES Default spaces that don't belong to any custom section.
DEFAULT_APPS Default section containing a user's installed apps.

SectionItem

A user's defined section item. This is used to represent section items, such as spaces, grouped under a section.

Fields
name

string

Identifier. The resource name of the section item.

Format: users/{user}/sections/{section}/items/{item}

Union field item . Required. The section item. item can be only one of the following:
space

string

Optional. The space resource name.

Format: spaces/{space}

SetUpSpaceRequest

Request to create a space and add specified users to it.

Fields
space

Space

Required. The Space.spaceType field is required.

To create a space, set Space.spaceType to SPACE and set Space.displayName . If you receive the error message ALREADY_EXISTS when setting up a space, try a different displayName . An existing space within the Google Workspace organization might already use this display name.

To create a group chat, set Space.spaceType to GROUP_CHAT . Don't set Space.displayName .

To create a 1:1 conversation between humans, set Space.spaceType to DIRECT_MESSAGE and set Space.singleUserBotDm to false . Don't set Space.displayName or Space.spaceDetails .

To create an 1:1 conversation between a human and the calling Chat app, set Space.spaceType to DIRECT_MESSAGE and Space.singleUserBotDm to true . Don't set Space.displayName or Space.spaceDetails .

If a DIRECT_MESSAGE space already exists, that space is returned instead of creating a new space.

request_id

string

Optional. A unique identifier for this request. A random UUID is recommended. Specifying an existing request ID returns the space created with that ID instead of creating a new space. Specifying an existing request ID from the same Chat app with a different authenticated user returns an error.

memberships[]

Membership

Optional. The Google Chat users or groups to invite to join the space. Omit the calling user, as they are added automatically.

The set currently allows up to 49 memberships (in addition to the caller).

For human membership, the Membership.member field must contain a user with name populated (format: users/{user} ) and type set to User.Type.HUMAN . You can only add human users when setting up a space (adding Chat apps is only supported for direct message setup with the calling app). You can also add members using the user's email as an alias for {user}. For example, the user.name can be users/example@gmail.com . To invite Gmail users or users from external Google Workspace domains, user's email must be used for {user} .

For Google group membership, the Membership.group_member field must contain a group with name populated (format groups/{group} ). You can only add Google groups when setting Space.spaceType to SPACE .

Optional when setting Space.spaceType to SPACE .

Required when setting Space.spaceType to GROUP_CHAT , along with at least two memberships.

Required when setting Space.spaceType to DIRECT_MESSAGE with a human user, along with exactly one membership.

Must be empty when creating a 1:1 conversation between a human and the calling Chat app (when setting Space.spaceType to DIRECT_MESSAGE and Space.singleUserBotDm to true ).

SlashCommand

Metadata about a slash command in Google Chat.

Fields
command_id

int64

The ID of the slash command.

SlashCommandMetadata

Annotation metadata for slash commands (/).

Fields
bot

User

The Chat app whose command was invoked.

type

Type

The type of slash command.

command_name

string

The name of the invoked slash command.

command_id

int64

The command ID of the invoked slash command.

triggers_dialog

bool

Indicates whether the slash command is for a dialog.

Тип

Перечисления
TYPE_UNSPECIFIED Default value for the enum. Don't use.
ADD Add Chat app to space.
INVOKE Invoke slash command in space.

Космос

A space in Google Chat. Spaces are conversations between two or more users or 1:1 messages between a user and a Chat app.

Fields
name

string

Identifier. Resource name of the space.

Format: spaces/{space}

Where {space} represents the system-assigned ID for the space. You can obtain the space ID by calling the spaces.list() method or from the space URL. For example, if the space URL is https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA , the space ID is AAAAAAAAA .

type
(deprecated)

Type

Output only. Deprecated: Use space_type instead. The type of a space.

space_type

SpaceType

Optional. The type of space. Required when creating a space or updating the space type of a space. Output only for other usage.

single_user_bot_dm

bool

Optional. Whether the space is a DM between a Chat app and a single human.

threaded
(deprecated)

bool

Output only. Deprecated: Use spaceThreadingState instead. Whether messages are threaded in this space.

display_name

string

Optional. The space's display name. Required when creating a space with a spaceType of SPACE . If you receive the error message ALREADY_EXISTS when creating a space or updating the displayName , try a different displayName . An existing space within the Google Workspace organization might already use this display name.

For direct messages, this field might be empty.

Supports up to 128 characters.

external_user_allowed

bool

Optional. Immutable. Whether this space permits any Google Chat user as a member. Input when creating a space in a Google Workspace organization. Omit this field when creating spaces in the following conditions:

  • The authenticated user uses a consumer account (unmanaged user account). By default, a space created by a consumer account permits any Google Chat user.

For existing spaces, this field is output only.

space_threading_state

SpaceThreadingState

Output only. The threading state in the Chat space.

space_details

SpaceDetails

Optional. Details about the space including description and rules.

space_history_state

HistoryState

Optional. The message history state for messages and threads in this space.

import_mode

bool

Optional. Whether this space is created in Import Mode as part of a data migration into Google Workspace. While spaces are being imported, they aren't visible to users until the import is complete.

Creating a space in Import Mode requires user authentication .

create_time

Timestamp

Optional. Immutable. For spaces created in Chat, the time the space was created. This field is output only, except when used in import mode spaces.

For import mode spaces, set this field to the historical timestamp at which the space was created in the source in order to preserve the original creation time.

Only populated in the output when spaceType is GROUP_CHAT or SPACE .

last_active_time

Timestamp

Output only. Timestamp of the last message in the space.

admin_installed

bool

Output only. For direct message (DM) spaces with a Chat app, whether the space was created by a Google Workspace administrator. Administrators can install and set up a direct message with a Chat app on behalf of users in their organization.

To support admin install, your Chat app must feature direct messaging.

membership_count

MembershipCount

Output only. The count of joined memberships grouped by member type. Populated when the space_type is SPACE , DIRECT_MESSAGE or GROUP_CHAT .

access_settings

AccessSettings

Optional. Specifies the access setting of the space. Only populated when the space_type is SPACE .

space_uri

string

Output only. The URI for a user to access the space.

import_mode_expire_time

Timestamp

Output only. The time when the space will be automatically deleted by the system if it remains in import mode.

Each space created in import mode must exit this mode before this expire time using spaces.completeImport .

This field is only populated for spaces that were created with import mode.

customer

string

Optional. Immutable. The customer id of the domain of the space. Required only when creating a space with app authentication and SpaceType is SPACE , otherwise should not be set.

In the format customers/{customer} , where customer is the id from the Admin SDK customer resource . Private apps can also use the customers/my_customer alias to create the space in the same Google Workspace organization as the app.

This field isn't populated for direct messages (DMs) or when the space is created by non-Google Workspace users.

Union field space_permission_settings . Represents the permission settings of a space. Only populated when the space_type is SPACE . space_permission_settings can be only one of the following:
predefined_permission_settings

PredefinedPermissionSettings

Optional. Input only. Predefined space permission settings, input only when creating a space. If the field is not set, a collaboration space is created. After you create the space, settings are populated in the PermissionSettings field.

Setting predefined permission settings supports:

permission_settings

PermissionSettings

Optional. Space permission settings for existing spaces. Input for updating exact space permission settings, where existing permission settings are replaced. Output lists current permission settings.

Reading and updating permission settings supports:

AccessSettings

Represents the access setting of the space.

Fields
access_state

AccessState

Output only. Indicates the access state of the space.

audience

string

Optional. The resource name of the target audience who can discover the space, join the space, and preview the messages in the space. If unset, only users or Google Groups who have been individually invited or added to the space can access it. For details, see Make a space discoverable to a target audience .

Format: audiences/{audience}

To use the default target audience for the Google Workspace organization, set to audiences/default .

Reading the target audience supports:

This field is not populated when using the chat.bot scope with app authentication .

Setting the target audience requires user authentication .

AccessState

Represents the access state of the space.

Перечисления
ACCESS_STATE_UNSPECIFIED Access state is unknown or not supported in this API.
PRIVATE Only users or Google Groups that have been individually added or invited by other users or Google Workspace administrators can discover and access the space.
DISCOVERABLE

A space manager has granted a target audience access to the space. Users or Google Groups that have been individually added or invited to the space can also discover and access the space. To learn more, see Make a space discoverable to specific users .

Creating discoverable spaces requires user authentication .

MembershipCount

Represents the count of memberships of a space, grouped into categories.

Fields
joined_direct_human_user_count

int32

Output only. Count of human users that have directly joined the space, not counting users joined by having membership in a joined group.

joined_group_count

int32

Output only. Count of all groups that have directly joined the space.

PermissionSetting

Represents a space permission setting.

Fields
managers_allowed

bool

Optional. Whether space owners ( ROLE_MANAGER ) have this permission.

members_allowed

bool

Optional. Whether basic space members ( ROLE_MEMBER ) have this permission.

assistant_managers_allowed

bool

Optional. Whether space managers ROLE_ASSISTANT_MANAGER ) have this permission.

PermissionSettings

Permission settings that you can specify when updating an existing named space.

To set permission settings when creating a space, specify the PredefinedPermissionSettings field in your request.

Fields
manage_members_and_groups

PermissionSetting

Optional. Setting for managing members and groups in a space.

modify_space_details

PermissionSetting

Optional. Setting for updating space name, avatar, description and guidelines.

toggle_history

PermissionSetting

Optional. Setting for toggling space history on and off.

use_at_mention_all

PermissionSetting

Optional. Setting for using @all in a space.

manage_apps

PermissionSetting

Optional. Setting for managing apps in a space.

manage_webhooks

PermissionSetting

Optional. Setting for managing webhooks in a space.

post_messages

PermissionSetting

Output only. Setting for posting messages in a space.

reply_messages

PermissionSetting

Optional. Setting for replying to messages in a space.

PredefinedPermissionSettings

Predefined permission settings that you can only specify when creating a named space. More settings might be added in the future. For details about permission settings for named spaces, see Learn about spaces .

Перечисления
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED Unspecified. Don't use.
COLLABORATION_SPACE Setting to make the space a collaboration space where all members can post messages.
ANNOUNCEMENT_SPACE Setting to make the space an announcement space where only space managers can post messages.

SpaceDetails

Details about the space including description and rules.

Fields
description

string

Optional. A description of the space. For example, describe the space's discussion topic, functional purpose, or participants.

Supports up to 150 characters.

guidelines

string

Optional. The space's rules, expectations, and etiquette.

Supports up to 5,000 characters.

SpaceThreadingState

Specifies the type of threading state in the Chat space.

Перечисления
SPACE_THREADING_STATE_UNSPECIFIED Сдержанный.
THREADED_MESSAGES Named spaces that support message threads. When users respond to a message, they can reply in-thread, which keeps their response in the context of the original message.
GROUPED_MESSAGES Named spaces where the conversation is organized by topic. Topics and their replies are grouped together.
UNTHREADED_MESSAGES Direct messages (DMs) between two people and group conversations between 3 or more people.

SpaceType

The type of space. Required when creating or updating a space. Output only for other usage.

Перечисления
SPACE_TYPE_UNSPECIFIED Сдержанный.
SPACE A place where people send messages, share files, and collaborate. A SPACE can include Chat apps.
GROUP_CHAT Group conversations between 3 or more people. A GROUP_CHAT can include Chat apps.
DIRECT_MESSAGE 1:1 messages between two humans or a human and a Chat app.

Тип

Deprecated: Use SpaceType instead.

Перечисления
TYPE_UNSPECIFIED Сдержанный.
ROOM Conversations between two or more humans.
DM 1:1 Direct Message between a human and a Chat app, where all messages are flat. Note that this doesn't include direct messages between two humans.

SpaceBatchUpdatedEventData

Event payload for multiple updates to a space.

Event type: google.workspace.chat.space.v1.batchUpdated

Fields
spaces[]

SpaceUpdatedEventData

A list of updated spaces.

Космическое событие

An event that represents a change or activity in a Google Chat space. To learn more, see Work with events from Google Chat .

Fields
name

string

Resource name of the space event.

Format: spaces/{space}/spaceEvents/{spaceEvent}

event_time

Timestamp

Time when the event occurred.

event_type

string

Type of space event. Each event type has a batch version, which represents multiple instances of the event type that occur in a short period of time. For spaceEvents.list() requests, omit batch event types in your query filter. By default, the server returns both event type and its batch version.

Supported event types for messages :

  • New message: google.workspace.chat.message.v1.created
  • Updated message: google.workspace.chat.message.v1.updated
  • Deleted message: google.workspace.chat.message.v1.deleted
  • Multiple new messages: google.workspace.chat.message.v1.batchCreated
  • Multiple updated messages: google.workspace.chat.message.v1.batchUpdated
  • Multiple deleted messages: google.workspace.chat.message.v1.batchDeleted

Supported event types for memberships :

  • New membership: google.workspace.chat.membership.v1.created
  • Updated membership: google.workspace.chat.membership.v1.updated
  • Deleted membership: google.workspace.chat.membership.v1.deleted
  • Multiple new memberships: google.workspace.chat.membership.v1.batchCreated
  • Multiple updated memberships: google.workspace.chat.membership.v1.batchUpdated
  • Multiple deleted memberships: google.workspace.chat.membership.v1.batchDeleted

Supported event types for reactions :

  • New reaction: google.workspace.chat.reaction.v1.created
  • Deleted reaction: google.workspace.chat.reaction.v1.deleted
  • Multiple new reactions: google.workspace.chat.reaction.v1.batchCreated
  • Multiple deleted reactions: google.workspace.chat.reaction.v1.batchDeleted

Supported event types about the space :

  • Updated space: google.workspace.chat.space.v1.updated
  • Multiple space updates: google.workspace.chat.space.v1.batchUpdated

Union field payload .

payload can be only one of the following:

message_created_event_data

MessageCreatedEventData

Event payload for a new message.

Event type: google.workspace.chat.message.v1.created

message_updated_event_data

MessageUpdatedEventData

Event payload for an updated message.

Event type: google.workspace.chat.message.v1.updated

message_deleted_event_data

MessageDeletedEventData

Event payload for a deleted message.

Event type: google.workspace.chat.message.v1.deleted

message_batch_created_event_data

MessageBatchCreatedEventData

Event payload for multiple new messages.

Event type: google.workspace.chat.message.v1.batchCreated

message_batch_updated_event_data

MessageBatchUpdatedEventData

Event payload for multiple updated messages.

Event type: google.workspace.chat.message.v1.batchUpdated

message_batch_deleted_event_data

MessageBatchDeletedEventData

Event payload for multiple deleted messages.

Event type: google.workspace.chat.message.v1.batchDeleted

space_updated_event_data

SpaceUpdatedEventData

Event payload for a space update.

Event type: google.workspace.chat.space.v1.updated

space_batch_updated_event_data

SpaceBatchUpdatedEventData

Event payload for multiple updates to a space.

Event type: google.workspace.chat.space.v1.batchUpdated

membership_created_event_data

MembershipCreatedEventData

Event payload for a new membership.

Event type: google.workspace.chat.membership.v1.created

membership_updated_event_data

MembershipUpdatedEventData

Event payload for an updated membership.

Event type: google.workspace.chat.membership.v1.updated

membership_deleted_event_data

MembershipDeletedEventData

Event payload for a deleted membership.

Event type: google.workspace.chat.membership.v1.deleted

membership_batch_created_event_data

MembershipBatchCreatedEventData

Event payload for multiple new memberships.

Event type: google.workspace.chat.membership.v1.batchCreated

membership_batch_updated_event_data

MembershipBatchUpdatedEventData

Event payload for multiple updated memberships.

Event type: google.workspace.chat.membership.v1.batchUpdated

membership_batch_deleted_event_data

MembershipBatchDeletedEventData

Event payload for multiple deleted memberships.

Event type: google.workspace.chat.membership.v1.batchDeleted

reaction_created_event_data

ReactionCreatedEventData

Event payload for a new reaction.

Event type: google.workspace.chat.reaction.v1.created

reaction_deleted_event_data

ReactionDeletedEventData

Event payload for a deleted reaction.

Event type: google.workspace.chat.reaction.v1.deleted

reaction_batch_created_event_data

ReactionBatchCreatedEventData

Event payload for multiple new reactions.

Event type: google.workspace.chat.reaction.v1.batchCreated

reaction_batch_deleted_event_data

ReactionBatchDeletedEventData

Event payload for multiple deleted reactions.

Event type: google.workspace.chat.reaction.v1.batchDeleted

SpaceNotificationSetting

The notification setting of a user in a space.

Fields
name

string

Identifier. The resource name of the space notification setting. Format: users/{user}/spaces/{space}/spaceNotificationSetting .

notification_setting

NotificationSetting

The notification setting.

mute_setting

MuteSetting

The space notification mute setting.

MuteSetting

The space notification mute setting types.

Перечисления
MUTE_SETTING_UNSPECIFIED Сдержанный.
UNMUTED The user will receive notifications for the space based on the notification setting.
MUTED The user will not receive any notifications for the space, regardless of the notification setting.

NotificationSetting

The notification setting types. Other types might be supported in the future.

Перечисления
NOTIFICATION_SETTING_UNSPECIFIED Сдержанный.
ALL Notifications are triggered by @mentions, followed threads, first message of new threads. All new threads are automatically followed, unless manually unfollowed by the user.
MAIN_CONVERSATIONS The notification is triggered by @mentions, followed threads, first message of new threads. Not available for 1:1 direct messages.
FOR_YOU The notification is triggered by @mentions, followed threads. Not available for 1:1 direct messages.
OFF Notification is off.

SpaceReadState

A user's read state within a space, used to identify read and unread messages.

Fields
name

string

Resource name of the space read state.

Format: users/{user}/spaces/{space}/spaceReadState

last_read_time

Timestamp

Optional. The time when the user's space read state was updated. Usually this corresponds with either the timestamp of the last read message, or a timestamp specified by the user to mark the last read position in a space.

SpaceUpdatedEventData

Event payload for an updated space.

Event type: google.workspace.chat.space.v1.updated

Fields
space

Space

The updated space.

SpaceView

A view that specifies which fields should be populated on the Space resource. To ensure compatibility with future releases, we recommend that your code account for additional values.

Перечисления
SPACE_VIEW_UNSPECIFIED The default / unset value.
SPACE_VIEW_RESOURCE_NAME_ONLY Populates only the Space resource name.
SPACE_VIEW_EXPANDED Populates Space resource fields. Note: the permissionSettings field will not be populated. Requests that specify SPACE_VIEW_EXPANDED must include scopes that allow reading space data, for example, https://www.googleapis.com/auth/chat.spaces or https://www.googleapis.com/auth/chat.spaces.readonly .

Нить

A thread in a Google Chat space. For example usage, see Start or reply to a message thread .

If you specify a thread when creating a message, you can set the messageReplyOption field to determine what happens if no matching thread is found.

Fields
name

string

Identifier. Resource name of the thread.

Example: spaces/{space}/threads/{thread}

thread_key

string

Optional. Input for creating or updating a thread. Otherwise, output only. ID for the thread. Supports up to 4000 characters.

This ID is unique to the Chat app that sets it. For example, if multiple Chat apps create a message using the same thread key, the messages are posted in different threads. To reply in a thread created by a person or another Chat app, specify the thread name field instead.

ThreadReadState

A user's read state within a thread, used to identify read and unread messages.

Fields
name

string

Resource name of the thread read state.

Format: users/{user}/spaces/{space}/threads/{thread}/threadReadState

last_read_time

Timestamp

The time when the user's thread read state was updated. Usually this corresponds with the timestamp of the last read message in a thread.

UpdateMembershipRequest

Request message for updating a membership.

Fields
membership

Membership

Required. The membership to update. Only fields specified by update_mask are updated.

update_mask

FieldMask

Required. The field paths to update. Separate multiple values with commas or use * to update all field paths.

Currently supported field paths:

  • role
use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires the chat.admin.memberships OAuth 2.0 scope .

UpdateMessageRequest

Request to update a message.

Fields
message

Message

Required. Message with fields updated.

update_mask

FieldMask

Required. The field paths to update. Separate multiple values with commas or use * to update all field paths.

Currently supported field paths:

allow_missing

bool

Optional. If true and the message isn't found, a new message is created and updateMask is ignored. The specified message ID must be client-assigned or the request fails.

UpdateSectionRequest

Request message for updating a section.

Fields
section

Section

Required. The section to update.

update_mask

FieldMask

Required. The mask to specify which fields to update.

Currently supported field paths:

  • display_name

UpdateSpaceNotificationSettingRequest

Request to update the space notification settings. Only supports updating notification setting for the calling user.

Fields
space_notification_setting

SpaceNotificationSetting

Required. The resource name for the space notification settings must be populated in the form of users/{user}/spaces/{space}/spaceNotificationSetting . Only fields specified by update_mask are updated.

update_mask

FieldMask

Required. Supported field paths:

  • notification_setting

  • mute_setting

UpdateSpaceReadStateRequest

Request message for UpdateSpaceReadState API.

Fields
space_read_state

SpaceReadState

Required. The space read state and fields to update.

Only supports updating read state for the calling user.

To refer to the calling user, set one of the following:

  • The me alias. For example, users/me/spaces/{space}/spaceReadState .

  • Their Workspace email address. For example, users/user@example.com/spaces/{space}/spaceReadState .

  • Their user id. For example, users/123456789/spaces/{space}/spaceReadState .

Format: users/{user}/spaces/{space}/spaceReadState

update_mask

FieldMask

Required. The field paths to update. Currently supported field paths:

  • last_read_time

When the last_read_time is before the latest message create time, the space appears as unread in the UI.

To mark the space as read, set last_read_time to any value later (larger) than the latest message create time. The last_read_time is coerced to match the latest message create time. Note that the space read state only affects the read state of messages that are visible in the space's top-level conversation. Replies in threads are unaffected by this timestamp, and instead rely on the thread read state.

UpdateSpaceRequest

A request to update a single space.

Fields
space

Space

Required. Space with fields to be updated. Space.name must be populated in the form of spaces/{space} . Only fields specified by update_mask are updated.

update_mask

FieldMask

Required. The updated field paths, comma separated if there are multiple.

You can update the following fields for a space:

space_details : Updates the space's description and guidelines. You must pass both description and guidelines in the update request as SpaceDetails . If you only want to update one of the fields, pass the existing value for the other field.

display_name : Only supports updating the display name for spaces where spaceType field is SPACE . If you receive the error message ALREADY_EXISTS , try a different value. An existing space within the Google Workspace organization might already use this display name.

space_type : Only supports changing a GROUP_CHAT space type to SPACE . Include display_name together with space_type in the update mask and ensure that the specified space has a non-empty display name and the SPACE space type. Including the space_type mask and the SPACE type in the specified space when updating the display name is optional if the existing space already has the SPACE type. Trying to update the space type in other ways results in an invalid argument error. space_type is not supported with useAdminAccess .

space_history_state : Updates space history settings by turning history on or off for the space. Only supported if history settings are enabled for the Google Workspace organization. To update the space history state, you must omit all other field masks in your request. space_history_state is not supported with useAdminAccess .

access_settings.audience : Updates the access setting of who can discover the space, join the space, and preview the messages in named space where spaceType field is SPACE . If the existing space has a target audience, you can remove the audience and restrict space access by omitting a value for this field mask. To update access settings for a space, the authenticating user must be a space manager and omit all other field masks in your request. You can't update this field if the space is in import mode . To learn more, see Make a space discoverable to specific users . access_settings.audience is not supported with useAdminAccess .

permission_settings : Supports changing the permission settings of a space. When updating permission settings, you can only specify permissionSettings field masks; you cannot update other field masks at the same time. The supported field masks include:

  • permission_settings.manageMembersAndGroups
  • permission_settings.modifySpaceDetails
  • permission_settings.toggleHistory
  • permission_settings.useAtMentionAll
  • permission_settings.manageApps
  • permission_settings.manageWebhooks
  • permission_settings.replyMessages
use_admin_access

bool

Optional. When true , the method runs using the user's Google Workspace administrator privileges.

The calling user must be a Google Workspace administrator with the manage chat and spaces conversations privilege .

Requires the chat.admin.spaces OAuth 2.0 scope .

Some FieldMask values are not supported using admin access. For details, see the description of update_mask .

Пользователь

A user in Google Chat. When returned as an output from a request, if your Chat app authenticates as a user , the output for a User resource only populates the user's name and type .

Fields
name

string

Resource name for a Google Chat user .

Format: users/{user} . users/app can be used as an alias for the calling app bot user.

For human users , {user} is the same user identifier as:

  • the id for the Person in the People API. For example, users/123456789 in Chat API represents the same person as the 123456789 Person profile ID in People API.

  • the id for a user in the Admin SDK Directory API.

  • the user's email address can be used as an alias for {user} in API requests. For example, if the People API Person profile ID for user@example.com is 123456789 , you can use users/user@example.com as an alias to reference users/123456789 . Only the canonical resource name (for example users/123456789 ) will be returned from the API.

display_name

string

Output only. The user's display name.

domain_id

string

Unique identifier of the user's Google Workspace domain.

type

Type

User type.

is_anonymous

bool

Output only. When true , the user is deleted or their profile is not visible.

Тип

Перечисления
TYPE_UNSPECIFIED Default value for the enum. DO NOT USE.
HUMAN Human user.
BOT Chat app user.

UserMentionMetadata

Annotation metadata for user mentions (@).

Fields
user

User

The user mentioned.

type

Type

The type of user mention.

Тип

Перечисления
TYPE_UNSPECIFIED Default value for the enum. Don't use.
ADD Add user to space.
MENTION Mention user in space.

WidgetMarkup

A widget is a UI element that presents text and images.

Fields
buttons[]

Button

A list of buttons. Buttons is also oneof data and only one of these fields should be set.

Union field data . A WidgetMarkup can only have one of the following items. You can use multiple WidgetMarkup fields to display more items. data can be only one of the following:
text_paragraph

TextParagraph

Display a text paragraph in this widget.

image

Image

Display an image in this widget.

key_value

KeyValue

Display a key value item in this widget.

Кнопка

A button. Can be a text button or an image button.

Fields

Union field type .

type can be only one of the following:

text_button

TextButton

A button with text and onclick action.

image_button

ImageButton

A button with image and onclick action.

FormAction

A form action describes the behavior when the form is submitted. For example, you can invoke Apps Script to handle the form.

Fields
action_method_name

string

The method name is used to identify which part of the form triggered the form submission. This information is echoed back to the Chat app as part of the card click event. You can use the same method name for several elements that trigger a common behavior.

parameters[]

ActionParameter

List of action parameters.

ActionParameter

List of string parameters to supply when the action method is invoked. For example, consider three snooze buttons: snooze now, snooze one day, snooze next week. You might use action method = snooze() , passing the snooze type and snooze time in the list of string parameters.

Fields
key

string

The name of the parameter for the action script.

value

string

The value of the parameter.

Икона

The set of supported icons.

Перечисления
ICON_UNSPECIFIED
AIRPLANE
BOOKMARK
BUS
CAR
CLOCK
CONFIRMATION_NUMBER_ICON
DOLLAR
DESCRIPTION
EMAIL
EVENT_PERFORMER
EVENT_SEAT
FLIGHT_ARRIVAL
FLIGHT_DEPARTURE
HOTEL
HOTEL_ROOM_TYPE
INVITE
MAP_PIN
MEMBERSHIP
MULTIPLE_PEOPLE
OFFER
PERSON
PHONE
RESTAURANT_ICON
SHOPPING_CART
STAR
STORE
TICKET
TRAIN
VIDEO_CAMERA
VIDEO_PLAY

Изображение

An image that's specified by a URL and can have an onclick action.

Fields
image_url

string

The URL of the image.

on_click

OnClick

The onclick action.

aspect_ratio

double

The aspect ratio of this image (width and height). This field lets you reserve the right height for the image while waiting for it to load. It's not meant to override the built-in aspect ratio of the image. If unset, the server fills it by prefetching the image.

ImageButton

An image button with an onclick action.

Fields
on_click

OnClick

The onclick action.

name

string

The name of this image_button that's used for accessibility. Default value is provided if this name isn't specified.

Union field icons . The icon can be specified by an Icon enum or a URL. icons can be only one of the following:
icon

Icon

The icon specified by an enum that indices to an icon provided by Chat API.

icon_url

string

The icon specified by a URL.

KeyValue

A UI element contains a key (label) and a value (content). This element can also contain some actions such as onclick button.

Fields
top_label

string

The text of the top label. Formatted text supported. For more information about formatting text, see Formatting text in Google Chat apps and Formatting text in Google Workspace Add-ons .

content

string

The text of the content. Formatted text supported and always required. For more information about formatting text, see Formatting text in Google Chat apps and Formatting text in Google Workspace Add-ons .

content_multiline

bool

If the content should be multiline.

bottom_label

string

The text of the bottom label. Formatted text supported. For more information about formatting text, see Formatting text in Google Chat apps and Formatting text in Google Workspace Add-ons .

on_click

OnClick

The onclick action. Only the top label, bottom label, and content region are clickable.

Union field icons . At least one of icons, top_label and bottom_label must be defined. icons can be only one of the following:
icon

Icon

An enum value that's replaced by the Chat API with the corresponding icon image.

icon_url

string

The icon specified by a URL.

Union field control . A control widget. You can set either button or switch_widget , but not both. control can be only one of the following:
button

Button

A button that can be clicked to trigger an action.

OnClick

An onclick action (for example, open a link).

Fields

Union field data .

data can be only one of the following:

action

FormAction

A form action is triggered by this onclick action if specified.

Текстовая кнопка

A button with text and onclick action.

Fields
text

string

The text of the button.

on_click

OnClick

The onclick action of the button.

TextParagraph

A paragraph of text. Formatted text supported. For more information about formatting text, see Formatting text in Google Chat apps and Formatting text in Google Workspace Add-ons .

Fields
text

string