Method: users.watch
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Richten Sie eine Push-Benachrichtigungsuhr für das angegebene Nutzerpostfach ein oder aktualisieren Sie sie.
HTTP-Anfrage
POST https://gmail.googleapis.com/gmail/v1/users/{userId}/watch
Die URL verwendet die Syntax der gRPC-Transcodierung.
Pfadparameter
Parameter |
userId |
string
Die E-Mail-Adresse des Nutzers. Der spezielle Wert me kann verwendet werden, um den authentifizierten Nutzer anzugeben.
|
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
Felder |
labelIds[] |
string
Liste der Label-IDs, für die Benachrichtigungen eingeschränkt werden sollen. Wenn Sie nichts angeben, werden standardmäßig alle Änderungen übertragen. Wenn angegeben, gibt an, welche Labels für die Generierung einer Push-Benachrichtigung erforderlich sind.
|
labelFilterAction (deprecated) |
enum (LabelFilterAction )
Filterverhalten von labelIds list angegeben. Dieses Feld wurde eingestellt, da es in einigen Fällen zu einem falschen Verhalten führte. Verwenden Sie stattdessen labelFilterBehavior .
|
labelFilterBehavior |
enum (LabelFilterAction )
Filterverhalten von labelIds list angegeben. Dieses Feld ersetzt labelFilterAction . Wenn es festgelegt ist, wird labelFilterAction ignoriert.
|
topicName |
string
Ein vollständig qualifizierter Name eines Google Cloud Pub/Sub API-Themas, in dem die Ereignisse veröffentlicht werden sollen. Dieser Themenname muss bereits in Cloud Pub/Sub vorhanden sein und Sie müssen Gmail bereits die Berechtigung „Veröffentlichen“ für dieses Thema erteilt haben. Beispiel: „projects/my-project-identifier/topics/my-topic-name“ (mit dem Cloud Pub/Sub-Themenbenennungsformat „v1“). Der Teil „my-project-identifier“ muss genau mit der Google-Entwicklerprojekt-ID übereinstimmen, für die diese Beobachtungsanfrage ausgeführt wird.
|
Antworttext
Antwort auf Push-Benachrichtigungen auf der Smartwatch
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:
JSON-Darstellung |
{
"historyId": string,
"expiration": string
} |
Felder |
historyId |
string
Die ID des aktuellen Verlaufsdatensatzes des Postfachs.
|
expiration |
string (int64 format)
Zeitpunkt, zu dem Gmail keine Benachrichtigungen mehr für Mailbox-Aktualisierungen sendet (Epoch-Millisekunden). Rufen Sie vor Ablauf dieses Zeitraums noch einmal watch an, um die Smartwatch zu verlängern.
|
Autorisierungsbereiche
Erfordert einen der folgenden OAuth-Bereiche:
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
Weitere Informationen finden Sie im Leitfaden zur Autorisierung.
LabelFilterAction
Filterverhalten der angegebenen Liste mit Label-IDs.
Enums |
include |
Sie erhalten nur Push-Benachrichtigungen für Nachrichtenänderungen, die sich auf die angegebenen labelIds beziehen. |
exclude |
Sie erhalten Push-Benachrichtigungen für alle Nachrichtenänderungen, mit Ausnahme derer, die sich auf die angegebenen labelIds beziehen. |
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-07-25 (UTC).
[null,null,["Zuletzt aktualisiert: 2025-07-25 (UTC)."],[],[],null,["# Method: users.watch\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n - [JSON representation](#body.WatchResponse.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [LabelFilterAction](#LabelFilterAction)\n\nSet up or update a push notification watch on the given user mailbox.\n\n### HTTP request\n\n`POST https://gmail.googleapis.com/gmail/v1/users/{userId}/watch`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|----------|-----------------------------------------------------------------------------------------------------------|\n| `userId` | `string` The user's email address. The special value `me` can be used to indicate the authenticated user. |\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"labelIds\": [ string ], \"labelFilterAction\": enum (/workspace/gmail/api/reference/rest/v1/users/watch#LabelFilterAction), \"labelFilterBehavior\": enum (/workspace/gmail/api/reference/rest/v1/users/watch#LabelFilterAction), \"topicName\": string } ``` |\n\n| Fields ||\n|--------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `labelIds[]` | `string` List of labelIds to restrict notifications about. By default, if unspecified, all changes are pushed out. If specified then dictates which labels are required for a push notification to be generated. |\n| `labelFilterAction` **(deprecated)** | `enum (`[LabelFilterAction](/workspace/gmail/api/reference/rest/v1/users/watch#LabelFilterAction)`)` Filtering behavior of `labelIds list` specified. This field is deprecated because it caused incorrect behavior in some cases; use `labelFilterBehavior` instead. |\n| `labelFilterBehavior` | `enum (`[LabelFilterAction](/workspace/gmail/api/reference/rest/v1/users/watch#LabelFilterAction)`)` Filtering behavior of `labelIds list` specified. This field replaces `labelFilterAction`; if set, `labelFilterAction` is ignored. |\n| `topicName` | `string` A fully qualified Google Cloud Pub/Sub API topic name to publish the events to. This topic name **must** already exist in Cloud Pub/Sub and you **must** have already granted gmail \"publish\" permission on it. For example, \"projects/my-project-identifier/topics/my-topic-name\" (using the Cloud Pub/Sub \"v1\" topic naming format). Note that the \"my-project-identifier\" portion must exactly match your Google developer project id (the one executing this watch request). |\n\n### Response body\n\nPush notification watch response.\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|-------------------------------------------------------|\n| ``` { \"historyId\": string, \"expiration\": string } ``` |\n\n| Fields ||\n|--------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `historyId` | `string` The ID of the mailbox's current history record. |\n| `expiration` | `string (`[int64](https://developers.google.com/discovery/v1/type-format)` format)` When Gmail will stop sending notifications for mailbox updates (epoch millis). Call `watch` again before this time to renew the watch. |\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://mail.google.com/`\n- `\n https://www.googleapis.com/auth/gmail.modify`\n- `\n https://www.googleapis.com/auth/gmail.readonly`\n- `\n https://www.googleapis.com/auth/gmail.metadata`\n\nFor more information, see the [Authorization guide](/workspace/guides/configure-oauth-consent).\n\nLabelFilterAction\n-----------------\n\nFiltering behavior of labelIds list specified.\n\n| Enums ||\n|-----------|---------------------------------------------------------------------------------------------|\n| `include` | Only get push notifications for message changes relating to labelIds specified. |\n| `exclude` | Get push notifications for all message changes except those relating to labelIds specified. |"]]