Google Chat API

Stay organized with collections Save and categorize content based on your preferences.

Enables apps to fetch information and perform actions in Google Chat. Authentication is a prerequisite for using the Google Chat REST API.


To call this service, we recommend that you use the Google-provided client libraries. If your application needs to use your own libraries to call this service, use the following information when you make the API requests.

Discovery document

A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery document:

Service endpoint

A service endpoint is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:


REST Resource:

download GET /v1/media/{resourceName=**}
Downloads media.
upload POST /v1/{parent=spaces/*}/attachments:upload
POST /upload/v1/{parent=spaces/*}/attachments:upload
Uploads an attachment.

REST Resource: v1.spaces

create POST /v1/spaces
Creates a named space.
delete DELETE /v1/{name=spaces/*}
Deletes a named space.
get GET /v1/{name=spaces/*}
Returns a space.
list GET /v1/spaces
Lists spaces the caller is a member of.
update PATCH /v1/{*}
Updates a space.
setup POST /v1/spaces:setup
Creates a space and adds specified users to it.

REST Resource: v1.spaces.members

create POST /v1/{parent=spaces/*}/members
Creates a human membership or app membership for the calling app.
delete DELETE /v1/{name=spaces/*/members/*}
Deletes a membership.
get GET /v1/{name=spaces/*/members/*}
Returns a membership.
list GET /v1/{parent=spaces/*}/members
Lists memberships in a space.

REST Resource: v1.spaces.messages

create POST /v1/{parent=spaces/*}/messages
Creates a message.
delete DELETE /v1/{name=spaces/*/messages/*}
Deletes a message.
get GET /v1/{name=spaces/*/messages/*}
Returns a message.
list GET /v1/{parent=spaces/*}/messages
Lists messages in a space that the caller is a member of, including messages from blocked members and spaces.
update PATCH /v1/{*/messages/*}
Updates a message.

REST Resource: v1.spaces.messages.attachments

get GET /v1/{name=spaces/*/messages/*/attachments/*}
Gets the metadata of a message attachment.

REST Resource: v1.spaces.messages.reactions

create POST /v1/{parent=spaces/*/messages/*}/reactions
Creates a reaction and adds it to a message.
delete DELETE /v1/{name=spaces/*/messages/*/reactions/*}
Deletes a reaction to a message.
list GET /v1/{parent=spaces/*/messages/*}/reactions
Lists reactions to a message.