Card
A card is a UI element that can contain UI widgets such as texts, images.
JSON representation |
---|
{ "header": { object ( |
Fields | |
---|---|
header
|
The header of the card. A header usually contains a title and an image. |
sections[]
|
Sections are separated by a line divider. |
cardActions[]
|
The actions of this card. |
name
|
Name of the card. |
CardHeader
JSON representation |
---|
{
"title": string,
"subtitle": string,
"imageStyle": enum (
|
Fields | |
---|---|
title
|
The title must be specified. The header has a fixed height: if both a title and subtitle is specified, each will take up 1 line. If only the title is specified, it will take up both lines. |
subtitle
|
The subtitle of the card header. |
imageStyle
|
The image's type (e.g. square border or circular border). |
imageUrl
|
The URL of the image in the card header. |
ImageStyle
Enums | |
---|---|
IMAGE_STYLE_UNSPECIFIED
|
|
IMAGE
|
Square border. |
AVATAR
|
Circular border. |
Section
A section contains a collection of widgets that are rendered (vertically) in the order that they are specified. Across all platforms, cards have a narrow fixed width, so there is currently no need for layout properties (e.g. float).
JSON representation |
---|
{
"header": string,
"widgets": [
{
object (
|
Fields | |
---|---|
header
|
The header of the section, text formatted supported. |
widgets[]
|
A section must contain at least 1 widget. |
WidgetMarkup
A widget is a UI element that presents texts, images, etc.
JSON representation |
---|
{ "buttons": [ { object ( |
Fields | |
---|---|
buttons[]
|
A list of buttons. Buttons is also oneof data and only one of these fields should be set. |
Union field
data
. A WidgetMarkup can only have one of the following items. You can use multiple WidgetMarkup fields to display more items.
data
can be only one of the following:
|
|
textParagraph
|
Display a text paragraph in this widget. |
image
|
Display an image in this widget. |
keyValue
|
Display a key value item in this widget. |
TextParagraph
A paragraph of text. Formatted text supported.
JSON representation |
---|
{ "text": string } |
Fields | |
---|---|
text
|
|
Image
An image that is specified by a URL and can have an onclick action.
JSON representation |
---|
{
"imageUrl": string,
"onClick": {
object (
|
Fields | |
---|---|
imageUrl
|
The URL of the image. |
onClick
|
The onclick action. |
aspectRatio
|
The aspect ratio of this image (width/height). This field allows clients to reserve the right height for the image while waiting for it to load. It's not meant to override the native aspect ratio of the image. If unset, the server fills it by prefetching the image. |
OnClick
An onclick action (e.g. open a link).
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field
|
|
action
|
A form action will be triggered by this onclick if specified. |
openLink
|
This onclick triggers an open link action if specified. |
FormAction
A form action describes the behavior when the form is submitted. For example, an Apps Script can be invoked to handle the form.
JSON representation |
---|
{
"actionMethodName": string,
"parameters": [
{
object (
|
Fields | |
---|---|
actionMethodName
|
The method name is used to identify which part of the form triggered the form submission. This information is echoed back to the Chat app as part of the card click event. The same method name can be used for several elements that trigger a common behavior if desired. |
parameters[]
|
List of action parameters. |
ActionParameter
List of string parameters to supply when the action method is invoked. For example, consider three snooze buttons: snooze now, snooze 1 day, snooze next week. You might use action method = snooze(), passing the snooze type and snooze time in the list of string parameters.
JSON representation |
---|
{ "key": string, "value": string } |
Fields | |
---|---|
key
|
The name of the parameter for the action script. |
value
|
The value of the parameter. |
OpenLink
A link that opens a new window.
JSON representation |
---|
{ "url": string } |
Fields | |
---|---|
url
|
The URL to open. |
KeyValue
A UI element contains a key (label) and a value (content). And this element may also contain some actions such as onclick button.
JSON representation |
---|
{ "topLabel": string, "content": string, "contentMultiline": boolean, "bottomLabel": string, "onClick": { object ( |
Fields | |
---|---|
topLabel
|
The text of the top label. Formatted text supported. |
content
|
The text of the content. Formatted text supported and always required. |
contentMultiline
|
If the content should be multiline. |
bottomLabel
|
The text of the bottom label. Formatted text supported. |
onClick
|
The onclick action. Only the top label, bottom label and content region are clickable. |
Union field
icons
. At least one of icons, top_label and bottom_label must be defined.
icons
can be only one of the following:
|
|
icon
|
An enum value that will be replaced by the Chat API with the corresponding icon image. |
iconUrl
|
The icon specified by a URL. |
Union field
control
. A control widget. Either button or switch_widget can be set, but not both.
control
can be only one of the following:
|
|
button
|
A button that can be clicked to trigger an action. |
Icon
The set of supported icons.
Enums | |
---|---|
ICON_UNSPECIFIED
|
|
AIRPLANE
|
|
BOOKMARK
|
|
BUS
|
|
CAR
|
|
CLOCK
|
|
CONFIRMATION_NUMBER_ICON
|
|
DOLLAR
|
|
DESCRIPTION
|
|
EMAIL
|
|
EVENT_PERFORMER
|
|
EVENT_SEAT
|
|
FLIGHT_ARRIVAL
|
|
FLIGHT_DEPARTURE
|
|
HOTEL
|
|
HOTEL_ROOM_TYPE
|
|
INVITE
|
|
MAP_PIN
|
|
MEMBERSHIP
|
|
MULTIPLE_PEOPLE
|
|
OFFER
|
|
PERSON
|
|
PHONE
|
|
RESTAURANT_ICON
|
|
SHOPPING_CART
|
|
STAR
|
|
STORE
|
|
TICKET
|
|
TRAIN
|
|
VIDEO_CAMERA
|
|
VIDEO_PLAY
|
Button
A button. Can be a text button or an image button.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field
|
|
textButton
|
A button with text and onclick action. |
imageButton
|
A button with image and onclick action. |
TextButton
A button with text and onclick action.
JSON representation |
---|
{
"text": string,
"onClick": {
object (
|
Fields | |
---|---|
text
|
The text of the button. |
onClick
|
The onclick action of the button. |
ImageButton
An image button with an onclick action.
JSON representation |
---|
{ "onClick": { object ( |
Fields | |
---|---|
onClick
|
The onclick action. |
name
|
The name of this imageButton which will be used for accessibility. Default value will be provided if developers don't specify. |
Union field
icons
. The icon, can be specified by Icon enum or a URL.
icons
can be only one of the following:
|
|
icon
|
The icon specified by an enum that indices to an icon provided by Chat API. |
iconUrl
|
The icon specified by a URL. |
CardAction
A card action is the action associated with the card. For an invoice card, a typical action would be: delete invoice, email invoice or open the invoice in browser.
Not supported by Google Chat apps.
JSON representation |
---|
{
"actionLabel": string,
"onClick": {
object (
|
Fields | |
---|---|
actionLabel
|
The label used to be displayed in the action menu item. |
onClick
|
The onclick action for this action item. |