Package google.apps.card.v1

Индекс

Действие

Действие, описывающее поведение при отправке формы. Например, вы можете вызвать сценарий Apps Script для обработки формы. Если действие срабатывает, значения формы отправляются на сервер.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
function

string

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

Пример использования см. в разделе Чтение данных формы .

parameters[]

ActionParameter

Список параметров действия.

loadIndicator

LoadIndicator

Указывает индикатор загрузки, который отображается при вызове действия.

persistValues

bool

Указывает, сохраняются ли значения формы после действия. Значение по умолчанию — false .

Если true , значения формы сохраняются после запуска действия. Чтобы позволить пользователю вносить изменения во время обработки действия, установите для LoadIndicator значение NONE . Для сообщений с карточками в приложениях чата необходимо также установить ResponseType действия значение UPDATE_MESSAGE и использовать тот же card_id из карточки, которая содержала действие.

Если false , значения формы очищаются при запуске действия. Чтобы запретить пользователю вносить изменения во время обработки действия, установите для LoadIndicator SPINNER .

interaction

Interaction

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

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

Если не указано, приложение отвечает, выполняя action , например открытие ссылки или запуск функции, как обычно.

Указав interaction , приложение может реагировать особым интерактивным способом. Например, установив для interaction значение OPEN_DIALOG , приложение сможет открыть диалоговое окно . Если указано, индикатор загрузки не отображается. Если указано для надстройки, вся карта удаляется и в клиенте ничего не отображается.

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

requiredWidgets[]

string

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

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

Доступно для приложений Google Chat и дополнений Google Workspace.

allWidgetsAreRequired

bool

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Параметр действия

Список строковых параметров, которые необходимо указать при вызове метода действия. Например, рассмотрим три кнопки повтора: отложить сейчас, отложить один день или отложить на следующей неделе. Вы можете использовать action method = snooze() , передав тип и время повтора в списке строковых параметров.

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
key

string

Имя параметра сценария действия.

value

string

Значение параметра.

Взаимодействие

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

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

Если не указано, приложение отвечает, выполняя action , например открытие ссылки или запуск функции, как обычно.

Указав interaction , приложение может реагировать особым интерактивным способом. Например, установив для interaction значение OPEN_DIALOG , приложение сможет открыть диалоговое окно .

Если указано, индикатор загрузки не отображается. Если указано для надстройки, вся карта удаляется и в клиенте ничего не отображается.

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Перечисления
INTERACTION_UNSPECIFIED Значение по умолчанию. action выполняется как обычно.
OPEN_DIALOG

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

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

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Индикатор нагрузки

Указывает индикатор загрузки, который отображается при вызове действия.

Доступно для приложений Google Chat и дополнений Google Workspace.

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

BorderStyle

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
type

BorderType

Тип границы.

strokeColor

Color

Цвета, которые будут использоваться, если тип BORDER_TYPE_STROKE .

Чтобы задать цвет обводки, укажите значение для полей red , green и blue . Значение должно быть числом с плавающей запятой от 0 до 1, основанным на значении цвета RGB, где 0 (0/255) представляет отсутствие цвета, а 1 (255/255) представляет максимальную интенсивность цвета.

Например, следующий код устанавливает красный цвет с максимальной интенсивностью:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

Поле alpha недоступно для цвета обводки. Если указано, это поле игнорируется.

cornerRadius

int32

Угловой радиус границы.

Тип границы

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
BORDER_TYPE_UNSPECIFIED Не используйте. Не указано.
NO_BORDER Значение по умолчанию. Нет границы.
STROKE Контур.

Кнопка

Текст, значок или кнопка с текстом и значком, которую пользователи могут нажать. Пример использования приложений Google Chat см. в разделе «Добавление кнопки» .

Чтобы сделать изображение интерактивной кнопкой, укажите Image (а не ImageComponent ) и установите действие onClick .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
text

string

Текст, отображаемый внутри кнопки.

icon

Icon

Значок, отображаемый внутри кнопки. Если установлены и icon , и text , то значок появляется перед текстом.

color

Color

Необязательный. Цвет кнопки. Если этот параметр установлен, type кнопки устанавливается как FILLED , а цвет text и полей icon задается контрастным цветом для удобства чтения. Например, если цвет кнопки установлен синий, любой текст или значки на кнопке станут белыми.

Чтобы задать цвет кнопки, укажите значение для полей red , green и blue . Значение должно быть числом с плавающей запятой от 0 до 1, основанным на значении цвета RGB, где 0 (0/255) представляет отсутствие цвета, а 1 (255/255) представляет максимальную интенсивность цвета.

Например, следующий код устанавливает красный цвет с максимальной интенсивностью:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

Поле alpha недоступно для цвета кнопки. Если указано, это поле игнорируется.

onClick

OnClick

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

disabled

bool

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

altText

string

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

Установите описательный текст, который позволит пользователям узнать, что делает кнопка. Например, если кнопка открывает гиперссылку, вы можете написать: «Открывает новую вкладку браузера и переходит к документации для разработчиков Google Chat по адресу https://developers.google.com/workspace/chat» .

type

Type

Необязательный. Тип кнопки. Если этот параметр не установлен, тип кнопки по умолчанию — OUTLINED . Если поле color установлено, тип кнопки принудительно устанавливается как FILLED , и любое значение, установленное для этого поля, игнорируется.

Тип

Необязательный. Тип кнопки. Если поле color установлено, type принудительно устанавливается FILLED .

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Перечисления
TYPE_UNSPECIFIED Не используйте. Не указано.
OUTLINED Кнопки с контуром — это кнопки со средним выделением. Обычно они содержат важные действия, но не являются основным действием в приложении Chat или надстройке.
FILLED Заполненная кнопка имеет контейнер сплошного цвета. Он имеет наибольший визуальный эффект и рекомендуется для важных и основных действий в приложении чата или надстройке.
FILLED_TONAL Заполненная тональная кнопка — это альтернативный вариант между заполненными и обведенными кнопками. Они полезны в контекстах, где кнопка с более низким приоритетом требует немного большего внимания, чем кнопка с контуром.
BORDERLESS Кнопка не имеет невидимого контейнера в состоянии по умолчанию. Его часто используют для действий с самым низким приоритетом, особенно при представлении нескольких вариантов.

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

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
buttons[]

