Method: users.watch

지정된 사용자 편지함에서 푸시 알림 워치를 설정하거나 업데이트합니다.

HTTP 요청

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

URL은 gRPC 트랜스코딩 구문을 사용합니다.

경로 매개변수

매개변수
userId

string

사용자의 이메일 주소 특수 값 me를 사용하여 인증된 사용자를 나타낼 수 있습니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "labelIds": [
    string
  ],
  "labelFilterAction": enum (LabelFilterAction),
  "labelFilterBehavior": enum (LabelFilterAction),
  "topicName": string
}
필드
labelIds[]

string

알림을 제한할 labelId 목록입니다. 기본적으로 지정하지 않으면 모든 변경사항이 푸시됩니다. 지정하면 푸시 알림을 생성하는 데 필요한 라벨을 지정합니다.

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와 관련된 변경사항을 제외한 모든 메시지 변경사항에 대한 푸시 알림을 받습니다.