public interface WidgetOrBuilder extends MessageOrBuilder
Implements
MessageOrBuilderMethods
getButtonList()
public abstract ButtonList getButtonList()
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:
<code><code>
"buttonList": {
"buttons": [
{
"text": "Edit",
"color": {
"red": 0,
"green": 0,
"blue": 1,
"alpha": 1
},
"disabled": true,
},
{
"icon": {
"knownIcon": "INVITE",
"altText": "check calendar"
},
"onClick": {
"openLink": {
"url": "https://example.com/calendar"
}
}
}
]
}
</code></code>
.google.apps.card.v1.ButtonList button_list = 4;
Returns | |
---|---|
Type | Description |
ButtonList |
The buttonList. |
getButtonListOrBuilder()
public abstract ButtonListOrBuilder getButtonListOrBuilder()
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:
<code><code>
"buttonList": {
"buttons": [
{
"text": "Edit",
"color": {
"red": 0,
"green": 0,
"blue": 1,
"alpha": 1
},
"disabled": true,
},
{
"icon": {
"knownIcon": "INVITE",
"altText": "check calendar"
},
"onClick": {
"openLink": {
"url": "https://example.com/calendar"
}
}
}
]
}
</code></code>
.google.apps.card.v1.ButtonList button_list = 4;
Returns | |
---|---|
Type | Description |
ButtonListOrBuilder |
getColumns()
public abstract Columns getColumns()
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:
<code><code>
"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"
}
}
]
}
]
}
</code></code>
.google.apps.card.v1.Columns columns = 11;
Returns | |
---|---|
Type | Description |
Columns |
The columns. |
getColumnsOrBuilder()
public abstract ColumnsOrBuilder getColumnsOrBuilder()
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:
<code><code>
"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"
}
}
]
}
]
}
</code></code>
.google.apps.card.v1.Columns columns = 11;
Returns | |
---|---|
Type | Description |
ColumnsOrBuilder |
getDataCase()
public abstract Widget.DataCase getDataCase()
Returns | |
---|---|
Type | Description |
Widget.DataCase |
getDateTimePicker()
public abstract DateTimePicker getDateTimePicker()
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:
<code><code>
"dateTimePicker": {
"name": "appointment_time",
"label": "Book your appointment at:",
"type": "DATE_AND_TIME",
"valueMsEpoch": "796435200000"
}
</code></code>
.google.apps.card.v1.DateTimePicker date_time_picker = 7;
Returns | |
---|---|
Type | Description |
DateTimePicker |
The dateTimePicker. |
getDateTimePickerOrBuilder()
public abstract DateTimePickerOrBuilder getDateTimePickerOrBuilder()
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:
<code><code>
"dateTimePicker": {
"name": "appointment_time",
"label": "Book your appointment at:",
"type": "DATE_AND_TIME",
"valueMsEpoch": "796435200000"
}
</code></code>
.google.apps.card.v1.DateTimePicker date_time_picker = 7;
Returns | |
---|---|
Type | Description |
DateTimePickerOrBuilder |
getDecoratedText()
public abstract DecoratedText getDecoratedText()
Displays a decorated text item.
For example, the following JSON creates a decorated text widget showing email address:
<code><code>
"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"
}
}
</code></code>
.google.apps.card.v1.DecoratedText decorated_text = 3;
Returns | |
---|---|
Type | Description |
DecoratedText |
The decoratedText. |
getDecoratedTextOrBuilder()
public abstract DecoratedTextOrBuilder getDecoratedTextOrBuilder()
Displays a decorated text item.
For example, the following JSON creates a decorated text widget showing email address:
<code><code>
"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"
}
}
</code></code>
.google.apps.card.v1.DecoratedText decorated_text = 3;
Returns | |
---|---|
Type | Description |
DecoratedTextOrBuilder |
getDivider()
public abstract Divider getDivider()
Displays a horizontal line divider between widgets.
For example, the following JSON creates a divider:
<code><code>
"divider": {
}
</code></code>
.google.apps.card.v1.Divider divider = 9;
Returns | |
---|---|
Type | Description |
Divider |
The divider. |
getDividerOrBuilder()
public abstract DividerOrBuilder getDividerOrBuilder()
Displays a horizontal line divider between widgets.
For example, the following JSON creates a divider:
<code><code>
"divider": {
}
</code></code>
.google.apps.card.v1.Divider divider = 9;
Returns | |
---|---|
Type | Description |
DividerOrBuilder |
getGrid()
public abstract Grid getGrid()
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.
Google Workspace Add-ons and Chat apps:
For example, the following JSON creates a 2 column grid with a single item:
<code><code>
"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"
}
}
}
</code></code>
.google.apps.card.v1.Grid grid = 10;
Returns | |
---|---|
Type | Description |
Grid |
The grid. |
getGridOrBuilder()
public abstract GridOrBuilder getGridOrBuilder()
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.
Google Workspace Add-ons and Chat apps:
For example, the following JSON creates a 2 column grid with a single item:
<code><code>
"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"
}
}
}
</code></code>
.google.apps.card.v1.Grid grid = 10;
Returns | |
---|---|
Type | Description |
GridOrBuilder |
getHorizontalAlignment()
public abstract Widget.HorizontalAlignment getHorizontalAlignment()
Specifies whether widgets align to the left, right, or center of a column.
.google.apps.card.v1.Widget.HorizontalAlignment horizontal_alignment = 8;
Returns | |
---|---|
Type | Description |
Widget.HorizontalAlignment |
The horizontalAlignment. |
getHorizontalAlignmentValue()
public abstract int getHorizontalAlignmentValue()
Specifies whether widgets align to the left, right, or center of a column.
.google.apps.card.v1.Widget.HorizontalAlignment horizontal_alignment = 8;
Returns | |
---|---|
Type | Description |
int |
The enum numeric value on the wire for horizontalAlignment. |
getImage()
public abstract Image getImage()
Displays an image.
For example, the following JSON creates an image with alternative text:
<code><code>
"image": {
"imageUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
"altText": "Chat app avatar"
}
</code></code>
.google.apps.card.v1.Image image = 2;
Returns | |
---|---|
Type | Description |
Image |
The image. |
getImageOrBuilder()
public abstract ImageOrBuilder getImageOrBuilder()
Displays an image.
For example, the following JSON creates an image with alternative text:
<code><code>
"image": {
"imageUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
"altText": "Chat app avatar"
}
</code></code>
.google.apps.card.v1.Image image = 2;
Returns | |
---|---|
Type | Description |
ImageOrBuilder |
getSelectionInput()
public abstract SelectionInput getSelectionInput()
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:
<code><code>
"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
}
]
}
</code></code>
.google.apps.card.v1.SelectionInput selection_input = 6;
Returns | |
---|---|
Type | Description |
SelectionInput |
The selectionInput. |
getSelectionInputOrBuilder()
public abstract SelectionInputOrBuilder getSelectionInputOrBuilder()
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:
<code><code>
"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
}
]
}
</code></code>
.google.apps.card.v1.SelectionInput selection_input = 6;
Returns | |
---|---|
Type | Description |
SelectionInputOrBuilder |
getTextInput()
public abstract TextInput getTextInput()
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"
}
]
}
}
.google.apps.card.v1.TextInput text_input = 5;
Returns | |
---|---|
Type | Description |
TextInput |
The textInput. |
getTextInputOrBuilder()
public abstract TextInputOrBuilder getTextInputOrBuilder()
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"
}
]
}
}
.google.apps.card.v1.TextInput text_input = 5;
Returns | |
---|---|
Type | Description |
TextInputOrBuilder |
getTextParagraph()
public abstract TextParagraph getTextParagraph()
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:
<code><code>
"textParagraph": {
"text": " <b>bold text</b>"
}
</code></code>
.google.apps.card.v1.TextParagraph text_paragraph = 1;
Returns | |
---|---|
Type | Description |
TextParagraph |
The textParagraph. |
getTextParagraphOrBuilder()
public abstract TextParagraphOrBuilder getTextParagraphOrBuilder()
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:
<code><code>
"textParagraph": {
"text": " <b>bold text</b>"
}
</code></code>
.google.apps.card.v1.TextParagraph text_paragraph = 1;
Returns | |
---|---|
Type | Description |
TextParagraphOrBuilder |
hasButtonList()
public abstract boolean hasButtonList()
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:
<code><code>
"buttonList": {
"buttons": [
{
"text": "Edit",
"color": {
"red": 0,
"green": 0,
"blue": 1,
"alpha": 1
},
"disabled": true,
},
{
"icon": {
"knownIcon": "INVITE",
"altText": "check calendar"
},
"onClick": {
"openLink": {
"url": "https://example.com/calendar"
}
}
}
]
}
</code></code>
.google.apps.card.v1.ButtonList button_list = 4;
Returns | |
---|---|
Type | Description |
boolean |
Whether the buttonList field is set. |
hasColumns()
public abstract boolean hasColumns()
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:
<code><code>
"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"
}
}
]
}
]
}
</code></code>
.google.apps.card.v1.Columns columns = 11;
Returns | |
---|---|
Type | Description |
boolean |
Whether the columns field is set. |
hasDateTimePicker()
public abstract boolean hasDateTimePicker()
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:
<code><code>
"dateTimePicker": {
"name": "appointment_time",
"label": "Book your appointment at:",
"type": "DATE_AND_TIME",
"valueMsEpoch": "796435200000"
}
</code></code>
.google.apps.card.v1.DateTimePicker date_time_picker = 7;
Returns | |
---|---|
Type | Description |
boolean |
Whether the dateTimePicker field is set. |
hasDecoratedText()
public abstract boolean hasDecoratedText()
Displays a decorated text item.
For example, the following JSON creates a decorated text widget showing email address:
<code><code>
"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"
}
}
</code></code>
.google.apps.card.v1.DecoratedText decorated_text = 3;
Returns | |
---|---|
Type | Description |
boolean |
Whether the decoratedText field is set. |
hasDivider()
public abstract boolean hasDivider()
Displays a horizontal line divider between widgets.
For example, the following JSON creates a divider:
<code><code>
"divider": {
}
</code></code>
.google.apps.card.v1.Divider divider = 9;
Returns | |
---|---|
Type | Description |
boolean |
Whether the divider field is set. |
hasGrid()
public abstract boolean hasGrid()
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.
Google Workspace Add-ons and Chat apps:
For example, the following JSON creates a 2 column grid with a single item:
<code><code>
"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"
}
}
}
</code></code>
.google.apps.card.v1.Grid grid = 10;
Returns | |
---|---|
Type | Description |
boolean |
Whether the grid field is set. |
hasImage()
public abstract boolean hasImage()
Displays an image.
For example, the following JSON creates an image with alternative text:
<code><code>
"image": {
"imageUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
"altText": "Chat app avatar"
}
</code></code>
.google.apps.card.v1.Image image = 2;
Returns | |
---|---|
Type | Description |
boolean |
Whether the image field is set. |
hasSelectionInput()
public abstract boolean hasSelectionInput()
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:
<code><code>
"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
}
]
}
</code></code>
.google.apps.card.v1.SelectionInput selection_input = 6;
Returns | |
---|---|
Type | Description |
boolean |
Whether the selectionInput field is set. |
hasTextInput()
public abstract boolean hasTextInput()
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"
}
]
}
}
.google.apps.card.v1.TextInput text_input = 5;
Returns | |
---|---|
Type | Description |
boolean |
Whether the textInput field is set. |
hasTextParagraph()
public abstract boolean hasTextParagraph()
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:
<code><code>
"textParagraph": {
"text": " <b>bold text</b>"
}
</code></code>
.google.apps.card.v1.TextParagraph text_paragraph = 1;
Returns | |
---|---|
Type | Description |
boolean |
Whether the textParagraph field is set. |