Button

Массив кнопок.

Карта

Интерфейс карты, отображаемый в сообщении Google Chat или надстройке Google Workspace.

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

Создавайте и просматривайте карты с помощью Card Builder.

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

Чтобы узнать, как создавать карты, см. следующую документацию:

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

Пример: карточное сообщение для приложения Google Chat.

Пример карточки контакта

Чтобы создать образец сообщения-карточки в Google Chat, используйте следующий JSON:

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
           "title": "Sasha",
           "subtitle": "Software Engineer",
           "imageUrl":
           "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
           "imageType": "CIRCLE",
           "imageAltText": "Avatar for Sasha"
         },
         "sections": [
           {
             "header": "Contact Info",
             "collapsible": true,
             "uncollapsibleWidgetsCount": 1,
             "widgets": [
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "EMAIL"
                   },
                   "text": "sasha@example.com"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PERSON"
                   },
                   "text": "<font color=\"#80e27e\">Online</font>"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PHONE"
                   },
                   "text": "+1 (555) 555-1234"
                 }
               },
               {
                 "buttonList": {
                   "buttons": [
                     {
                       "text": "Share",
                       "onClick": {
                        "openLink": {
                           "url": "https://example.com/share"
                         }
                       }
                     },
                     {
                       "text": "Edit",
                       "onClick": {
                         "action": {
                           "function": "goToView",
                           "parameters": [
                             {
                               "key": "viewType",
                               "value": "EDIT"
                             }
                           ]
                         }
                       }
                     }
                   ]
                 }
               }
             ]
           }
         ]
       }
    }
  ]
}
Поля
header

CardHeader

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

sections[]

Section

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

sectionDividerStyle

DividerStyle

Стиль разделителя между заголовком, разделами и подвалом.

cardActions[]

CardAction

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Например, следующий JSON создает меню действий карты с Settings и Send Feedback :

"cardActions": [
  {
    "actionLabel": "Settings",
    "onClick": {
      "action": {
        "functionName": "goToView",
        "parameters": [
          {
            "key": "viewType",
            "value": "SETTING"
         }
        ],
        "loadIndicator": "LoadIndicator.SPINNER"
      }
    }
  },
  {
    "actionLabel": "Send Feedback",
    "onClick": {
      "openLink": {
        "url": "https://example.com/feedback"
      }
    }
  }
]
name

string

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

fixedFooter

CardFixedFooter

Фиксированный нижний колонтитул, показанный внизу этой карточки.

Установка fixedFooter без указания primaryButton или secondaryButton кнопки вызывает ошибку. В приложениях чата вы можете использовать фиксированные нижние колонтитулы в диалогах , но не в сообщениях-карточках .

Доступно для приложений Google Chat и дополнений Google Workspace.

displayStyle

DisplayStyle

В надстройках Google Workspace задает свойства отображения peekCardHeader .

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

peekCardHeader

CardHeader

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

КартаДействие

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Поля
actionLabel

string

Метка, которая отображается как элемент меню действий.

onClick

OnClick

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

КартаFixedFooter

Постоянный (прикрепленный) нижний колонтитул, который появляется внизу карточки.

Установка fixedFooter без указания primaryButton или secondaryButton кнопки вызывает ошибку.

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
primaryButton

Button

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

secondaryButton

Button

Вторичная кнопка фиксированного нижнего колонтитула. Кнопка должна быть текстовой с заданным текстом и цветом. Если установлен secondaryButton , вы также должны установить primaryButton .

Заголовок карты

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
title

string

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

subtitle

string

Подзаголовок шапки карты. Если указано, отображается на отдельной строке под title .

imageType

ImageType

Форма, используемая для обрезки изображения.

Доступно для приложений Google Chat и дополнений Google Workspace.

imageUrl

string

URL-адрес HTTPS изображения в заголовке карты.

imageAltText

string

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

Стиль отображения

В надстройках Google Workspace определяет, как отображается карточка.

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

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

РазделительСтиль

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
DIVIDER_STYLE_UNSPECIFIED Не используйте. Не указано.
SOLID_DIVIDER Вариант по умолчанию. Создайте сплошной разделитель.
NO_DIVIDER Если установлено, разделитель не отображается. Этот стиль полностью удаляет разделитель из макета. Результат эквивалентен тому, что разделитель вообще не добавляется.

Вложенный виджет

Список виджетов, которые могут отображаться в содержащем макете, например CarouselCard . Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля

data поля объединения.

data могут быть только одним из следующих:

textParagraph

TextParagraph

Виджет текстового абзаца.

buttonList

ButtonList

Виджет списка кнопок.

image

Image

Виджет изображения.

Раздел

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
header

string

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

widgets[]

Widget

Все виджеты в разделе. Должен содержать хотя бы один виджет.

collapsible

bool

Указывает, является ли этот раздел сворачиваемым.

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

Чтобы определить, какие виджеты скрыты, укажите uncollapsibleWidgetsCount .

uncollapsibleWidgetsCount

int32

Количество несворачиваемых виджетов, которые остаются видимыми, даже если раздел свернут.

Например, если раздел содержит пять виджетов и uncollapsibleWidgetsCount установлено значение 2 , первые два виджета всегда отображаются, а последние три сворачиваются по умолчанию. uncollapsibleWidgetsCount учитывается только в том случае, если collapsible равно true .

collapseControl

CollapseControl

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

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

Например, это JSON-представление карусели, содержащей три виджета текстовых абзацев.

{
  "carouselCards": [
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "First text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Second text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Third text paragraph in carousel",
          }
        }
      ]
    }
  ]
}

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля
carouselCards[]

CarouselCard

Список карточек в карусели.

КарусельКарточка

Карточка, которую можно отображать в виде карусели. Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля
widgets[]

