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.

LoadIndicator

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

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

Перечисления
SPINNER Отображает индикатор загрузки контента.
NONE Ничего не отображается.

AuthorizationError

Дополнения, обращающиеся к сторонним сервисам или требующие дополнительных областей действия oAuth от Google, должны отображать пользователю карту авторизации, если учетные данные для входа (например, токены OAuth) недоступны. Дополнения должны возвращать объект AuthorizationError для отображения карты авторизации.

Поля

rendering объединенного поля.

rendering может осуществляться только одним из следующих способов:

basicAuthorizationPrompt

BasicAuthorizationAction

Пусть платформа сама создаст базовую карту авторизации. Разработчику нужно лишь указать URL-адрес авторизации. Базовое действие может использоваться дополнениями, которые НЕ предназначены для публичной публикации.

customAuthorizationPrompt

RenderActions

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

requestingGoogleScopes

RequestingGoogleScopes

При включении не включенного согласия oAuth, HTTP-дополнение может запросить дополнительные области действия Google oAuth. Дополнение должно вернуть этот объект для отображения карты авторизации. См. Manage granular permissions .

BasicAuthorizationAction

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

Поля
authorizationUrl

string

Если дополнение использует OAuth2 для подключения к стороннему сервису, то это будет URL-адрес авторизации OAuth2.

resource

string

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

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

Радиус скругления углов для границы.

BorderType

Отображает типы границ, применяемые к виджетам.

Доступно для приложений 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 Кнопки с контуром — это кнопки со средней степенью акцента. Обычно они содержат действия, которые важны, но не являются основными действиями в приложении чата или дополнении.
FILLED Заполненная кнопка имеет контейнер сплошного цвета. Она оказывает наибольшее визуальное воздействие и рекомендуется для важных и основных действий в чат-приложении или дополнении.
FILLED_TONAL Заполненная тональная кнопка представляет собой промежуточный вариант между заполненными и обведенными кнопками. Она полезна в ситуациях, когда кнопка с более низким приоритетом требует немного большего акцента, чем кнопка с обведенной рамкой.
BORDERLESS В своем стандартном состоянии кнопка не имеет невидимого контейнера. Она часто используется для действий с самым низким приоритетом, особенно при отображении нескольких вариантов.

ButtonList

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

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

Поля
buttons[]

Button

Набор кнопок.

Карта

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

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

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

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

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

Примечание: на каждую карточку можно добавить до 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.

expressionData[]

ExpressionData

Данные выражения для карты.

Доступно для дополнений Google Workspace, расширяющих функциональность Google Workspace Studio. Недоступно для приложений Google Chat.

CardAction

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

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

Поля
actionLabel

string

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

onClick

OnClick

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

CardFixedFooter

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

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

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

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

Поля
primaryButton

Button

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

secondaryButton

Button

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

CardHeader

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

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

Поля
title

string

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

subtitle

string

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

imageType

ImageType

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

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

imageUrl

string

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

imageAltText

string

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

DisplayStyle

В надстройках 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 .

id

string

Уникальный идентификатор, присваиваемый разделу и используемый для идентификации раздела, подлежащего изменению. Идентификатор имеет ограничение в 64 символа и должен быть в формате [a-zA-Z0-9-]+ .

Доступно для дополнений Google Workspace, расширяющих функциональность Google Workspace Studio. Недоступно для приложений Google Chat.

collapseControl

CollapseControl

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

Видимость

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

Доступно для дополнений Google Workspace, расширяющих функциональность Google Workspace Studio. Недоступно для приложений Google Chat.

Перечисления
VISIBILITY_UNSPECIFIED Неуказанная видимость. Не использовать.
VISIBLE Элемент пользовательского интерфейса виден.
HIDDEN Элемент пользовательского интерфейса скрыт.

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

Например, это 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

Список карточек, включенных в карусель.

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 Если фишки не помещаются в отведенное для них место, они перемещаются горизонтально.

CollapseControl

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

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

Поля
horizontalAlignment

HorizontalAlignment

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

expandButton

Button

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

collapseButton

Button

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

Колонки

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

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

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

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

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

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

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

Column

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

Столбец

Колонна.

Дополнения Google Workspace и приложения для чата

Поля
horizontalSizeStyle

HorizontalSizeStyle

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

horizontalAlignment

HorizontalAlignment

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

verticalAlignment

VerticalAlignment

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

widgets[]

Widgets

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

HorizontalSizeStyle

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

Дополнения Google Workspace и приложения для чата

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

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

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

Дополнения Google Workspace и приложения для чата

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

Виджеты

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

Дополнения Google Workspace и приложения для чата

Поля

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, расширяющих функциональность Google Workspace Studio. Недоступно для приложений Google Chat.

Поля
actionRuleId

string

Уникальный идентификатор правила действия (ActionRule).

