Method: users.watch

Configurar ou atualizar uma observação de notificação push na caixa de correio do usuário.

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)

O comportamento de filtragem de labelIds list foi especificado. Este campo foi descontinuado porque causava um comportamento incorreto em alguns casos. Use labelFilterBehavior.

labelFilterBehavior

enum (LabelFilterAction)

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

topicName

string

Um nome de tópico da API Google Cloud Pub/Sub totalmente qualificado para publicar os eventos. O nome do tópico precisa já existir no Cloud Pub/Sub, e você precisa ter concedido a permissão "publicar" 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 Google Developer (aquele que está executando essa solicitação de relógio).

Corpo da resposta

Resposta do relógio a uma notificação push.

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 para atualizações da caixa de correio (milis da época). Chame watch novamente antes desse período 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 o guia de autorização.

LabelFilterAction

O comportamento de filtragem da lista de labelIds foi especificado.

Enums
include Receber notificações push apenas para mudanças de mensagens relacionadas aos labelIds especificados.
exclude Receba notificações push para todas as mudanças de mensagem, exceto as relacionadas aos labelIds especificados.