NestedWidget

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

footerWidgets[]

NestedWidget

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

Чип

Текст, значок или чип текста и значков, на который пользователи могут щелкнуть.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
icon

Icon

Изображение значка. Если установлены и icon , и text , то значок появляется перед текстом.

label

string

Текст, отображаемый внутри чипа.

onClick

OnClick

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

enabled
(deprecated)

bool

Находится ли чип в активном состоянии и реагирует ли на действия пользователя. По умолчанию true . Устарело. Вместо этого используйте disabled .

disabled

bool

Находится ли чип в неактивном состоянии и игнорирует действия пользователя. По умолчанию установлено значение false .

altText

string

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

Установите описательный текст, который позволит пользователям узнать, что делает чип. Например, если чип открывает гиперссылку, напишите: «Открывает новую вкладку браузера и переходит к документации для разработчиков Google Chat по адресу https://developers.google.com/workspace/chat» .

Список чипов

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
layout

Layout

Указанный макет списка микросхем.

chips[]

Chip

Массив фишек.

Макет

Схема списка чипов.

Перечисления
LAYOUT_UNSPECIFIED Не используйте. Не указано.
WRAPPED Значение по умолчанию. Список чипов переносится на следующую строку, если недостаточно места по горизонтали.
HORIZONTAL_SCROLLABLE Фишки прокручиваются горизонтально, если не помещаются в доступное пространство.

СвернутьКонтроль

Представляет элемент управления развертыванием и свертыванием.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
horizontalAlignment

HorizontalAlignment

Горизонтальное выравнивание кнопки развернуть и свернуть.

expandButton

Button

Необязательный. Определите настраиваемую кнопку, чтобы развернуть раздел. Поле «expandButton» и «CrollButton» должно быть установлено. Только один набор полей не вступит в силу. Если это поле не задано, используется кнопка по умолчанию.

collapseButton

Button

Необязательный. Определите настраиваемую кнопку, чтобы свернуть раздел. Поле «expandButton» и «CrollButton» должно быть установлено. Только один набор полей не вступит в силу. Если это поле не задано, используется кнопка по умолчанию.

Столбцы

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

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

Столбцы отображаются рядом. Вы можете настроить ширину каждого столбца, используя поле HorizontalSizeStyle . Если ширина экрана пользователя слишком узкая, второй столбец переносится ниже первого:

  • В Интернете второй столбец переносится, если ширина экрана меньше или равна 480 пикселям.
  • На устройствах iOS второй столбец переносится, если ширина экрана меньше или равна 300 pt.
  • На устройствах Android второй столбец переносится, если ширина экрана меньше или равна 320 dp.

Чтобы включить более двух столбцов или использовать строки, используйте виджет Grid .

Доступно для приложений Google Chat и дополнений Google Workspace. Дополнительные пользовательские интерфейсы, поддерживающие столбцы, включают:

  • Диалоговое окно отображается, когда пользователи открывают надстройку из черновика электронного письма.
  • Диалоговое окно, отображаемое, когда пользователи открывают надстройку из меню «Добавить вложение» в событии Календаря Google.
Поля
columnItems[]

Column

Массив столбцов. Вы можете включить до двух столбцов в карточку или диалог.

Столбец

Колонка.

Дополнения Google Workspace и приложения Chat

Поля
horizontalSizeStyle

HorizontalSizeStyle

Указывает, как столбец заполняет ширину карточки.

horizontalAlignment

HorizontalAlignment

Указывает, выравниваются ли виджеты по левому, правому или центру столбца.

verticalAlignment

VerticalAlignment

Указывает, выравниваются ли виджеты по верху, низу или центру столбца.

widgets[]

Widgets

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

Горизонтальныйразмерстиль

Указывает, как столбец заполняет ширину карточки. Ширина каждого столбца зависит как от HorizontalSizeStyle , так и от ширины виджетов внутри столбца.

Дополнения Google Workspace и приложения Chat

Перечисления
HORIZONTAL_SIZE_STYLE_UNSPECIFIED Не используйте. Не указано.
FILL_AVAILABLE_SPACE Значение по умолчанию. Столбец заполняет доступное пространство до 70 % ширины карты. Если для обоих столбцов установлено значение FILL_AVAILABLE_SPACE , каждый столбец заполняет 50 % пространства.
FILL_MINIMUM_SPACE Столбец занимает минимально возможное пространство и не более 30 % ширины карты.

Вертикальное выравнивание

Указывает, выравниваются ли виджеты по верху, низу или центру столбца.

Дополнения Google Workspace и приложения Chat

Перечисления
VERTICAL_ALIGNMENT_UNSPECIFIED Не используйте. Не указано.
CENTER Значение по умолчанию. Выравнивает виджеты по центру столбца.
TOP Выравнивает виджеты по верху столбца.
BOTTOM Выравнивает виджеты по нижней части столбца.

Виджеты

Поддерживаемые виджеты, которые можно включить в столбец.

Дополнения Google Workspace и приложения Chat

Поля

data поля объединения.

data могут быть только одним из следующих:

textParagraph

TextParagraph

Виджет TextParagraph .

image

Image

Виджет Image .

decoratedText

DecoratedText

Виджет DecoratedText .

buttonList

ButtonList

Виджет ButtonList .

textInput

TextInput

Виджет TextInput .

selectionInput

SelectionInput

Виджет SelectionInput .

dateTimePicker

DateTimePicker

Виджет DateTimePicker .

chipList

ChipList

Виджет ChipList .

Действия с данными

Дополнительное действие , обновляющее данные Google Workspace.

Поля
hostAppDataAction

HostAppDataActionMarkup

Определяет, как обновлять данные Google Workspace.

DateTimePicker

Позволяет пользователям вводить дату, время или дату и время одновременно. Поддерживает проверку отправки формы. Если Action.all_widgets_are_required установлено значение true или этот виджет указан в Action.required_widgets , действие отправки блокируется, если не выбрано значение. Пример использования приложений Google Chat см. в разделе Разрешить пользователю выбирать дату и время .

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
name

