Class Button

Button

A base class for all buttons.

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

Methods

Method Return type Brief description
Button Sets an authorization action that opens a URL to the authorization flow when the object is clicked.
Button Sets an action that composes a draft email when the object is clicked.
Button Sets an action that executes when the object is clicked.
Button Sets an action that opens a URL in a tab when the object is clicked.
Button Sets a URL to be opened when the object is clicked.
Button Sets a pop-up menu to be opened when the object is clicked.

Detailed documentation

set Authorization Action(action)

Sets an authorization action that opens a URL to the authorization flow when the object is clicked. This opens the URL in a new window. When the user finishes the authorization flow and returns to the application, the add-on reloads.

A UI object can only have one of set Open Link(openLink) , set On Click Action(action) , set On Click Open Link Action(action) , set Authorization Action(action) , or set Compose Action(action, composedEmailType) set.

 // ... 
 const 
  
 action 
  
 = 
  
 CardService 
 . 
 newAuthorizationAction 
 (). 
 setAuthorizationUrl 
 ( 
 'url' 
 ); 
 CardService 
 . 
 newTextButton 
 (). 
 setText 
 ( 
 'Authorize' 
 ). 
 setAuthorizationAction 
 ( 
 action 
 ); 

Parameters

Name Type Description
action
Authorization Action The object that specifies the authorization action to take when this element is clicked.

Return

Button — This object, for chaining.


set Compose Action(action, composedEmailType)

Sets an action that composes a draft email when the object is clicked. A UI object can only have one of set Open Link(openLink) , set On Click Action(action) , set On Click Open Link Action(action) , set Authorization Action(action) , or set Compose Action(action, composedEmailType) set.

The Action parameter must specify a callback function that returns a Compose Action Response object configured using Compose Action Response Builder.setGmailDraft(draft) .

 // ... 
 const 
  
 action 
  
 = 
  
 CardService 
 . 
 newAction 
 (). 
 setFunctionName 
 ( 
 'composeEmailCallback' 
 ); 
 CardService 
 . 
 newTextButton 
 () 
  
 . 
 setText 
 ( 
 'Compose Email' 
 ) 
  
 . 
 setComposeAction 
 ( 
 action 
 , 
  
 CardService 
 . 
 ComposedEmailType 
 . 
 REPLY_AS_DRAFT 
 ); 
 // ... 
 function 
  
 composeEmailCallback 
 ( 
 e 
 ) 
  
 { 
  
 const 
  
 thread 
  
 = 
  
 GmailApp 
 . 
 getThreadById 
 ( 
 e 
 . 
 threadId 
 ); 
  
 const 
  
 draft 
  
 = 
  
 thread 
 . 
 createDraftReply 
 ( 
 'This is a reply' 
 ); 
  
 return 
  
 CardService 
 . 
 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 Email Type
Composed Email Type An enum value that specifies whether the composed draft is a standalone or reply draft.

Return

Button — This object, for chaining.


set On Click Action(action)

Sets an action that executes when the object is clicked. A UI object can only have one of set Open Link(openLink) , set On Click Action(action) , set On Click Open Link Action(action) , set Authorization Action(action) , or set Compose Action(action, composedEmailType) set.

The Action parameter must specify a callback function that returns a Action Response object.

 // ... 
 const 
  
 action 
  
 = 
  
 CardService 
 . 
 newAction 
 (). 
 setFunctionName 
 ( 
 'notificationCallback' 
 ); 
 CardService 
 . 
 newTextButton 
 () 
  
 . 
 setText 
 ( 
 'Create notification' 
 ) 
  
 . 
 setOnClickAction 
 ( 
 action 
 ); 
 // ... 
 function 
  
 notificationCallback 
 () 
  
 { 
  
 return 
  
 CardService 
 . 
 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

Button — This object, for chaining.


set On Click Open Link Action(action)

Sets an action that opens a URL in a tab when the object is clicked. Use this function when the URL needs to be built or when you need to take other actions in addition to creating the Open Link object. A UI object can only have one of set Open Link(openLink) , set On Click Action(action) , set On Click Open Link Action(action) , set Authorization Action(action) , or set Compose Action(action, composedEmailType) set.

The Action parameter must specify a callback function that returns a Action Response object configured using Action Response Builder.setOpenLink(openLink) .

 // ... 
 const 
  
 action 
  
 = 
  
 CardService 
 . 
 newAction 
 (). 
 setFunctionName 
 ( 
 'openLinkCallback' 
 ); 
 CardService 
 . 
 newTextButton 
 () 
  
 . 
 setText 
 ( 
 'Open Link' 
 ) 
  
 . 
 setOnClickOpenLinkAction 
 ( 
 action 
 ); 
 // ... 
 function 
  
 openLinkCallback 
 () 
  
 { 
  
 return 
  
 CardService 
 . 
 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

Button — This object, for chaining.


Sets a URL to be opened when the object is clicked. Use this function when the URL is already known and only needs to be opened. A UI object can only have one of set Open Link(openLink) , set On Click Action(action) , set On Click Open Link Action(action) , set Authorization Action(action) , or set Compose Action(action, composedEmailType) set.

Parameters

Name Type Description
open Link
Open Link An Open Link object describing the URL to open.

Return

Button — This object, for chaining.


set Overflow Menu(menu)

Sets a pop-up menu to be opened when the object is clicked. Each item in the menu can specify an action to be triggered when clicked. Nested menus are not supported, actions for menu items should not specify an overflow menu.

Available for Google Chat apps. In developer preview for Google Workspace add-ons.

 const 
  
 overflowMenuItem 
  
 = 
  
 CardService 
 . 
 newOverflowMenuItem 
 () 
  
 . 
 setStartIcon 
 ( 
  
 CardService 
 . 
 newIconImage 
 (). 
 setIconUrl 
 ( 
  
 'https://www.google.com/images/branding/googleg/1x/googleg_standard_color_64dp.png' 
 , 
  
 ), 
  
 ) 
  
 . 
 setText 
 ( 
 'Open Link' 
 ) 
  
 . 
 setOpenLink 
 ( 
  
 CardService 
 . 
 newOpenLink 
 (). 
 setUrl 
 ( 
 'https://www.google.com' 
 )); 
 const 
  
 overflowMenu 
  
 = 
  
 CardService 
 . 
 newOverflowMenu 
 (). 
 addMenuItem 
 ( 
 overflowMenuItem 
 ). 
 build 
 (); 

Parameters

Name Type Description
menu
Overflow Menu The object that specifies the overflow menu to display when this element is clicked.

Return

Button — This object, for chaining.

Create a Mobile Website
View Site in Mobile | Classic
Share by: