Class: Google::Apis::GmailV1::WatchRequest

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/gmail_v1/classes.rb,
generated/google/apis/gmail_v1/representations.rb,
generated/google/apis/gmail_v1/representations.rb

Overview

Set up or update a new push notification watch on this user's mailbox.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ WatchRequest

Returns a new instance of WatchRequest.


1314
1315
1316
# File 'generated/google/apis/gmail_v1/classes.rb', line 1314

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#label_filter_actionString

Filtering behavior of labelIds list specified. Corresponds to the JSON property labelFilterAction

Returns:

  • (String)

1294
1295
1296
# File 'generated/google/apis/gmail_v1/classes.rb', line 1294

def label_filter_action
  @label_filter_action
end

#label_idsArray<String>

List of label_ids 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. Corresponds to the JSON property labelIds

Returns:

  • (Array<String>)

1301
1302
1303
# File 'generated/google/apis/gmail_v1/classes.rb', line 1301

def label_ids
  @label_ids
end

#topic_nameString

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). Corresponds to the JSON property topicName

Returns:

  • (String)

1312
1313
1314
# File 'generated/google/apis/gmail_v1/classes.rb', line 1312

def topic_name
  @topic_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


1319
1320
1321
1322
1323
# File 'generated/google/apis/gmail_v1/classes.rb', line 1319

def update!(**args)
  @label_filter_action = args[:label_filter_action] if args.key?(:label_filter_action)
  @label_ids = args[:label_ids] if args.key?(:label_ids)
  @topic_name = args[:topic_name] if args.key?(:topic_name)
end