string

Имя, по которому DateTimePicker идентифицируется в событии ввода формы.

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

label

string

Текст, предлагающий пользователям ввести дату, время или дату и время. Например, если пользователи планируют встречу, используйте метку, например Appointment date или Appointment date and time .

type

DateTimePickerType

Поддерживает ли виджет ввод даты, времени или даты и времени.

valueMsEpoch

int64

Значение по умолчанию, отображаемое в виджете, в миллисекундах с момента эпохи Unix .

Укажите значение в зависимости от типа средства выбора ( DateTimePickerType ):

  • DATE_AND_TIME : календарная дата и время в формате UTC. Например, чтобы представить 1 января 2023 года в 12:00 по всемирному координированному времени, используйте 1672574400000 .
  • DATE_ONLY : календарная дата в 00:00:00 UTC. Например, чтобы представить 1 января 2023 года, используйте 1672531200000 .
  • TIME_ONLY : время в формате UTC. Например, чтобы представить 12:00, используйте 43200000 (или 12 * 60 * 60 * 1000 ).
timezoneOffsetDate

int32

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

onChangeAction

Action

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

DateTimePickerType

Формат даты и времени в виджете DateTimePicker . Определяет, могут ли пользователи вводить дату, время или дату и время одновременно.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
DATE_AND_TIME Пользователи вводят дату и время.
DATE_ONLY Пользователи вводят дату.
TIME_ONLY Пользователи вводят время.

УкрашенныйТекст

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
icon
(deprecated)

Icon

Устарело в пользу startIcon .

startIcon

Icon

Значок отображается перед текстом.

topLabel

string

Текст, который появляется над text . Всегда обрезает.

text

string

Необходимый. Первичный текст.

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

wrapText

bool

Настройка переноса текста. Если true , текст переносится и отображается в нескольких строках. В противном случае текст обрезается.

Применяется только к text , а не к topLabel и bottomLabel .

bottomLabel

string

Текст, который отображается под text . Всегда заворачивается.

onClick

OnClick

Это действие запускается, когда пользователи нажимают topLabel или bottomLabel .

Полевой control Союза. Кнопка, переключатель, флажок или изображение, которое отображается справа от текста в виджете decoratedText . control может быть только одним из следующих:
button

Button

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

switchControl

SwitchControl

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

endIcon

Icon

Значок, отображаемый после текста.

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

SwitchControl

Либо переключатель в стиле тумблера, либо флажок внутри виджета decoratedText .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поддерживается только в виджете decoratedText .

Поля
name

string

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

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

value

string

Значение, введенное пользователем и возвращаемое как часть события ввода формы.

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

selected

bool

Если true , переключатель выбран.

onChangeAction

Action

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

controlType

ControlType

Как переключатель отображается в пользовательском интерфейсе.

Доступно для приложений Google Chat и дополнений Google Workspace.

Тип управления

Как переключатель отображается в пользовательском интерфейсе.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
SWITCH Тумблерный переключатель.
CHECKBOX Устарело в пользу CHECK_BOX .
CHECK_BOX Флажок.

Разделитель

Этот тип не имеет полей.

Отображает разделитель между виджетами в виде горизонтальной линии. Пример использования приложений Google Chat см. в разделе «Добавление горизонтального разделителя между виджетами» .

Доступно для приложений Google Chat и дополнений Google Workspace.

Например, следующий JSON создает разделитель:

"divider": {}

КонецНавигации

Для дополнений в Google Chat закрывает диалоговое окно .

Поля
action

Action

Для дополнений в Google Chat — действие, закрывающее диалоговое окно .

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Действие

Для надстроек в Google Chat действия для EndNavigation .

Перечисления
ACTION_UNSPECIFIED Действие не указано.
CLOSE_DIALOG Закрывает диалог.
CLOSE_DIALOG_AND_EXECUTE Закрывает диалог и обновляет карточку, открывшую диалог.

Получитьавтодополнениеответ

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat. Например:

{
  "autoComplete": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
Поля
autoComplete

Suggestions

schema

string

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

Сетка

Отображает сетку с коллекцией элементов. Элементы могут включать только текст или изображения. Для адаптивных столбцов или для включения большего количества текста или изображений используйте Columns . Пример использования приложений Google Chat см. в разделе Отображение сетки с коллекцией элементов .

Сетка поддерживает любое количество столбцов и элементов. Количество строк определяется элементами, разделенными столбцами. Сетка с 10 элементами и 2 столбцами имеет 5 строк. Сетка с 11 элементами и 2 столбцами имеет 6 строк.

Доступно для приложений Google Chat и дополнений Google Workspace.

Например, следующий JSON создает сетку из двух столбцов с одним элементом:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
Поля
title

string

Текст, который отображается в заголовке сетки.

items[]

GridItem

Элементы, отображаемые в сетке.

borderStyle

BorderStyle

Стиль границы, применяемый к каждому элементу сетки.

columnCount

int32

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

onClick

OnClick

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

Гридитем

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
id

string

Заданный пользователем идентификатор для этого элемента сетки. Этот идентификатор возвращается в параметрах обратного вызова onClick родительской сетки.

image

ImageComponent

Изображение, которое отображается в элементе сетки.

title

string

Название элемента сетки.

subtitle

string

Подзаголовок элемента сетки.

layout

GridItemLayout

Макет, используемый для элемента сетки.

GridItemLayout

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
GRID_ITEM_LAYOUT_UNSPECIFIED Не используйте. Не указано.
TEXT_BELOW Заголовок и подзаголовок отображаются под изображением элемента сетки.
TEXT_ABOVE Заголовок и подзаголовок отображаются над изображением элемента сетки.

Икона

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

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
altText

string

Необязательный. Описание значка, используемого для специальных возможностей. Если не указано, предоставляется значение Button по умолчанию. Рекомендуется установить полезное описание того, что отображает значок, и, если применимо, что он делает. Например, A user's account portrait или Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat .

Если значок установлен в Button , altText отображается как вспомогательный текст, когда пользователь наводит курсор на кнопку. Однако если кнопка также устанавливает text , altText значка игнорируется.

imageType

ImageType

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

icons полей Союза. Значок, отображаемый в виджете на карте. icons могут быть только одним из следующих:
knownIcon

string

Отобразите один из встроенных значков Google Workspace.

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

Полный список поддерживаемых значков см. в разделе «Встроенные значки» .

iconUrl

string

Отображение пользовательского значка, размещенного по URL-адресу HTTPS.

Например:

"iconUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png"

Поддерживаемые типы файлов: .png и .jpg .

materialIcon

MaterialIcon

Отобразите один из значков материалов Google .

Например, чтобы отобразить значок флажка , используйте

"materialIcon": {
  "name": "check_box"
}

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Изображение

Изображение, заданное URL-адресом и может иметь действие onClick . Пример см. в разделе «Добавление изображения» .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
imageUrl

string

URL-адрес HTTPS, на котором размещено изображение.

Например:

https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
onClick

OnClick

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

altText

string

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

Компонент изображения

Представляет изображение.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
imageUri

string

URL-адрес изображения.

altText

string

Метка доступности изображения.

cropStyle

ImageCropStyle

Стиль обрезки, применяемый к изображению.

borderStyle

BorderStyle

Стиль границы, применяемый к изображению.

СтильОбрезки Изображения

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Например, вот как применить соотношение сторон 16:9:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}
Поля
type

