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

Constructor Details

#initialize(**args) ⇒ WatchRequest

Returns a new instance of WatchRequest.



1576
1577
1578
# File 'generated/google/apis/gmail_v1/classes.rb', line 1576

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)


1557
1558
1559
# File 'generated/google/apis/gmail_v1/classes.rb', line 1557

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


1564
1565
1566
# File 'generated/google/apis/gmail_v1/classes.rb', line 1564

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)


1574
1575
1576
# File 'generated/google/apis/gmail_v1/classes.rb', line 1574

def topic_name
  @topic_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1581
1582
1583
1584
1585
# File 'generated/google/apis/gmail_v1/classes.rb', line 1581

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