Method: users.watch

Настройте или обновите отслеживание push-уведомлений в почтовом ящике указанного пользователя.

HTTP-запрос

POST https://gmail.googleapis.com/gmail/v1/users/{userId}/watch

В URL-адресе используется синтаксис транскодирования gRPC .

Параметры пути

Параметры
userId

string

Адрес электронной почты пользователя. Специальное значение me может использоваться для обозначения авторизованного пользователя.

Текст запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "labelIds": [
    string
  ],
  "labelFilterAction": enum (LabelFilterAction),
  "labelFilterBehavior": enum (LabelFilterAction),
  "topicName": string
}
Поля
labelIds[]

string

Список идентификаторов меток (labelIds), для которых необходимо ограничить отправку уведомлений. По умолчанию, если не указано, отправляются все изменения. Если указано, определяет, какие метки необходимы для генерации push-уведомления.

labelFilterAction
(deprecated)

enum ( LabelFilterAction )

Указано поведение фильтрации labelIds list . Это поле устарело, поскольку в некоторых случаях приводило к некорректной работе; используйте вместо него labelFilterBehavior .

labelFilterBehavior

enum ( LabelFilterAction )

Указано поведение фильтрации labelIds list . Это поле заменяет labelFilterAction ; если задано, labelFilterAction игнорируется.

topicName

string

Полное имя темы API Google Cloud Pub/Sub для публикации событий. Это имя темы должно уже существовать в Cloud Pub/Sub, и вы должны предварительно предоставить Gmail разрешение на публикацию для этой темы. Например, "projects/my-project-identifier/topics/my-topic-name" (используя формат именования тем Cloud Pub/Sub "v1").

Обратите внимание, что часть "my-project-identifier" должна точно соответствовать идентификатору вашего проекта разработчика Google (тому, который выполняет этот запрос на отслеживание).

Ответный текст

Ответ на push-уведомление на часах.

В случае успеха тело ответа содержит данные следующей структуры:

JSON-представление
{
  "historyId": string,
  "expiration": string
}
Поля
historyId

string

Идентификатор текущей записи истории почтового ящика.

expiration

string ( int64 format)

Когда Gmail перестанет отправлять уведомления об обновлениях почтового ящика (в миллисекундах эпохи), позвоните в watch еще раз до этого времени, чтобы обновить отслеживание.

Области полномочий

Требуется один из следующих диапазонов аутентификации OAuth:

  • https://mail.google.com/
  • https://www.googleapis.com/auth/gmail.modify
  • https://www.googleapis.com/auth/gmail.readonly
  • https://www.googleapis.com/auth/gmail.metadata

Для получения более подробной информации см.OAuth 2.0 Overview .

LabelFilterAction

Указано поведение фильтрации списка labelIds.

Перечисления
include Получать push-уведомления только об изменениях сообщений, относящихся к указанным labelIds.
exclude Получайте push-уведомления обо всех изменениях сообщений, кроме тех, которые относятся к указанным labelIds.