Class DecoratedText

  • DecoratedText is a widget for displaying text with optional icons, and labels above or below.

  • Setting the text content and either a top label, bottom label, or icon is required for this widget.

  • DecoratedText is designed to replace the KeyValue widget and is available for Google Workspace add-ons and Google Chat apps.

DecoratedText

A widget that displays text with optional decorations. Possible keys include an icon, a labelabove and a label below. Setting the text content and one of the keys is required usingsetText(text) and one ofDecoratedText,DecoratedText,setTopLabel(text), orsetBottomLabel(text). This class is intended to replaceKeyValue.

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

constdecoratedText=CardService.newDecoratedText().setText('Text').setTopLabel('TopLabel');constmultilineDecoratedText=CardService.newDecoratedText().setText('Text').setTopLabel('TopLabel').setWrapText(true).setBottomLabel('BottomLabel');

Methods

MethodReturn typeBrief description
addEventAction(eventAction)WidgetAdds the event action that can be performed on the widget.
setAuthorizationAction(action)DecoratedTextSets an authorization action that opens a URL to the authorization flow when the object isclicked.
setBottomLabel(text)DecoratedTextSets the label text to be used as the key and is displayed below the text content.
setButton(button)DecoratedTextSets theButton that is displayed to the right of the text.
setComposeAction(action, composedEmailType)DecoratedTextSets an action that composes a draft email when the object is clicked.
setEndIcon(endIcon)DecoratedTextSets the optionalIconImage that is displayed to the right of the content.
setId(id)WidgetSets the unique ID assigned that's used to identify the widget to be mutated.
setOnClickAction(action)DecoratedTextSets an action that executes when the object is clicked.
setOnClickOpenLinkAction(action)DecoratedTextSets an action that opens a URL in a tab when the object is clicked.
setOpenLink(openLink)DecoratedTextSets a URL to be opened when the object is clicked.
setStartIcon(startIcon)DecoratedTextSets the optionalIconImage to display before the text content.
setSwitchControl(switchToSet)DecoratedTextSets theSwitch that is displayed to the right of the content.
setText(text)DecoratedTextSets the text to be used as the value.
setTopLabel(text)DecoratedTextSets the label text to be used as the key and is displayed above the text content.
setVisibility(visibility)WidgetSets the visibility of the widget.
setWrapText(wrapText)DecoratedTextSets whether the value text should be displayed on a single line or multiple lines.

Detailed documentation

addEventAction(eventAction)

Adds the event action that can be performed on the widget.

Parameters

NameTypeDescription
eventActionEventActionTheEventAction to be added.

Return

Widget — The Object, for chaining.


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 ofsetOpenLink(openLink),setOnClickAction(action),setOnClickOpenLinkAction(action),setAuthorizationAction(action), orsetComposeAction(action, composedEmailType) set.

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

Parameters

NameTypeDescription
actionAuthorizationActionThe object that specifies the authorization action to take when this element is clicked.

Return

DecoratedText — This object, for chaining.


setBottomLabel(text)

Sets the label text to be used as the key and is displayed below the text content.

Parameters

NameTypeDescription
textStringThe label text.

Return

DecoratedText — This object, for chaining.


setButton(button)

Sets theButton that is displayed to the right of the text. ADecoratedText canonly support one button or one switch.

Parameters

NameTypeDescription
buttonButtonThe button to add.

Return

DecoratedText — 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 ofsetOpenLink(openLink),setOnClickAction(action),setOnClickOpenLinkAction(action),setAuthorizationAction(action), orsetComposeAction(action, composedEmailType) set.

TheAction parameter must specify a callback function that returns aComposeActionResponse object configured usingComposeActionResponseBuilder.setGmailDraft(draft).

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

NameTypeDescription
actionActionThe object that specifies the compose action to take when this element is clicked.
composedEmailTypeComposedEmailTypeAn enum value that specifies whether the composed draft is a standalone or reply draft.

Return

DecoratedText — This object, for chaining.


setEndIcon(endIcon)

Sets the optionalIconImage that is displayed to the right of the content. ADecoratedText can only support one button, one switch or one icon.

Parameters

NameTypeDescription
endIconIconImageThe icon to add.

Return

DecoratedText — 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

NameTypeDescription
idStringThe id of the widget, with a limit of 64 characters and in format of `[a-zA-Z0-9-]+`.

Return

Widget — This object, for chaining.


setOnClickAction(action)

Sets an action that executes when the object is clicked. A UI object can only have one ofsetOpenLink(openLink),setOnClickAction(action),setOnClickOpenLinkAction(action),setAuthorizationAction(action), orsetComposeAction(action, composedEmailType) set.

TheAction parameter must specify a callback function that returns aActionResponse 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

NameTypeDescription
actionActionThe action to take when this element is clicked.

Return

DecoratedText — 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 theOpenLink object. A UI object can only have one ofsetOpenLink(openLink),setOnClickAction(action),setOnClickOpenLinkAction(action),setAuthorizationAction(action), orsetComposeAction(action, composedEmailType) set.

TheAction parameter must specify a callback function that returns aActionResponse object configured usingActionResponseBuilder.setOpenLink(openLink).

// ...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

NameTypeDescription
actionActionThe object that specifies the open link action to take when this element is clicked.

Return

DecoratedText — 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 ofsetOpenLink(openLink),setOnClickAction(action),setOnClickOpenLinkAction(action),setAuthorizationAction(action),orsetComposeAction(action, composedEmailType) set.

Parameters

NameTypeDescription
openLinkOpenLinkAnOpenLink object describing the URL to open.

Return

DecoratedText — This object, for chaining.


setStartIcon(startIcon)

Sets the optionalIconImage to display before the text content.

Parameters

NameTypeDescription
startIconIconImageThe icon to display.

Return

DecoratedText — This object, for chaining.


setSwitchControl(switchToSet)

Sets theSwitch that is displayed to the right of the content. ADecoratedTextcan only support one button or one switch.

Parameters

NameTypeDescription
switchToSetSwitchThe switch to add.

Return

DecoratedText — This object, for chaining.


setText(text)

Sets the text to be used as the value. Supportsbasic HTML formatting. Required.

Parameters

NameTypeDescription
textStringThe text content for this widget.

Return

DecoratedText — This object, for chaining.


setTopLabel(text)

Sets the label text to be used as the key and is displayed above the text content.

Parameters

NameTypeDescription
textStringThe label text.

Return

DecoratedText — This object, for chaining.


setVisibility(visibility)

Sets the visibility of the widget. The default value is `VISIBLE`.

Parameters

NameTypeDescription
visibilityVisibilityTheVisibility of the widget.

Return

Widget — The Object, for chaining.


setWrapText(wrapText)

Sets whether the value text should be displayed on a single line or multiple lines.

Parameters

NameTypeDescription
wrapTextBooleanIftrue, the text is wrapped and displayed on multiple lines. Otherwise the text is truncated.

Return

DecoratedText — This 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.