condition поля объединения. condition может быть только одним из следующих:
expressionDataCondition

ExpressionDataCondition

Состояние, определяемое данными экспрессии.

ExpressionDataCondition

Представляет собой состояние, которое оценивается с помощью CEL.

Доступно для дополнений Google Workspace, расширяющих функциональность Google Workspace Studio. Недоступно для приложений Google Chat.

Поля
conditionType

ConditionType

Тип заболевания.

ConditionType

Тип заболевания.

Перечисления
CONDITION_TYPE_UNSPECIFIED Тип заболевания не указан.
EXPRESSION_EVALUATION_SUCCESS Оценка экспрессии прошла успешно.
EXPRESSION_EVALUATION_FAILURE Оценка экспрессии оказалась неудачной.

DataActions

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

Поля
hostAppDataAction

HostAppDataActionMarkup

Определяет способ обновления данных в Google Workspace.

DataSourceConfig

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

Доступно для приложений Google Chat и дополнений Google Workspace, расширяющих функциональность Google Workspace Studio.

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

Action

Данные получены от удалённого поставщика данных.

platformDataSource

PlatformDataSource

Данные получены из приложения Google Workspace.

minCharactersTrigger

int32

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

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

int32

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

onChangeAction

Action

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

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

HostAppDataSourceMarkup

Уникальный для каждого приложения Google Workspace источник данных, например, электронные письма Gmail, события Google Calendar или сообщения Google Chat.

Доступно для дополнений Google Workspace, расширяющих функциональность Google Workspace Studio. Недоступно для приложений Google Chat.

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

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

startIconVerticalAlignment

VerticalAlignment

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

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

topLabel

string

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

topLabelText

TextParagraph

TextParagraph эквивалентен top_label . Всегда обрезает текст. Позволяет использовать более сложное форматирование, чем top_label .

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

text

string

Обязательно. Основной текст.

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

contentText

TextParagraph

TextParagraph эквивалент text . Позволяет использовать более сложное форматирование, чем text .

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

wrapText

bool

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

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

bottomLabel

string

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

bottomLabelText

TextParagraph

TextParagraph эквивалентен bottom_label . Всегда переносит текст. Позволяет использовать более сложное форматирование, чем bottom_label .

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

onClick

OnClick

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

control Union Field. Кнопка, переключатель, флажок или изображение, отображаемое справа от текста в виджете 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.

ControlType

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

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

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

Разделитель

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

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

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

For example, the following JSON creates a divider:

"divider": {}

EndNavigation

For add-ons in Google Chat , closes a dialog .

Поля
action

Action

For add-ons in Google Chat , the action that closes a dialog .

Available for Google Workspace add-ons and unavailable for Google Chat apps.

Действие

For add-ons in Google Chat , actions for closing a dialog .

Перечисления
ACTION_UNSPECIFIED Action unspecified.
CLOSE_DIALOG Closes a dialog.
CLOSE_DIALOG_AND_EXECUTE Closes a dialog and refreshes the card that opened the dialog.

EventAction

Represents an actionthat can be performed on an ui element.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Поля
actionRuleId

string

The unique identifier of the ActionRule.

postEventTriggers[]

Trigger

The list of triggers that will be triggered after the EventAction is executed.

Union field action . The action to perform. action can be only one of the following:
commonWidgetAction

CommonWidgetAction

Common widget action.

CommonWidgetAction

Represents an action that is not specific to a widget.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Поля
Union field action . The action to perform. action can be only one of the following:
updateVisibilityAction

UpdateVisibilityAction

The action to update the visibility of a widget.

UpdateVisibilityAction

Represents an action that updates the visibility of a widget.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Поля
visibility

Visibility

The new visibility.

ExpressionData

Represents the data that is used to evaluate an expression.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Поля
id

string

The unique identifier of the ExpressionData.

expression

string

The uncompiled expression.

conditions[]

Condition

The list of conditions that are determined by the expression evaluation result.

eventActions[]

EventAction

The list of actions that the ExpressionData can be used.

GetAutocompletionResponse

A response to getting autocomplete container, which includes elements necessary for showing auto complete items for text field.

Available for Google Workspace add-ons and unavailable for Google Chat apps. For example:

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

Suggestions

schema

string

This is a no-op schema field that might be present in the markup for syntax checking.

Сетка

Displays a grid with a collection of items. Items can only include text or images. For responsive columns, or to include more than text or images, use Columns . For an example in Google Chat apps, see Display a Grid with a collection of items .

A grid supports any number of columns and items. The number of rows is determined by items divided by columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows.

Available for Google Chat apps and Google Workspace add-ons.

For example, the following JSON creates a 2 column grid with a single item:

"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

The text that displays in the grid header.

items[]

GridItem

The items to display in the grid.

borderStyle

BorderStyle