ImageCropType

Тип урожая.

aspectRatio

double

Соотношение сторон, которое будет использоваться, если тип кадрирования — RECTANGLE_CUSTOM .

Например, вот как применить соотношение сторон 16:9:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}

ТипОбрезки Изображения

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
IMAGE_CROP_TYPE_UNSPECIFIED Не используйте. Не указано.
SQUARE Значение по умолчанию. Применяет квадратную обрезку.
CIRCLE Применяет круговую обрезку.
RECTANGLE_CUSTOM Применяет прямоугольную обрезку с настраиваемым соотношением сторон. Установите пользовательское соотношение сторон с aspectRatio .
RECTANGLE_4_3 Применяет прямоугольную обрезку с соотношением сторон 4:3.

СсылкаПредварительный просмотр

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

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

{
  "action": {
    "linkPreview": {
      "title": "Smart chip title",
      "linkPreviewTitle": "Link preview title",
      "previewCard": {
        "header": {
          "title": "Preview card header",
        },
        "sections": [
          {
            "widgets": [
              {
                "textParagraph": {
                  "text": "Description of the link."
                }
              }
            ]
          }
        ]
      }
    }
  }
}

В примере возвращается следующий предварительный просмотр ссылки:

Пример предварительного просмотра ссылки

Поля
previewCard

Card

Карточка, отображающая информацию о ссылке со стороннего сервиса.

title

string

Заголовок, который отображается на смарт-чипе для предварительного просмотра ссылки. Если значение не установлено, смарт-чип отображает заголовок карты preview_card .

linkPreviewTitle

string

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

МатериалИконка

Значок Google Material , включающий более 2500+ вариантов.

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

{
  "name": "check_box",
  "fill": true,
  "weight": 300,
  "grade": -25
}

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля
name

string

Имя значка, определенное в Google Material Icon , например, check_box . Любые недопустимые имена удаляются и заменяются пустой строкой, в результате чего значок не отображается.

fill

bool

Будет ли значок отображаться заполненным. Значение по умолчанию — ложь.

Чтобы просмотреть различные настройки значков, перейдите в раздел «Значки шрифтов Google» и настройте параметры в разделе «Настроить» .

weight

int32

Толщина штриха значка. Выберите {100, 200, 300, 400, 500, 600, 700}. Если оно отсутствует, значение по умолчанию — 400. Если указано любое другое значение, используется значение по умолчанию.

Чтобы просмотреть различные настройки значков, перейдите в раздел «Значки шрифтов Google» и настройте параметры в разделе «Настроить» .

grade

int32

Вес и класс влияют на толщину символа. Корректировки класса являются более детальными, чем корректировки веса, и оказывают небольшое влияние на размер символа. Выберите {-25, 0, 200}. Если оно отсутствует, значение по умолчанию равно 0. Если указано любое другое значение, используется значение по умолчанию.

Чтобы просмотреть различные настройки значков, перейдите в раздел «Значки шрифтов Google» и настройте параметры в разделе «Настроить» .

Модифицард

Для дополнений в Google Chat обновляет карточку на основе взаимодействия с пользователем. Массив должен содержать только один объект.

Поля

Полевая operation Союза.

operation может быть только одной из следующих:

updateWidget

UpdateWidget

Для надстроек в Google Chat обновляет виджет на карточке или в диалоговом окне.

Обновлениевиджета

Для надстроек в Google Chat обновляет виджет на карточке или в диалоговом окне.

Поля
Поле объединения updated_widget . Обновления виджета. updated_widget может быть только одним из следующих:
selectionInputWidgetSuggestions

SelectionInputWidgetSuggestions

Для виджетов selectionInput — массив предлагаемых элементов в меню с множественным выбором. Когда меню с множественным выбором использует внешний источник данных для заполнения своих элементов, виджет может динамически заполнять предложения в зависимости от того, что они вводят в меню. Дополнительную информацию см. в разделе Сбор информации от пользователей Google Chat .

SelectionInputWidgetSuggestions

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

Поля
suggestions[]

SelectionItem

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

Обновляет или перемещается между карточками в стопке карточек.

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Например:

1) Вернуть новую карту (Идём вперёд).

 navigations : {
    pushCard : CARD
  }

2) Обновить карту поверх стека (обновить по месту).

  navigations : {
    popCard : true,
  }, {
    pushCard : CARD
  }

3) Вернитесь на один шаг назад без обновления.

  navigations : {
    popCard : true,
  }

4) Вернитесь на несколько шагов назад и обновите эту карту.

  navigations : {
    popCard : true,
  }, ... {
    pushCard : CARD
  }

