ChatResponseBuilder

A builder for `https://developers.google.com/apps-script/reference/card-service/chat-response` objects.

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()
                 .setName('Card name')
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .addSection(cardSection)
                 .build();

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

const chatResponse = CardService.newChatResponseBuilder()
                         .addCardsV2(cardWithId)
                         .setText('Example text')
                         .build();
```

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/card-service/chat-response-builder#addCardsV2(CardWithId)` | `https://developers.google.com/apps-script/reference/card-service/chat-response-builder#` | Sets the card field of the message. |
| `https://developers.google.com/apps-script/reference/card-service/chat-response-builder#build()` | `https://developers.google.com/apps-script/reference/card-service/chat-response` | Builds the current action response and validates it. |
| `https://developers.google.com/apps-script/reference/card-service/chat-response-builder#setActionResponse(ChatActionResponse)` | `https://developers.google.com/apps-script/reference/card-service/chat-response-builder#` | Sets the action response field of the message. |
| `https://developers.google.com/apps-script/reference/card-service/chat-response-builder#setText(String)` | `https://developers.google.com/apps-script/reference/card-service/chat-response-builder#` | Sets the text of the Chat message. |

## Detailed documentation

### `addCardsV2(cardWithId)`

Sets the card field of the message. This is used to send a card in a Google Chat message. Each
card is associated with a unique id, `https://developers.google.com/apps-script/reference/card-service/card-with-id` object should be built and be used with
this method.

```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();
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `cardWithId` | `https://developers.google.com/apps-script/reference/card-service/card-with-id` | The `https://developers.google.com/apps-script/reference/card-service/card-with-id` to use. |

#### Return


`https://developers.google.com/apps-script/reference/card-service/chat-response-builder#` --- This object, for chaining.

*** ** * ** ***

### `build()`

Builds the current action response and validates it.

#### Return


`https://developers.google.com/apps-script/reference/card-service/chat-response` --- A validated ChatResponse.

*** ** * ** ***

### `setActionResponse(actionResponse)`

Sets the action response field of the message.

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

// Creates the dialog.
const dialog = CardService.newDialog().setBody(card);

// Creates the dialog action.
const dialogAction = CardService.newDialogAction().setDialog(dialog);

// Creates the action response and sets the type to DIALOG.
const actionResponse = CardService.newChatActionResponse()
                           .setDialogAction(dialogAction)
                           .setResponseType(CardService.Type.DIALOG);

// Creates the Chat response and sets the action response.
const chatResponse = CardService.newChatResponseBuilder()
                         .setActionResponse(actionResponse)
                         .build();
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `actionResponse` | `https://developers.google.com/apps-script/reference/card-service/chat-action-response` | The `https://developers.google.com/apps-script/reference/card-service/chat-action-response` to use. |

#### Return


`https://developers.google.com/apps-script/reference/card-service/chat-response-builder#` --- This object, for chaining.

*** ** * ** ***

### `setText(text)`

Sets the text of the Chat message.

```javascript
const chatResponse =
    CardService.newChatResponseBuilder().setText('Example text').build();
```

#### Parameters

| Name | Type | Description |
|---|---|---|
| `text` | `String` | The text to use. |

#### Return


`https://developers.google.com/apps-script/reference/card-service/chat-response-builder#` --- This object, for chaining.