The border style to apply to each grid item.

columnCount

int32

The number of columns to display in the grid. A default value is used if this field isn't specified, and that default value is different depending on where the grid is shown (dialog versus companion).

onClick

OnClick

This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters.

GridItem

Represents an item in a grid layout. Items can contain text, an image, or both text and an image.

Available for Google Chat apps and Google Workspace add-ons.

Поля
id

string

A user-specified identifier for this grid item. This identifier is returned in the parent grid's onClick callback parameters.

image

ImageComponent

The image that displays in the grid item.

title

string

The grid item's title.

subtitle

string

The grid item's subtitle.

layout

GridItemLayout

The layout to use for the grid item.

GridItemLayout

Represents the various layout options available for a grid item.

Available for Google Chat apps and Google Workspace add-ons.

Перечисления
GRID_ITEM_LAYOUT_UNSPECIFIED Don't use. Unspecified.
TEXT_BELOW The title and subtitle are shown below the grid item's image.
TEXT_ABOVE The title and subtitle are shown above the grid item's image.

Икона

An icon displayed in a widget on a card. For an example in Google Chat apps, see Add an icon .

Supports built-in and custom icons.

Available for Google Chat apps and Google Workspace add-ons.

Поля
altText

string

Optional. A description of the icon used for accessibility. If unspecified, the default value Button is provided. As a best practice, you should set a helpful description for what the icon displays, and if applicable, what it does. For example, A user's account portrait , or Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat .

If the icon is set in a Button , the altText appears as helper text when the user hovers over the button. However, if the button also sets text , the icon's altText is ignored.

imageType

ImageType

The crop style applied to the image. In some cases, applying a CIRCLE crop causes the image to be drawn larger than a built-in icon.

Union field icons . The icon displayed in the widget on the card. icons can be only one of the following:
knownIcon

string

Display one of the built-in icons provided by Google Workspace.

For example, to display an airplane icon, specify AIRPLANE . For a bus, specify BUS .

For a full list of supported icons, see built-in icons .

iconUrl

string

Display a custom icon hosted at an HTTPS URL.

Например:

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

Supported file types include .png and .jpg .

materialIcon

MaterialIcon

Display one of the Google Material Icons .

For example, to display a checkbox icon , use

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

Available for Google Chat apps and unavailable for Google Workspace add-ons.

Изображение

An image that is specified by a URL and can have an onClick action. For an example, see Add an image .

Available for Google Chat apps and Google Workspace add-ons.

Поля
imageUrl

string

The HTTPS URL that hosts the image.

Например:

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

OnClick

When a user clicks the image, the click triggers this action.

altText

string

The alternative text of this image that's used for accessibility.

ImageComponent

Represents an image.

Available for Google Chat apps and Google Workspace add-ons.

Поля
imageUri

string

The image URL.

altText

string

The accessibility label for the image.

cropStyle

ImageCropStyle

The crop style to apply to the image.

borderStyle

BorderStyle

The border style to apply to the image.

ImageCropStyle

Represents the crop style applied to an image.

Available for Google Chat apps and Google Workspace add-ons.

For example, here's how to apply a 16:9 aspect ratio:

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

ImageCropType

The crop type.

aspectRatio

double

The aspect ratio to use if the crop type is RECTANGLE_CUSTOM .

For example, here's how to apply a 16:9 aspect ratio:

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

ImageCropType

Represents the crop style applied to an image.

Available for Google Chat apps and Google Workspace add-ons.

Перечисления
IMAGE_CROP_TYPE_UNSPECIFIED Don't use. Unspecified.
SQUARE Default value. Applies a square crop.
CIRCLE Applies a circular crop.
RECTANGLE_CUSTOM Applies a rectangular crop with a custom aspect ratio. Set the custom aspect ratio with aspectRatio .
RECTANGLE_4_3 Applies a rectangular crop with a 4:3 aspect ratio.

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

Card action that previews a third-party link by displaying a card and smart chip. To learn more, see Preview links with smart chips .

Available for Google Workspace add-ons and unavailable for Google Chat apps.

For example, the following JSON returns a unique title for the link preview and its smart chip, and a preview card with a header and text description:

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

The example returns the following link preview:

Example link preview

Поля
previewCard

Card

A card that displays information about a link from a third-party service.

title

string

The title that displays in the smart chip for the link preview. If unset, the smart chip displays the header of the previewCard .

linkPreviewTitle

string

The title that displays in the link preview. If unset, the link preview displays the header of the previewCard .

MaterialIcon

A Google Material Icon , which includes over 2500+ options.

For example, to display a checkbox icon with customized weight and grade, write the following:

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

Available for Google Chat apps and unavailable for Google Workspace add-ons.

Поля
name

string

The icon name defined in the Google Material Icon , for example, check_box . Any invalid names are abandoned and replaced with empty string and results in the icon failing to render.

