CardService

CardService provides the ability to create generic cards used across different Google
extensibility products, such as [Google Workspace add-ons](https://developers.google.com/apps-script/add-ons/how-tos/building-workspace-addons).

Below is a sample for an add-ons card.

```javascript
function createCard() {
  return CardService.newCardBuilder()
      .setHeader(CardService.newCardHeader().setTitle('CardTitle'))
      .build();
}
```

Or you can return multiple Cards like so:

```javascript
function createCards() {
  return [
    CardService.newCardBuilder().build(),
    CardService.newCardBuilder().build(),
    CardService.newCardBuilder().build(),
  ];
}
```

The following shows how you could define a card with a header, text, an image and a menu item:

```javascript
function createWidgetDemoCard() {
  return CardService.newCardBuilder()
      .setHeader(
          CardService.newCardHeader()
              .setTitle('Widget demonstration')
              .setSubtitle('Check out these widgets')
              .setImageStyle(CardService.ImageStyle.SQUARE)
              .setImageUrl('https://www.example.com/images/headerImage.png'),
          )
      .addSection(
          CardService.newCardSection()
              .setHeader('Simple widgets')  // optional
              .addWidget(
                  CardService.newTextParagraph().setText(
                      'These widgets are display-only. ' +
                          'A text paragraph can have multiple lines and ' +
                          'formatting.',
                      ),
                  )
              .addWidget(
                  CardService.newImage().setImageUrl(
                      'https://www.example.com/images/mapsImage.png',
                      ),
                  ),
          )
      .addCardAction(
          CardService.newCardAction().setText('Gmail').setOpenLink(
              CardService.newOpenLink().setUrl('https://mail.google.com/mail'),
              ),
          )
      .build();
}
```

Sample for a Chat Apps card.

```javascript
const cardHeader =
    CardService.newCardHeader()
        .setTitle('Sasha')
        .setSubtitle('Software Engineer')
        .setImageUrl(
            'https://developers.google.com/chat/images/quickstart-app-avatar.png',
            )
        .setImageStyle(CardService.ImageStyle.CIRCLE)
        .setImageAltText('Avatar for Sasha');

const cardSection =
    CardService.newCardSection()
        .setHeader('Contact Info')
        .setCollapsible(true)
        .setNumUncollapsibleWidgets(1)
        .addWidget(
            CardService.newDecoratedText()
                .setStartIcon(
                    CardService.newIconImage().setIcon(CardService.Icon.EMAIL))
                .setText('sasha@example.com'),
            )
        .addWidget(
            CardService.newDecoratedText()
                .setStartIcon(
                    CardService.newIconImage().setIcon(CardService.Icon.PERSON))
                .setText('<font color="#80e27e">Online</font>'),
            )
        .addWidget(
            CardService.newDecoratedText()
                .setStartIcon(
                    CardService.newIconImage().setIcon(CardService.Icon.PHONE))
                .setText('+1 (555) 555-1234'),
            )
        .addWidget(
            CardService.newButtonSet()
                .addButton(
                    CardService.newTextButton().setText('Share').setOpenLink(
                        CardService.newOpenLink().setUrl(
                            'https://example.com/share'),
                        ),
                    )
                .addButton(
                    CardService.newTextButton()
                        .setText('Edit')
                        .setOnClickAction(
                            CardService.newAction()
                                .setFunctionName('goToView')
                                .setParameters({viewType: 'EDIT'}),
                            ),
                    ),
        );

const card = CardService.newCardBuilder()
                 .setHeader(cardHeader)
                 .addSection(cardSection)
                 .build();
```

### Properties

| Property | Type | Description |
|---|---|---|
| `BorderType` | `https://developers.google.com/apps-script/reference/card-service/border-type` | The `https://developers.google.com/apps-script/reference/card-service/border-type` enumeration. |
| `ChipListLayout` | `https://developers.google.com/apps-script/reference/card-service/chip-list-layout` | The `https://developers.google.com/apps-script/reference/card-service/chip-list-layout` enumeration. |
| `CommonDataSource` | `https://developers.google.com/apps-script/reference/card-service/common-data-source` | The `https://developers.google.com/apps-script/reference/card-service/common-data-source` enumeration. |
| `ComposedEmailType` | `https://developers.google.com/apps-script/reference/card-service/composed-email-type` | The `https://developers.google.com/apps-script/reference/card-service/composed-email-type` enumeration. |
| `ContentType` | `https://developers.google.com/apps-script/reference/card-service/content-type` | The `https://developers.google.com/apps-script/reference/card-service/content-type` enumeration. |
| `DriveItemType` | `https://developers.google.com/apps-script/reference/card-service/drive-item-type` | The `https://developers.google.com/apps-script/reference/card-service/drive-item-type` enumeration. |
| `ExpressionDataActionType` | `https://developers.google.com/apps-script/reference/card-service/expression-data-action-type` | The `https://developers.google.com/apps-script/reference/card-service/expression-data-action-type` enumeration. |
| `ExpressionDataConditionType` | `https://developers.google.com/apps-script/reference/card-service/expression-data-condition-type` | The `https://developers.google.com/apps-script/reference/card-service/expression-data-condition-type` enumeration. |
| `GridItemLayout` | `https://developers.google.com/apps-script/reference/card-service/grid-item-layout` | The `https://developers.google.com/apps-script/reference/card-service/grid-item-layout` enumeration. |
| `HorizontalAlignment` | `https://developers.google.com/apps-script/reference/card-service/horizontal-alignment` | The `https://developers.google.com/apps-script/reference/card-service/horizontal-alignment` enumeration. |
| `Icon` | `https://developers.google.com/apps-script/reference/card-service/icon` | The `https://developers.google.com/apps-script/reference/card-service/icon` enumeration. |
| `ImageButtonStyle` | `https://developers.google.com/apps-script/reference/card-service/image-button-style` | The `https://developers.google.com/apps-script/reference/card-service/image-button-style` enumeration. |
| `ImageCropType` | `https://developers.google.com/apps-script/reference/card-service/image-crop-type` | The `https://developers.google.com/apps-script/reference/card-service/image-crop-type` enumeration. |
| `ImageStyle` | `https://developers.google.com/apps-script/reference/card-service/image-style` | The `https://developers.google.com/apps-script/reference/card-service/image-style` enumeration. |
| `InputType` | `https://developers.google.com/apps-script/reference/card-service/input-type` | The `https://developers.google.com/apps-script/reference/card-service/input-type` enumeration. |
| `LoadIndicator` | `https://developers.google.com/apps-script/reference/card-service/load-indicator` | The `https://developers.google.com/apps-script/reference/card-service/load-indicator` enumeration. |
| `OnClose` | `https://developers.google.com/apps-script/reference/card-service/on-close` | The `https://developers.google.com/apps-script/reference/card-service/on-close` enumeration. |
| `OpenAs` | `https://developers.google.com/apps-script/reference/card-service/open-as` | The `https://developers.google.com/apps-script/reference/card-service/open-as` enumeration. |
| `SelectionInputType` | `https://developers.google.com/apps-script/reference/card-service/selection-input-type` | The `https://developers.google.com/apps-script/reference/card-service/selection-input-type` enumeration. |
| `TextButtonStyle` | `https://developers.google.com/apps-script/reference/card-service/text-button-style` | The `https://developers.google.com/apps-script/reference/card-service/text-button-style` enumeration. |
| `TextInputMode` | `https://developers.google.com/apps-script/reference/card-service/text-input-mode` | The `https://developers.google.com/apps-script/reference/card-service/text-input-mode` enumeration. |
| `UpdateDraftBodyType` | `https://developers.google.com/apps-script/reference/card-service/update-draft-body-type` | The `https://developers.google.com/apps-script/reference/card-service/update-draft-body-type` enumeration. |
| `VariableButtonSize` | `https://developers.google.com/apps-script/reference/card-service/variable-button-size` | The `https://developers.google.com/apps-script/reference/card-service/variable-button-size` enumeration. |
| `Visibility` | `https://developers.google.com/apps-script/reference/card-service/visibility` | The `https://developers.google.com/apps-script/reference/card-service/visibility` enumeration. |
| `WorkflowDataSourceType` | `https://developers.google.com/apps-script/reference/card-service/workflow-data-source-type` | The `https://developers.google.com/apps-script/reference/card-service/workflow-data-source-type` enumeration. |

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/card-service/card-service#newAction()` | `https://developers.google.com/apps-script/reference/card-service/action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newActionResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/action-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/action-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newActionStatus()` | `https://developers.google.com/apps-script/reference/card-service/action-status` | Creates a new `https://developers.google.com/apps-script/reference/card-service/action-status`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newAttachment()` | `https://developers.google.com/apps-script/reference/card-service/attachment` | Creates a new `https://developers.google.com/apps-script/reference/card-service/attachment`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newAuthorizationAction()` | `https://developers.google.com/apps-script/reference/card-service/authorization-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/authorization-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newAuthorizationException()` | `https://developers.google.com/apps-script/reference/card-service/authorization-exception` | Creates a new `https://developers.google.com/apps-script/reference/card-service/authorization-exception`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newBorderStyle()` | `https://developers.google.com/apps-script/reference/card-service/border-style` | Creates a new `https://developers.google.com/apps-script/reference/card-service/border-style`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newButtonSet()` | `https://developers.google.com/apps-script/reference/card-service/button-set` | Creates a new `https://developers.google.com/apps-script/reference/card-service/button-set`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCalendarEventActionResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/calendar-event-action-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/calendar-event-action-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCardAction()` | `https://developers.google.com/apps-script/reference/card-service/card-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/card-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCardBuilder()` | `https://developers.google.com/apps-script/reference/card-service/card-builder` | Creates a new Card builder. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCardHeader()` | `https://developers.google.com/apps-script/reference/card-service/card-header` | Creates a new `https://developers.google.com/apps-script/reference/card-service/card-header`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCardSection()` | `https://developers.google.com/apps-script/reference/card-service/card-section` | Creates a new `https://developers.google.com/apps-script/reference/card-service/card-section`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCardWithId()` | `https://developers.google.com/apps-script/reference/card-service/card-with-id` | Creates a new `https://developers.google.com/apps-script/reference/card-service/card-with-id`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCarousel()` | `https://developers.google.com/apps-script/reference/card-service/carousel` | Creates a `https://developers.google.com/apps-script/reference/card-service/carousel`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCarouselCard()` | `https://developers.google.com/apps-script/reference/card-service/carousel-card` | Creates a new `https://developers.google.com/apps-script/reference/card-service/carousel-card`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newChatActionResponse()` | `https://developers.google.com/apps-script/reference/card-service/chat-action-response` | Creates a new `https://developers.google.com/apps-script/reference/card-service/chat-action-response`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newChatResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/chat-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/chat-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newChip()` | `https://developers.google.com/apps-script/reference/card-service/chip` | Creates a new `https://developers.google.com/apps-script/reference/card-service/chip`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newChipList()` | `https://developers.google.com/apps-script/reference/card-service/chip-list` | Creates a new `https://developers.google.com/apps-script/reference/card-service/chip-list`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCollapseControl()` | `https://developers.google.com/apps-script/reference/card-service/collapse-control` | Creates a new `https://developers.google.com/apps-script/reference/card-service/collapse-control`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newColumn()` | `https://developers.google.com/apps-script/reference/card-service/column` | Creates a new `https://developers.google.com/apps-script/reference/card-service/column`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newColumns()` | `https://developers.google.com/apps-script/reference/card-service/columns` | Creates a new set of `https://developers.google.com/apps-script/reference/card-service/columns`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCommonWidgetAction()` | `https://developers.google.com/apps-script/reference/card-service/common-widget-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/common-widget-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newComposeActionResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/compose-action-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/compose-action-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newCondition()` | `https://developers.google.com/apps-script/reference/card-service/condition` | Creates a new `https://developers.google.com/apps-script/reference/card-service/condition` used for client-side validation. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDataSourceConfig()` | `https://developers.google.com/apps-script/reference/card-service/data-source-config` | Creates a new, empty `https://developers.google.com/apps-script/reference/card-service/data-source-config`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDatePicker()` | `https://developers.google.com/apps-script/reference/card-service/date-picker` | Creates a new `https://developers.google.com/apps-script/reference/card-service/date-picker`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDateTimePicker()` | `https://developers.google.com/apps-script/reference/card-service/date-time-picker` | Creates a new `https://developers.google.com/apps-script/reference/card-service/date-time-picker`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDecoratedText()` | `https://developers.google.com/apps-script/reference/card-service/decorated-text` | Creates a new `https://developers.google.com/apps-script/reference/card-service/decorated-text`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDialog()` | `https://developers.google.com/apps-script/reference/card-service/dialog` | Creates a new `https://developers.google.com/apps-script/reference/card-service/dialog`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDialogAction()` | `https://developers.google.com/apps-script/reference/card-service/dialog-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/dialog-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDivider()` | `https://developers.google.com/apps-script/reference/card-service/divider` | Creates a new `https://developers.google.com/apps-script/reference/card-service/divider`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDriveDataSourceSpec()` | `https://developers.google.com/apps-script/reference/card-service/drive-data-source-spec` | Creates a new `https://developers.google.com/apps-script/reference/card-service/drive-data-source-spec`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newDriveItemsSelectedActionResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/drive-items-selected-action-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/drive-items-selected-action-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newEditorFileScopeActionResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/editor-file-scope-action-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/editor-file-scope-action-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newEventAction()` | `https://developers.google.com/apps-script/reference/card-service/event-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/event-action` used for client-side validation. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newExpressionData()` | `https://developers.google.com/apps-script/reference/card-service/expression-data` | Creates a new `https://developers.google.com/apps-script/reference/card-service/expression-data` used for client-side validation. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newExpressionDataAction()` | `https://developers.google.com/apps-script/reference/card-service/expression-data-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/expression-data-action` used for client-side validation. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newExpressionDataCondition()` | `https://developers.google.com/apps-script/reference/card-service/expression-data-condition` | Creates a new `https://developers.google.com/apps-script/reference/card-service/expression-data-condition` used for client-side validation. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newFixedFooter()` | `https://developers.google.com/apps-script/reference/card-service/fixed-footer` | Creates a new `https://developers.google.com/apps-script/reference/card-service/fixed-footer`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newGrid()` | `https://developers.google.com/apps-script/reference/card-service/grid` | Creates a new `https://developers.google.com/apps-script/reference/card-service/grid`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newGridItem()` | `https://developers.google.com/apps-script/reference/card-service/grid-item` | Creates a new `https://developers.google.com/apps-script/reference/card-service/grid-item`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newHostAppDataSource()` | `https://developers.google.com/apps-script/reference/card-service/host-app-data-source` | Creates a new `https://developers.google.com/apps-script/reference/card-service/host-app-data-source`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newIconImage()` | `https://developers.google.com/apps-script/reference/card-service/icon-image` | Creates a new `https://developers.google.com/apps-script/reference/card-service/icon-image`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newImage()` | `https://developers.google.com/apps-script/reference/card-service/image` | Creates a new `https://developers.google.com/apps-script/reference/card-service/image`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newImageButton()` | `https://developers.google.com/apps-script/reference/card-service/image-button` | Creates a new `https://developers.google.com/apps-script/reference/card-service/image-button`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newImageComponent()` | `https://developers.google.com/apps-script/reference/card-service/image-component` | Creates a new `https://developers.google.com/apps-script/reference/card-service/image-component`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newImageCropStyle()` | `https://developers.google.com/apps-script/reference/card-service/image-crop-style` | Creates a new `https://developers.google.com/apps-script/reference/card-service/image-crop-style`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newKeyValue()` | `https://developers.google.com/apps-script/reference/card-service/key-value` | Creates a new `https://developers.google.com/apps-script/reference/card-service/key-value`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newLinkPreview()` | `https://developers.google.com/apps-script/reference/card-service/link-preview` | Creates a new `https://developers.google.com/apps-script/reference/card-service/link-preview`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newMaterialIcon()` | `https://developers.google.com/apps-script/reference/card-service/material-icon` | Creates a new `https://developers.google.com/apps-script/reference/card-service/material-icon`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newNavigation()` | `https://developers.google.com/apps-script/reference/card-service/navigation` | Creates a new `https://developers.google.com/apps-script/reference/card-service/navigation`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newNotification()` | `https://developers.google.com/apps-script/reference/card-service/notification` | Creates a new `https://developers.google.com/apps-script/reference/card-service/notification`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newOpenLink()` | `https://developers.google.com/apps-script/reference/card-service/open-link` | Creates a new `https://developers.google.com/apps-script/reference/card-service/open-link`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newOverflowMenu()` | `https://developers.google.com/apps-script/reference/card-service/overflow-menu` | Creates a new `https://developers.google.com/apps-script/reference/card-service/overflow-menu`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newOverflowMenuItem()` | `https://developers.google.com/apps-script/reference/card-service/overflow-menu-item` | Creates a new `https://developers.google.com/apps-script/reference/card-service/overflow-menu-item`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newPlatformDataSource()` | `https://developers.google.com/apps-script/reference/card-service/platform-data-source` | Creates a new `https://developers.google.com/apps-script/reference/card-service/platform-data-source`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newSelectionInput()` | `https://developers.google.com/apps-script/reference/card-service/selection-input` | Creates a new `https://developers.google.com/apps-script/reference/card-service/selection-input`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newSuggestions()` | `https://developers.google.com/apps-script/reference/card-service/suggestions` | Creates a new `https://developers.google.com/apps-script/reference/card-service/suggestions`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newSuggestionsResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/suggestions-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/suggestions-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newSwitch()` | `https://developers.google.com/apps-script/reference/card-service/switch` | Creates a new `https://developers.google.com/apps-script/reference/card-service/switch`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newTextButton()` | `https://developers.google.com/apps-script/reference/card-service/text-button` | Creates a new `https://developers.google.com/apps-script/reference/card-service/text-button`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newTextInput()` | `https://developers.google.com/apps-script/reference/card-service/text-input` | Creates a new `https://developers.google.com/apps-script/reference/card-service/text-input`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newTextParagraph()` | `https://developers.google.com/apps-script/reference/card-service/text-paragraph` | Creates a new `https://developers.google.com/apps-script/reference/card-service/text-paragraph`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newTimePicker()` | `https://developers.google.com/apps-script/reference/card-service/time-picker` | Creates a new `https://developers.google.com/apps-script/reference/card-service/time-picker`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newTrigger()` | `https://developers.google.com/apps-script/reference/card-service/trigger` | Creates and returns a new `https://developers.google.com/apps-script/reference/card-service/trigger` used for client-side validation. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUniversalActionResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/universal-action-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/universal-action-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUpdateDraftActionResponseBuilder()` | `https://developers.google.com/apps-script/reference/card-service/update-draft-action-response-builder` | Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-action-response-builder`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUpdateDraftBccRecipientsAction()` | `https://developers.google.com/apps-script/reference/card-service/update-draft-bcc-recipients-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-bcc-recipients-action`; |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUpdateDraftBodyAction()` | `https://developers.google.com/apps-script/reference/card-service/update-draft-body-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-body-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUpdateDraftCcRecipientsAction()` | `https://developers.google.com/apps-script/reference/card-service/update-draft-cc-recipients-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-cc-recipients-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUpdateDraftSubjectAction()` | `https://developers.google.com/apps-script/reference/card-service/update-draft-subject-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-subject-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUpdateDraftToRecipientsAction()` | `https://developers.google.com/apps-script/reference/card-service/update-draft-to-recipients-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-to-recipients-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newUpdateVisibilityAction()` | `https://developers.google.com/apps-script/reference/card-service/update-visibility-action` | Creates a new `https://developers.google.com/apps-script/reference/card-service/update-visibility-action`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newValidation()` | `https://developers.google.com/apps-script/reference/card-service/validation` | Creates a new `https://developers.google.com/apps-script/reference/card-service/validation`. |
| `https://developers.google.com/apps-script/reference/card-service/card-service#newWorkflowDataSource()` | `https://developers.google.com/apps-script/reference/card-service/workflow-data-source` | Creates a new `https://developers.google.com/apps-script/reference/card-service/workflow-data-source`. |

## Detailed documentation

### `newAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/action` --- An empty Action.

*** ** * ** ***

### `newActionResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/action-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/action-response-builder` --- An empty ActionResponse builder.

*** ** * ** ***

### `newActionStatus()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/action-status`.

Only available for Google Chat apps. Not available for Google Workspace add-ons.

```javascript
const actionStatus = CardService.newActionStatus()
                         .setStatusCode(CardService.Status.OK)
                         .setUserFacingMessage('Success');
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/action-status` --- An empty ActionStatus.

*** ** * ** ***

### `newAttachment()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/attachment`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/attachment` --- An empty attachment.

*** ** * ** ***

### `newAuthorizationAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/authorization-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/authorization-action` --- An empty AuthorizationAction.

*** ** * ** ***

### `newAuthorizationException()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/authorization-exception`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/authorization-exception` --- An empty AuthorizationException.

*** ** * ** ***

### `newBorderStyle()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/border-style`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/border-style` --- An empty BorderStyle.

*** ** * ** ***

### `newButtonSet()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/button-set`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/button-set` --- An empty ButtonSet.

*** ** * ** ***

### `newCalendarEventActionResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/calendar-event-action-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/calendar-event-action-response-builder` --- An empty `https://developers.google.com/apps-script/reference/card-service/calendar-event-action-response-builder`.

*** ** * ** ***

### `newCardAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/card-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/card-action` --- An empty CardAction.

*** ** * ** ***

### `newCardBuilder()`

Creates a new Card builder.

#### Return


`https://developers.google.com/apps-script/reference/card-service/card-builder` --- An empty Card builder.

*** ** * ** ***

### `newCardHeader()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/card-header`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/card-header` --- An empty CardHeader.

*** ** * ** ***

### `newCardSection()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/card-section`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/card-section` --- An empty CardSection.

*** ** * ** ***

### `newCardWithId()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/card-with-id`. This is used to send a card in a Google Chat message. card ID
is a unique identifier for a card in a message when sending multiple cards.

Only available for Google Chat apps. Not available for Google Workspace add-ons.

```javascript
const cardSection = CardService.newCardSection();
cardSection.addWidget(
    CardService.newTextParagraph().setText('This is a text paragraph widget.'),
);

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .addSection(cardSection)
                 .build();

const cardWithId =
    CardService.newCardWithId().setCardId('card_id').setCard(card);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/card-with-id` --- An empty `https://developers.google.com/apps-script/reference/card-service/card-with-id`.

*** ** * ** ***

### `newCarousel()`

Creates a `https://developers.google.com/apps-script/reference/card-service/carousel`.

```javascript
const carousel =
    CardService.newCarousel()
        .addCarouselCard(CardService.newCarouselCard().addWidget(
            CardService.newTextParagraph().setText('The first text paragraph in carousel')))
        .addCarouselCard(CardService.newCarouselCard().addWidget(
            CardService.newTextParagraph().setText('The second text paragraph in carousel')))
        .addCarouselCard(CardService.newCarouselCard().addWidget(
            CardService.newTextParagraph().setText('The third text paragraph in carousel')))
```


> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

<br />

#### Return


`https://developers.google.com/apps-script/reference/card-service/carousel` --- An empty Carousel.

*** ** * ** ***

### `newCarouselCard()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/carousel-card`.

```javascript
const carouselCard = CardService.newCarouselCard().addWidget(
    CardService.newTextParagraph().setText('Text paragraph in carousel'));
```


> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

<br />

#### Return


`https://developers.google.com/apps-script/reference/card-service/carousel-card` --- An empty Chip.

*** ** * ** ***

### `newChatActionResponse()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/chat-action-response`.

Only available for Google Chat apps. Not available for Google Workspace add-ons.

```javascript
const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .build();
const dialog = CardService.newDialog().setBody(card);

const dialogAction = CardService.newDialogAction().setDialog(dialog);

const chatActionResponse = CardService.newChatActionResponse()
                               .setResponseType(CardService.ResponseType.DIALOG)
                               .setDialogAction(dialogAction);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/chat-action-response` --- An empty `https://developers.google.com/apps-script/reference/card-service/chat-action-response`.

*** ** * ** ***

### `newChatResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/chat-response-builder`.

Only available for Google Chat apps. Not available for Google Workspace add-ons.

```javascript
const cardSection = CardService.newCardSection();
cardSection.addWidget(
    CardService.newTextParagraph().setText('This is a text paragraph widget.'),
);

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .addSection(cardSection)
                 .build();

const cardWithId =
    CardService.newCardWithId().setCardId('card_id').setCard(card);

const chatResponse =
    CardService.newChatResponseBuilder().addCardsV2(cardWithId).build();
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/chat-response-builder` --- An empty ChatResponseBuilder.

*** ** * ** ***

### `newChip()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/chip`.

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


> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

<br />

```javascript
const chip = CardService.newChip()
                 .setLabel('Open Link')
                 .setOpenLink(CardService.newOpenLink().setUrl(
                     'https://www.google.com'));
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/chip` --- An empty Chip.

*** ** * ** ***

### `newChipList()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/chip-list`.

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


> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

<br />

```javascript
const chip = CardService.newChip();
// Finish building the text chip...

const chipList = CardService.newChipList()
                     .setLayout(CardService.ChipListLayout.WRAPPED)
                     .addChip(chip);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/chip-list` --- An empty ChipList.

*** ** * ** ***

### `newCollapseControl()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/collapse-control`.

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


> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

<br />

```javascript
const collapseControl =
    CardService.newCollapseControl()
        .setHorizontalAlign(CardService.HorizontalAlignment.START)
        .setExpandButton(CardService.newTextButton().setText('Expand'))
        .setCollapseButton(CardService.newTextButton().setText('Collapse'));
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/collapse-control` --- An empty CollapseControl.

*** ** * ** ***

### `newColumn()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/column`.

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

```javascript
const columnWidget = CardService.newTextParagraph();
const column =
    CardService.newColumn()
        .setHorizontalSizeStyle(
            CardService.HorizontalSizeStyle.FILL_AVAILABLE_SPACE)
        .setHorizontalAlignment(CardService.HorizontalAlignment.CENTER)
        .setVerticalAlignment(CardService.VerticalAlignment.CENTER)
        .addWidget(columnWidget);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/column` --- An empty Column.

*** ** * ** ***

### `newColumns()`

Creates a new set of `https://developers.google.com/apps-script/reference/card-service/columns`.

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

```javascript
const firstColumn =
    CardService.newColumn()
        .setHorizontalSizeStyle(
            CardService.HorizontalSizeStyle.FILL_AVAILABLE_SPACE)
        .setHorizontalAlignment(CardService.HorizontalAlignment.CENTER)
        .setVerticalAlignment(CardService.VerticalAlignment.CENTER);
const secondColumn =
    CardService.newColumn()
        .setHorizontalSizeStyle(
            CardService.HorizontalSizeStyle.FILL_AVAILABLE_SPACE)
        .setHorizontalAlignment(CardService.HorizontalAlignment.CENTER)
        .setVerticalAlignment(CardService.VerticalAlignment.CENTER);
const columns = CardService.newColumns()
                    .addColumn(firstColumn)
                    .addColumn(secondColumn)
                    .setWrapStyle(CardService.WrapStyle.WRAP);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/columns` --- An empty set of Columns.

*** ** * ** ***

### `newCommonWidgetAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/common-widget-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/common-widget-action` --- An empty `https://developers.google.com/apps-script/reference/card-service/common-widget-action`.

*** ** * ** ***

### `newComposeActionResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/compose-action-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/compose-action-response-builder` --- An empty ComposeActionResponse builder.

*** ** * ** ***

### `newCondition()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/condition` used for client-side validation.

#### Return


`https://developers.google.com/apps-script/reference/card-service/condition` --- An empty `https://developers.google.com/apps-script/reference/card-service/condition`.

*** ** * ** ***

### `newDataSourceConfig()`

Creates a new, empty `https://developers.google.com/apps-script/reference/card-service/data-source-config`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/data-source-config` --- An empty `https://developers.google.com/apps-script/reference/card-service/data-source-config`.

*** ** * ** ***

### `newDatePicker()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/date-picker`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/date-picker` --- An empty DatePicker.

*** ** * ** ***

### `newDateTimePicker()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/date-time-picker`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/date-time-picker` --- An empty DateTimePicker.

*** ** * ** ***

### `newDecoratedText()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/decorated-text`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/decorated-text` --- An empty DecoratedText.

*** ** * ** ***

### `newDialog()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/dialog`.

Only available for Google Chat apps. Not available for Google Workspace add-ons.

```javascript
const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .build();

// Sets the card of the dialog.
const dialog = CardService.newDialog().setBody(card);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/dialog` --- An empty `https://developers.google.com/apps-script/reference/card-service/dialog`.

*** ** * ** ***

### `newDialogAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/dialog-action`.

Only available for Google Chat apps. Not available for Google Workspace add-ons.

```javascript
const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .build();
const dialog = CardService.newDialog().setBody(card);

const dialogAction = CardService.newDialogAction().setDialog(dialog);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/dialog-action` --- An empty `https://developers.google.com/apps-script/reference/card-service/dialog-action`.

*** ** * ** ***

### `newDivider()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/divider`. The following sample builds a simple card with 2 paragraphs
separated by a divider.

```javascript
function buildCard() {
  const cardSection1TextParagraph1 =
      CardService.newTextParagraph().setText('Hello world!');

  const cardSection1Divider1 = CardService.newDivider();

  const cardSection1TextParagraph2 =
      CardService.newTextParagraph().setText('Hello world!');

  const cardSection1 = CardService.newCardSection()
                           .addWidget(cardSection1TextParagraph1)
                           .addWidget(cardSection1Divider1)
                           .addWidget(cardSection1TextParagraph2);

  const card = CardService.newCardBuilder().addSection(cardSection1).build();

  return card;
}
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/divider` --- A divider.

*** ** * ** ***

### `newDriveDataSourceSpec()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/drive-data-source-spec`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/drive-data-source-spec` --- An empty `https://developers.google.com/apps-script/reference/card-service/drive-data-source-spec`.

*** ** * ** ***

### `newDriveItemsSelectedActionResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/drive-items-selected-action-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/drive-items-selected-action-response-builder` --- An empty `https://developers.google.com/apps-script/reference/card-service/drive-items-selected-action-response-builder`.

*** ** * ** ***

### `newEditorFileScopeActionResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/editor-file-scope-action-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/editor-file-scope-action-response-builder` --- An empty `https://developers.google.com/apps-script/reference/card-service/editor-file-scope-action-response-builder`.

*** ** * ** ***

### `newEventAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/event-action` used for client-side validation.

#### Return


`https://developers.google.com/apps-script/reference/card-service/event-action` --- An empty `https://developers.google.com/apps-script/reference/card-service/event-action`.

*** ** * ** ***

### `newExpressionData()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/expression-data` used for client-side validation.

#### Return


`https://developers.google.com/apps-script/reference/card-service/expression-data` --- An empty `https://developers.google.com/apps-script/reference/card-service/expression-data`.

*** ** * ** ***

### `newExpressionDataAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/expression-data-action` used for client-side validation.

#### Return


`https://developers.google.com/apps-script/reference/card-service/expression-data-action` --- An empty `https://developers.google.com/apps-script/reference/card-service/expression-data-action`.

*** ** * ** ***

### `newExpressionDataCondition()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/expression-data-condition` used for client-side validation.

#### Return


`https://developers.google.com/apps-script/reference/card-service/expression-data-condition` --- An empty `https://developers.google.com/apps-script/reference/card-service/expression-data-condition`.

*** ** * ** ***

### `newFixedFooter()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/fixed-footer`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/fixed-footer` --- An empty FixedFooter.

*** ** * ** ***

### `newGrid()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/grid`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/grid` --- An empty Grid.

*** ** * ** ***

### `newGridItem()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/grid-item`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/grid-item` --- An empty GridItem.

*** ** * ** ***

### `newHostAppDataSource()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/host-app-data-source`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/host-app-data-source` --- A `https://developers.google.com/apps-script/reference/card-service/host-app-data-source`.

*** ** * ** ***

### `newIconImage()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/icon-image`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/icon-image` --- An empty icon image.

*** ** * ** ***

### `newImage()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/image`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/image` --- An empty Image.

*** ** * ** ***

### `newImageButton()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/image-button`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/image-button` --- An empty ImageButton.

*** ** * ** ***

### `newImageComponent()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/image-component`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/image-component` --- An empty ImageComponent.

*** ** * ** ***

### `newImageCropStyle()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/image-crop-style`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/image-crop-style` --- An empty ImageCropStyle.

*** ** * ** ***

### `newKeyValue()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/key-value`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/key-value` --- An empty KeyValue.

*** ** * ** ***

### `newLinkPreview()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/link-preview`.

```javascript
const decoratedText =
    CardService.newDecoratedText().setTopLabel('Hello').setText('Hi!');

const cardSection = CardService.newCardSection().addWidget(decoratedText);

const card = CardService.newCardBuilder().addSection(cardSection).build();

return CardService.newLinkPreview().setPreviewCard(card).setTitle(
    'Smart chip title');
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/link-preview` --- An empty LinkPreview.

*** ** * ** ***

### `newMaterialIcon()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/material-icon`.

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

```javascript
const materialIcon =
    CardService.newMaterialIcon().setName('check_box').setFill(true);

const cardSection = CardService.newCardSection();
cardSection.addWidget(
    CardService.newDecoratedText()
        .setStartIcon(CardService.newIconImage().setMaterialIcon(materialIcon))
        .setText('sasha@example.com'),
);

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card Title'))
                 .addSection(cardSection)
                 .build();
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/material-icon` --- An empty MaterialIcon.

*** ** * ** ***

### `newNavigation()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/navigation`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/navigation` --- An empty Navigation.

*** ** * ** ***

### `newNotification()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/notification`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/notification` --- An empty Notification.

*** ** * ** ***

### `newOpenLink()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/open-link`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/open-link` --- An empty OpenLink.

*** ** * ** ***

### `newOverflowMenu()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/overflow-menu`.

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


> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

<br />

```javascript
const overflowMenuItem = CardService.newOverflowMenuItem();
// Finish building the overflow menu item...

const overflowMenu =
    CardService.newOverflowMenu().addMenuItem(overflowMenuItem);
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/overflow-menu` --- An empty OverflowMenu.

*** ** * ** ***

### `newOverflowMenuItem()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/overflow-menu-item`.

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


> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

<br />

```javascript
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'));
```

#### Return


`https://developers.google.com/apps-script/reference/card-service/overflow-menu-item` --- An empty OverflowMenuItem.

*** ** * ** ***

### `newPlatformDataSource()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/platform-data-source`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/platform-data-source` --- An empty `https://developers.google.com/apps-script/reference/card-service/platform-data-source`.

*** ** * ** ***

### `newSelectionInput()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/selection-input`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/selection-input` --- An empty SelectionInput.

*** ** * ** ***

### `newSuggestions()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/suggestions`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/suggestions` --- An empty Suggestions.

*** ** * ** ***

### `newSuggestionsResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/suggestions-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/suggestions-response-builder` --- An empty SuggestionsResponse builder.

*** ** * ** ***

### `newSwitch()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/switch`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/switch` --- An empty Switch.

*** ** * ** ***

### `newTextButton()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/text-button`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/text-button` --- An empty TextButton.

*** ** * ** ***

### `newTextInput()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/text-input`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/text-input` --- An empty TextInput.

*** ** * ** ***

### `newTextParagraph()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/text-paragraph`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/text-paragraph` --- An empty TextParagraph.

*** ** * ** ***

### `newTimePicker()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/time-picker`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/time-picker` --- An empty TimePicker.

*** ** * ** ***

### `newTrigger()`

Creates and returns a new `https://developers.google.com/apps-script/reference/card-service/trigger` used for client-side validation.

#### Return


`https://developers.google.com/apps-script/reference/card-service/trigger` --- An empty `https://developers.google.com/apps-script/reference/card-service/trigger`.

*** ** * ** ***

### `newUniversalActionResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/universal-action-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/universal-action-response-builder` --- An empty UniversalActionResponse builder.

*** ** * ** ***

### `newUpdateDraftActionResponseBuilder()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-action-response-builder`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/update-draft-action-response-builder` --- An empty UpdateDraftActionResponseBuilder.

*** ** * ** ***

### `newUpdateDraftBccRecipientsAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-bcc-recipients-action`;

#### Return


`https://developers.google.com/apps-script/reference/card-service/update-draft-bcc-recipients-action` --- An empty UpdateDraftBccRecipientsAction.

*** ** * ** ***

### `newUpdateDraftBodyAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-body-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/update-draft-body-action` --- An empty UpdateDraftBodyAction.

*** ** * ** ***

### `newUpdateDraftCcRecipientsAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-cc-recipients-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/update-draft-cc-recipients-action` --- An Empty UpdateDraftCcRecipientsAction.

*** ** * ** ***

### `newUpdateDraftSubjectAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-subject-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/update-draft-subject-action` --- An empty UpdateDraftSubjectAction.

*** ** * ** ***

### `newUpdateDraftToRecipientsAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/update-draft-to-recipients-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/update-draft-to-recipients-action` --- An empty UpdateDraftToRecipientsAction.

*** ** * ** ***

### `newUpdateVisibilityAction()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/update-visibility-action`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/update-visibility-action` --- An empty `https://developers.google.com/apps-script/reference/card-service/update-visibility-action`.

*** ** * ** ***

### `newValidation()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/validation`.

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

```javascript
const validation =
    CardService.newValidation().setCharacterLimit(5).setInputType(
        CardService.InputType.EMAIL);
```

> [!WARNING]
> **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features.

#### Return


`https://developers.google.com/apps-script/reference/card-service/validation` --- An empty validation.

*** ** * ** ***

### `newWorkflowDataSource()`

Creates a new `https://developers.google.com/apps-script/reference/card-service/workflow-data-source`.

#### Return


`https://developers.google.com/apps-script/reference/card-service/workflow-data-source` --- An empty `https://developers.google.com/apps-script/reference/card-service/workflow-data-source`.