5) Вернитесь на несколько шагов назад к определенному CARD_NAME .

  navigations : {
    popToCardName : CARD_NAME,
  }, {
    pushCard : CARD
  }

6) Вернитесь в корень и обновите эту карту.

  navigations : {
    popToRoot : true
  }, {
    pushCard : CARD
  }

7) Перейдите к указанной карте и вставьте и ее.

navigations : { popToCardName : CARD_NAME }, { popCard : true, }

8) Замените верхнюю карту новой картой.

  navigations : {
    updateCard : CARD
  }
Поля

Поле объединения navigate_action .

navigate_action может быть только одним из следующих:

popToRoot

bool

Вытаскивает все карты, кроме корневой.

pop

bool

Вытаскивает одну карту.

popToCard

string

Извлекает все карты выше указанной карты с заданным именем карты.

pushCard

Card

Помещает карту в стопку карт.

Предварительная версия для разработчиков : для диалогов в Google Chat открывает или обновляет диалог.

updateCard

Card

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

Предварительная версия для разработчиков : для диалогов в Google Chat открывает или обновляет диалог.

endNavigation

EndNavigation

Для дополнений в Google Chat закрывает диалоговое окно .

Уведомление

Действие, которое отображает уведомление в главном приложении Google Workspace, когда пользователь взаимодействует с картой.

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Поля
text

string

Обычный текст для отображения уведомления без HTML-тегов.

OnClick

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля

data поля объединения.

data могут быть только одним из следующих:

action

Action

Если указано, действие запускается этим onClick .

openDynamicLinkAction

Action

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

card

Card

Новая карта помещается в стопку карточек после щелчка, если это указано.

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

overflowMenu

OverflowMenu

Если указано, этот onClick открывает меню переполнения.

При Закрытии

Что делает клиент, когда ссылка, открытая действием OnClick , закрывается.

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

Если установлены оба обработчика OnOpen и OnClose , а клиентская платформа не может поддерживать оба значения, OnClose имеет приоритет.

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Перечисления
NOTHING Значение по умолчанию. Карта не перезагружается; ничего не происходит.
RELOAD

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

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

ОпенАс

Когда действие OnClick открывает ссылку, клиент может открыть ее либо как полноразмерное окно (если это фрейм, используемый клиентом), либо как наложение (например, всплывающее окно). Реализация зависит от возможностей клиентской платформы, и выбранное значение может быть проигнорировано, если клиент его не поддерживает. FULL_SIZE поддерживается всеми клиентами.

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Перечисления
FULL_SIZE Ссылка открывается в полноразмерном окне (если клиент использует именно этот фрейм).
OVERLAY Ссылка открывается в виде наложения, например всплывающего окна.

ПереполнениеМеню

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
items[]

OverflowMenuItem

Необходимый. Список опций меню.

ПереполнениеМенюЭлемент

Опция, которую пользователи могут вызвать в дополнительном меню.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
startIcon

Icon

Значок отображается перед текстом.

text

string

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

onClick

OnClick

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

disabled

bool

Отключена ли опция меню. По умолчанию ложь.

Действия рендеринга

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Поля
action

Action

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

Предварительная версия для разработчиков : дополнения в Google Chat .

hostAppAction

HostAppActionMarkup

Действия, обрабатываемые отдельными хост-приложениями.

schema

string

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

Действие

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

Поля
navigations[]

Navigation

Нажимает, выталкивает или обновляет карту.

Предварительная версия для разработчиков : дополнения в Google Chat .

notification

Notification

Отображает уведомление в главном приложении Google Workspace, когда пользователь взаимодействует с картой.

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

linkPreview

LinkPreview

Доступно в Google Docs, Google Sheets и Google Slides. Предварительный просмотр ссылок со смарт-чипами и картами. Подробности см. в разделе Предварительный просмотр ссылок со смарт-чипами .

modifyOperations[]

ModifyCard

Для дополнений в Google Chat обновляет карточку на основе взаимодействия с пользователем. Массив должен содержать только один объект.

ВыборВвод

Виджет, создающий один или несколько элементов пользовательского интерфейса, которые пользователи могут выбирать. Поддерживает проверку отправки формы только для dropdown меню и меню multiselect . Если Action.all_widgets_are_required установлено значение true или этот виджет указан в Action.required_widgets , действие отправки блокируется, если не выбрано значение. Например, выпадающее меню или флажки. Вы можете использовать этот виджет для сбора данных, которые можно прогнозировать или перечислять. Пример использования приложений Google Chat см. в разделе Добавление выбираемых элементов пользовательского интерфейса .

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

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
name

string

Необходимый. Имя, которое идентифицирует ввод выбора в событии ввода формы.

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

label

string

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

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

type

SelectionType

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

items[]

SelectionItem

Массив выбираемых элементов. Например, массив переключателей или флажков. Поддерживает до 100 элементов.

onChangeAction

Action

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

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

multiSelectMaxSelectedItems

int32

Для меню с множественным выбором — максимальное количество элементов, которые может выбрать пользователь. Минимальная стоимость — 1 шт. Если не указано, по умолчанию используется 3 элемента.

multiSelectMinQueryLength

int32

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

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

  • Если в меню используется статический массив элементов SelectionInput , по умолчанию используется 0 символов и немедленно заполняются элементы из массива.
  • Если в меню используется динамический источник данных ( multi_select_data_source ), по умолчанию используется 3 символа, прежде чем запрашивать источник данных для возврата предлагаемых элементов.

Поле объединения multi_select_data_source . Для меню с множественным выбором — источник данных, который динамически заполняет элементы выбора.

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace. multi_select_data_source может быть только одним из следующих:

externalDataSource

Action

Внешний источник данных, например реляционная база данных.

platformDataSource

PlatformDataSource

Источник данных из Google Workspace.

ПлатформаИсточник данных

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

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля
Поле объединения data_source . Источник данных. data_source может быть только одним из следующих:
commonDataSource

CommonDataSource

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

hostAppDataSource

HostAppDataSourceMarkup

Источник данных, уникальный для хост-приложения Google Workspace, например пространства в Google Chat.

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

Общий источник данных

Источник данных, общий для всех приложений Google Workspace .

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Перечисления
UNKNOWN Значение по умолчанию. Не используйте.
USER Пользователи Google Workspace. Пользователь может просматривать и выбирать пользователей только из своей организации Google Workspace.

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

Элемент, который пользователи могут выбрать при вводе выбора, например флажок или переключатель. Поддерживает до 100 элементов.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
text

string

Текст, который идентифицирует или описывает элемент для пользователей.

value

string

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

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

selected

bool

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

startIconUri

string

В меню с множественным выбором URL-адрес значка отображается рядом с text полем элемента. Поддерживает файлы PNG и JPEG. Должен быть URL-адрес HTTPS . Например, https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png .

bottomText

string

Для меню с множественным выбором — текстовое описание или метка, отображаемая под text полем элемента.

Тип выбора

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

Каждый вход выбора поддерживает один тип выбора. Например, сочетание флажков и переключателей не поддерживается.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
CHECK_BOX Набор флажков. Пользователи могут установить один или несколько флажков.
RADIO_BUTTON Набор радиокнопок. Пользователи могут выбрать один переключатель.
SWITCH Набор переключателей. Пользователи могут включить один или несколько переключателей.
DROPDOWN Выпадающее меню. Пользователи могут выбрать один пункт из меню.
MULTI_SELECT

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

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

  • Данные Google Workspace. Элементы заполняются с использованием данных из Google Workspace, например о пользователях Google Workspace или чат-группах Google.
  • Внешние данные. Элементы заполняются из внешнего источника данных за пределами Google Workspace.

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

Доступно для приложений Google Chat и дополнений Google Workspace.

ОтправитьФормаОтвет

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat. Например:

{
  "renderActions": {
    "action": {
      "notification": {
        "text": "Email address is added: salam.heba@example.com"
      }
    },
    "hostAppAction": {
      "gmailAction": {
        "openCreatedDraftAction": {
          "draftId": "msg-a:r-79766936926021702",
          "threadServerPermId": "thread-f:15700999851086004"
        }
      }
    }
  }
}
Поля
renderActions

RenderActions

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

stateChanged

bool

Изменилось ли состояние карт и устарели ли данные в существующих картах.

schema

string

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

Предложения

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

Например, поле ввода текста для языка программирования может предлагать Java, JavaScript, Python и C++. Когда пользователи начинают вводить Jav , список предложений фильтруется для отображения Java и JavaScript .

Предлагаемые значения помогают пользователям вводить значения, понятные вашему приложению. Говоря о JavaScript, некоторые пользователи могут вводить javascript , а другие java script . Предложение JavaScript может стандартизировать взаимодействие пользователей с вашим приложением.

Если указано, TextInput.type всегда имеет SINGLE_LINE , даже если для него установлено значение MULTIPLE_LINE .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
items[]

SuggestionItem

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

ПредложениеItem

Одно предлагаемое значение, которое пользователи могут ввести в поле ввода текста.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля

content поля объединения.

content может быть только одним из следующих:

text

string

Значение предлагаемого ввода в поле ввода текста. Это эквивалентно тому, что пользователи вводят сами.

ТекстИнпут

Поле, в котором пользователи могут вводить текст. Поддерживает предложения и действия при изменении. Поддерживает проверку отправки формы. Если Action.all_widgets_are_required установлено значение true или этот виджет указан в Action.required_widgets , действие отправки блокируется, пока не будет введено значение. Пример использования приложений Google Chat см. в разделе Добавление поля, в котором пользователь может вводить текст .

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

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
name

string

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

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

label

string

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

Укажите текст, который поможет пользователю ввести информацию, необходимую вашему приложению. Например, если вы спрашиваете чье-то имя, но вам конкретно нужна фамилия, напишите surname вместо name .

Требуется, если hintText не указан. В противном случае необязательно.

hintText

string

Текст, который появляется под полем ввода текста, предназначен для помощи пользователям, предлагая им ввести определенное значение. Этот текст всегда виден.

Требуется, если label не указана. В противном случае необязательно.

value

string

Значение, введенное пользователем и возвращаемое как часть события ввода формы.

Подробные сведения о работе с входными данными формы см. в разделе Получение данных формы .

type

Type

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

onChangeAction

Action

Что делать, если в поле ввода текста произошло изменение. Например, пользователь добавляет поле или удаляет текст.

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

initialSuggestions

Suggestions

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

Например, поле ввода текста для языка программирования может предлагать Java, JavaScript, Python и C++. Когда пользователи начинают вводить Jav , список предложений фильтруется и показывает только Java и JavaScript .

Предлагаемые значения помогают пользователям вводить значения, понятные вашему приложению. Говоря о JavaScript, некоторые пользователи могут вводить javascript , а другие java script . Предложение JavaScript может стандартизировать взаимодействие пользователей с вашим приложением.

Если указано, TextInput.type всегда имеет SINGLE_LINE , даже если для него установлено значение MULTIPLE_LINE .

Доступно для приложений Google Chat и дополнений Google Workspace.

autoCompleteAction

Action

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

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

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

Доступно для надстроек Google Workspace и недоступно для приложений Google Chat.

validation

Validation

Укажите проверку формата ввода, необходимую для этого текстового поля.

Доступно для приложений Google Chat и дополнений Google Workspace.

placeholderText

string

Текст, который появляется в поле ввода текста, когда поле пусто. Используйте этот текст, чтобы предложить пользователям ввести значение. Например, Enter a number from 0 to 100 .

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Тип

Как поле ввода текста отображается в пользовательском интерфейсе. Например, будь то однострочное или многострочное поле ввода. Если указан initialSuggestions , type всегда является SINGLE_LINE , даже если для него установлено значение MULTIPLE_LINE .

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
SINGLE_LINE Поле ввода текста имеет фиксированную высоту в одну строку.
MULTIPLE_LINE Поле ввода текста имеет фиксированную высоту в несколько строк.