fill

bool

Whether the icon renders as filled. Default value is false.

To preview different icon settings, go to Google Font Icons and adjust the settings under Customize .

weight

int32

The stroke weight of the icon. Choose from {100, 200, 300, 400, 500, 600, 700}. If absent, default value is 400. If any other value is specified, the default value is used.

To preview different icon settings, go to Google Font Icons and adjust the settings under Customize .

grade

int32

Weight and grade affect a symbol's thickness. Adjustments to grade are more granular than adjustments to weight and have a small impact on the size of the symbol. Choose from {-25, 0, 200}. If absent, default value is 0. If any other value is specified, the default value is used.

To preview different icon settings, go to Google Font Icons and adjust the settings under Customize .

ModifyCard

For add-ons in Google Chat , updates a card based on a user interaction. The array must only contain a single object.

Поля
Union field operation . The operation to perform. operation can be only one of the following:
updateWidget

UpdateWidget

For add-ons in Google Chat , updates a widget in a card or dialog.

UpdateWidget

For add-ons in Google Chat , updates a widget in a card or dialog. It is used for providing auto-complete suggestions when user types in an input box. See Suggest multiselect items for more details.

Поля
Union field updated_widget . The updates to a widget. updated_widget can be only one of the following:
selectionInputWidgetSuggestions

SelectionInputWidgetSuggestions

For selectionInput widgets, an array of suggested items in a multiselect menu. When a multiselect menu uses an external data source to populate its items, the widget can dynamically populate suggestions based on what they type into the menu. For more information, see Collect information from Google Chat users .

SelectionInputWidgetSuggestions

For a selectionInput widget that uses a multiselect menu, returns selection items from an external dynamic data source.

Поля
suggestions[]

SelectionItem

An array of selectable items that appear to a user after they type into a multiselect menu.

Updates or navigates between cards in a card stack.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

Например:

1) Return a new card (Navigate forward).

 navigations : {
    pushCard : CARD
  }

2) Update the card on top of the stack (in place update).

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

3) Go back one step without updating.

  navigations : {
    popCard : true,
  }

4) Go back multiple steps and update that card.

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

5) Go back multiple steps to a defined CARD_NAME .

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

6) Go back to the root and update that card.

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

7) Pop to the specified card and pop that one as well.

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

8) Replace the top card with a new card.

  navigations : {
    updateCard : CARD
  }
Поля

Union field navigate_action .

navigate_action can be only one of the following:

popToRoot

bool

Pops all cards off except the root card.

pop

bool

Pops one card off.

popToCard

string

Pops all cards above the specified card with given card name.

pushCard

Card

Pushes a card onto the card stack.

For dialogs in Google Chat , opens or updates a dialog.

updateCard

Card

Updates the top card with a new card and preserves filled form fields values. For a non-equivalent field, the value is dropped.

For dialogs in Google Chat , opens or updates a dialog.

endNavigation

EndNavigation

For add-ons in Google Chat , closes a dialog .

Уведомление

An action that displays a notification in the host Google Workspace application when a user interacts with a card.

For add-ons in Google Chat , displays a notification when users submit and close a dialog .

Available for Google Workspace add-ons and unavailable for Google Chat apps.

Поля
text

string

Plain text to display for the notification, without HTML tags.

OnClick

Represents how to respond when users click an interactive element on a card, such as a button.

Available for Google Chat apps and Google Workspace add-ons.

Поля

Union field data .

data can be only one of the following:

action

Action

If specified, an action is triggered by this onClick .

openDynamicLinkAction

Action

An add-on triggers this action when the action needs to open a link. This differs from the open_link above in that this needs to talk to server to get the link. Thus some preparation work is required for web client to do before the open link action response comes back.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

card

Card

A new card is pushed to the card stack after clicking if specified.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

overflowMenu

OverflowMenu

If specified, this onClick opens an overflow menu.

OnClose

What the client does when a link opened by an OnClick action is closed.

Implementation depends on client platform capabilities. For example, a web browser might open a link in a pop-up window with an OnClose handler.

If both OnOpen and OnClose handlers are set, and the client platform can't support both values, OnClose takes precedence.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

Перечисления
NOTHING Default value. The card doesn't reload; nothing happens.
RELOAD

Reloads the card after the child window closes.

If used in conjunction with OpenAs.OVERLAY , the child window acts as a modal dialog and the parent card is blocked until the child window closes.

OpenAs

