AI-generated Key Takeaways
-
The
KeyValue
class is deprecated and should not be used in new scripts; useDecoratedText
instead. -
It provides methods to set actions like opening authorization flows, composing emails, or executing custom functions when clicked.
-
Deprecated methods previously allowed setting labels, buttons, icons, and switches for the
KeyValue
object, but are no longer recommended. -
Actions can be set to trigger when the object is clicked, including opening links, authorization flows, and composing email drafts.
-
Developers should refer to the
DecoratedText
class for current functionality and best practices.
Deprecated. This class is deprecated and should not be used in new scripts.
This class is deprecated. Instead, use Decorated
.
Methods
Method | Return type | Brief description |
---|---|---|
set |
| Sets an authorization action that opens a URL to the authorization flow when the object is clicked. |
set |
| Sets an action that composes a draft email when the object is clicked. |
set |
| Sets an action that executes when the object is clicked. |
set |
| Sets an action that opens a URL in a tab when the object is clicked. |
set |
| Sets a URL to be opened when the object is clicked. |
Detailed documentation
setAuthorizationAction(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
, set
, set
, set
, or set
set.
// ... const action = 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
— This object, for chaining.Key
setComposeAction(action, composedEmailType)
Sets an action that composes a draft email when the object is clicked. A UI object can only
have one of set
, set
, set
,
set
, or set
set.
The Action
parameter must specify a callback function that returns a Compose
object configured using Compose
.
// ... 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 | Composed | An enum value that specifies whether the composed draft is a standalone or reply draft. |
Return
— This object, for chaining.Key
setOnClickAction(action)
Sets an action that executes when the object is clicked. A UI object can only have one of
set
, set
, set
, set
, or set
set.
The Action
parameter must specify a callback function that returns a Action
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
— This object, for chaining.Key
setOnClickOpenLinkAction(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
object. A UI object can only have one of set
, set
, set
, set
, or
set
set.
The Action
parameter must specify a callback function that returns a Action
object configured using Action
.
// ... 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
— This object, for chaining.Key
setOpenLink(openLink)
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
,
set
, set
, set
,
or set
set.
Parameters
Name | Type | Description |
---|---|---|
open | Open | An Open object describing the URL to open. |
Return
— This object, for chaining.Key