google-api-client 0.9.8 → 0.9.15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (197) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/Gemfile +9 -1
  4. data/README.md +10 -2
  5. data/api_names.yaml +61 -110
  6. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  7. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +160 -9
  8. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +46 -0
  9. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +22 -8
  10. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  11. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  12. data/generated/google/apis/admin_directory_v1.rb +1 -1
  13. data/generated/google/apis/admin_directory_v1/classes.rb +6 -0
  14. data/generated/google/apis/admin_directory_v1/representations.rb +1 -0
  15. data/generated/google/apis/admin_directory_v1/service.rb +2 -2
  16. data/generated/google/apis/admin_reports_v1.rb +3 -3
  17. data/generated/google/apis/admin_reports_v1/service.rb +2 -2
  18. data/generated/google/apis/adsense_v1_4.rb +1 -1
  19. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  20. data/generated/google/apis/analytics_v3.rb +1 -1
  21. data/generated/google/apis/analytics_v3/classes.rb +371 -1
  22. data/generated/google/apis/analytics_v3/representations.rb +135 -0
  23. data/generated/google/apis/analytics_v3/service.rb +218 -0
  24. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  25. data/generated/google/apis/analyticsreporting_v4/classes.rb +50 -22
  26. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1/classes.rb +722 -48
  28. data/generated/google/apis/androidenterprise_v1/representations.rb +305 -0
  29. data/generated/google/apis/androidenterprise_v1/service.rb +1180 -146
  30. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +9 -8
  32. data/generated/google/apis/appengine_v1beta5.rb +1 -1
  33. data/generated/google/apis/appengine_v1beta5/classes.rb +430 -288
  34. data/generated/google/apis/appengine_v1beta5/representations.rb +84 -10
  35. data/generated/google/apis/appengine_v1beta5/service.rb +285 -25
  36. data/generated/google/apis/appsactivity_v1.rb +1 -1
  37. data/generated/google/apis/appstate_v1.rb +1 -1
  38. data/generated/google/apis/bigquery_v2.rb +1 -1
  39. data/generated/google/apis/bigquery_v2/classes.rb +254 -6
  40. data/generated/google/apis/bigquery_v2/representations.rb +85 -0
  41. data/generated/google/apis/bigquery_v2/service.rb +8 -2
  42. data/generated/google/apis/books_v1.rb +2 -2
  43. data/generated/google/apis/books_v1/classes.rb +77 -0
  44. data/generated/google/apis/books_v1/representations.rb +34 -0
  45. data/generated/google/apis/books_v1/service.rb +7 -3
  46. data/generated/google/apis/calendar_v3.rb +1 -1
  47. data/generated/google/apis/civicinfo_v2.rb +3 -2
  48. data/generated/google/apis/civicinfo_v2/classes.rb +16 -4
  49. data/generated/google/apis/civicinfo_v2/representations.rb +2 -0
  50. data/generated/google/apis/civicinfo_v2/service.rb +8 -2
  51. data/generated/google/apis/classroom_v1.rb +1 -1
  52. data/generated/google/apis/classroom_v1/classes.rb +176 -37
  53. data/generated/google/apis/classroom_v1/representations.rb +73 -9
  54. data/generated/google/apis/classroom_v1/service.rb +392 -37
  55. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  56. data/generated/google/apis/cloudbuild_v1/classes.rb +320 -12
  57. data/generated/google/apis/cloudbuild_v1/representations.rb +136 -2
  58. data/generated/google/apis/cloudbuild_v1/service.rb +174 -1
  59. data/generated/google/apis/clouddebugger_v2.rb +3 -6
  60. data/generated/google/apis/clouddebugger_v2/service.rb +4 -4
  61. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  62. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  63. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +157 -3
  64. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +33 -0
  65. data/generated/google/apis/cloudresourcemanager_v1/service.rb +60 -21
  66. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  67. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +22 -5
  68. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +2 -0
  69. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +61 -39
  70. data/generated/google/apis/compute_beta.rb +1 -1
  71. data/generated/google/apis/compute_beta/classes.rb +1620 -199
  72. data/generated/google/apis/compute_beta/representations.rb +563 -0
  73. data/generated/google/apis/compute_beta/service.rb +5123 -2690
  74. data/generated/google/apis/compute_v1.rb +1 -1
  75. data/generated/google/apis/compute_v1/classes.rb +1717 -295
  76. data/generated/google/apis/compute_v1/representations.rb +536 -0
  77. data/generated/google/apis/compute_v1/service.rb +2038 -1041
  78. data/generated/google/apis/content_v2.rb +1 -1
  79. data/generated/google/apis/content_v2/classes.rb +709 -1
  80. data/generated/google/apis/content_v2/representations.rb +319 -0
  81. data/generated/google/apis/content_v2/service.rb +244 -0
  82. data/generated/google/apis/datastore_v1.rb +38 -0
  83. data/generated/google/apis/datastore_v1/classes.rb +1284 -0
  84. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  85. data/generated/google/apis/datastore_v1/service.rb +259 -0
  86. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  87. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  88. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  89. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  90. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  91. data/generated/google/apis/deploymentmanager_v2/classes.rb +384 -2
  92. data/generated/google/apis/deploymentmanager_v2/representations.rb +161 -0
  93. data/generated/google/apis/deploymentmanager_v2/service.rb +162 -50
  94. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  95. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  96. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  97. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  98. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  99. data/generated/google/apis/dfareporting_v2_6/classes.rb +11585 -0
  100. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  101. data/generated/google/apis/dfareporting_v2_6/service.rb +9006 -0
  102. data/generated/google/apis/dns_v1.rb +1 -1
  103. data/generated/google/apis/dns_v1/classes.rb +1 -1
  104. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  105. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  106. data/generated/google/apis/drive_v2.rb +1 -1
  107. data/generated/google/apis/drive_v2/classes.rb +11 -3
  108. data/generated/google/apis/drive_v2/representations.rb +2 -0
  109. data/generated/google/apis/drive_v2/service.rb +8 -2
  110. data/generated/google/apis/drive_v3.rb +1 -1
  111. data/generated/google/apis/drive_v3/classes.rb +36 -16
  112. data/generated/google/apis/drive_v3/representations.rb +2 -0
  113. data/generated/google/apis/drive_v3/service.rb +4 -1
  114. data/generated/google/apis/fitness_v1.rb +8 -2
  115. data/generated/google/apis/fitness_v1/classes.rb +64 -6
  116. data/generated/google/apis/fitness_v1/representations.rb +20 -0
  117. data/generated/google/apis/fitness_v1/service.rb +17 -18
  118. data/generated/google/apis/fusiontables_v2.rb +1 -1
  119. data/generated/google/apis/fusiontables_v2/classes.rb +4 -3
  120. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  121. data/generated/google/apis/games_management_v1management.rb +1 -1
  122. data/generated/google/apis/games_v1.rb +1 -1
  123. data/generated/google/apis/genomics_v1.rb +2 -4
  124. data/generated/google/apis/genomics_v1/classes.rb +111 -9
  125. data/generated/google/apis/genomics_v1/representations.rb +36 -0
  126. data/generated/google/apis/genomics_v1/service.rb +4 -7
  127. data/generated/google/apis/gmail_v1.rb +7 -1
  128. data/generated/google/apis/gmail_v1/classes.rb +540 -0
  129. data/generated/google/apis/gmail_v1/representations.rb +213 -0
  130. data/generated/google/apis/gmail_v1/service.rb +898 -1
  131. data/generated/google/apis/groupssettings_v1.rb +1 -1
  132. data/generated/google/apis/groupssettings_v1/classes.rb +12 -0
  133. data/generated/google/apis/groupssettings_v1/representations.rb +2 -0
  134. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  135. data/generated/google/apis/identitytoolkit_v3/classes.rb +154 -1
  136. data/generated/google/apis/identitytoolkit_v3/representations.rb +35 -0
  137. data/generated/google/apis/language_v1beta1.rb +36 -0
  138. data/generated/google/apis/language_v1beta1/classes.rb +596 -0
  139. data/generated/google/apis/language_v1beta1/representations.rb +289 -0
  140. data/generated/google/apis/language_v1beta1/service.rb +154 -0
  141. data/generated/google/apis/mirror_v1.rb +2 -2
  142. data/generated/google/apis/mirror_v1/service.rb +1 -1
  143. data/generated/google/apis/monitoring_v3.rb +45 -0
  144. data/generated/google/apis/monitoring_v3/classes.rb +1328 -0
  145. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  146. data/generated/google/apis/monitoring_v3/service.rb +711 -0
  147. data/generated/google/apis/oauth2_v2.rb +1 -1
  148. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  149. data/generated/google/apis/plus_domains_v1.rb +1 -1
  150. data/generated/google/apis/plus_v1.rb +1 -1
  151. data/generated/google/apis/qpx_express_v1.rb +1 -1
  152. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  153. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  154. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  155. data/generated/google/apis/script_v1.rb +1 -1
  156. data/generated/google/apis/script_v1/classes.rb +6 -0
  157. data/generated/google/apis/script_v1/representations.rb +1 -0
  158. data/generated/google/apis/sheets_v4.rb +1 -1
  159. data/generated/google/apis/sheets_v4/classes.rb +35 -0
  160. data/generated/google/apis/sheets_v4/representations.rb +16 -0
  161. data/generated/google/apis/sheets_v4/service.rb +55 -0
  162. data/generated/google/apis/speech_v1beta1.rb +34 -0
  163. data/generated/google/apis/speech_v1beta1/classes.rb +521 -0
  164. data/generated/google/apis/speech_v1beta1/representations.rb +219 -0
  165. data/generated/google/apis/speech_v1beta1/service.rb +268 -0
  166. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  167. data/generated/google/apis/sqladmin_v1beta4/classes.rb +26 -8
  168. data/generated/google/apis/sqladmin_v1beta4/representations.rb +2 -0
  169. data/generated/google/apis/sqladmin_v1beta4/service.rb +42 -0
  170. data/generated/google/apis/storage_v1.rb +1 -1
  171. data/generated/google/apis/storage_v1/classes.rb +19 -10
  172. data/generated/google/apis/translate_v2.rb +2 -2
  173. data/generated/google/apis/translate_v2/service.rb +1 -1
  174. data/generated/google/apis/vision_v1.rb +1 -1
  175. data/generated/google/apis/vision_v1/classes.rb +10 -9
  176. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  177. data/generated/google/apis/youtube_partner_v1/classes.rb +6 -0
  178. data/generated/google/apis/youtube_partner_v1/representations.rb +2 -0
  179. data/generated/google/apis/youtube_partner_v1/service.rb +15 -3
  180. data/generated/google/apis/youtube_v3.rb +1 -1
  181. data/generated/google/apis/youtube_v3/classes.rb +163 -2
  182. data/generated/google/apis/youtube_v3/representations.rb +82 -0
  183. data/generated/google/apis/youtube_v3/service.rb +6 -2
  184. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  185. data/google-api-client.gemspec +2 -1
  186. data/lib/google/apis/core/api_command.rb +4 -0
  187. data/lib/google/apis/core/base_service.rb +10 -4
  188. data/lib/google/apis/core/download.rb +7 -2
  189. data/lib/google/apis/core/http_command.rb +5 -1
  190. data/lib/google/apis/core/upload.rb +7 -1
  191. data/lib/google/apis/errors.rb +2 -2
  192. data/lib/google/apis/generator/annotator.rb +6 -0
  193. data/lib/google/apis/version.rb +1 -1
  194. data/samples/cli/lib/samples/bigquery.rb +101 -0
  195. data/samples/cli/lib/samples/sheets.rb +61 -0
  196. data/sync.rb +71 -0
  197. metadata +43 -13
@@ -22,7 +22,7 @@ module Google
22
22
  module MirrorV1
23
23
  # Google Mirror API
24
24
  #
25
- # API for interacting with Glass users via the timeline.
25
+ # Interacts with Glass users via the timeline.
26
26
  #
27
27
  # @example
28
28
  # require 'google/apis/mirror_v1'
@@ -0,0 +1,45 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/monitoring_v3/service.rb'
16
+ require 'google/apis/monitoring_v3/classes.rb'
17
+ require 'google/apis/monitoring_v3/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Stackdriver Monitoring API
22
+ #
23
+ # Manages your Stackdriver Monitoring data and configurations. Most projects
24
+ # must be associated with a Stackdriver account, with a few exceptions as noted
25
+ # on the individual method pages.
26
+ #
27
+ # @see https://cloud.google.com/monitoring/api/
28
+ module MonitoringV3
29
+ VERSION = 'V3'
30
+ REVISION = '20160912'
31
+
32
+ # View and manage your data across Google Cloud Platform services
33
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
34
+
35
+ # View monitoring data for all of your Google Cloud and third-party projects
36
+ AUTH_MONITORING_READ = 'https://www.googleapis.com/auth/monitoring.read'
37
+
38
+ # Publish metric data to your Google Cloud projects
39
+ AUTH_MONITORING_WRITE = 'https://www.googleapis.com/auth/monitoring.write'
40
+
41
+ # View and write monitoring data for all of your Google and third-party Cloud and API projects
42
+ AUTH_MONITORING = 'https://www.googleapis.com/auth/monitoring'
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,1328 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module MonitoringV3
24
+
25
+ # A specific metric identified by specifying values for all of the labels of a
26
+ # MetricDescriptor.
27
+ class Metric
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # The set of labels that uniquely identify a metric. To specify a metric, all
31
+ # labels enumerated in the MetricDescriptor must be assigned values.
32
+ # Corresponds to the JSON property `labels`
33
+ # @return [Hash<String,String>]
34
+ attr_accessor :labels
35
+
36
+ # An existing metric type, see google.api.MetricDescriptor. For example, compute.
37
+ # googleapis.com/instance/cpu/usage_time.
38
+ # Corresponds to the JSON property `type`
39
+ # @return [String]
40
+ attr_accessor :type
41
+
42
+ def initialize(**args)
43
+ update!(**args)
44
+ end
45
+
46
+ # Update properties of this object
47
+ def update!(**args)
48
+ @labels = args[:labels] if args.key?(:labels)
49
+ @type = args[:type] if args.key?(:type)
50
+ end
51
+ end
52
+
53
+ # The ListGroupMembers response.
54
+ class ListGroupMembersResponse
55
+ include Google::Apis::Core::Hashable
56
+
57
+ # A set of monitored resources in the group.
58
+ # Corresponds to the JSON property `members`
59
+ # @return [Array<Google::Apis::MonitoringV3::MonitoredResource>]
60
+ attr_accessor :members
61
+
62
+ # If there are more results than have been returned, then this field is set to a
63
+ # non-empty value. To see the additional results, use that value as pageToken in
64
+ # the next call to this method.
65
+ # Corresponds to the JSON property `nextPageToken`
66
+ # @return [String]
67
+ attr_accessor :next_page_token
68
+
69
+ # The total number of elements matching this request.
70
+ # Corresponds to the JSON property `totalSize`
71
+ # @return [Fixnum]
72
+ attr_accessor :total_size
73
+
74
+ def initialize(**args)
75
+ update!(**args)
76
+ end
77
+
78
+ # Update properties of this object
79
+ def update!(**args)
80
+ @members = args[:members] if args.key?(:members)
81
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
82
+ @total_size = args[:total_size] if args.key?(:total_size)
83
+ end
84
+ end
85
+
86
+ # A time interval extending just after a start time through an end time. If the
87
+ # start time is the same as the end time, then the interval represents a single
88
+ # point in time.
89
+ class TimeInterval
90
+ include Google::Apis::Core::Hashable
91
+
92
+ # Required. The end of the time interval.
93
+ # Corresponds to the JSON property `endTime`
94
+ # @return [String]
95
+ attr_accessor :end_time
96
+
97
+ # Optional. The beginning of the time interval. The default value for the start
98
+ # time is the end time. The start time must not be later than the end time.
99
+ # Corresponds to the JSON property `startTime`
100
+ # @return [String]
101
+ attr_accessor :start_time
102
+
103
+ def initialize(**args)
104
+ update!(**args)
105
+ end
106
+
107
+ # Update properties of this object
108
+ def update!(**args)
109
+ @end_time = args[:end_time] if args.key?(:end_time)
110
+ @start_time = args[:start_time] if args.key?(:start_time)
111
+ end
112
+ end
113
+
114
+ # The description of a dynamic collection of monitored resources. Each group has
115
+ # a filter that is matched against monitored resources and their associated
116
+ # metadata. If a group's filter matches an available monitored resource, then
117
+ # that resource is a member of that group. Groups can contain any number of
118
+ # monitored resources, and each monitored resource can be a member of any number
119
+ # of groups.Groups can be nested in parent-child hierarchies. The parentName
120
+ # field identifies an optional parent for each group. If a group has a parent,
121
+ # then the only monitored resources available to be matched by the group's
122
+ # filter are the resources contained in the parent group. In other words, a
123
+ # group contains the monitored resources that match its filter and the filters
124
+ # of all the group's ancestors. A group without a parent can contain any
125
+ # monitored resource.For example, consider an infrastructure running a set of
126
+ # instances with two user-defined tags: &quot;environment&quot; and &quot;role&
127
+ # quot;. A parent group has a filter, environment=&quot;production&quot;. A
128
+ # child of that parent group has a filter, role=&quot;transcoder&quot;. The
129
+ # parent group contains all instances in the production environment, regardless
130
+ # of their roles. The child group contains instances that have the transcoder
131
+ # role and are in the production environment.The monitored resources contained
132
+ # in a group can change at any moment, depending on what resources exist and
133
+ # what filters are associated with the group and its ancestors.
134
+ class Group
135
+ include Google::Apis::Core::Hashable
136
+
137
+ # A user-assigned name for this group, used only for display purposes.
138
+ # Corresponds to the JSON property `displayName`
139
+ # @return [String]
140
+ attr_accessor :display_name
141
+
142
+ # The name of the group's parent, if it has one. The format is &quot;projects/`
143
+ # project_id_or_number`/groups/`group_id`&quot;. For groups with no parent,
144
+ # parentName is the empty string, &quot;&quot;.
145
+ # Corresponds to the JSON property `parentName`
146
+ # @return [String]
147
+ attr_accessor :parent_name
148
+
149
+ # If true, the members of this group are considered to be a cluster. The system
150
+ # can perform additional analysis on groups that are clusters.
151
+ # Corresponds to the JSON property `isCluster`
152
+ # @return [Boolean]
153
+ attr_accessor :is_cluster
154
+ alias_method :is_cluster?, :is_cluster
155
+
156
+ # The filter used to determine which monitored resources belong to this group.
157
+ # Corresponds to the JSON property `filter`
158
+ # @return [String]
159
+ attr_accessor :filter
160
+
161
+ # Output only. The name of this group. The format is &quot;projects/`
162
+ # project_id_or_number`/groups/`group_id`&quot;. When creating a group, this
163
+ # field is ignored and a new name is created consisting of the project specified
164
+ # in the call to CreateGroup and a unique `group_id` that is generated
165
+ # automatically.
166
+ # Corresponds to the JSON property `name`
167
+ # @return [String]
168
+ attr_accessor :name
169
+
170
+ def initialize(**args)
171
+ update!(**args)
172
+ end
173
+
174
+ # Update properties of this object
175
+ def update!(**args)
176
+ @display_name = args[:display_name] if args.key?(:display_name)
177
+ @parent_name = args[:parent_name] if args.key?(:parent_name)
178
+ @is_cluster = args[:is_cluster] if args.key?(:is_cluster)
179
+ @filter = args[:filter] if args.key?(:filter)
180
+ @name = args[:name] if args.key?(:name)
181
+ end
182
+ end
183
+
184
+ # The ListTimeSeries response.
185
+ class ListTimeSeriesResponse
186
+ include Google::Apis::Core::Hashable
187
+
188
+ # One or more time series that match the filter included in the request.
189
+ # Corresponds to the JSON property `timeSeries`
190
+ # @return [Array<Google::Apis::MonitoringV3::TimeSeries>]
191
+ attr_accessor :time_series
192
+
193
+ # If there are more results than have been returned, then this field is set to a
194
+ # non-empty value. To see the additional results, use that value as pageToken in
195
+ # the next call to this method.
196
+ # Corresponds to the JSON property `nextPageToken`
197
+ # @return [String]
198
+ attr_accessor :next_page_token
199
+
200
+ def initialize(**args)
201
+ update!(**args)
202
+ end
203
+
204
+ # Update properties of this object
205
+ def update!(**args)
206
+ @time_series = args[:time_series] if args.key?(:time_series)
207
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
208
+ end
209
+ end
210
+
211
+ # A single data point in a time series.
212
+ class Point
213
+ include Google::Apis::Core::Hashable
214
+
215
+ # A single strongly-typed value.
216
+ # Corresponds to the JSON property `value`
217
+ # @return [Google::Apis::MonitoringV3::TypedValue]
218
+ attr_accessor :value
219
+
220
+ # A time interval extending just after a start time through an end time. If the
221
+ # start time is the same as the end time, then the interval represents a single
222
+ # point in time.
223
+ # Corresponds to the JSON property `interval`
224
+ # @return [Google::Apis::MonitoringV3::TimeInterval]
225
+ attr_accessor :interval
226
+
227
+ def initialize(**args)
228
+ update!(**args)
229
+ end
230
+
231
+ # Update properties of this object
232
+ def update!(**args)
233
+ @value = args[:value] if args.key?(:value)
234
+ @interval = args[:interval] if args.key?(:interval)
235
+ end
236
+ end
237
+
238
+ # A single data point from a collectd-based plugin.
239
+ class CollectdValue
240
+ include Google::Apis::Core::Hashable
241
+
242
+ # A single strongly-typed value.
243
+ # Corresponds to the JSON property `value`
244
+ # @return [Google::Apis::MonitoringV3::TypedValue]
245
+ attr_accessor :value
246
+
247
+ # The data source for the collectd value. For example there are two data sources
248
+ # for network measurements: &quot;rx&quot; and &quot;tx&quot;.
249
+ # Corresponds to the JSON property `dataSourceName`
250
+ # @return [String]
251
+ attr_accessor :data_source_name
252
+
253
+ # The type of measurement.
254
+ # Corresponds to the JSON property `dataSourceType`
255
+ # @return [String]
256
+ attr_accessor :data_source_type
257
+
258
+ def initialize(**args)
259
+ update!(**args)
260
+ end
261
+
262
+ # Update properties of this object
263
+ def update!(**args)
264
+ @value = args[:value] if args.key?(:value)
265
+ @data_source_name = args[:data_source_name] if args.key?(:data_source_name)
266
+ @data_source_type = args[:data_source_type] if args.key?(:data_source_type)
267
+ end
268
+ end
269
+
270
+ # A collection of data points that describes the time-varying values of a metric.
271
+ # A time series is identified by a combination of a fully-specified monitored
272
+ # resource and a fully-specified metric.
273
+ class TimeSeries
274
+ include Google::Apis::Core::Hashable
275
+
276
+ # A specific metric identified by specifying values for all of the labels of a
277
+ # MetricDescriptor.
278
+ # Corresponds to the JSON property `metric`
279
+ # @return [Google::Apis::MonitoringV3::Metric]
280
+ attr_accessor :metric
281
+
282
+ # The data points of this time series. The order of the points is specified when
283
+ # you retrieve the time series.
284
+ # Corresponds to the JSON property `points`
285
+ # @return [Array<Google::Apis::MonitoringV3::Point>]
286
+ attr_accessor :points
287
+
288
+ # The value type of the time series. This can be different than the value type
289
+ # of the metric object if this time series is an alignment or reduction of other
290
+ # time series. When writing data to a time series, this field is optional, and,
291
+ # when specified, must match the value type of the metric descriptor. If a
292
+ # metric descriptor is auto-created, its value type will match this field.
293
+ # Corresponds to the JSON property `valueType`
294
+ # @return [String]
295
+ attr_accessor :value_type
296
+
297
+ # An object representing a resource that can be used for monitoring, logging,
298
+ # billing, or other purposes. Examples include virtual machine instances,
299
+ # databases, and storage devices such as disks. The type field identifies a
300
+ # MonitoredResourceDescriptor object that describes the resource's schema.
301
+ # Information in the labels field identifies the actual resource and its
302
+ # attributes according to the schema. For example, a particular Compute Engine
303
+ # VM instance could be represented by the following object, because the
304
+ # MonitoredResourceDescriptor for &quot;gce_instance&quot; has labels &quot;
305
+ # instance_id&quot; and &quot;zone&quot;:
306
+ # ` &quot;type&quot;: &quot;gce_instance&quot;,
307
+ # &quot;labels&quot;: ` &quot;instance_id&quot;: &quot;12345678901234&quot;,
308
+ # &quot;zone&quot;: &quot;us-central1-a&quot; ``
309
+ # Corresponds to the JSON property `resource`
310
+ # @return [Google::Apis::MonitoringV3::MonitoredResource]
311
+ attr_accessor :resource
312
+
313
+ # The metric kind of the time series. This can be different than the metric kind
314
+ # of the metric object if this time series is an alignment or reduction of other
315
+ # time series. When writing data to a time series, this field is optional, and,
316
+ # when specified, must match the metric kind of the metric descriptor. If a
317
+ # metric descriptor is auto-created, its metric kind will match this field.
318
+ # Corresponds to the JSON property `metricKind`
319
+ # @return [String]
320
+ attr_accessor :metric_kind
321
+
322
+ def initialize(**args)
323
+ update!(**args)
324
+ end
325
+
326
+ # Update properties of this object
327
+ def update!(**args)
328
+ @metric = args[:metric] if args.key?(:metric)
329
+ @points = args[:points] if args.key?(:points)
330
+ @value_type = args[:value_type] if args.key?(:value_type)
331
+ @resource = args[:resource] if args.key?(:resource)
332
+ @metric_kind = args[:metric_kind] if args.key?(:metric_kind)
333
+ end
334
+ end
335
+
336
+ # Defines a metric type and its schema.
337
+ class MetricDescriptor
338
+ include Google::Apis::Core::Hashable
339
+
340
+ # A detailed description of the metric, which can be used in documentation.
341
+ # Corresponds to the JSON property `description`
342
+ # @return [String]
343
+ attr_accessor :description
344
+
345
+ # The unit in which the metric value is reported. It is only applicable if the
346
+ # value_type is INT64, DOUBLE, or DISTRIBUTION. The supported units are a subset
347
+ # of The Unified Code for Units of Measure (http://unitsofmeasure.org/ucum.html)
348
+ # standard:Basic units (UNIT)
349
+ # bit bit
350
+ # By byte
351
+ # s second
352
+ # min minute
353
+ # h hour
354
+ # d dayPrefixes (PREFIX)
355
+ # k kilo (10**3)
356
+ # M mega (10**6)
357
+ # G giga (10**9)
358
+ # T tera (10**12)
359
+ # P peta (10**15)
360
+ # E exa (10**18)
361
+ # Z zetta (10**21)
362
+ # Y yotta (10**24)
363
+ # m milli (10**-3)
364
+ # u micro (10**-6)
365
+ # n nano (10**-9)
366
+ # p pico (10**-12)
367
+ # f femto (10**-15)
368
+ # a atto (10**-18)
369
+ # z zepto (10**-21)
370
+ # y yocto (10**-24)
371
+ # Ki kibi (2**10)
372
+ # Mi mebi (2**20)
373
+ # Gi gibi (2**30)
374
+ # Ti tebi (2**40)GrammarThe grammar includes the dimensionless unit 1, such as 1/
375
+ # s.The grammar also includes these connectors:
376
+ # / division (as an infix operator, e.g. 1/s).
377
+ # . multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit is
378
+ # as follows:
379
+ # Expression = Component ` &quot;.&quot; Component ` ` &quot;/&quot; Component `
380
+ # ;
381
+ # Component = [ PREFIX ] UNIT [ Annotation ]
382
+ # | Annotation
383
+ # | &quot;1&quot;
384
+ # ;
385
+ # Annotation = &quot;`&quot; NAME &quot;`&quot; ;
386
+ # Notes:
387
+ # Annotation is just a comment if it follows a UNIT and is equivalent to 1 if
388
+ # it is used alone. For examples, `requests`/s == 1/s, By`transmitted`/s == By/
389
+ # s.
390
+ # NAME is a sequence of non-blank printable ASCII characters not containing '`'
391
+ # or '`'.
392
+ # Corresponds to the JSON property `unit`
393
+ # @return [String]
394
+ attr_accessor :unit
395
+
396
+ # The set of labels that can be used to describe a specific instance of this
397
+ # metric type. For example, the compute.googleapis.com/instance/network/
398
+ # received_bytes_count metric type has a label, loadbalanced, that specifies
399
+ # whether the traffic was received through a load balanced IP address.
400
+ # Corresponds to the JSON property `labels`
401
+ # @return [Array<Google::Apis::MonitoringV3::LabelDescriptor>]
402
+ attr_accessor :labels
403
+
404
+ # Whether the metric records instantaneous values, changes to a value, etc. Some
405
+ # combinations of metric_kind and value_type might not be supported.
406
+ # Corresponds to the JSON property `metricKind`
407
+ # @return [String]
408
+ attr_accessor :metric_kind
409
+
410
+ # Whether the measurement is an integer, a floating-point number, etc. Some
411
+ # combinations of metric_kind and value_type might not be supported.
412
+ # Corresponds to the JSON property `valueType`
413
+ # @return [String]
414
+ attr_accessor :value_type
415
+
416
+ # A concise name for the metric, which can be displayed in user interfaces. Use
417
+ # sentence case without an ending period, for example "Request count".
418
+ # Corresponds to the JSON property `displayName`
419
+ # @return [String]
420
+ attr_accessor :display_name
421
+
422
+ # Resource name. The format of the name may vary between different
423
+ # implementations. For examples:
424
+ # projects/`project_id`/metricDescriptors/`type=**`
425
+ # metricDescriptors/`type=**`
426
+ # Corresponds to the JSON property `name`
427
+ # @return [String]
428
+ attr_accessor :name
429
+
430
+ # The metric type including a DNS name prefix, for example &quot;compute.
431
+ # googleapis.com/instance/cpu/utilization&quot;. Metric types should use a
432
+ # natural hierarchical grouping such as the following:
433
+ # compute.googleapis.com/instance/cpu/utilization
434
+ # compute.googleapis.com/instance/disk/read_ops_count
435
+ # compute.googleapis.com/instance/network/received_bytes_count
436
+ # Note that if the metric type changes, the monitoring data will be discontinued,
437
+ # and anything depends on it will break, such as monitoring dashboards,
438
+ # alerting rules and quota limits. Therefore, once a metric has been published,
439
+ # its type should be immutable.
440
+ # Corresponds to the JSON property `type`
441
+ # @return [String]
442
+ attr_accessor :type
443
+
444
+ def initialize(**args)
445
+ update!(**args)
446
+ end
447
+
448
+ # Update properties of this object
449
+ def update!(**args)
450
+ @description = args[:description] if args.key?(:description)
451
+ @unit = args[:unit] if args.key?(:unit)
452
+ @labels = args[:labels] if args.key?(:labels)
453
+ @metric_kind = args[:metric_kind] if args.key?(:metric_kind)
454
+ @value_type = args[:value_type] if args.key?(:value_type)
455
+ @display_name = args[:display_name] if args.key?(:display_name)
456
+ @name = args[:name] if args.key?(:name)
457
+ @type = args[:type] if args.key?(:type)
458
+ end
459
+ end
460
+
461
+ # Specify a sequence of buckets that have a width that is proportional to the
462
+ # value of the lower bound. Each bucket represents a constant relative
463
+ # uncertainty on a specific value in the bucket.Defines num_finite_buckets + 2 (=
464
+ # N) buckets with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1)
465
+ # : scale * (growth_factor ^ i). Lower bound (1 &lt;= i &lt; N): scale * (
466
+ # growth_factor ^ (i - 1)).
467
+ class Exponential
468
+ include Google::Apis::Core::Hashable
469
+
470
+ # Must be greater than 1.
471
+ # Corresponds to the JSON property `growthFactor`
472
+ # @return [Float]
473
+ attr_accessor :growth_factor
474
+
475
+ # Must be greater than 0.
476
+ # Corresponds to the JSON property `scale`
477
+ # @return [Float]
478
+ attr_accessor :scale
479
+
480
+ # Must be greater than 0.
481
+ # Corresponds to the JSON property `numFiniteBuckets`
482
+ # @return [Fixnum]
483
+ attr_accessor :num_finite_buckets
484
+
485
+ def initialize(**args)
486
+ update!(**args)
487
+ end
488
+
489
+ # Update properties of this object
490
+ def update!(**args)
491
+ @growth_factor = args[:growth_factor] if args.key?(:growth_factor)
492
+ @scale = args[:scale] if args.key?(:scale)
493
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
494
+ end
495
+ end
496
+
497
+ # A set of buckets with arbitrary widths.Defines size(bounds) + 1 (= N) buckets
498
+ # with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): boundsi
499
+ # Lower bound (1 &lt;= i &lt; N); boundsi - 1There must be at least one element
500
+ # in bounds. If bounds has only one element, there are no finite buckets, and
501
+ # that single element is the common boundary of the overflow and underflow
502
+ # buckets.
503
+ class Explicit
504
+ include Google::Apis::Core::Hashable
505
+
506
+ # The values must be monotonically increasing.
507
+ # Corresponds to the JSON property `bounds`
508
+ # @return [Array<Float>]
509
+ attr_accessor :bounds
510
+
511
+ def initialize(**args)
512
+ update!(**args)
513
+ end
514
+
515
+ # Update properties of this object
516
+ def update!(**args)
517
+ @bounds = args[:bounds] if args.key?(:bounds)
518
+ end
519
+ end
520
+
521
+ # Specify a sequence of buckets that all have the same width (except overflow
522
+ # and underflow). Each bucket represents a constant absolute uncertainty on the
523
+ # specific value in the bucket.Defines num_finite_buckets + 2 (= N) buckets with
524
+ # these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): offset + (
525
+ # width * i). Lower bound (1 &lt;= i &lt; N): offset + (width * (i - 1)).
526
+ class Linear
527
+ include Google::Apis::Core::Hashable
528
+
529
+ # Must be greater than 0.
530
+ # Corresponds to the JSON property `width`
531
+ # @return [Float]
532
+ attr_accessor :width
533
+
534
+ # Lower bound of the first bucket.
535
+ # Corresponds to the JSON property `offset`
536
+ # @return [Float]
537
+ attr_accessor :offset
538
+
539
+ # Must be greater than 0.
540
+ # Corresponds to the JSON property `numFiniteBuckets`
541
+ # @return [Fixnum]
542
+ attr_accessor :num_finite_buckets
543
+
544
+ def initialize(**args)
545
+ update!(**args)
546
+ end
547
+
548
+ # Update properties of this object
549
+ def update!(**args)
550
+ @width = args[:width] if args.key?(:width)
551
+ @offset = args[:offset] if args.key?(:offset)
552
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
553
+ end
554
+ end
555
+
556
+ # A collection of data points sent from a collectd-based plugin. See the
557
+ # collectd documentation for more information.
558
+ class CollectdPayload
559
+ include Google::Apis::Core::Hashable
560
+
561
+ # The end time of the interval.
562
+ # Corresponds to the JSON property `endTime`
563
+ # @return [String]
564
+ attr_accessor :end_time
565
+
566
+ # The measurement metadata. Example: &quot;process_id&quot; -&gt; 12345
567
+ # Corresponds to the JSON property `metadata`
568
+ # @return [Hash<String,Google::Apis::MonitoringV3::TypedValue>]
569
+ attr_accessor :metadata
570
+
571
+ # The measured values during this time interval. Each value must have a
572
+ # different dataSourceName.
573
+ # Corresponds to the JSON property `values`
574
+ # @return [Array<Google::Apis::MonitoringV3::CollectdValue>]
575
+ attr_accessor :values
576
+
577
+ # The instance name of the plugin Example: &quot;hdcl&quot;.
578
+ # Corresponds to the JSON property `pluginInstance`
579
+ # @return [String]
580
+ attr_accessor :plugin_instance
581
+
582
+ # The start time of the interval.
583
+ # Corresponds to the JSON property `startTime`
584
+ # @return [String]
585
+ attr_accessor :start_time
586
+
587
+ # The measurement type instance. Example: &quot;used&quot;.
588
+ # Corresponds to the JSON property `typeInstance`
589
+ # @return [String]
590
+ attr_accessor :type_instance
591
+
592
+ # The measurement type. Example: &quot;memory&quot;.
593
+ # Corresponds to the JSON property `type`
594
+ # @return [String]
595
+ attr_accessor :type
596
+
597
+ # The name of the plugin. Example: &quot;disk&quot;.
598
+ # Corresponds to the JSON property `plugin`
599
+ # @return [String]
600
+ attr_accessor :plugin
601
+
602
+ def initialize(**args)
603
+ update!(**args)
604
+ end
605
+
606
+ # Update properties of this object
607
+ def update!(**args)
608
+ @end_time = args[:end_time] if args.key?(:end_time)
609
+ @metadata = args[:metadata] if args.key?(:metadata)
610
+ @values = args[:values] if args.key?(:values)
611
+ @plugin_instance = args[:plugin_instance] if args.key?(:plugin_instance)
612
+ @start_time = args[:start_time] if args.key?(:start_time)
613
+ @type_instance = args[:type_instance] if args.key?(:type_instance)
614
+ @type = args[:type] if args.key?(:type)
615
+ @plugin = args[:plugin] if args.key?(:plugin)
616
+ end
617
+ end
618
+
619
+ # The ListMetricDescriptors response.
620
+ class ListMetricDescriptorsResponse
621
+ include Google::Apis::Core::Hashable
622
+
623
+ # The metric descriptors that are available to the project and that match the
624
+ # value of filter, if present.
625
+ # Corresponds to the JSON property `metricDescriptors`
626
+ # @return [Array<Google::Apis::MonitoringV3::MetricDescriptor>]
627
+ attr_accessor :metric_descriptors
628
+
629
+ # If there are more results than have been returned, then this field is set to a
630
+ # non-empty value. To see the additional results, use that value as pageToken in
631
+ # the next call to this method.
632
+ # Corresponds to the JSON property `nextPageToken`
633
+ # @return [String]
634
+ attr_accessor :next_page_token
635
+
636
+ def initialize(**args)
637
+ update!(**args)
638
+ end
639
+
640
+ # Update properties of this object
641
+ def update!(**args)
642
+ @metric_descriptors = args[:metric_descriptors] if args.key?(:metric_descriptors)
643
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
644
+ end
645
+ end
646
+
647
+ # Distribution contains summary statistics for a population of values and,
648
+ # optionally, a histogram representing the distribution of those values across a
649
+ # specified set of histogram buckets.The summary statistics are the count, mean,
650
+ # sum of the squared deviation from the mean, the minimum, and the maximum of
651
+ # the set of population of values.The histogram is based on a sequence of
652
+ # buckets and gives a count of values that fall into each bucket. The boundaries
653
+ # of the buckets are given either explicitly or by specifying parameters for a
654
+ # method of computing them (buckets of fixed width or buckets of exponentially
655
+ # increasing width).Although it is not forbidden, it is generally a bad idea to
656
+ # include non-finite values (infinities or NaNs) in the population of values, as
657
+ # this will render the mean and sum_of_squared_deviation fields meaningless.
658
+ class Distribution
659
+ include Google::Apis::Core::Hashable
660
+
661
+ # If bucket_options is given, then the sum of the values in bucket_counts must
662
+ # equal the value in count. If bucket_options is not given, no bucket_counts
663
+ # fields may be given.Bucket counts are given in order under the numbering
664
+ # scheme described above (the underflow bucket has number 0; the finite buckets,
665
+ # if any, have numbers 1 through N-2; the overflow bucket has number N-1).The
666
+ # size of bucket_counts must be no greater than N as defined in bucket_options.
667
+ # Any suffix of trailing zero bucket_count fields may be omitted.
668
+ # Corresponds to the JSON property `bucketCounts`
669
+ # @return [Array<String>]
670
+ attr_accessor :bucket_counts
671
+
672
+ # A Distribution may optionally contain a histogram of the values in the
673
+ # population. The histogram is given in bucket_counts as counts of values that
674
+ # fall into one of a sequence of non-overlapping buckets. The sequence of
675
+ # buckets is described by bucket_options.A bucket specifies an inclusive lower
676
+ # bound and exclusive upper bound for the values that are counted for that
677
+ # bucket. The upper bound of a bucket is strictly greater than the lower bound.
678
+ # The sequence of N buckets for a Distribution consists of an underflow bucket (
679
+ # number 0), zero or more finite buckets (number 1 through N - 2) and an
680
+ # overflow bucket (number N - 1). The buckets are contiguous: the lower bound of
681
+ # bucket i (i &gt; 0) is the same as the upper bound of bucket i - 1. The
682
+ # buckets span the whole range of finite values: lower bound of the underflow
683
+ # bucket is -infinity and the upper bound of the overflow bucket is +infinity.
684
+ # The finite buckets are so-called because both bounds are finite.BucketOptions
685
+ # describes bucket boundaries in one of three ways. Two describe the boundaries
686
+ # by giving parameters for a formula to generate boundaries and one gives the
687
+ # bucket boundaries explicitly.If bucket_options is not given, then no
688
+ # bucket_counts may be given.
689
+ # Corresponds to the JSON property `bucketOptions`
690
+ # @return [Google::Apis::MonitoringV3::BucketOptions]
691
+ attr_accessor :bucket_options
692
+
693
+ # The number of values in the population. Must be non-negative.
694
+ # Corresponds to the JSON property `count`
695
+ # @return [String]
696
+ attr_accessor :count
697
+
698
+ # The sum of squared deviations from the mean of the values in the population.
699
+ # For values x_i this is:
700
+ # Sum[i=1..n]((x_i - mean)^2)
701
+ # Knuth, "The Art of Computer Programming", Vol. 2, page 323, 3rd edition
702
+ # describes Welford's method for accumulating this sum in one pass.If count is
703
+ # zero then this field must be zero.
704
+ # Corresponds to the JSON property `sumOfSquaredDeviation`
705
+ # @return [Float]
706
+ attr_accessor :sum_of_squared_deviation
707
+
708
+ # The arithmetic mean of the values in the population. If count is zero then
709
+ # this field must be zero.
710
+ # Corresponds to the JSON property `mean`
711
+ # @return [Float]
712
+ attr_accessor :mean
713
+
714
+ # The range of the population values.
715
+ # Corresponds to the JSON property `range`
716
+ # @return [Google::Apis::MonitoringV3::Range]
717
+ attr_accessor :range
718
+
719
+ def initialize(**args)
720
+ update!(**args)
721
+ end
722
+
723
+ # Update properties of this object
724
+ def update!(**args)
725
+ @bucket_counts = args[:bucket_counts] if args.key?(:bucket_counts)
726
+ @bucket_options = args[:bucket_options] if args.key?(:bucket_options)
727
+ @count = args[:count] if args.key?(:count)
728
+ @sum_of_squared_deviation = args[:sum_of_squared_deviation] if args.key?(:sum_of_squared_deviation)
729
+ @mean = args[:mean] if args.key?(:mean)
730
+ @range = args[:range] if args.key?(:range)
731
+ end
732
+ end
733
+
734
+ # An object representing a resource that can be used for monitoring, logging,
735
+ # billing, or other purposes. Examples include virtual machine instances,
736
+ # databases, and storage devices such as disks. The type field identifies a
737
+ # MonitoredResourceDescriptor object that describes the resource's schema.
738
+ # Information in the labels field identifies the actual resource and its
739
+ # attributes according to the schema. For example, a particular Compute Engine
740
+ # VM instance could be represented by the following object, because the
741
+ # MonitoredResourceDescriptor for &quot;gce_instance&quot; has labels &quot;
742
+ # instance_id&quot; and &quot;zone&quot;:
743
+ # ` &quot;type&quot;: &quot;gce_instance&quot;,
744
+ # &quot;labels&quot;: ` &quot;instance_id&quot;: &quot;12345678901234&quot;,
745
+ # &quot;zone&quot;: &quot;us-central1-a&quot; ``
746
+ class MonitoredResource
747
+ include Google::Apis::Core::Hashable
748
+
749
+ # Required. Values for all of the labels listed in the associated monitored
750
+ # resource descriptor. For example, Cloud SQL databases use the labels &quot;
751
+ # database_id&quot; and &quot;zone&quot;.
752
+ # Corresponds to the JSON property `labels`
753
+ # @return [Hash<String,String>]
754
+ attr_accessor :labels
755
+
756
+ # Required. The monitored resource type. This field must match the type field of
757
+ # a MonitoredResourceDescriptor object. For example, the type of a Cloud SQL
758
+ # database is &quot;cloudsql_database&quot;.
759
+ # Corresponds to the JSON property `type`
760
+ # @return [String]
761
+ attr_accessor :type
762
+
763
+ def initialize(**args)
764
+ update!(**args)
765
+ end
766
+
767
+ # Update properties of this object
768
+ def update!(**args)
769
+ @labels = args[:labels] if args.key?(:labels)
770
+ @type = args[:type] if args.key?(:type)
771
+ end
772
+ end
773
+
774
+ # A description of a label.
775
+ class LabelDescriptor
776
+ include Google::Apis::Core::Hashable
777
+
778
+ # A human-readable description for the label.
779
+ # Corresponds to the JSON property `description`
780
+ # @return [String]
781
+ attr_accessor :description
782
+
783
+ # The type of data that can be assigned to the label.
784
+ # Corresponds to the JSON property `valueType`
785
+ # @return [String]
786
+ attr_accessor :value_type
787
+
788
+ # The label key.
789
+ # Corresponds to the JSON property `key`
790
+ # @return [String]
791
+ attr_accessor :key
792
+
793
+ def initialize(**args)
794
+ update!(**args)
795
+ end
796
+
797
+ # Update properties of this object
798
+ def update!(**args)
799
+ @description = args[:description] if args.key?(:description)
800
+ @value_type = args[:value_type] if args.key?(:value_type)
801
+ @key = args[:key] if args.key?(:key)
802
+ end
803
+ end
804
+
805
+ # An object that describes the schema of a MonitoredResource object using a type
806
+ # name and a set of labels. For example, the monitored resource descriptor for
807
+ # Google Compute Engine VM instances has a type of &quot;gce_instance&quot; and
808
+ # specifies the use of the labels &quot;instance_id&quot; and &quot;zone&quot;
809
+ # to identify particular VM instances.Different APIs can support different
810
+ # monitored resource types. APIs generally provide a list method that returns
811
+ # the monitored resource descriptors used by the API.
812
+ class MonitoredResourceDescriptor
813
+ include Google::Apis::Core::Hashable
814
+
815
+ # Optional. A concise name for the monitored resource type that might be
816
+ # displayed in user interfaces. It should be a Title Cased Noun Phrase, without
817
+ # any article or other determiners. For example, &quot;Google Cloud SQL Database&
818
+ # quot;.
819
+ # Corresponds to the JSON property `displayName`
820
+ # @return [String]
821
+ attr_accessor :display_name
822
+
823
+ # Optional. A detailed description of the monitored resource type that might be
824
+ # used in documentation.
825
+ # Corresponds to the JSON property `description`
826
+ # @return [String]
827
+ attr_accessor :description
828
+
829
+ # Required. A set of labels used to describe instances of this monitored
830
+ # resource type. For example, an individual Google Cloud SQL database is
831
+ # identified by values for the labels &quot;database_id&quot; and &quot;zone&
832
+ # quot;.
833
+ # Corresponds to the JSON property `labels`
834
+ # @return [Array<Google::Apis::MonitoringV3::LabelDescriptor>]
835
+ attr_accessor :labels
836
+
837
+ # Required. The monitored resource type. For example, the type &quot;
838
+ # cloudsql_database&quot; represents databases in Google Cloud SQL. The maximum
839
+ # length of this value is 256 characters.
840
+ # Corresponds to the JSON property `type`
841
+ # @return [String]
842
+ attr_accessor :type
843
+
844
+ # Optional. The resource name of the monitored resource descriptor: &quot;
845
+ # projects/`project_id`/monitoredResourceDescriptors/`type`&quot; where `type`
846
+ # is the value of the type field in this object and `project_id` is a project ID
847
+ # that provides API-specific context for accessing the type. APIs that do not
848
+ # use project information can use the resource name format &quot;
849
+ # monitoredResourceDescriptors/`type`&quot;.
850
+ # Corresponds to the JSON property `name`
851
+ # @return [String]
852
+ attr_accessor :name
853
+
854
+ def initialize(**args)
855
+ update!(**args)
856
+ end
857
+
858
+ # Update properties of this object
859
+ def update!(**args)
860
+ @display_name = args[:display_name] if args.key?(:display_name)
861
+ @description = args[:description] if args.key?(:description)
862
+ @labels = args[:labels] if args.key?(:labels)
863
+ @type = args[:type] if args.key?(:type)
864
+ @name = args[:name] if args.key?(:name)
865
+ end
866
+ end
867
+
868
+ # A single strongly-typed value.
869
+ class TypedValue
870
+ include Google::Apis::Core::Hashable
871
+
872
+ # A Boolean value: true or false.
873
+ # Corresponds to the JSON property `boolValue`
874
+ # @return [Boolean]
875
+ attr_accessor :bool_value
876
+ alias_method :bool_value?, :bool_value
877
+
878
+ # A variable-length string value.
879
+ # Corresponds to the JSON property `stringValue`
880
+ # @return [String]
881
+ attr_accessor :string_value
882
+
883
+ # A 64-bit integer. Its range is approximately &plusmn;9.2x10<sup>18</sup>.
884
+ # Corresponds to the JSON property `int64Value`
885
+ # @return [String]
886
+ attr_accessor :int64_value
887
+
888
+ # A 64-bit double-precision floating-point number. Its magnitude is
889
+ # approximately &plusmn;10<sup>&plusmn;300</sup> and it has 16 significant
890
+ # digits of precision.
891
+ # Corresponds to the JSON property `doubleValue`
892
+ # @return [Float]
893
+ attr_accessor :double_value
894
+
895
+ # Distribution contains summary statistics for a population of values and,
896
+ # optionally, a histogram representing the distribution of those values across a
897
+ # specified set of histogram buckets.The summary statistics are the count, mean,
898
+ # sum of the squared deviation from the mean, the minimum, and the maximum of
899
+ # the set of population of values.The histogram is based on a sequence of
900
+ # buckets and gives a count of values that fall into each bucket. The boundaries
901
+ # of the buckets are given either explicitly or by specifying parameters for a
902
+ # method of computing them (buckets of fixed width or buckets of exponentially
903
+ # increasing width).Although it is not forbidden, it is generally a bad idea to
904
+ # include non-finite values (infinities or NaNs) in the population of values, as
905
+ # this will render the mean and sum_of_squared_deviation fields meaningless.
906
+ # Corresponds to the JSON property `distributionValue`
907
+ # @return [Google::Apis::MonitoringV3::Distribution]
908
+ attr_accessor :distribution_value
909
+
910
+ def initialize(**args)
911
+ update!(**args)
912
+ end
913
+
914
+ # Update properties of this object
915
+ def update!(**args)
916
+ @bool_value = args[:bool_value] if args.key?(:bool_value)
917
+ @string_value = args[:string_value] if args.key?(:string_value)
918
+ @int64_value = args[:int64_value] if args.key?(:int64_value)
919
+ @double_value = args[:double_value] if args.key?(:double_value)
920
+ @distribution_value = args[:distribution_value] if args.key?(:distribution_value)
921
+ end
922
+ end
923
+
924
+ # The ListMonitoredResourcDescriptors response.
925
+ class ListMonitoredResourceDescriptorsResponse
926
+ include Google::Apis::Core::Hashable
927
+
928
+ # If there are more results than have been returned, then this field is set to a
929
+ # non-empty value. To see the additional results, use that value as pageToken in
930
+ # the next call to this method.
931
+ # Corresponds to the JSON property `nextPageToken`
932
+ # @return [String]
933
+ attr_accessor :next_page_token
934
+
935
+ # The monitored resource descriptors that are available to this project and that
936
+ # match filter, if present.
937
+ # Corresponds to the JSON property `resourceDescriptors`
938
+ # @return [Array<Google::Apis::MonitoringV3::MonitoredResourceDescriptor>]
939
+ attr_accessor :resource_descriptors
940
+
941
+ def initialize(**args)
942
+ update!(**args)
943
+ end
944
+
945
+ # Update properties of this object
946
+ def update!(**args)
947
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
948
+ @resource_descriptors = args[:resource_descriptors] if args.key?(:resource_descriptors)
949
+ end
950
+ end
951
+
952
+ # A single field of a message type.
953
+ class Field
954
+ include Google::Apis::Core::Hashable
955
+
956
+ # The string value of the default value of this field. Proto2 syntax only.
957
+ # Corresponds to the JSON property `defaultValue`
958
+ # @return [String]
959
+ attr_accessor :default_value
960
+
961
+ # The field JSON name.
962
+ # Corresponds to the JSON property `jsonName`
963
+ # @return [String]
964
+ attr_accessor :json_name
965
+
966
+ # The protocol buffer options.
967
+ # Corresponds to the JSON property `options`
968
+ # @return [Array<Google::Apis::MonitoringV3::Option>]
969
+ attr_accessor :options
970
+
971
+ # The index of the field type in Type.oneofs, for message or enumeration types.
972
+ # The first type has index 1; zero means the type is not in the list.
973
+ # Corresponds to the JSON property `oneofIndex`
974
+ # @return [Fixnum]
975
+ attr_accessor :oneof_index
976
+
977
+ # The field cardinality.
978
+ # Corresponds to the JSON property `cardinality`
979
+ # @return [String]
980
+ attr_accessor :cardinality
981
+
982
+ # The field type URL, without the scheme, for message or enumeration types.
983
+ # Example: &quot;type.googleapis.com/google.protobuf.Timestamp&quot;.
984
+ # Corresponds to the JSON property `typeUrl`
985
+ # @return [String]
986
+ attr_accessor :type_url
987
+
988
+ # The field name.
989
+ # Corresponds to the JSON property `name`
990
+ # @return [String]
991
+ attr_accessor :name
992
+
993
+ # Whether to use alternative packed wire representation.
994
+ # Corresponds to the JSON property `packed`
995
+ # @return [Boolean]
996
+ attr_accessor :packed
997
+ alias_method :packed?, :packed
998
+
999
+ # The field number.
1000
+ # Corresponds to the JSON property `number`
1001
+ # @return [Fixnum]
1002
+ attr_accessor :number
1003
+
1004
+ # The field type.
1005
+ # Corresponds to the JSON property `kind`
1006
+ # @return [String]
1007
+ attr_accessor :kind
1008
+
1009
+ def initialize(**args)
1010
+ update!(**args)
1011
+ end
1012
+
1013
+ # Update properties of this object
1014
+ def update!(**args)
1015
+ @default_value = args[:default_value] if args.key?(:default_value)
1016
+ @json_name = args[:json_name] if args.key?(:json_name)
1017
+ @options = args[:options] if args.key?(:options)
1018
+ @oneof_index = args[:oneof_index] if args.key?(:oneof_index)
1019
+ @cardinality = args[:cardinality] if args.key?(:cardinality)
1020
+ @type_url = args[:type_url] if args.key?(:type_url)
1021
+ @name = args[:name] if args.key?(:name)
1022
+ @packed = args[:packed] if args.key?(:packed)
1023
+ @number = args[:number] if args.key?(:number)
1024
+ @kind = args[:kind] if args.key?(:kind)
1025
+ end
1026
+ end
1027
+
1028
+ # A protocol buffer option, which can be attached to a message, field,
1029
+ # enumeration, etc.
1030
+ class Option
1031
+ include Google::Apis::Core::Hashable
1032
+
1033
+ # The option's value. For example, &quot;com.google.protobuf&quot;.
1034
+ # Corresponds to the JSON property `value`
1035
+ # @return [Hash<String,Object>]
1036
+ attr_accessor :value
1037
+
1038
+ # The option's name. For example, &quot;java_package&quot;.
1039
+ # Corresponds to the JSON property `name`
1040
+ # @return [String]
1041
+ attr_accessor :name
1042
+
1043
+ def initialize(**args)
1044
+ update!(**args)
1045
+ end
1046
+
1047
+ # Update properties of this object
1048
+ def update!(**args)
1049
+ @value = args[:value] if args.key?(:value)
1050
+ @name = args[:name] if args.key?(:name)
1051
+ end
1052
+ end
1053
+
1054
+ # A generic empty message that you can re-use to avoid defining duplicated empty
1055
+ # messages in your APIs. A typical example is to use it as the request or the
1056
+ # response type of an API method. For instance:
1057
+ # service Foo `
1058
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1059
+ # `
1060
+ # The JSON representation for Empty is empty JSON object ``.
1061
+ class Empty
1062
+ include Google::Apis::Core::Hashable
1063
+
1064
+ def initialize(**args)
1065
+ update!(**args)
1066
+ end
1067
+
1068
+ # Update properties of this object
1069
+ def update!(**args)
1070
+ end
1071
+ end
1072
+
1073
+ # SourceContext represents information about the source of a protobuf element,
1074
+ # like the file in which it is defined.
1075
+ class SourceContext
1076
+ include Google::Apis::Core::Hashable
1077
+
1078
+ # The path-qualified name of the .proto file that contained the associated
1079
+ # protobuf element. For example: &quot;google/protobuf/source_context.proto&quot;
1080
+ # .
1081
+ # Corresponds to the JSON property `fileName`
1082
+ # @return [String]
1083
+ attr_accessor :file_name
1084
+
1085
+ def initialize(**args)
1086
+ update!(**args)
1087
+ end
1088
+
1089
+ # Update properties of this object
1090
+ def update!(**args)
1091
+ @file_name = args[:file_name] if args.key?(:file_name)
1092
+ end
1093
+ end
1094
+
1095
+ # The range of the population values.
1096
+ class Range
1097
+ include Google::Apis::Core::Hashable
1098
+
1099
+ # The maximum of the population values.
1100
+ # Corresponds to the JSON property `max`
1101
+ # @return [Float]
1102
+ attr_accessor :max
1103
+
1104
+ # The minimum of the population values.
1105
+ # Corresponds to the JSON property `min`
1106
+ # @return [Float]
1107
+ attr_accessor :min
1108
+
1109
+ def initialize(**args)
1110
+ update!(**args)
1111
+ end
1112
+
1113
+ # Update properties of this object
1114
+ def update!(**args)
1115
+ @max = args[:max] if args.key?(:max)
1116
+ @min = args[:min] if args.key?(:min)
1117
+ end
1118
+ end
1119
+
1120
+ # The CreateTimeSeries request.
1121
+ class CreateTimeSeriesRequest
1122
+ include Google::Apis::Core::Hashable
1123
+
1124
+ # The new data to be added to a list of time series. Adds at most one data point
1125
+ # to each of several time series. The new data point must be more recent than
1126
+ # any other point in its time series. Each TimeSeries value must fully specify a
1127
+ # unique time series by supplying all label values for the metric and the
1128
+ # monitored resource.
1129
+ # Corresponds to the JSON property `timeSeries`
1130
+ # @return [Array<Google::Apis::MonitoringV3::TimeSeries>]
1131
+ attr_accessor :time_series
1132
+
1133
+ def initialize(**args)
1134
+ update!(**args)
1135
+ end
1136
+
1137
+ # Update properties of this object
1138
+ def update!(**args)
1139
+ @time_series = args[:time_series] if args.key?(:time_series)
1140
+ end
1141
+ end
1142
+
1143
+ # A Distribution may optionally contain a histogram of the values in the
1144
+ # population. The histogram is given in bucket_counts as counts of values that
1145
+ # fall into one of a sequence of non-overlapping buckets. The sequence of
1146
+ # buckets is described by bucket_options.A bucket specifies an inclusive lower
1147
+ # bound and exclusive upper bound for the values that are counted for that
1148
+ # bucket. The upper bound of a bucket is strictly greater than the lower bound.
1149
+ # The sequence of N buckets for a Distribution consists of an underflow bucket (
1150
+ # number 0), zero or more finite buckets (number 1 through N - 2) and an
1151
+ # overflow bucket (number N - 1). The buckets are contiguous: the lower bound of
1152
+ # bucket i (i &gt; 0) is the same as the upper bound of bucket i - 1. The
1153
+ # buckets span the whole range of finite values: lower bound of the underflow
1154
+ # bucket is -infinity and the upper bound of the overflow bucket is +infinity.
1155
+ # The finite buckets are so-called because both bounds are finite.BucketOptions
1156
+ # describes bucket boundaries in one of three ways. Two describe the boundaries
1157
+ # by giving parameters for a formula to generate boundaries and one gives the
1158
+ # bucket boundaries explicitly.If bucket_options is not given, then no
1159
+ # bucket_counts may be given.
1160
+ class BucketOptions
1161
+ include Google::Apis::Core::Hashable
1162
+
1163
+ # A set of buckets with arbitrary widths.Defines size(bounds) + 1 (= N) buckets
1164
+ # with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): boundsi
1165
+ # Lower bound (1 &lt;= i &lt; N); boundsi - 1There must be at least one element
1166
+ # in bounds. If bounds has only one element, there are no finite buckets, and
1167
+ # that single element is the common boundary of the overflow and underflow
1168
+ # buckets.
1169
+ # Corresponds to the JSON property `explicitBuckets`
1170
+ # @return [Google::Apis::MonitoringV3::Explicit]
1171
+ attr_accessor :explicit_buckets
1172
+
1173
+ # Specify a sequence of buckets that have a width that is proportional to the
1174
+ # value of the lower bound. Each bucket represents a constant relative
1175
+ # uncertainty on a specific value in the bucket.Defines num_finite_buckets + 2 (=
1176
+ # N) buckets with these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1)
1177
+ # : scale * (growth_factor ^ i). Lower bound (1 &lt;= i &lt; N): scale * (
1178
+ # growth_factor ^ (i - 1)).
1179
+ # Corresponds to the JSON property `exponentialBuckets`
1180
+ # @return [Google::Apis::MonitoringV3::Exponential]
1181
+ attr_accessor :exponential_buckets
1182
+
1183
+ # Specify a sequence of buckets that all have the same width (except overflow
1184
+ # and underflow). Each bucket represents a constant absolute uncertainty on the
1185
+ # specific value in the bucket.Defines num_finite_buckets + 2 (= N) buckets with
1186
+ # these boundaries for bucket i:Upper bound (0 &lt;= i &lt; N-1): offset + (
1187
+ # width * i). Lower bound (1 &lt;= i &lt; N): offset + (width * (i - 1)).
1188
+ # Corresponds to the JSON property `linearBuckets`
1189
+ # @return [Google::Apis::MonitoringV3::Linear]
1190
+ attr_accessor :linear_buckets
1191
+
1192
+ def initialize(**args)
1193
+ update!(**args)
1194
+ end
1195
+
1196
+ # Update properties of this object
1197
+ def update!(**args)
1198
+ @explicit_buckets = args[:explicit_buckets] if args.key?(:explicit_buckets)
1199
+ @exponential_buckets = args[:exponential_buckets] if args.key?(:exponential_buckets)
1200
+ @linear_buckets = args[:linear_buckets] if args.key?(:linear_buckets)
1201
+ end
1202
+ end
1203
+
1204
+ # The CreateCollectdTimeSeries request.
1205
+ class CreateCollectdTimeSeriesRequest
1206
+ include Google::Apis::Core::Hashable
1207
+
1208
+ # The collectd payloads representing the time series data. You must not include
1209
+ # more than a single point for each time series, so no two payloads can have the
1210
+ # same values for all of the fields plugin, plugin_instance, type, and
1211
+ # type_instance.
1212
+ # Corresponds to the JSON property `collectdPayloads`
1213
+ # @return [Array<Google::Apis::MonitoringV3::CollectdPayload>]
1214
+ attr_accessor :collectd_payloads
1215
+
1216
+ # The version of collectd that collected the data. Example: &quot;5.3.0-192.el6&
1217
+ # quot;.
1218
+ # Corresponds to the JSON property `collectdVersion`
1219
+ # @return [String]
1220
+ attr_accessor :collectd_version
1221
+
1222
+ # An object representing a resource that can be used for monitoring, logging,
1223
+ # billing, or other purposes. Examples include virtual machine instances,
1224
+ # databases, and storage devices such as disks. The type field identifies a
1225
+ # MonitoredResourceDescriptor object that describes the resource's schema.
1226
+ # Information in the labels field identifies the actual resource and its
1227
+ # attributes according to the schema. For example, a particular Compute Engine
1228
+ # VM instance could be represented by the following object, because the
1229
+ # MonitoredResourceDescriptor for &quot;gce_instance&quot; has labels &quot;
1230
+ # instance_id&quot; and &quot;zone&quot;:
1231
+ # ` &quot;type&quot;: &quot;gce_instance&quot;,
1232
+ # &quot;labels&quot;: ` &quot;instance_id&quot;: &quot;12345678901234&quot;,
1233
+ # &quot;zone&quot;: &quot;us-central1-a&quot; ``
1234
+ # Corresponds to the JSON property `resource`
1235
+ # @return [Google::Apis::MonitoringV3::MonitoredResource]
1236
+ attr_accessor :resource
1237
+
1238
+ def initialize(**args)
1239
+ update!(**args)
1240
+ end
1241
+
1242
+ # Update properties of this object
1243
+ def update!(**args)
1244
+ @collectd_payloads = args[:collectd_payloads] if args.key?(:collectd_payloads)
1245
+ @collectd_version = args[:collectd_version] if args.key?(:collectd_version)
1246
+ @resource = args[:resource] if args.key?(:resource)
1247
+ end
1248
+ end
1249
+
1250
+ # A protocol buffer message type.
1251
+ class Type
1252
+ include Google::Apis::Core::Hashable
1253
+
1254
+ # The list of types appearing in oneof definitions in this type.
1255
+ # Corresponds to the JSON property `oneofs`
1256
+ # @return [Array<String>]
1257
+ attr_accessor :oneofs
1258
+
1259
+ # The protocol buffer options.
1260
+ # Corresponds to the JSON property `options`
1261
+ # @return [Array<Google::Apis::MonitoringV3::Option>]
1262
+ attr_accessor :options
1263
+
1264
+ # SourceContext represents information about the source of a protobuf element,
1265
+ # like the file in which it is defined.
1266
+ # Corresponds to the JSON property `sourceContext`
1267
+ # @return [Google::Apis::MonitoringV3::SourceContext]
1268
+ attr_accessor :source_context
1269
+
1270
+ # The list of fields.
1271
+ # Corresponds to the JSON property `fields`
1272
+ # @return [Array<Google::Apis::MonitoringV3::Field>]
1273
+ attr_accessor :fields
1274
+
1275
+ # The fully qualified message name.
1276
+ # Corresponds to the JSON property `name`
1277
+ # @return [String]
1278
+ attr_accessor :name
1279
+
1280
+ # The source syntax.
1281
+ # Corresponds to the JSON property `syntax`
1282
+ # @return [String]
1283
+ attr_accessor :syntax
1284
+
1285
+ def initialize(**args)
1286
+ update!(**args)
1287
+ end
1288
+
1289
+ # Update properties of this object
1290
+ def update!(**args)
1291
+ @oneofs = args[:oneofs] if args.key?(:oneofs)
1292
+ @options = args[:options] if args.key?(:options)
1293
+ @source_context = args[:source_context] if args.key?(:source_context)
1294
+ @fields = args[:fields] if args.key?(:fields)
1295
+ @name = args[:name] if args.key?(:name)
1296
+ @syntax = args[:syntax] if args.key?(:syntax)
1297
+ end
1298
+ end
1299
+
1300
+ # The ListGroups response.
1301
+ class ListGroupsResponse
1302
+ include Google::Apis::Core::Hashable
1303
+
1304
+ # The groups that match the specified filters.
1305
+ # Corresponds to the JSON property `group`
1306
+ # @return [Array<Google::Apis::MonitoringV3::Group>]
1307
+ attr_accessor :group
1308
+
1309
+ # If there are more results than have been returned, then this field is set to a
1310
+ # non-empty value. To see the additional results, use that value as pageToken in
1311
+ # the next call to this method.
1312
+ # Corresponds to the JSON property `nextPageToken`
1313
+ # @return [String]
1314
+ attr_accessor :next_page_token
1315
+
1316
+ def initialize(**args)
1317
+ update!(**args)
1318
+ end
1319
+
1320
+ # Update properties of this object
1321
+ def update!(**args)
1322
+ @group = args[:group] if args.key?(:group)
1323
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1324
+ end
1325
+ end
1326
+ end
1327
+ end
1328
+ end