Google Chat API

Google Chat API позволяет разрабатывать приложения для Chat, чтобы интегрировать собственные сервисы с Google Chat и управлять его ресурсами, такими как чат-группы, участники и сообщения.

Сервис: chat.googleapis.com

Для вызова этого сервиса рекомендуем использовать клиентские библиотеки от Google. Если для вашего приложения требуется использование собственных библиотек для вызова сервиса, при выполнении запросов к API используйте следующую информацию.

Документ discovery

Документ Discovery – это машиночитаемая спецификация, которая позволяет описывать и использовать интерфейсы REST API. Он используется для построения клиентских библиотек, подключаемых модулей интегрированной среды разработки и других инструментов, которые взаимодействуют с API Google. Один сервис может предоставлять несколько документов Discovery. Этот сервис предоставляет следующий документ Discovery:

Конечная точка сервиса

Конечная точка сервиса – это базовый URL, который указывает на IP-адрес сервиса API. У одного сервиса может быть несколько конечных точек. Конечная точка этого сервиса указана ниже. К ней относятся все URI, которые также перечислены ниже.

  • https://chat.googleapis.com

Ресурс REST: v1.customEmojis

Методы
create POST /v1/customEmojis
Создает собственный эмодзи.
delete DELETE /v1/{name=customEmojis/*}
Удаляет собственный эмодзи.
get GET /v1/{name=customEmojis/*}
Возвращает сведения о собственном эмодзи.
list GET /v1/customEmojis
Список собственных эмодзи, видимых аутентифицированному пользователю.

Ресурс REST: v1.media

Методы
download GET /v1/media/{resourceName=**}
Скачивание медиаконтента.
upload POST /upload/v1/{parent=spaces/*}/attachments:upload
Загружает прикрепленный файл.

Ресурс REST: v1.spaces

Методы
completeImport POST /v1/{name=spaces/*}:completeImport
Завершает процесс импорта для указанной чат-группы и делает ее видимой для пользователей.
create POST /v1/spaces
Создает чат-группу.
delete DELETE /v1/{name=spaces/*}
Удаляет чат-группу с названием.
findDirectMessage GET /v1/spaces:findDirectMessage
Возвращает существующую прямую переписку с указанным пользователем.
findGroupChats GET /v1/spaces:findGroupChats
Возвращает все чат-группы с spaceType == GROUP_CHAT, в которых состоят только вызывающий пользователь и пользователи, указанные в FindGroupChatsRequest.users.
get GET /v1/{name=spaces/*}
Возвращает сведения о чат-группе.
list GET /v1/spaces
Возвращает список чат-групп, в которых состоит вызывающий абонент.
patch PATCH /v1/{space.name=spaces/*}
Обновляет чат-группу.
search GET /v1/spaces:search
Возвращает список чат-групп в организации Google Workspace.
setup POST /v1/spaces:setup
Создает чат-группу и добавляет в нее указанных пользователей.

Ресурс REST: v1.spaces.members

Методы
create POST /v1/{parent=spaces/*}/members
Создает участника для вызывающего приложения Chat, пользователя или группы Google.
delete DELETE /v1/{name=spaces/*/members/*}
Удаляет подписку.
get GET /v1/{name=spaces/*/members/*}
Возвращает сведения о подписке.
list GET /v1/{parent=spaces/*}/members
Возвращает список участников чат-группы.
patch PATCH /v1/{membership.name=spaces/*/members/*}
Обновляет статус участника.

Ресурс REST: v1.spaces.messagePins

Методы
create POST /v1/{parent=spaces/*}/messagePins
Закрепляет сообщение.
delete DELETE /v1/{name=spaces/*/messagePins/*}
Удаляет закрепленное сообщение.
list GET /v1/{parent=spaces/*}/messagePins
Показывает список закрепленных сообщений в чат-группе.

Ресурс REST: v1.spaces.messages

Методы
create POST /v1/{parent=spaces/*}/messages
Создает сообщение в чат-группе Google Chat.
delete DELETE /v1/{name=spaces/*/messages/*}
Удаляет сообщение.
get GET /v1/{name=spaces/*/messages/*}
Возвращает сведения о сообщении.
list GET /v1/{parent=spaces/*}/messages
Выводит список сообщений в чат-группе, участником которой является вызывающий абонент, включая сообщения от заблокированных участников и чат-групп.
patch PATCH /v1/{message.name=spaces/*/messages/*}
Обновляет сообщение.
replaceCards POST /v1/{name=spaces/*/messages/*}:replaceCards
Заменяет карточки, включенные в сообщение.
search POST /v1/{parent=spaces/*}/messages:search
Поиск сообщений в Google Chat, к которым у вызывающего пользователя есть доступ.
update PUT /v1/{message.name=spaces/*/messages/*}
Обновляет сообщение.

Ресурс REST: v1.spaces.messages.attachments

Методы
get GET /v1/{name=spaces/*/messages/*/attachments/*}
Позволяет получить метаданные прикрепленного файла.

Ресурс REST: v1.spaces.messages.reactions

Методы
create POST /v1/{parent=spaces/*/messages/*}/reactions
Создает отклик и добавляет его к сообщению.
delete DELETE /v1/{name=spaces/*/messages/*/reactions/*}
Удаляет реакцию на сообщение.
list GET /v1/{parent=spaces/*/messages/*}/reactions
Показывает список реакций на сообщение.

Ресурс REST: v1.spaces.spaceEvents

Методы
get GET /v1/{name=spaces/*/spaceEvents/*}
Возвращает событие из чат-группы Google Chat.
list GET /v1/{parent=spaces/*}/spaceEvents
Возвращает список событий из чат-группы Google Chat.

Ресурс REST: v1.users.availability

Методы
get GET /v1/{name=users/*/availability}
Возвращает информацию о доступности пользователя в Google Chat.
markAsActive POST /v1/{name=users/*/availability}:markAsActive
Пользователь помечается как ACTIVE в Google Chat.
markAsAway POST /v1/{name=users/*/availability}:markAsAway
Пользователь помечается как AWAY в Google Chat.
markAsDoNotDisturb POST /v1/{name=users/*/availability}:markAsDoNotDisturb
Пользователь помечается как DO_NOT_DISTURB в Google Chat.
patch PATCH /v1/{availability.name=users/*/availability}
Обновляет информацию о доступности пользователя.

