Method: users.watch

指定されたユーザーのメールボックスでプッシュ通知のウォッチを設定または更新します。

HTTP リクエスト

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

この URL は gRPC Transcoding 構文を使用します。

パスパラメータ

パラメータ
userId

string

ユーザーのメールアドレス。特別な値 me を使用すると、認証済みユーザーを示すことができます。

リクエスト本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "labelIds": [
    string
  ],
  "labelFilterAction": enum (LabelFilterAction),
  "labelFilterBehavior": enum (LabelFilterAction),
  "topicName": string
}
フィールド
labelIds[]

string

通知を制限する labelId のリスト。デフォルトでは、指定しない場合、すべての変更が push されます。指定すると、プッシュ通知の生成に必要なラベルが決まります。

labelFilterAction
(deprecated)

enum (LabelFilterAction)

labelIds list のフィルタリング動作を指定しました。このフィールドは誤った動作を引き起こすことがあるため非推奨となりました。代わりに labelFilterBehavior を使用してください。

labelFilterBehavior

enum (LabelFilterAction)

labelIds list のフィルタリング動作を指定しました。このフィールドは labelFilterAction に代わるものです。設定した場合、labelFilterAction は無視されます。

topicName

string

イベントの公開先となる完全修飾 Google Cloud Pub/Sub API トピック名。このトピック名は、すでに Cloud Pub/Sub に存在しており、Gmail に「公開」権限を付与されている必要があります。例: "projects/my-project-identifier/topics/my-topic-name"(Cloud Pub/Sub の「v1」トピックの命名形式を使用)。

「my-project-identifier」の部分は、Google デベロッパー プロジェクト ID(この監視リクエストを実行する ID)と完全に一致している必要があります。

レスポンスの本文

プッシュ通知のウォッチ レスポンス。

成功すると、レスポンスの本文に次の構造のデータが含まれます。

JSON 表現
{
  "historyId": string,
  "expiration": string
}
フィールド
historyId

string

メールボックスの現在の履歴レコードの ID。

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

詳細については、承認ガイドをご覧ください。

LabelFilterAction

labelIds リストのフィルタリング動作が指定されました。

列挙型
include 指定した labelId に関連するメッセージの変更についてのみプッシュ通知を受け取ります。
exclude 指定した labelId に関連するものを除く、すべてのメッセージの変更についてのプッシュ通知を取得します。