google-apis-gmailpostmastertools_v2 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,769 @@
1
+ # Copyright 2020 Google LLC
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 GmailpostmastertoolsV2
24
+
25
+ # Specifies the base metric to query, which can be a predefined standard metric
26
+ # or a user-defined custom metric (if supported in the future).
27
+ class BaseMetric
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # A predefined standard metric.
31
+ # Corresponds to the JSON property `standardMetric`
32
+ # @return [String]
33
+ attr_accessor :standard_metric
34
+
35
+ def initialize(**args)
36
+ update!(**args)
37
+ end
38
+
39
+ # Update properties of this object
40
+ def update!(**args)
41
+ @standard_metric = args[:standard_metric] if args.key?(:standard_metric)
42
+ end
43
+ end
44
+
45
+ # Request message for BatchQueryDomainStats.
46
+ class BatchQueryDomainStatsRequest
47
+ include Google::Apis::Core::Hashable
48
+
49
+ # Required. A list of individual query requests. Each request can be for a
50
+ # different domain. A maximum of 100 requests can be included in a single batch.
51
+ # Corresponds to the JSON property `requests`
52
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::QueryDomainStatsRequest>]
53
+ attr_accessor :requests
54
+
55
+ def initialize(**args)
56
+ update!(**args)
57
+ end
58
+
59
+ # Update properties of this object
60
+ def update!(**args)
61
+ @requests = args[:requests] if args.key?(:requests)
62
+ end
63
+ end
64
+
65
+ # Response message for BatchQueryDomainStats.
66
+ class BatchQueryDomainStatsResponse
67
+ include Google::Apis::Core::Hashable
68
+
69
+ # A list of responses, one for each query in the BatchQueryDomainStatsRequest.
70
+ # The order of responses will correspond to the order of requests.
71
+ # Corresponds to the JSON property `results`
72
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::BatchQueryDomainStatsResult>]
73
+ attr_accessor :results
74
+
75
+ def initialize(**args)
76
+ update!(**args)
77
+ end
78
+
79
+ # Update properties of this object
80
+ def update!(**args)
81
+ @results = args[:results] if args.key?(:results)
82
+ end
83
+ end
84
+
85
+ # Represents the result of a single QueryDomainStatsRequest within a batch.
86
+ class BatchQueryDomainStatsResult
87
+ include Google::Apis::Core::Hashable
88
+
89
+ # The `Status` type defines a logical error model that is suitable for different
90
+ # programming environments, including REST APIs and RPC APIs. It is used by [
91
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
92
+ # data: error code, error message, and error details. You can find out more
93
+ # about this error model and how to work with it in the [API Design Guide](https:
94
+ # //cloud.google.com/apis/design/errors).
95
+ # Corresponds to the JSON property `error`
96
+ # @return [Google::Apis::GmailpostmastertoolsV2::Status]
97
+ attr_accessor :error
98
+
99
+ # Response message for QueryDomainStats.
100
+ # Corresponds to the JSON property `response`
101
+ # @return [Google::Apis::GmailpostmastertoolsV2::QueryDomainStatsResponse]
102
+ attr_accessor :response
103
+
104
+ def initialize(**args)
105
+ update!(**args)
106
+ end
107
+
108
+ # Update properties of this object
109
+ def update!(**args)
110
+ @error = args[:error] if args.key?(:error)
111
+ @response = args[:response] if args.key?(:response)
112
+ end
113
+ end
114
+
115
+ # Data for a single row of the compliance status table.
116
+ class ComplianceRowData
117
+ include Google::Apis::Core::Hashable
118
+
119
+ # The compliance requirement.
120
+ # Corresponds to the JSON property `requirement`
121
+ # @return [String]
122
+ attr_accessor :requirement
123
+
124
+ # The status of a sender compliance requirement.
125
+ # Corresponds to the JSON property `status`
126
+ # @return [Google::Apis::GmailpostmastertoolsV2::ComplianceStatus]
127
+ attr_accessor :status
128
+
129
+ def initialize(**args)
130
+ update!(**args)
131
+ end
132
+
133
+ # Update properties of this object
134
+ def update!(**args)
135
+ @requirement = args[:requirement] if args.key?(:requirement)
136
+ @status = args[:status] if args.key?(:status)
137
+ end
138
+ end
139
+
140
+ # The status of a sender compliance requirement.
141
+ class ComplianceStatus
142
+ include Google::Apis::Core::Hashable
143
+
144
+ # Output only. The compliance status.
145
+ # Corresponds to the JSON property `status`
146
+ # @return [String]
147
+ attr_accessor :status
148
+
149
+ def initialize(**args)
150
+ update!(**args)
151
+ end
152
+
153
+ # Update properties of this object
154
+ def update!(**args)
155
+ @status = args[:status] if args.key?(:status)
156
+ end
157
+ end
158
+
159
+ # Represents a whole or partial calendar date, such as a birthday. The time of
160
+ # day and time zone are either specified elsewhere or are insignificant. The
161
+ # date is relative to the Gregorian Calendar. This can represent one of the
162
+ # following: * A full date, with non-zero year, month, and day values. * A month
163
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
164
+ # with a zero month and a zero day. * A year and month, with a zero day (for
165
+ # example, a credit card expiration date). Related types: * google.type.
166
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
167
+ class Date
168
+ include Google::Apis::Core::Hashable
169
+
170
+ # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
171
+ # specify a year by itself or a year and month where the day isn't significant.
172
+ # Corresponds to the JSON property `day`
173
+ # @return [Fixnum]
174
+ attr_accessor :day
175
+
176
+ # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
177
+ # and day.
178
+ # Corresponds to the JSON property `month`
179
+ # @return [Fixnum]
180
+ attr_accessor :month
181
+
182
+ # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
183
+ # year.
184
+ # Corresponds to the JSON property `year`
185
+ # @return [Fixnum]
186
+ attr_accessor :year
187
+
188
+ def initialize(**args)
189
+ update!(**args)
190
+ end
191
+
192
+ # Update properties of this object
193
+ def update!(**args)
194
+ @day = args[:day] if args.key?(:day)
195
+ @month = args[:month] if args.key?(:month)
196
+ @year = args[:year] if args.key?(:year)
197
+ end
198
+ end
199
+
200
+ # A set of specific dates.
201
+ class DateList
202
+ include Google::Apis::Core::Hashable
203
+
204
+ # Required. The list of specific dates for which to retrieve data.
205
+ # Corresponds to the JSON property `dates`
206
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::Date>]
207
+ attr_accessor :dates
208
+
209
+ def initialize(**args)
210
+ update!(**args)
211
+ end
212
+
213
+ # Update properties of this object
214
+ def update!(**args)
215
+ @dates = args[:dates] if args.key?(:dates)
216
+ end
217
+ end
218
+
219
+ # A single date range defined by a start and end date.
220
+ class DateRange
221
+ include Google::Apis::Core::Hashable
222
+
223
+ # Represents a whole or partial calendar date, such as a birthday. The time of
224
+ # day and time zone are either specified elsewhere or are insignificant. The
225
+ # date is relative to the Gregorian Calendar. This can represent one of the
226
+ # following: * A full date, with non-zero year, month, and day values. * A month
227
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
228
+ # with a zero month and a zero day. * A year and month, with a zero day (for
229
+ # example, a credit card expiration date). Related types: * google.type.
230
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
231
+ # Corresponds to the JSON property `end`
232
+ # @return [Google::Apis::GmailpostmastertoolsV2::Date]
233
+ attr_accessor :end
234
+
235
+ # Represents a whole or partial calendar date, such as a birthday. The time of
236
+ # day and time zone are either specified elsewhere or are insignificant. The
237
+ # date is relative to the Gregorian Calendar. This can represent one of the
238
+ # following: * A full date, with non-zero year, month, and day values. * A month
239
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
240
+ # with a zero month and a zero day. * A year and month, with a zero day (for
241
+ # example, a credit card expiration date). Related types: * google.type.
242
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
243
+ # Corresponds to the JSON property `start`
244
+ # @return [Google::Apis::GmailpostmastertoolsV2::Date]
245
+ attr_accessor :start
246
+
247
+ def initialize(**args)
248
+ update!(**args)
249
+ end
250
+
251
+ # Update properties of this object
252
+ def update!(**args)
253
+ @end = args[:end] if args.key?(:end)
254
+ @start = args[:start] if args.key?(:start)
255
+ end
256
+ end
257
+
258
+ # A set of date ranges.
259
+ class DateRanges
260
+ include Google::Apis::Core::Hashable
261
+
262
+ # Required. The list of date ranges for which to retrieve data.
263
+ # Corresponds to the JSON property `dateRanges`
264
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::DateRange>]
265
+ attr_accessor :date_ranges
266
+
267
+ def initialize(**args)
268
+ update!(**args)
269
+ end
270
+
271
+ # Update properties of this object
272
+ def update!(**args)
273
+ @date_ranges = args[:date_ranges] if args.key?(:date_ranges)
274
+ end
275
+ end
276
+
277
+ # Information about a domain registered by the user.
278
+ class Domain
279
+ include Google::Apis::Core::Hashable
280
+
281
+ # Output only. Immutable. The timestamp at which the domain was added to the
282
+ # user's account.
283
+ # Corresponds to the JSON property `createTime`
284
+ # @return [String]
285
+ attr_accessor :create_time
286
+
287
+ # The timestamp at which the domain was last verified by the user.
288
+ # Corresponds to the JSON property `lastVerifyTime`
289
+ # @return [String]
290
+ attr_accessor :last_verify_time
291
+
292
+ # Identifier. The resource name of the domain. Format: `domains/`domain_name``,
293
+ # where domain_name is the fully qualified domain name (i.e., mymail.mydomain.
294
+ # com).
295
+ # Corresponds to the JSON property `name`
296
+ # @return [String]
297
+ attr_accessor :name
298
+
299
+ # Output only. User's permission of this domain.
300
+ # Corresponds to the JSON property `permission`
301
+ # @return [String]
302
+ attr_accessor :permission
303
+
304
+ # Output only. Information about a user's verification history and properties
305
+ # for the domain.
306
+ # Corresponds to the JSON property `verificationState`
307
+ # @return [String]
308
+ attr_accessor :verification_state
309
+
310
+ def initialize(**args)
311
+ update!(**args)
312
+ end
313
+
314
+ # Update properties of this object
315
+ def update!(**args)
316
+ @create_time = args[:create_time] if args.key?(:create_time)
317
+ @last_verify_time = args[:last_verify_time] if args.key?(:last_verify_time)
318
+ @name = args[:name] if args.key?(:name)
319
+ @permission = args[:permission] if args.key?(:permission)
320
+ @verification_state = args[:verification_state] if args.key?(:verification_state)
321
+ end
322
+ end
323
+
324
+ # Compliance data for a given domain.
325
+ class DomainComplianceData
326
+ include Google::Apis::Core::Hashable
327
+
328
+ # Domain that this data is for.
329
+ # Corresponds to the JSON property `domainId`
330
+ # @return [String]
331
+ attr_accessor :domain_id
332
+
333
+ # Compliance verdict for whether a sender meets the unsubscribe honoring
334
+ # compliance requirement.
335
+ # Corresponds to the JSON property `honorUnsubscribeVerdict`
336
+ # @return [Google::Apis::GmailpostmastertoolsV2::HonorUnsubscribeVerdict]
337
+ attr_accessor :honor_unsubscribe_verdict
338
+
339
+ # Compliance verdict for whether a sender meets the one-click unsubscribe
340
+ # compliance requirement.
341
+ # Corresponds to the JSON property `oneClickUnsubscribeVerdict`
342
+ # @return [Google::Apis::GmailpostmastertoolsV2::OneClickUnsubscribeVerdict]
343
+ attr_accessor :one_click_unsubscribe_verdict
344
+
345
+ # Data for each of the rows of the table. Each message contains all the data
346
+ # that backs a single row.
347
+ # Corresponds to the JSON property `rowData`
348
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::ComplianceRowData>]
349
+ attr_accessor :row_data
350
+
351
+ def initialize(**args)
352
+ update!(**args)
353
+ end
354
+
355
+ # Update properties of this object
356
+ def update!(**args)
357
+ @domain_id = args[:domain_id] if args.key?(:domain_id)
358
+ @honor_unsubscribe_verdict = args[:honor_unsubscribe_verdict] if args.key?(:honor_unsubscribe_verdict)
359
+ @one_click_unsubscribe_verdict = args[:one_click_unsubscribe_verdict] if args.key?(:one_click_unsubscribe_verdict)
360
+ @row_data = args[:row_data] if args.key?(:row_data)
361
+ end
362
+ end
363
+
364
+ # Compliance status for a domain.
365
+ class DomainComplianceStatus
366
+ include Google::Apis::Core::Hashable
367
+
368
+ # Compliance data for a given domain.
369
+ # Corresponds to the JSON property `complianceData`
370
+ # @return [Google::Apis::GmailpostmastertoolsV2::DomainComplianceData]
371
+ attr_accessor :compliance_data
372
+
373
+ # Identifier. The resource name of the domain's compliance status. Format: `
374
+ # domains/`domain_id`/complianceStatus`.
375
+ # Corresponds to the JSON property `name`
376
+ # @return [String]
377
+ attr_accessor :name
378
+
379
+ # Compliance data for a given domain.
380
+ # Corresponds to the JSON property `subdomainComplianceData`
381
+ # @return [Google::Apis::GmailpostmastertoolsV2::DomainComplianceData]
382
+ attr_accessor :subdomain_compliance_data
383
+
384
+ def initialize(**args)
385
+ update!(**args)
386
+ end
387
+
388
+ # Update properties of this object
389
+ def update!(**args)
390
+ @compliance_data = args[:compliance_data] if args.key?(:compliance_data)
391
+ @name = args[:name] if args.key?(:name)
392
+ @subdomain_compliance_data = args[:subdomain_compliance_data] if args.key?(:subdomain_compliance_data)
393
+ end
394
+ end
395
+
396
+ # Email statistics for a domain for a specified time period or date.
397
+ class DomainStat
398
+ include Google::Apis::Core::Hashable
399
+
400
+ # Represents a whole or partial calendar date, such as a birthday. The time of
401
+ # day and time zone are either specified elsewhere or are insignificant. The
402
+ # date is relative to the Gregorian Calendar. This can represent one of the
403
+ # following: * A full date, with non-zero year, month, and day values. * A month
404
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
405
+ # with a zero month and a zero day. * A year and month, with a zero day (for
406
+ # example, a credit card expiration date). Related types: * google.type.
407
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
408
+ # Corresponds to the JSON property `date`
409
+ # @return [Google::Apis::GmailpostmastertoolsV2::Date]
410
+ attr_accessor :date
411
+
412
+ # The user-defined name from MetricDefinition.name in the request, used to
413
+ # correlate this result with the requested metric.
414
+ # Corresponds to the JSON property `metric`
415
+ # @return [String]
416
+ attr_accessor :metric
417
+
418
+ # Output only. The resource name of the DomainStat resource. Format: domains/`
419
+ # domain`/domainStats/`domain_stat` The ``domain_stat`` segment is an opaque,
420
+ # server-generated ID. We recommend using the `metric` field to identify queried
421
+ # metrics instead of parsing the name.
422
+ # Corresponds to the JSON property `name`
423
+ # @return [String]
424
+ attr_accessor :name
425
+
426
+ # The actual value of a statistic.
427
+ # Corresponds to the JSON property `value`
428
+ # @return [Google::Apis::GmailpostmastertoolsV2::StatisticValue]
429
+ attr_accessor :value
430
+
431
+ def initialize(**args)
432
+ update!(**args)
433
+ end
434
+
435
+ # Update properties of this object
436
+ def update!(**args)
437
+ @date = args[:date] if args.key?(:date)
438
+ @metric = args[:metric] if args.key?(:metric)
439
+ @name = args[:name] if args.key?(:name)
440
+ @value = args[:value] if args.key?(:value)
441
+ end
442
+ end
443
+
444
+ # Compliance verdict for whether a sender meets the unsubscribe honoring
445
+ # compliance requirement.
446
+ class HonorUnsubscribeVerdict
447
+ include Google::Apis::Core::Hashable
448
+
449
+ # The specific reason for the compliance verdict. Must be empty if the status is
450
+ # compliant.
451
+ # Corresponds to the JSON property `reason`
452
+ # @return [String]
453
+ attr_accessor :reason
454
+
455
+ # The status of a sender compliance requirement.
456
+ # Corresponds to the JSON property `status`
457
+ # @return [Google::Apis::GmailpostmastertoolsV2::ComplianceStatus]
458
+ attr_accessor :status
459
+
460
+ def initialize(**args)
461
+ update!(**args)
462
+ end
463
+
464
+ # Update properties of this object
465
+ def update!(**args)
466
+ @reason = args[:reason] if args.key?(:reason)
467
+ @status = args[:status] if args.key?(:status)
468
+ end
469
+ end
470
+
471
+ # Response message for ListDomains.
472
+ class ListDomainsResponse
473
+ include Google::Apis::Core::Hashable
474
+
475
+ # The domains that have been registered by the user.
476
+ # Corresponds to the JSON property `domains`
477
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::Domain>]
478
+ attr_accessor :domains
479
+
480
+ # Token to retrieve the next page of results, or empty if there are no more
481
+ # results in the list.
482
+ # Corresponds to the JSON property `nextPageToken`
483
+ # @return [String]
484
+ attr_accessor :next_page_token
485
+
486
+ def initialize(**args)
487
+ update!(**args)
488
+ end
489
+
490
+ # Update properties of this object
491
+ def update!(**args)
492
+ @domains = args[:domains] if args.key?(:domains)
493
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
494
+ end
495
+ end
496
+
497
+ # Defines a specific metric to query, including a user-defined name, the base
498
+ # metric type, and optional filters.
499
+ class MetricDefinition
500
+ include Google::Apis::Core::Hashable
501
+
502
+ # Specifies the base metric to query, which can be a predefined standard metric
503
+ # or a user-defined custom metric (if supported in the future).
504
+ # Corresponds to the JSON property `baseMetric`
505
+ # @return [Google::Apis::GmailpostmastertoolsV2::BaseMetric]
506
+ attr_accessor :base_metric
507
+
508
+ # Optional. Optional filters to apply to the metric.
509
+ # Corresponds to the JSON property `filter`
510
+ # @return [String]
511
+ attr_accessor :filter
512
+
513
+ # Required. The user-defined name for this metric. This name will be used as the
514
+ # key for this metric's value in the response.
515
+ # Corresponds to the JSON property `name`
516
+ # @return [String]
517
+ attr_accessor :name
518
+
519
+ def initialize(**args)
520
+ update!(**args)
521
+ end
522
+
523
+ # Update properties of this object
524
+ def update!(**args)
525
+ @base_metric = args[:base_metric] if args.key?(:base_metric)
526
+ @filter = args[:filter] if args.key?(:filter)
527
+ @name = args[:name] if args.key?(:name)
528
+ end
529
+ end
530
+
531
+ # Compliance verdict for whether a sender meets the one-click unsubscribe
532
+ # compliance requirement.
533
+ class OneClickUnsubscribeVerdict
534
+ include Google::Apis::Core::Hashable
535
+
536
+ # The specific reason for the compliance verdict. Must be empty if the status is
537
+ # compliant.
538
+ # Corresponds to the JSON property `reason`
539
+ # @return [String]
540
+ attr_accessor :reason
541
+
542
+ # The status of a sender compliance requirement.
543
+ # Corresponds to the JSON property `status`
544
+ # @return [Google::Apis::GmailpostmastertoolsV2::ComplianceStatus]
545
+ attr_accessor :status
546
+
547
+ def initialize(**args)
548
+ update!(**args)
549
+ end
550
+
551
+ # Update properties of this object
552
+ def update!(**args)
553
+ @reason = args[:reason] if args.key?(:reason)
554
+ @status = args[:status] if args.key?(:status)
555
+ end
556
+ end
557
+
558
+ # Request message for QueryDomainStats.
559
+ class QueryDomainStatsRequest
560
+ include Google::Apis::Core::Hashable
561
+
562
+ # Optional. The granularity at which to aggregate the statistics. If unspecified,
563
+ # defaults to DAILY.
564
+ # Corresponds to the JSON property `aggregationGranularity`
565
+ # @return [String]
566
+ attr_accessor :aggregation_granularity
567
+
568
+ # Required. The specific metrics to query. You can define a custom name for each
569
+ # metric, which will be used in the response.
570
+ # Corresponds to the JSON property `metricDefinitions`
571
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::MetricDefinition>]
572
+ attr_accessor :metric_definitions
573
+
574
+ # Optional. The maximum number of DomainStats resources to return in the
575
+ # response. The server may return fewer than this value. If unspecified, a
576
+ # default value of 10 will be used. The maximum value is 200.
577
+ # Corresponds to the JSON property `pageSize`
578
+ # @return [Fixnum]
579
+ attr_accessor :page_size
580
+
581
+ # Optional. The next_page_token value returned from a previous List request, if
582
+ # any. If the aggregation granularity is DAILY, the page token will be the
583
+ # encoded date + "/" + metric name. If the aggregation granularity is OVERALL,
584
+ # the page token will be the encoded metric name.
585
+ # Corresponds to the JSON property `pageToken`
586
+ # @return [String]
587
+ attr_accessor :page_token
588
+
589
+ # Required. The parent resource name where the stats are queried. Format:
590
+ # domains/`domain`
591
+ # Corresponds to the JSON property `parent`
592
+ # @return [String]
593
+ attr_accessor :parent
594
+
595
+ # The date ranges or specific dates for which you want to retrieve data.
596
+ # Corresponds to the JSON property `timeQuery`
597
+ # @return [Google::Apis::GmailpostmastertoolsV2::TimeQuery]
598
+ attr_accessor :time_query
599
+
600
+ def initialize(**args)
601
+ update!(**args)
602
+ end
603
+
604
+ # Update properties of this object
605
+ def update!(**args)
606
+ @aggregation_granularity = args[:aggregation_granularity] if args.key?(:aggregation_granularity)
607
+ @metric_definitions = args[:metric_definitions] if args.key?(:metric_definitions)
608
+ @page_size = args[:page_size] if args.key?(:page_size)
609
+ @page_token = args[:page_token] if args.key?(:page_token)
610
+ @parent = args[:parent] if args.key?(:parent)
611
+ @time_query = args[:time_query] if args.key?(:time_query)
612
+ end
613
+ end
614
+
615
+ # Response message for QueryDomainStats.
616
+ class QueryDomainStatsResponse
617
+ include Google::Apis::Core::Hashable
618
+
619
+ # The list of domain statistics. Each DomainStat object contains the value for a
620
+ # metric requested in the QueryDomainStatsRequest.
621
+ # Corresponds to the JSON property `domainStats`
622
+ # @return [Array<Google::Apis::GmailpostmastertoolsV2::DomainStat>]
623
+ attr_accessor :domain_stats
624
+
625
+ # Token to retrieve the next page of results, or empty if there are no more
626
+ # results in the list.
627
+ # Corresponds to the JSON property `nextPageToken`
628
+ # @return [String]
629
+ attr_accessor :next_page_token
630
+
631
+ def initialize(**args)
632
+ update!(**args)
633
+ end
634
+
635
+ # Update properties of this object
636
+ def update!(**args)
637
+ @domain_stats = args[:domain_stats] if args.key?(:domain_stats)
638
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
639
+ end
640
+ end
641
+
642
+ # The actual value of a statistic.
643
+ class StatisticValue
644
+ include Google::Apis::Core::Hashable
645
+
646
+ # Double value.
647
+ # Corresponds to the JSON property `doubleValue`
648
+ # @return [Float]
649
+ attr_accessor :double_value
650
+
651
+ # Float value.
652
+ # Corresponds to the JSON property `floatValue`
653
+ # @return [Float]
654
+ attr_accessor :float_value
655
+
656
+ # Integer value.
657
+ # Corresponds to the JSON property `intValue`
658
+ # @return [Fixnum]
659
+ attr_accessor :int_value
660
+
661
+ # Represents a list of strings.
662
+ # Corresponds to the JSON property `stringList`
663
+ # @return [Google::Apis::GmailpostmastertoolsV2::StringList]
664
+ attr_accessor :string_list
665
+
666
+ # String value.
667
+ # Corresponds to the JSON property `stringValue`
668
+ # @return [String]
669
+ attr_accessor :string_value
670
+
671
+ def initialize(**args)
672
+ update!(**args)
673
+ end
674
+
675
+ # Update properties of this object
676
+ def update!(**args)
677
+ @double_value = args[:double_value] if args.key?(:double_value)
678
+ @float_value = args[:float_value] if args.key?(:float_value)
679
+ @int_value = args[:int_value] if args.key?(:int_value)
680
+ @string_list = args[:string_list] if args.key?(:string_list)
681
+ @string_value = args[:string_value] if args.key?(:string_value)
682
+ end
683
+ end
684
+
685
+ # The `Status` type defines a logical error model that is suitable for different
686
+ # programming environments, including REST APIs and RPC APIs. It is used by [
687
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
688
+ # data: error code, error message, and error details. You can find out more
689
+ # about this error model and how to work with it in the [API Design Guide](https:
690
+ # //cloud.google.com/apis/design/errors).
691
+ class Status
692
+ include Google::Apis::Core::Hashable
693
+
694
+ # The status code, which should be an enum value of google.rpc.Code.
695
+ # Corresponds to the JSON property `code`
696
+ # @return [Fixnum]
697
+ attr_accessor :code
698
+
699
+ # A list of messages that carry the error details. There is a common set of
700
+ # message types for APIs to use.
701
+ # Corresponds to the JSON property `details`
702
+ # @return [Array<Hash<String,Object>>]
703
+ attr_accessor :details
704
+
705
+ # A developer-facing error message, which should be in English. Any user-facing
706
+ # error message should be localized and sent in the google.rpc.Status.details
707
+ # field, or localized by the client.
708
+ # Corresponds to the JSON property `message`
709
+ # @return [String]
710
+ attr_accessor :message
711
+
712
+ def initialize(**args)
713
+ update!(**args)
714
+ end
715
+
716
+ # Update properties of this object
717
+ def update!(**args)
718
+ @code = args[:code] if args.key?(:code)
719
+ @details = args[:details] if args.key?(:details)
720
+ @message = args[:message] if args.key?(:message)
721
+ end
722
+ end
723
+
724
+ # Represents a list of strings.
725
+ class StringList
726
+ include Google::Apis::Core::Hashable
727
+
728
+ # The string values.
729
+ # Corresponds to the JSON property `values`
730
+ # @return [Array<String>]
731
+ attr_accessor :values
732
+
733
+ def initialize(**args)
734
+ update!(**args)
735
+ end
736
+
737
+ # Update properties of this object
738
+ def update!(**args)
739
+ @values = args[:values] if args.key?(:values)
740
+ end
741
+ end
742
+
743
+ # The date ranges or specific dates for which you want to retrieve data.
744
+ class TimeQuery
745
+ include Google::Apis::Core::Hashable
746
+
747
+ # A set of specific dates.
748
+ # Corresponds to the JSON property `dateList`
749
+ # @return [Google::Apis::GmailpostmastertoolsV2::DateList]
750
+ attr_accessor :date_list
751
+
752
+ # A set of date ranges.
753
+ # Corresponds to the JSON property `dateRanges`
754
+ # @return [Google::Apis::GmailpostmastertoolsV2::DateRanges]
755
+ attr_accessor :date_ranges
756
+
757
+ def initialize(**args)
758
+ update!(**args)
759
+ end
760
+
761
+ # Update properties of this object
762
+ def update!(**args)
763
+ @date_list = args[:date_list] if args.key?(:date_list)
764
+ @date_ranges = args[:date_ranges] if args.key?(:date_ranges)
765
+ end
766
+ end
767
+ end
768
+ end
769
+ end