Class Grid Stay organized with collections Save and categorize content based on your preferences.
Page Summary
A Grid is an organized grid used to display a collection of grid items.
The Grid is available for Google Workspace add-ons and Google Chat apps.
Grids support methods to add items, set authorization, border, compose, click, and open link actions, define the number of columns, and set a title.
A UI object can only have one click or action method set at a time.
An organized grid to display a collection of grid items.
Available for Google Workspace add-ons and Google Chat apps.
constgrid=CardService.newGrid().setTitle('My Grid').setNumColumns(2).addItem(CardService.newGridItem().setTitle('My item'));
Methods
| Method | Return type | Brief description |
|---|---|---|
add | Widget | Adds the event action that can be performed on the widget. |
add | Grid | Adds a new grid item to the grid. |
set | Grid | Sets an authorization action that opens a URL to the authorization flow when the object isclicked. |
set | Grid | Sets the border style applied to each grid item. |
set | Grid | Sets an action that composes a draft email when the object is clicked. |
set | Widget | Sets the unique ID assigned that's used to identify the widget to be mutated. |
set | Grid | The number of columns to display in the grid. |
set | Grid | Sets an action that executes when the object is clicked. |
set | Grid | Sets an action that opens a URL in a tab when the object is clicked. |
set | Grid | Sets a URL to be opened when the object is clicked. |
set | Grid | Sets the title text of the grid. |
set | Widget | Sets the visibility of the widget. |
Detailed documentation
addEventAction(eventAction)
Adds the event action that can be performed on the widget.
Parameters
| Name | Type | Description |
|---|---|---|
event | Event | TheEvent to be added. |
Return
Widget — The Object, for chaining.
addItem(gridItem)
setAuthorizationAction(action)
Sets an authorization action that opens a URL to the authorization flow when the object isclicked. This opens the URL in a new window. When the user finishes the authorization flow andreturns to the application, the add-on reloads.
A UI object can only have one ofset,set,set,set, orset set.
// ...constaction=CardService.newAuthorizationAction().setAuthorizationUrl('url');CardService.newTextButton().setText('Authorize').setAuthorizationAction(action);
Parameters
| Name | Type | Description |
|---|---|---|
action | Authorization | The object that specifies the authorization action to take when this element is clicked. |
Return
Grid — This object, for chaining.
setBorderStyle(borderStyle)
Sets the border style applied to each grid item. Default is NO_BORDER.
Parameters
| Name | Type | Description |
|---|---|---|
border | Border | The border style to apply. |
Return
Grid — This object, for chaining.
setComposeAction(action, composedEmailType)
Sets an action that composes a draft email when the object is clicked. A UI object can onlyhave one ofset,set,set,set, orset set.
TheAction parameter must specify a callback function that returns aCompose object configured usingCompose.
Note: This method doesn't set acompose action that isused toextend the compose UI.Rather, this method connects this UI element to anAction thatcomposes draft messages in Apps Script that areopened in Gmail when the action completes.
// ...constaction=CardService.newAction().setFunctionName('composeEmailCallback');CardService.newTextButton().setText('Compose Email').setComposeAction(action,CardService.ComposedEmailType.REPLY_AS_DRAFT);// ...functioncomposeEmailCallback(e){constthread=GmailApp.getThreadById(e.threadId);constdraft=thread.createDraftReply('This is a reply');returnCardService.newComposeActionResponseBuilder().setGmailDraft(draft).build();}
Parameters
| Name | Type | Description |
|---|---|---|
action | Action | The object that specifies the compose action to take when this element is clicked. |
composed | Composed | An enum value that specifies whether the composed draft is a standalone or reply draft. |
Return
Grid — This object, for chaining.
setId(id)
Sets the unique ID assigned that's used to identify the widget to be mutated. Widget mutationis only supported in Add-Ons.
Parameters
| Name | Type | Description |
|---|---|---|
id | String | The id of the widget, with a limit of 64 characters and in format of `[a-zA-Z0-9-]+`. |
Return
Widget — This object, for chaining.
setNumColumns(numColumns)
The number of columns to display in the grid. If shown in the right side panel, you can display1-2 columns and the default value is 1. If shown in a dialog, you can display 2-3 columns andthe default value is 2.
Parameters
| Name | Type | Description |
|---|---|---|
num | Integer | The number of columns. |
Return
Grid — This object, for chaining.
setOnClickAction(action)
Sets an action that executes when the object is clicked. A UI object can only have one ofset,set,set,set, orset set.
TheAction parameter must specify a callback function that returns aAction object.
// ...constaction=CardService.newAction().setFunctionName('notificationCallback');CardService.newTextButton().setText('Create notification').setOnClickAction(action);// ...functionnotificationCallback(){returnCardService.newActionResponseBuilder().setNotification(CardService.newNotification().setText('Some info to display to user'),).build();}
Parameters
| Name | Type | Description |
|---|---|---|
action | Action | The action to take when this element is clicked. |
Return
Grid — This object, for chaining.
setOnClickOpenLinkAction(action)
Sets an action that opens a URL in a tab when the object is clicked. Use this function when theURL needs to be built or when you need to take other actions in addition to creating theOpen object. A UI object can only have one ofset,set,set,set, orset set.
TheAction parameter must specify a callback function that returns aAction object configured usingAction.
// ...constaction=CardService.newAction().setFunctionName('openLinkCallback');CardService.newTextButton().setText('Open Link').setOnClickOpenLinkAction(action);// ...functionopenLinkCallback(){returnCardService.newActionResponseBuilder().setOpenLink(CardService.newOpenLink().setUrl('https://www.google.com')).build();}
Parameters
| Name | Type | Description |
|---|---|---|
action | Action | The object that specifies the open link action to take when this element is clicked. |
Return
Grid — This object, for chaining.
setOpenLink(openLink)
Sets a URL to be opened when the object is clicked. Use this function when the URL is alreadyknown and only needs to be opened. A UI object can only have one ofset,set,set,set,orset set.
Parameters
| Name | Type | Description |
|---|---|---|
open | Open | AnOpen object describing the URL to open. |
Return
Grid — This object, for chaining.
setTitle(title)
Sets the title text of the grid. The text must be a plain string with no formatting.
Parameters
| Name | Type | Description |
|---|---|---|
title | String | The title text. |
Return
Grid — This object, for chaining.
setVisibility(visibility)
Sets the visibility of the widget. The default value is `VISIBLE`.
Parameters
| Name | Type | Description |
|---|---|---|
visibility | Visibility | TheVisibility of the widget. |
Return
Widget — The Object, for chaining.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-12-03 UTC.