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



1527
1528
1529
# File 'generated/google/apis/gmail_v1/classes.rb', line 1527

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)


1507
1508
1509
# File 'generated/google/apis/gmail_v1/classes.rb', line 1507

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>)


1514
1515
1516
# File 'generated/google/apis/gmail_v1/classes.rb', line 1514

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)


1525
1526
1527
# File 'generated/google/apis/gmail_v1/classes.rb', line 1525

def topic_name
  @topic_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1532
1533
1534
1535
1536
# File 'generated/google/apis/gmail_v1/classes.rb', line 1532

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