Create a Google Chat app that you can directly message and that
responds by echoing your messages.
The following diagram shows the architecture and messaging pattern:
In the preceding diagram, a user interacting with an Apps Script
Chat app has the following flow of information:
- A user sends a message to a Chat app, either in a
direct message or in a Chat space.
- The Chat app logic that's implemented in
Apps Script, which resides in Google Cloud, receives
and processes the message.
- Optionally, the Chat app logic can integrate with
Google Workspace services, such as a Calendar or
Sheets, or other Google Services, such as Google Maps
or YouTube.
- The Chat app logic sends a response back to the
Chat app service in Chat.
- The response is delivered to the user.
Objectives
- Set up your environment.
- Set up the script.
- Publish the Chat app.
- Test the Chat app.
Prerequisites
Set up your environment
Open your Cloud project in the Google Cloud console
If it's not open already, open the Cloud project that you intend to use
for this sample:
- In the Google Cloud console, go to the
Select a project
page.
Select a Cloud project
- Select the Google Cloud project you want to use. Or, click
Create project
and follow the on-screen instructions. If you create a Google Cloud project, you might need to
turn on billing for the project
.
Turn on the Chat API
Before using Google APIs, you need to turn them on in a Google Cloud project.
You can turn on one or more APIs in a single Google Cloud project.
All apps using OAuth 2.0 require a consent screen configuration. Configuring
your app's OAuth consent screen defines what is displayed to users and app
reviewers, and registers your app so you can publish it later.
-
In the Google Cloud console, go to Menu
menu
>
APIs & Services
>
OAuth consent screen
.
Go to OAuth consent screen
- Select the user type for your app, then click
Create
.
- Complete the app registration form, then click
Save and Continue
.
For now, you can skip adding scopes and click
Save and Continue
.
In the future, when you create an app for use outside of your
Google Workspace organization, you must add and verify the authorization
scopes that your app requires.
- If you selected
External
for user type, add test users:
- Under
Test users
, click
Add users
.
- Enter your email address and any other authorized test users, then click
Save and Continue
.
- Review your app registration summary. To make changes, click
Edit
. If the app
registration looks OK, click
Back to Dashboard
.
Set up the script
To set up the script, you use a template and then set your
Cloud project in Apps Script.
Create the script from the template
- Go to the
Apps Script
Getting Started
page
.
- Click the
Chat App
template. You might have to scroll down
to see this template.
- Click
Untitled project
, type
Quickstart app
, and
click
Rename
.
Copy the Cloud project number
-
In the Google Cloud console, go to Menu
menu
>
IAM & Admin
>
Settings
.
Go to IAM & Admin Settings
- In the
Project number
field, copy the value.
Set the Apps Script project's Cloud project
- In the Chat app Apps Script project,
click
Project Settings
.
- Under
Google Cloud Platform (GCP) Project
, click
Change project
.
- In
GCP project number
, paste the Google Cloud project number.
- Click
Set project
.
You now have working app code that you can try out (as described in the
following steps) and then customize to meet your requirements.
Make sure that you're signed in to the correct Google Account when you open the
Apps Script template. The current account can sometimes switch to
your default account without you noticing.
Create a test deployment
You need a deployment ID for this Apps Script project, so that
you can use it in the next step.
To get the head deployment ID, do the following:
- In the Chat app Apps Script project,
click
Deploy
>
Test deployments
.
- Copy the
Head deployment ID
for use in a later step and click
Done
.
Publish the Chat app
Publish the Chat app from the Google Cloud console.
- In the
Google Cloud console
,
search for
Google Chat API
, and click
Google Chat API
.
- Click
Manage
.
Click
Configuration
and set up the Chat app:
- In the
App name
field, enter
Quickstart app
.
- In the
Avatar URL
field, enter
https://developers.google.com/chat/images/quickstart-app-avatar.png
.
- In the
Description
field, enter
Quickstart app
.
- Under Functionality, select
Receive 1:1 messages
and
Join spaces and group conversations
.
- Under Connection settings, select
Apps Script project
and
paste the Deployment ID into the field.
- Under Visibility, select
Specific people and groups in your
domain
, and enter your email.
Click
Save
and refresh the page.
On the configuration page, under
App status
, set the status
to
Live - available to users
.
Click
Save
.
The Chat app is ready to respond to messages.
Test the Chat app
- Open
Chat
.
- Send a new direct message to the app by clicking
Start a chat
add
> Find apps
.
- On the Find apps page, search for
Quickstart App
.
- Next to
Quickstart App
, click
Chat
.
- In the new direct message with the app, type
Hello
and press
enter
.
The Chat app thanks you for adding it and echoes your
message.
To add trusted testers and learn more about testing interactive features, see
Test interactive features for
Google Chat apps
.
Next steps
- Create interactive cards
?Card
messages support a defined layout, interactive UI elements like buttons, and
rich media like images. Use card messages to present detailed information,
gather information from users, and guide users to take a next step.
- Support slash commands
?Slash commands let
you register and advertise specific commands that users can give your app
by typing a command that begins with a forward slash (
/
), like
/help
.
- Launch dialogs
?Dialogs are windowed, card-based
interfaces that your app can open to interact with a user. Multiple cards
can be strung together sequentially, which helps users complete multi-step
processes, like filling in form data.