Текстовый абзац

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
text

string

Текст, отображаемый в виджете.

maxLines

int32

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

Значение по умолчанию — 0, и в этом случае отображается весь контекст. Отрицательные значения игнорируются.

Валидация

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

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
characterLimit

int32

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

Доступно для приложений Google Chat и дополнений Google Workspace.

inputType

InputType

Укажите тип входных виджетов.

Доступно для приложений Google Chat и дополнений Google Workspace.

Тип ввода

Тип виджета ввода.

Перечисления
INPUT_TYPE_UNSPECIFIED Неопределенный тип. Не используйте.
TEXT Обычный текст, который принимает все символы.
INTEGER Целочисленное значение.
FLOAT Плавающее значение.
EMAIL Адрес электронной почты.
EMOJI_PICKER Эмодзи, выбранный из системного средства выбора эмодзи.

Виджет

Каждая карточка состоит из виджетов.

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

Поля
horizontalAlignment

HorizontalAlignment

Указывает, выравниваются ли виджеты по левому, правому или центру столбца.

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

TextParagraph

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

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

"textParagraph": {
  "text": "  <b>bold text</b>"
}
image

Image

Отображает изображение.

Например, следующий JSON создает изображение с альтернативным текстом:

"image": {
  "imageUrl":
  "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
  "altText": "Chat app avatar"
}
decoratedText

DecoratedText

Отображает декорированный текстовый элемент.

Например, следующий JSON создает декорированный текстовый виджет, показывающий адрес электронной почты:

"decoratedText": {
  "icon": {
    "knownIcon": "EMAIL"
  },
  "topLabel": "Email Address",
  "text": "sasha@example.com",
  "bottomLabel": "This is a new Email address!",
  "switchControl": {
    "name": "has_send_welcome_email_to_sasha",
    "selected": false,
    "controlType": "CHECKBOX"
  }
}
buttonList

ButtonList

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

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

"buttonList": {
  "buttons": [
    {
      "text": "Edit",
      "color": {
        "red": 0,
        "green": 0,
        "blue": 1,
      },
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}
textInput

TextInput

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

Например, следующий JSON создает текстовый ввод для адреса электронной почты:

"textInput": {
  "name": "mailing_address",
  "label": "Mailing Address"
}

Другой пример: следующий JSON создает текстовый ввод для языка программирования со статическими предложениями:

"textInput": {
  "name": "preferred_programing_language",
  "label": "Preferred Language",
  "initialSuggestions": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
selectionInput

SelectionInput

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

Например, следующий JSON создает раскрывающееся меню, позволяющее пользователям выбирать размер:

"selectionInput": {
  "name": "size",
  "label": "Size"
  "type": "DROPDOWN",
  "items": [
    {
      "text": "S",
      "value": "small",
      "selected": false
    },
    {
      "text": "M",
      "value": "medium",
      "selected": true
    },
    {
      "text": "L",
      "value": "large",
      "selected": false
    },
    {
      "text": "XL",
      "value": "extra_large",
      "selected": false
    }
  ]
}
dateTimePicker

DateTimePicker

Отображает виджет, который позволяет пользователям вводить дату, время или дату и время.

Например, следующий JSON создает средство выбора даты и времени для планирования встречи:

"dateTimePicker": {
  "name": "appointment_time",
  "label": "Book your appointment at:",
  "type": "DATE_AND_TIME",
  "valueMsEpoch": "796435200000"
}
divider

Divider

Отображает горизонтальный разделитель между виджетами.

Например, следующий JSON создает разделитель:

"divider": {
}
grid

Grid

Отображает сетку с коллекцией элементов.

Сетка поддерживает любое количество столбцов и элементов. Количество строк определяется верхней границей количества элементов, деленной на количество столбцов. Сетка с 10 элементами и 2 столбцами имеет 5 строк. Сетка с 11 элементами и 2 столбцами имеет 6 строк.

Доступно для приложений Google Chat и дополнений Google Workspace.

Например, следующий JSON создает сетку из двух столбцов с одним элементом:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
columns

Columns

Отображает до 2 столбцов.

Чтобы включить более двух столбцов или использовать строки, используйте виджет Grid .

Например, следующий JSON создает 2 столбца, каждый из которых содержит текстовые абзацы:

"columns": {
  "columnItems": [
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "First column text paragraph"
          }
        }
      ]
    },
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "Second column text paragraph"
          }
        }
      ]
    }
  ]
}
carousel

Carousel

Карусель содержит коллекцию вложенных виджетов. Например, это JSON-представление карусели, содержащее два текстовых абзаца.

{
  "widgets": [
    {
      "textParagraph": {
        "text": "First text paragraph in the carousel."
      }
    },
    {
      "textParagraph": {
        "text": "Second text paragraph in the carousel."
      }
    }
  ]
}
chipList

ChipList

Список фишек.

Например, следующий JSON создает два чипа. Первый — это текстовый чип, а второй — значок, открывающий ссылку:

"chipList": {
  "chips": [
    {
      "text": "Edit",
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}

Горизонтальное выравнивание

Указывает, выравниваются ли виджеты по левому, правому или центру столбца.

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Перечисления
HORIZONTAL_ALIGNMENT_UNSPECIFIED Не используйте. Не указано.
START Значение по умолчанию. Выравнивает виджеты по начальному положению столбца. Для макетов слева направо — выравнивание по левому краю. Для макетов с направлением письма справа налево выравнивается по правому краю.
CENTER Выравнивает виджеты по центру столбца.
END Выравнивает виджеты по конечному положению столбца. Для макетов слева направо виджеты выравниваются по правому краю. Для макетов с направлением справа налево виджеты выравниваются по левому краю.

Тип изображения

Форма, используемая для обрезки изображения.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
SQUARE Значение по умолчанию. Применяет к изображению квадратную маску. Например, изображение 4x3 становится 3x3.
CIRCLE Применяет к изображению круговую маску. Например, изображение 4x3 становится кругом диаметром 3.