When an OnClick action opens a link, then the client can either open it as a full-size window (if that's the frame used by the client), or an overlay (such as a pop-up). The implementation depends on the client platform capabilities, and the value selected might be ignored if the client doesn't support it. FULL_SIZE is supported by all clients.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

Перечисления
FULL_SIZE The link opens as a full-size window (if that's the frame used by the client).
OVERLAY The link opens as an overlay, such as a pop-up.

OverflowMenu

A widget that presents a pop-up menu with one or more actions that users can invoke. For example, showing non-primary actions in a card. You can use this widget when actions don't fit in the available space. To use, specify this widget in the OnClick action of widgets that support it. For example, in a Button .

Available for Google Chat apps and Google Workspace add-ons.

Поля
items[]

OverflowMenuItem

Required. The list of menu options.

OverflowMenuItem

An option that users can invoke in an overflow menu.

Available for Google Chat apps and Google Workspace add-ons.

Поля
startIcon

Icon

The icon displayed in front of the text.

text

string

Required. The text that identifies or describes the item to users.

onClick

OnClick

Required. The action invoked when a menu option is selected. This OnClick cannot contain an OverflowMenu , any specified OverflowMenu is dropped and the menu item disabled.

disabled

bool

Whether the menu option is disabled. Defaults to false.

RenderActions

A set of render instructions that tells a host application how to render a card or perform an action in response to a user interaction.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

Поля
action

Action

The action that add-ons can use to update the UI.

Add-ons in Google Chat .

hostAppAction

HostAppActionMarkup

Actions handled by individual host apps.

schema

string

This is a no-op schema field that might be present in the markup for syntax checking.

Действие

The actions that add-ons can use in cards or the host application.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

Поля
navigations[]

Navigation

Pushes, pops, or updates a card.

Add-ons in Google Chat .

notification

Notification

Displays a notification in the host Google Workspace application when a user interacts with a card.

For add-ons in Google Chat , displays a notification when users submit and close a dialog .

linkPreview

LinkPreview

Available in Google Docs, Google Sheets, and Google Slides. Previews links with smart chips and card. For details, see Preview links with smart chips .

modifyOperations[]

ModifyCard

For add-ons in Google Chat , updates a card based on a user interaction. The array must only contain a single object.

RequestingGoogleScopes

When unbundled oAuth consent is enabled, the HTTP add-on might need to request more Google oAuth scopes. The add-on should return this object to render the authorization card. See Manage granular permissions .

Поля
scopes[]

string

The scopes that the add-on is requesting.

allScopes

bool

If true, the add-on is requesting all scopes from the manifest. The scopes field should be empty in this case.

SelectionInput

A widget that creates one or more UI items that users can select. Supports form submission validation for dropdown and multiselect menus only. When Action.all_widgets_are_required is set to true or this widget is specified in Action.required_widgets , the submission action is blocked unless a value is selected. For example, a dropdown menu or checkboxes. You can use this widget to collect data that can be predicted or enumerated. For an example in Google Chat apps, see Add selectable UI elements .

Chat apps can process the value of items that users select or input. For details about working with form inputs, see Receive form data .

To collect undefined or abstract data from users, use the TextInput widget.

Available for Google Chat apps and Google Workspace add-ons.

Поля
name

string

Required. The name that identifies the selection input in a form input event.

For details about working with form inputs, see Receive form data .

label

string

The text that appears above the selection input field in the user interface.

Specify text that helps the user enter the information your app needs. For example, if users are selecting the urgency of a work ticket from a drop-down menu, the label might be "Urgency" or "Select urgency".

type

SelectionType

The type of items that are displayed to users in a SelectionInput widget. Selection types support different types of interactions. For example, users can select one or more checkboxes, but they can only select one value from a dropdown menu.

items[]

SelectionItem

An array of selectable items. For example, an array of radio buttons or checkboxes. Supports up to 100 items.

onChangeAction

Action

If specified, the form is submitted when the selection changes. If not specified, you must specify a separate button that submits the form.

For details about working with form inputs, see Receive form data .

multiSelectMinQueryLength

int32

For multiselect menus, the number of text characters that a user inputs before the menu returns suggested selection items.

If unset, the multiselect menu uses the following default values:

  • If the menu uses a static array of SelectionInput items, defaults to 0 characters and immediately populates items from the array.
  • If the menu uses a dynamic data source ( multi_select_data_source ), defaults to 3 characters before querying the data source to return suggested items.
dataSourceConfigs[]

DataSourceConfig

Optional. The data source configs for the selection control. This field provides more fine-grained control over the data source.

If specified, the multi_select_max_selected_items field, multi_select_min_query_length field, external_data_source field and platform_data_source field are ignored.

Available for Google Workspace add-ons that extend Google Workspace Studio.

Available for the Dropdown widget in Google Chat apps. For the Dropdown widget in Google Chat apps, only one DataSourceConfig is supported. If multiple DataSourceConfig s are set, only the first one is used.

multiSelectMaxSelectedItems

int32

For multiselect menus, the maximum number of items that a user can select. Minimum value is 1 item. If unspecified, defaults to 3 items.

hintText

string

Optional. Text that appears below the selection input field meant to assist users by prompting them to enter a certain value. This text is always visible.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Union field multi_select_data_source . For a multiselect menu, a data source that dynamically populates selection items.

Available for Google Chat apps and unavailable for Google Workspace add-ons. multi_select_data_source can be only one of the following:

externalDataSource

Action

An external data source, such as a relational database.

platformDataSource

PlatformDataSource

A data source from Google Workspace.

PlatformDataSource

For a SelectionInput widget that uses a multiselect menu, a data source from Google Workspace. Used to populate items in a multiselect menu.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

Поля
Union field data_source . The data source. data_source can be only one of the following:
commonDataSource

CommonDataSource

A data source shared by all Google Workspace applications, such as users in a Google Workspace organization.

hostAppDataSource

HostAppDataSourceMarkup

A data source that's unique to a Google Workspace host application, such spaces in Google Chat.

This field supports the Google API Client Libraries but isn't available in the Cloud Client Libraries. To learn more, see Install the client libraries .

CommonDataSource

A data source shared by all Google Workspace applications .

Available for Google Chat apps and unavailable for Google Workspace add-ons.

Перечисления
UNKNOWN Default value. Don't use.
USER Google Workspace users. The user can only view and select users from their Google Workspace organization.

SelectionItem

An item that users can select in a selection input, such as a checkbox or switch. Supports up to 100 items.

Available for Google Chat apps and Google Workspace add-ons.

Поля
text

string

The text that identifies or describes the item to users.

value

string

The value associated with this item. The client should use this as a form input value.

For details about working with form inputs, see Receive form data .

selected

bool

Whether the item is selected by default. If the selection input only accepts one value (such as for radio buttons or a dropdown menu), only set this field for one item.

bottomText

string

For multiselect menus, a text description or label that's displayed below the item's text field.

Union field startIcon . For multiselect menus, the URL for the icon displayed next to the item's text field. Supports PNG and JPEG files. Must be an HTTPS URL. For example, https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png . startIcon can be only one of the following:
startIconUri

string

Тип выбора

The format for the items that users can select. Different options support different types of interactions. For example, users can select multiple checkboxes, but can only select one item from a dropdown menu.

Each selection input supports one type of selection. Mixing checkboxes and switches, for example, isn't supported.

Available for Google Chat apps and Google Workspace add-ons.

Перечисления
CHECK_BOX A set of checkboxes. Users can select one or more checkboxes.
RADIO_BUTTON A set of radio buttons. Users can select one radio button.
SWITCH A set of switches. Users can turn on one or more switches.
DROPDOWN

A dropdown menu. Users can select one item from the menu.

For Google Chat apps, you can populate items using a dynamic data source and autosuggest items as users type in the menu. For example, users can start typing the name of a Google Chat space and the widget autosuggests the space. To dynamically populate items for a dropdown menu, use one of the following types of data sources:

  • Google Workspace data: Items are populated using data from Google Workspace, such as Google Workspace users or Google Chat spaces.
  • External data: Items are populated from an external data source outside of Google Workspace.

For examples of how to implement dropdown menus for Chat apps, see Add a dropdown menu and Dynamically populate drop-down menus .

Available for Google Chat apps and Google Workspace add-ons.

MULTI_SELECT

A menu with a text box. Users can type and select one or more items. For Google Workspace add-ons, you must populate items using a static array of SelectionItem objects.

For Google Chat apps, you can also populate items using a dynamic data source and autosuggest items as users type in the menu. For example, users can start typing the name of a Google Chat space and the widget autosuggests the space. To dynamically populate items for a multiselect menu, use one of the following types of data sources:

  • Google Workspace data: Items are populated using data from Google Workspace, such as Google Workspace users or Google Chat spaces.
  • External data: Items are populated from an external data source outside of Google Workspace.

For examples of how to implement multiselect menus for Chat apps, see Add a multiselect menu .

Available for Google Chat apps and Google Workspace add-ons.

SubmitFormResponse

A response to a form submit other than getting an autocomplete container, which contains the actions the card should perform and/or the add-on host app should perform, and whether the card's state has changed.

Available for Google Workspace add-ons and unavailable for Google Chat apps. For example:

{
  "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

A set of render instructions that tells the card to perform an action and/or tells the add-on host app to perform an app-specific action.

stateChanged

bool

Whether the state of the cards has changed and data in existing cards is stale.

schema

string

This is a no-op schema field that may be present in the markup for syntax checking.

Предложения

Suggested values that users can enter. These values appear when users click inside the text input field. As users type, the suggested values dynamically filter to match what the users have typed.

For example, a text input field for programming language might suggest Java, JavaScript, Python, and C++. When users start typing Jav , the list of suggestions filters to show Java and JavaScript .

Suggested values help guide users to enter values that your app can make sense of. When referring to JavaScript, some users might enter javascript and others java script . Suggesting JavaScript can standardize how users interact with your app.

When specified, TextInput.type is always SINGLE_LINE , even if it's set to MULTIPLE_LINE .

Available for Google Chat apps and Google Workspace add-ons.

Поля
items[]

SuggestionItem

A list of suggestions used for autocomplete recommendations in text input fields.

SuggestionItem

One suggested value that users can enter in a text input field.

Available for Google Chat apps and Google Workspace add-ons.

Поля

Union field content .

content can be only one of the following:

text

string

The value of a suggested input to a text input field. This is equivalent to what users enter themselves.

Текстовое поле

A field in which users can enter text. Supports suggestions and on-change actions. Supports form submission validation. When Action.all_widgets_are_required is set to true or this widget is specified in Action.required_widgets , the submission action is blocked unless a value is entered. For an example in Google Chat apps, see Add a field in which a user can enter text .

Chat apps receive and can process the value of entered text during form input events. For details about working with form inputs, see Receive form data .

When you need to collect undefined or abstract data from users, use a text input. To collect defined or enumerated data from users, use the SelectionInput widget.

Available for Google Chat apps and Google Workspace add-ons.

Поля
name

string

The name by which the text input is identified in a form input event.

For details about working with form inputs, see Receive form data .

label

string

The text that appears above the text input field in the user interface.

Specify text that helps the user enter the information your app needs. For example, if you are asking someone's name, but specifically need their surname, write surname instead of name .

Required if hintText is unspecified. Otherwise, optional.

hintText

string

Text that appears below the text input field meant to assist users by prompting them to enter a certain value. This text is always visible.

Required if label is unspecified. Otherwise, optional.

value

string

The value entered by a user, returned as part of a form input event.

For details about working with form inputs, see Receive form data .

type

Type

How a text input field appears in the user interface. For example, whether the field is single or multi-line.

onChangeAction

Action

What to do when a change occurs in the text input field. For example, a user adding to the field or deleting text.

Examples of actions to take include running a custom function or opening a dialog in Google Chat.

initialSuggestions

Suggestions

Suggested values that users can enter. These values appear when users click inside the text input field. As users type, the suggested values dynamically filter to match what the users have typed.

For example, a text input field for programming language might suggest Java, JavaScript, Python, and C++. When users start typing Jav , the list of suggestions filters to show just Java and JavaScript .

Suggested values help guide users to enter values that your app can make sense of. When referring to JavaScript, some users might enter javascript and others java script . Suggesting JavaScript can standardize how users interact with your app.

When specified, TextInput.type is always SINGLE_LINE , even if it's set to MULTIPLE_LINE .

Available for Google Chat apps and Google Workspace add-ons.

autoCompleteAction

Action

Optional. Specify what action to take when the text input field provides suggestions to users who interact with it.

If unspecified, the suggestions are set by initialSuggestions and are processed by the client.

If specified, the app takes the action specified here, such as running a custom function.

Available for Google Workspace add-ons and unavailable for Google Chat apps.

validation

Validation

Specify the input format validation necessary for this text field.

Available for Google Chat apps and Google Workspace add-ons.

placeholderText

string

Text that appears in the text input field when the field is empty. Use this text to prompt users to enter a value. For example, Enter a number from 0 to 100 .

Available for Google Chat apps and unavailable for Google Workspace add-ons.

Union field data_source .

data_source can be only one of the following:

hostAppDataSource

HostAppDataSourceMarkup

A data source that's unique to a Google Workspace host application, such as Gmail emails, Google Calendar events, or Google Chat messages.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Тип

How a text input field appears in the user interface. For example, whether it's a single line input field, or a multi-line input. If initialSuggestions is specified, type is always SINGLE_LINE , even if it's set to MULTIPLE_LINE .

Available for Google Chat apps and Google Workspace add-ons.

Перечисления
SINGLE_LINE The text input field has a fixed height of one line.
MULTIPLE_LINE The text input field has a fixed height of multiple lines.

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

A paragraph of text that supports formatting. For an example in Google Chat apps, see Add a paragraph of formatted text . For more information about formatting text, see Formatting text in Google Chat apps and Formatting text in Google Workspace add-ons .

Available for Google Chat apps and Google Workspace add-ons.

Поля
text

string

The text that's shown in the widget.

maxLines

int32

The maximum number of lines of text that are displayed in the widget. If the text exceeds the specified maximum number of lines, the excess content is concealed behind a show more button. If the text is equal or shorter than the specified maximum number of lines, a show more button isn't displayed.

The default value is 0, in which case all context is displayed. Negative values are ignored.

textSyntax

TextSyntax

The syntax of the text. If not set, the text is rendered as HTML.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

TextSyntax

Syntax to use for formatting text.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

Перечисления
TEXT_SYNTAX_UNSPECIFIED The text is rendered as HTML if unspecified.
HTML The text is rendered as HTML. This is the default value.
MARKDOWN The text is rendered as Markdown.

Курок

Represents a trigger.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Поля
actionRuleId

string

The unique identifier of the ActionRule.

Проверка

Represents the necessary data for validating the widget it's attached to.

Available for Google Chat apps and Google Workspace add-ons.

Поля
characterLimit

int32

Specify the character limit for text input widgets. Note that this is only used for text input and is ignored for other widgets.

Available for Google Chat apps and Google Workspace add-ons.

inputType

InputType

Specify the type of the input widgets.

Available for Google Chat apps and Google Workspace add-ons.

InputType

The type of the input widget.

Перечисления
INPUT_TYPE_UNSPECIFIED Unspecified type. Do not use.
TEXT Regular text that accepts all characters.
INTEGER An integer value.
FLOAT A float value.
EMAIL An email address.
EMOJI_PICKER A emoji selected from system-provided emoji picker.

Виджет

Each card is made up of widgets.

A widget is a composite object that can represent one of text, images, buttons, and other object types.

Поля
horizontalAlignment

HorizontalAlignment

Specifies whether widgets align to the left, right, or center of a column.

id

string

A unique ID assigned to the widget that's used to identify the widget to be mutated. The ID has a character limit of 64 characters and should be in the format of [a-zA-Z0-9-]+ .

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

visibility

Visibility

Specifies whether the widget is visible or hidden. The default value is VISIBLE .

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

eventActions[]

EventAction

Specifies the event actions that can be performed on the widget.

Available for Google Workspace add-ons that extend Google Workspace Studio. Unavailable for Google Chat apps.

Union field data . A widget can only have one of the following items. You can use multiple widget fields to display more items. data can be only one of the following:
textParagraph

TextParagraph

Displays a text paragraph. Supports simple HTML formatted text. For more information about formatting text, see Formatting text in Google Chat apps and Formatting text in Google Workspace add-ons .

For example, the following JSON creates a bolded text:

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

Image

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

For example, the following JSON creates an image with alternative text:

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

DecoratedText

Displays a decorated text item.

For example, the following JSON creates a decorated text widget showing email address:

"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

A list of buttons.

For example, the following JSON creates two buttons. The first is a blue text button and the second is an image button that opens a link:

"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

Displays a text box that users can type into.

For example, the following JSON creates a text input for an email address:

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

As another example, the following JSON creates a text input for a programming language with static suggestions:

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

SelectionInput

Displays a selection control that lets users select items. Selection controls can be checkboxes, radio buttons, switches, or dropdown menus.

For example, the following JSON creates a dropdown menu that lets users choose a size:

"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

Displays a widget that lets users input a date, time, or date and time.

For example, the following JSON creates a date time picker to schedule an appointment:

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

Divider

Displays a horizontal line divider between widgets.

For example, the following JSON creates a divider:

"divider": {
}
grid

Grid

Displays a grid with a collection of items.

A grid supports any number of columns and items. The number of rows is determined by the upper bounds of the number items divided by the number of columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows.

Available for Google Chat apps and Google Workspace add-ons.

For example, the following JSON creates a 2 column grid with a single item:

"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

Displays up to 2 columns.

To include more than 2 columns, or to use rows, use the Grid widget.

For example, the following JSON creates 2 columns that each contain text paragraphs:

"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

A carousel contains a collection of nested widgets. For example, this is a JSON representation of a carousel that contains two text paragraphs.

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

ChipList

A list of chips.

For example, the following JSON creates two chips. The first is a text chip and the second is an icon chip that opens a link:

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

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

Specifies whether widgets align to the left, right, or center of a column.

Available for Google Chat apps and unavailable for Google Workspace add-ons.

Перечисления
HORIZONTAL_ALIGNMENT_UNSPECIFIED Don't use. Unspecified.
START Default value. Aligns widgets to the start position of the column. For left-to-right layouts, aligns to the left. For right-to-left layouts, aligns to the right.
CENTER Aligns widgets to the center of the column.
END Aligns widgets to the end position of the column. For left-to-right layouts, aligns widgets to the right. For right-to-left layouts, aligns widgets to the left.

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

The shape used to crop the image.

Available for Google Chat apps and Google Workspace add-ons.

Перечисления
SQUARE Default value. Applies a square mask to the image. For example, a 4x3 image becomes 3x3.
CIRCLE Applies a circular mask to the image. For example, a 4x3 image becomes a circle with a diameter of 3.

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

Represents vertical alignment attribute.

Перечисления
VERTICAL_ALIGNMENT_UNSPECIFIED Unspecified type. Do not use.
TOP Alignment to the top position.
MIDDLE Alignment to the middle position.
BOTTOM Alignment to the bottom position.