Method: users.watch

Belirli bir kullanıcı posta kutusunda anlık bildirim izleme özelliği ayarlama veya güncelleme

HTTP isteği

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

URL, gRPC Kod Dönüştürme söz dizimini kullanır.

Yol parametreleri

Parametreler
userId

string

Kullanıcının e-posta adresi. Kimliği doğrulanmış kullanıcıyı belirtmek için me özel değeri kullanılabilir.

İstek metni

İstek içeriği aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "labelIds": [
    string
  ],
  "labelFilterAction": enum (LabelFilterAction),
  "labelFilterBehavior": enum (LabelFilterAction),
  "topicName": string
}
Alanlar
labelIds[]

string

Hakkında bildirimlerin kısıtlanacağı labelId'lerin listesi. Varsayılan olarak, belirtilmediği sürece tüm değişiklikler gönderilir. Belirtilmişse anlık bildirim oluşturulması için hangi etiketlerin gerekli olduğunu belirler.

labelFilterAction
(deprecated)

enum (LabelFilterAction)

Belirtilen labelIds list için filtreleme davranışı. Bu alan, bazı durumlarda yanlış davranışa neden olduğu için kullanımdan kaldırıldı. Bunun yerine labelFilterBehavior alanını kullanın.

labelFilterBehavior

enum (LabelFilterAction)

Belirtilen labelIds list için filtreleme davranışı. Bu alan labelFilterAction yerine kullanılır. Ayarlanırsa labelFilterAction yoksayılır.

topicName

string

Etkinliklerin yayınlanacağı tam nitelikli bir Google Cloud Pub/Sub API konu adı. Bu konu adı, Cloud Pub/Sub'da zaten mevcut olmalı ve gmail'e bu konuda "yayınlama" izni vermiş olmalısınız. Örneğin, "projects/my-project-identifier/topics/my-topic-name" (Cloud Pub/Sub "v1" konu adlandırma biçimi kullanılarak).

"my-project-identifier" kısmının, Google geliştirici projenizin kimliğiyle (bu izleme isteğini yürüten) tam olarak eşleşmesi gerektiğini unutmayın.

Yanıt metni

Push bildirimiyle izleme yanıtı.

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "historyId": string,
  "expiration": string
}
Alanlar
historyId

string

Posta kutusunun mevcut geçmiş kaydının kimliği.

expiration

string (int64 format)

Gmail'in posta kutusu güncellemeleriyle ilgili bildirim göndermeyi durduracağı zaman (dönem milisaniye). Saati yenilemek için bu süreden önce watch numaralı telefonu tekrar arayın.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamlarından birini gerektirir:

  • 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

Daha fazla bilgi için OAuth 2.0 Overview sayfasına bakın.

LabelFilterAction

Belirtilen labelIds listesinin filtreleme davranışı.

Sıralamalar
include Yalnızca belirtilen labelId'lerle ilgili ileti değişiklikleri için push bildirimi alın.
exclude Belirtilen labelId'lerle ilgili olanlar hariç tüm ileti değişiklikleri için push bildirimi alın.