Ресурс REST: v1.users.sections

Методы
create POST /v1/{parent=users/*}/sections
Создает раздел в Google Chat.
delete DELETE /v1/{name=users/*/sections/*}
Удаляет раздел типа CUSTOM_SECTION.
list GET /v1/{parent=users/*}/sections
Перечисляет разделы, доступные пользователю Chat.
patch PATCH /v1/{section.name=users/*/sections/*}
Обновляет раздел.
position POST /v1/{name=users/*/sections/*}:position
Изменяет порядок сортировки раздела.

Ресурс REST: v1.users.sections.items

Методы
list GET /v1/{parent=users/*/sections/*}/items
Перечисляет товары в разделе.
move POST /v1/{name=users/*/sections/*/items/*}:move
Перемещает элемент из одного раздела в другой.

Ресурс REST: v1.users.spaces

Методы
getSpaceReadState GET /v1/{name=users/*/spaces/*/spaceReadState}
Возвращает сведения о статусе прочтения пользователя в чат-группе, которые используются для идентификации прочитанных и непрочитанных сообщений.
updateSpaceReadState PATCH /v1/{spaceReadState.name=users/*/spaces/*/spaceReadState}
Обновляет статус прочтения пользователя в чат-группе, который используется для идентификации прочитанных и непрочитанных сообщений.

Ресурс REST: v1.users.spaces.spaceNotificationSetting

Методы
get GET /v1/{name=users/*/spaces/*/spaceNotificationSetting}
Получает настройки уведомлений чат-группы.
patch PATCH /v1/{spaceNotificationSetting.name=users/*/spaces/*/spaceNotificationSetting}
Обновляет настройки уведомлений чат-группы.

Ресурс REST: v1.users.spaces.threads

Методы
getThreadReadState GET /v1/{name=users/*/spaces/*/threads/*/threadReadState}
Возвращает сведения о статусе прочтения пользователем сообщений в цепочке. Используется для определения прочитанных и непрочитанных сообщений.