Method: users.watch

Configura ou atualiza um monitoramento de notificação push na caixa de correio do usuário especificado.

Solicitação HTTP

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

O URL usa a sintaxe de transcodificação gRPC.

Parâmetros de caminho

Parâmetros
userId

string

O endereço de e-mail do usuário. O valor especial me pode ser usado para indicar o usuário autenticado.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "labelIds": [
    string
  ],
  "labelFilterAction": enum (LabelFilterAction),
  "labelFilterBehavior": enum (LabelFilterAction),
  "topicName": string
}
Campos
labelIds[]

string

Lista de labelIds para restringir notificações. Por padrão, se não for especificado, todas as mudanças serão enviadas. Se especificado, determina quais rótulos são necessários para gerar uma notificação push.

labelFilterAction
(deprecated)

enum (LabelFilterAction)

Comportamento de filtragem de labelIds list especificado. Esse campo está descontinuado porque causava um comportamento incorreto em alguns casos. Use labelFilterBehavior.

labelFilterBehavior

enum (LabelFilterAction)

Comportamento de filtragem de labelIds list especificado. Esse campo substitui labelFilterAction. Se definido, labelFilterAction será ignorado.

topicName

string

Um nome de tópico totalmente qualificado da API Google Cloud Pub/Sub para publicar os eventos. O nome do tópico precisa existir no Cloud Pub/Sub, e você precisa ter concedido a permissão de "publicação" do Gmail nele. Por exemplo, "projects/my-project-identifier/topics/my-topic-name" (usando o formato de nomenclatura de tópico "v1" do Cloud Pub/Sub).

A parte "my-project-identifier" precisa corresponder exatamente ao ID do projeto do desenvolvedor do Google (aquele que está executando essa solicitação de observação).

Corpo da resposta

Resposta de notificação push no relógio.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "historyId": string,
  "expiration": string
}
Campos
historyId

string

O ID do registro de histórico atual da caixa de correio.

expiration

string (int64 format)

Quando o Gmail vai parar de enviar notificações sobre atualizações da caixa de correio (milissegundos de época). Chame watch novamente antes desse horário para renovar o relógio.

Escopos de autorização

Requer um dos seguintes escopos do 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

Para mais informações, consulte OAuth 2.0 Overview.

LabelFilterAction

Comportamento de filtragem da lista "labelIds" especificado.

Tipos enumerados
include Receber apenas notificações push sobre mudanças nas mensagens relacionadas aos labelIds especificados.
exclude Receba notificações push para todas as mudanças nas mensagens, exceto as relacionadas aos labelIds especificados.