google-shopping-merchant-reports-v1beta 0.a → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/README.md +144 -8
  5. data/lib/google/shopping/merchant/reports/v1beta/report_service/client.rb +426 -0
  6. data/lib/google/shopping/merchant/reports/v1beta/report_service/credentials.rb +49 -0
  7. data/lib/google/shopping/merchant/reports/v1beta/report_service/rest/client.rb +390 -0
  8. data/lib/google/shopping/merchant/reports/v1beta/report_service/rest/service_stub.rb +110 -0
  9. data/lib/google/shopping/merchant/reports/v1beta/report_service/rest.rb +54 -0
  10. data/lib/google/shopping/merchant/reports/v1beta/report_service.rb +57 -0
  11. data/lib/google/shopping/merchant/reports/v1beta/reports_pb.rb +83 -0
  12. data/lib/google/shopping/merchant/reports/v1beta/reports_services_pb.rb +50 -0
  13. data/lib/google/shopping/merchant/reports/v1beta/rest.rb +39 -0
  14. data/lib/google/shopping/merchant/reports/v1beta/version.rb +7 -2
  15. data/lib/google/shopping/merchant/reports/v1beta.rb +47 -0
  16. data/lib/google-shopping-merchant-reports-v1beta.rb +21 -0
  17. data/proto_docs/README.md +4 -0
  18. data/proto_docs/google/api/client.rb +381 -0
  19. data/proto_docs/google/api/field_behavior.rb +85 -0
  20. data/proto_docs/google/api/launch_stage.rb +71 -0
  21. data/proto_docs/google/api/resource.rb +222 -0
  22. data/proto_docs/google/protobuf/duration.rb +98 -0
  23. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  24. data/proto_docs/google/shopping/merchant/reports/v1beta/reports.rb +1193 -0
  25. data/proto_docs/google/shopping/type/types.rb +175 -0
  26. data/proto_docs/google/type/date.rb +53 -0
  27. metadata +200 -12
@@ -0,0 +1,1193 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Shopping
22
+ module Merchant
23
+ module Reports
24
+ module V1beta
25
+ # Request message for the `ReportService.Search` method.
26
+ # @!attribute [rw] parent
27
+ # @return [::String]
28
+ # Required. Id of the account making the call. Must be a standalone account
29
+ # or an MCA subaccount. Format: accounts/\\{account}
30
+ # @!attribute [rw] query
31
+ # @return [::String]
32
+ # Required. Query that defines a report to be retrieved.
33
+ #
34
+ # For details on how to construct your query, see the Query Language
35
+ # guide. For the full list of available tables and fields, see the Available
36
+ # fields.
37
+ # @!attribute [rw] page_size
38
+ # @return [::Integer]
39
+ # Optional. Number of `ReportRows` to retrieve in a single page. Defaults to
40
+ # the maximum of 1000. Values above 1000 are coerced to 1000.
41
+ # @!attribute [rw] page_token
42
+ # @return [::String]
43
+ # Optional. Token of the page to retrieve. If not specified, the first page
44
+ # of results is returned. In order to request the next page of results, the
45
+ # value obtained from `next_page_token` in the previous response should be
46
+ # used.
47
+ class SearchRequest
48
+ include ::Google::Protobuf::MessageExts
49
+ extend ::Google::Protobuf::MessageExts::ClassMethods
50
+ end
51
+
52
+ # Response message for the `ReportService.Search` method.
53
+ # @!attribute [rw] results
54
+ # @return [::Array<::Google::Shopping::Merchant::Reports::V1beta::ReportRow>]
55
+ # Rows that matched the search query.
56
+ # @!attribute [rw] next_page_token
57
+ # @return [::String]
58
+ # Token which can be sent as `page_token` to retrieve the next page. If
59
+ # omitted, there are no subsequent pages.
60
+ class SearchResponse
61
+ include ::Google::Protobuf::MessageExts
62
+ extend ::Google::Protobuf::MessageExts::ClassMethods
63
+ end
64
+
65
+ # Result row returned from the search query.
66
+ #
67
+ # Only the message corresponding to the queried table is populated in the
68
+ # response. Within the populated message, only the fields requested explicitly
69
+ # in the query are populated.
70
+ # @!attribute [rw] product_performance_view
71
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ProductPerformanceView]
72
+ # Fields available for query in `product_performance_view` table.
73
+ # @!attribute [rw] product_view
74
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ProductView]
75
+ # Fields available for query in `product_view` table.
76
+ # @!attribute [rw] price_competitiveness_product_view
77
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::PriceCompetitivenessProductView]
78
+ # Fields available for query in `price_competitiveness_product_view` table.
79
+ # @!attribute [rw] price_insights_product_view
80
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::PriceInsightsProductView]
81
+ # Fields available for query in `price_insights_product_view` table.
82
+ # @!attribute [rw] best_sellers_product_cluster_view
83
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::BestSellersProductClusterView]
84
+ # Fields available for query in `best_sellers_product_cluster_view` table.
85
+ # @!attribute [rw] best_sellers_brand_view
86
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::BestSellersBrandView]
87
+ # Fields available for query in `best_sellers_brand_view` table.
88
+ # @!attribute [rw] competitive_visibility_competitor_view
89
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::CompetitiveVisibilityCompetitorView]
90
+ # Fields available for query in `competitive_visibility_competitor_view`
91
+ # table.
92
+ # @!attribute [rw] competitive_visibility_top_merchant_view
93
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::CompetitiveVisibilityTopMerchantView]
94
+ # Fields available for query in `competitive_visibility_top_merchant_view`
95
+ # table.
96
+ # @!attribute [rw] competitive_visibility_benchmark_view
97
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::CompetitiveVisibilityBenchmarkView]
98
+ # Fields available for query in `competitive_visibility_benchmark_view`
99
+ # table.
100
+ class ReportRow
101
+ include ::Google::Protobuf::MessageExts
102
+ extend ::Google::Protobuf::MessageExts::ClassMethods
103
+ end
104
+
105
+ # Fields available for query in `product_performance_view` table.
106
+ #
107
+ # Product performance data for your account, including performance metrics (for
108
+ # example, `clicks`) and dimensions according to which performance metrics are
109
+ # segmented (for example, `offer_id`). Values of product dimensions, such as
110
+ # `offer_id`, reflect the state of a product at the time of the impression.
111
+ #
112
+ # Segment fields cannot be selected in queries without also selecting at least
113
+ # one metric field.
114
+ #
115
+ # Values are only set for fields requested explicitly in the request's search
116
+ # query.
117
+ # @!attribute [rw] marketing_method
118
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::MarketingMethod::MarketingMethodEnum]
119
+ # Marketing method to which metrics apply. Segment.
120
+ # @!attribute [rw] date
121
+ # @return [::Google::Type::Date]
122
+ # Date in the merchant timezone to which metrics apply. Segment.
123
+ #
124
+ # Condition on `date` is required in the `WHERE` clause.
125
+ # @!attribute [rw] week
126
+ # @return [::Google::Type::Date]
127
+ # First day of the week (Monday) of the metrics date in the merchant
128
+ # timezone. Segment.
129
+ # @!attribute [rw] customer_country_code
130
+ # @return [::String]
131
+ # Code of the country where the customer is located at the time of the event.
132
+ # Represented in the ISO 3166 format. Segment.
133
+ #
134
+ # If the customer country cannot be determined, a special 'ZZ' code is
135
+ # returned.
136
+ # @!attribute [rw] offer_id
137
+ # @return [::String]
138
+ # Merchant-provided id of the product. Segment.
139
+ # @!attribute [rw] title
140
+ # @return [::String]
141
+ # Title of the product. Segment.
142
+ # @!attribute [rw] brand
143
+ # @return [::String]
144
+ # Brand of the product. Segment.
145
+ # @!attribute [rw] category_l1
146
+ # @return [::String]
147
+ # [Product category (1st
148
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
149
+ # in Google's product taxonomy. Segment.
150
+ # @!attribute [rw] category_l2
151
+ # @return [::String]
152
+ # [Product category (2nd
153
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
154
+ # in Google's product taxonomy. Segment.
155
+ # @!attribute [rw] category_l3
156
+ # @return [::String]
157
+ # [Product category (3rd
158
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
159
+ # in Google's product taxonomy. Segment.
160
+ # @!attribute [rw] category_l4
161
+ # @return [::String]
162
+ # [Product category (4th
163
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
164
+ # in Google's product taxonomy. Segment.
165
+ # @!attribute [rw] category_l5
166
+ # @return [::String]
167
+ # [Product category (5th
168
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
169
+ # in Google's product taxonomy. Segment.
170
+ # @!attribute [rw] product_type_l1
171
+ # @return [::String]
172
+ # [Product type (1st
173
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
174
+ # in merchant's own product taxonomy. Segment.
175
+ # @!attribute [rw] product_type_l2
176
+ # @return [::String]
177
+ # [Product type (2nd
178
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
179
+ # in merchant's own product taxonomy. Segment.
180
+ # @!attribute [rw] product_type_l3
181
+ # @return [::String]
182
+ # [Product type (3rd
183
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
184
+ # in merchant's own product taxonomy. Segment.
185
+ # @!attribute [rw] product_type_l4
186
+ # @return [::String]
187
+ # [Product type (4th
188
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
189
+ # in merchant's own product taxonomy. Segment.
190
+ # @!attribute [rw] product_type_l5
191
+ # @return [::String]
192
+ # [Product type (5th
193
+ # level)](https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
194
+ # in merchant's own product taxonomy. Segment.
195
+ # @!attribute [rw] custom_label0
196
+ # @return [::String]
197
+ # Custom label 0 for custom grouping of products. Segment.
198
+ # @!attribute [rw] custom_label1
199
+ # @return [::String]
200
+ # Custom label 1 for custom grouping of products. Segment.
201
+ # @!attribute [rw] custom_label2
202
+ # @return [::String]
203
+ # Custom label 2 for custom grouping of products. Segment.
204
+ # @!attribute [rw] custom_label3
205
+ # @return [::String]
206
+ # Custom label 3 for custom grouping of products. Segment.
207
+ # @!attribute [rw] custom_label4
208
+ # @return [::String]
209
+ # Custom label 4 for custom grouping of products. Segment.
210
+ # @!attribute [rw] clicks
211
+ # @return [::Integer]
212
+ # Number of clicks. Metric.
213
+ # @!attribute [rw] impressions
214
+ # @return [::Integer]
215
+ # Number of times merchant's products are shown. Metric.
216
+ # @!attribute [rw] click_through_rate
217
+ # @return [::Float]
218
+ # Click-through rate - the number of clicks merchant's products receive
219
+ # (clicks) divided by the number of times the products are shown
220
+ # (impressions). Metric.
221
+ # @!attribute [rw] conversions
222
+ # @return [::Float]
223
+ # Number of conversions attributed to the product, reported on the conversion
224
+ # date. Depending on the attribution model, a conversion might be distributed
225
+ # across multiple clicks, where each click gets its own credit assigned. This
226
+ # metric is a sum of all such credits. Metric.
227
+ #
228
+ # Available only for the `FREE` traffic source.
229
+ # @!attribute [rw] conversion_value
230
+ # @return [::Google::Shopping::Type::Price]
231
+ # Value of conversions attributed to the product, reported on the conversion
232
+ # date. Metric.
233
+ #
234
+ # Available only for the `FREE` traffic source.
235
+ # @!attribute [rw] conversion_rate
236
+ # @return [::Float]
237
+ # Number of conversions divided by the number of clicks, reported on the
238
+ # impression date. Metric.
239
+ #
240
+ # Available only for the `FREE` traffic source.
241
+ class ProductPerformanceView
242
+ include ::Google::Protobuf::MessageExts
243
+ extend ::Google::Protobuf::MessageExts::ClassMethods
244
+ end
245
+
246
+ # Fields available for query in `product_view` table.
247
+ #
248
+ # Products in the current inventory. Products in this table are the same as in
249
+ # Products sub-API but not all product attributes from Products sub-API are
250
+ # available for query in this table. In contrast to Products sub-API, this
251
+ # table allows to filter the returned list of products by product attributes.
252
+ # To retrieve a single product by `id` or list all products, Products sub-API
253
+ # should be used.
254
+ #
255
+ # Values are only set for fields requested explicitly in the request's search
256
+ # query.
257
+ # @!attribute [rw] id
258
+ # @return [::String]
259
+ # REST ID of the product, in the form of
260
+ # `channel~languageCode~feedLabel~offerId`. Merchant API methods that operate
261
+ # on products take this as their `name` parameter.
262
+ #
263
+ # Required in the `SELECT` clause.
264
+ # @!attribute [rw] channel
265
+ # @return [::Google::Shopping::Type::Channel::ChannelEnum]
266
+ # Channel of the product. Can be `ONLINE` or `LOCAL`.
267
+ # @!attribute [rw] language_code
268
+ # @return [::String]
269
+ # Language code of the product in BCP 47 format.
270
+ # @!attribute [rw] feed_label
271
+ # @return [::String]
272
+ # Feed label of the product.
273
+ # @!attribute [rw] offer_id
274
+ # @return [::String]
275
+ # Merchant-provided id of the product.
276
+ # @!attribute [rw] title
277
+ # @return [::String]
278
+ # Title of the product.
279
+ # @!attribute [rw] brand
280
+ # @return [::String]
281
+ # Brand of the product.
282
+ # @!attribute [rw] category_l1
283
+ # @return [::String]
284
+ # Product category (1st level) in [Google's product
285
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
286
+ # @!attribute [rw] category_l2
287
+ # @return [::String]
288
+ # Product category (2nd level) in [Google's product
289
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
290
+ # @!attribute [rw] category_l3
291
+ # @return [::String]
292
+ # Product category (3rd level) in [Google's product
293
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
294
+ # @!attribute [rw] category_l4
295
+ # @return [::String]
296
+ # Product category (4th level) in [Google's product
297
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
298
+ # @!attribute [rw] category_l5
299
+ # @return [::String]
300
+ # Product category (5th level) in [Google's product
301
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
302
+ # @!attribute [rw] product_type_l1
303
+ # @return [::String]
304
+ # Product type (1st level) in merchant's own [product
305
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
306
+ # @!attribute [rw] product_type_l2
307
+ # @return [::String]
308
+ # Product type (2nd level) in merchant's own [product
309
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
310
+ # @!attribute [rw] product_type_l3
311
+ # @return [::String]
312
+ # Product type (3rd level) in merchant's own [product
313
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
314
+ # @!attribute [rw] product_type_l4
315
+ # @return [::String]
316
+ # Product type (4th level) in merchant's own [product
317
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
318
+ # @!attribute [rw] product_type_l5
319
+ # @return [::String]
320
+ # Product type (5th level) in merchant's own [product
321
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
322
+ # @!attribute [rw] price
323
+ # @return [::Google::Shopping::Type::Price]
324
+ # Product price. Absent if the information about the price of the product is
325
+ # not available.
326
+ # @!attribute [rw] condition
327
+ # @return [::String]
328
+ # [Condition](https://support.google.com/merchants/answer/6324469) of the
329
+ # product.
330
+ # @!attribute [rw] availability
331
+ # @return [::String]
332
+ # [Availability](https://support.google.com/merchants/answer/6324448) of the
333
+ # product.
334
+ # @!attribute [rw] shipping_label
335
+ # @return [::String]
336
+ # Normalized [shipping
337
+ # label](https://support.google.com/merchants/answer/6324504) specified in
338
+ # the feed.
339
+ # @!attribute [rw] gtin
340
+ # @return [::Array<::String>]
341
+ # List of Global Trade Item Numbers (GTINs) of the product.
342
+ # @!attribute [rw] item_group_id
343
+ # @return [::String]
344
+ # Item group id provided by the merchant for grouping variants together.
345
+ # @!attribute [rw] thumbnail_link
346
+ # @return [::String]
347
+ # Link to the processed image of the product, hosted on the Google
348
+ # infrastructure.
349
+ # @!attribute [rw] creation_time
350
+ # @return [::Google::Protobuf::Timestamp]
351
+ # The time the merchant created the product in timestamp seconds.
352
+ # @!attribute [rw] expiration_date
353
+ # @return [::Google::Type::Date]
354
+ # Expiration date for the product, specified on insertion.
355
+ # @!attribute [rw] aggregated_reporting_context_status
356
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ProductView::AggregatedReportingContextStatus]
357
+ # Aggregated status.
358
+ # @!attribute [rw] item_issues
359
+ # @return [::Array<::Google::Shopping::Merchant::Reports::V1beta::ProductView::ItemIssue>]
360
+ # List of item issues for the product.
361
+ #
362
+ # **This field cannot be used for sorting the results.**
363
+ #
364
+ # **Only selected attributes of this field (for example,
365
+ # `item_issues.severity.aggregated_severity`) can be used for filtering the
366
+ # results.**
367
+ class ProductView
368
+ include ::Google::Protobuf::MessageExts
369
+ extend ::Google::Protobuf::MessageExts::ClassMethods
370
+
371
+ # Item issue associated with the product.
372
+ # @!attribute [rw] type
373
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ProductView::ItemIssue::ItemIssueType]
374
+ # Item issue type.
375
+ # @!attribute [rw] severity
376
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ProductView::ItemIssue::ItemIssueSeverity]
377
+ # Item issue severity.
378
+ # @!attribute [rw] resolution
379
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ProductView::ItemIssue::ItemIssueResolution]
380
+ # Item issue resolution.
381
+ class ItemIssue
382
+ include ::Google::Protobuf::MessageExts
383
+ extend ::Google::Protobuf::MessageExts::ClassMethods
384
+
385
+ # Issue type.
386
+ # @!attribute [rw] code
387
+ # @return [::String]
388
+ # Error code of the issue, equivalent to the `code` of [Product
389
+ # issues](https://developers.google.com/shopping-content/guides/product-issues).
390
+ # @!attribute [rw] canonical_attribute
391
+ # @return [::String]
392
+ # Canonical attribute name for attribute-specific issues.
393
+ class ItemIssueType
394
+ include ::Google::Protobuf::MessageExts
395
+ extend ::Google::Protobuf::MessageExts::ClassMethods
396
+ end
397
+
398
+ # How the issue affects the serving of the product.
399
+ # @!attribute [rw] severity_per_reporting_context
400
+ # @return [::Array<::Google::Shopping::Merchant::Reports::V1beta::ProductView::ItemIssue::ItemIssueSeverity::IssueSeverityPerReportingContext>]
401
+ # Issue severity per reporting context.
402
+ # @!attribute [rw] aggregated_severity
403
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ProductView::ItemIssue::ItemIssueSeverity::AggregatedIssueSeverity]
404
+ # Aggregated severity of the issue for all reporting contexts it affects.
405
+ #
406
+ # **This field can be used for filtering the results.**
407
+ class ItemIssueSeverity
408
+ include ::Google::Protobuf::MessageExts
409
+ extend ::Google::Protobuf::MessageExts::ClassMethods
410
+
411
+ # Issue severity per reporting context.
412
+ # @!attribute [rw] reporting_context
413
+ # @return [::Google::Shopping::Type::ReportingContext::ReportingContextEnum]
414
+ # Reporting context the issue applies to.
415
+ # @!attribute [rw] disapproved_countries
416
+ # @return [::Array<::String>]
417
+ # List of disapproved countries in the reporting context, represented
418
+ # in ISO 3166 format.
419
+ # @!attribute [rw] demoted_countries
420
+ # @return [::Array<::String>]
421
+ # List of demoted countries in the reporting context, represented in
422
+ # ISO 3166 format.
423
+ class IssueSeverityPerReportingContext
424
+ include ::Google::Protobuf::MessageExts
425
+ extend ::Google::Protobuf::MessageExts::ClassMethods
426
+ end
427
+
428
+ # Issue severity aggregated for all reporting contexts.
429
+ module AggregatedIssueSeverity
430
+ # Not specified.
431
+ AGGREGATED_ISSUE_SEVERITY_UNSPECIFIED = 0
432
+
433
+ # Issue disapproves the product in at least one reporting context.
434
+ DISAPPROVED = 1
435
+
436
+ # Issue demotes the product in all reporting contexts it affects.
437
+ DEMOTED = 2
438
+
439
+ # Issue resolution is `PENDING_PROCESSING`.
440
+ PENDING = 3
441
+ end
442
+ end
443
+
444
+ # How to resolve the issue.
445
+ module ItemIssueResolution
446
+ # Not specified.
447
+ ITEM_ISSUE_RESOLUTION_UNSPECIFIED = 0
448
+
449
+ # The merchant has to fix the issue.
450
+ MERCHANT_ACTION = 1
451
+
452
+ # The issue will be resolved automatically (for example, image crawl) or
453
+ # through a Google review. No merchant action is required now. Resolution
454
+ # might lead to another issue (for example, if crawl fails).
455
+ PENDING_PROCESSING = 2
456
+ end
457
+ end
458
+
459
+ # Status of the product aggregated for all reporting contexts.
460
+ #
461
+ # Here's an example of how the aggregated status is computed:
462
+ #
463
+ # Free listings | Shopping Ads | Status
464
+ # --------------|--------------|------------------------------
465
+ # Approved | Approved | ELIGIBLE
466
+ # Approved | Pending | ELIGIBLE
467
+ # Approved | Disapproved | ELIGIBLE_LIMITED
468
+ # Pending | Pending | PENDING
469
+ # Disapproved | Disapproved | NOT_ELIGIBLE_OR_DISAPPROVED
470
+ module AggregatedReportingContextStatus
471
+ # Not specified.
472
+ AGGREGATED_REPORTING_CONTEXT_STATUS_UNSPECIFIED = 0
473
+
474
+ # Product is not eligible or is disapproved for all reporting contexts.
475
+ NOT_ELIGIBLE_OR_DISAPPROVED = 1
476
+
477
+ # Product's status is pending in all reporting contexts.
478
+ PENDING = 2
479
+
480
+ # Product is eligible for some (but not all) reporting contexts.
481
+ ELIGIBLE_LIMITED = 3
482
+
483
+ # Product is eligible for all reporting contexts.
484
+ ELIGIBLE = 4
485
+ end
486
+ end
487
+
488
+ # Fields available for query in `price_competitiveness_product_view` table.
489
+ #
490
+ # [Price competitiveness](https://support.google.com/merchants/answer/9626903)
491
+ # report.
492
+ #
493
+ # Values are only set for fields requested explicitly in the request's search
494
+ # query.
495
+ # @!attribute [rw] report_country_code
496
+ # @return [::String]
497
+ # Country of the price benchmark. Represented in the ISO 3166 format.
498
+ #
499
+ # Required in the `SELECT` clause.
500
+ # @!attribute [rw] id
501
+ # @return [::String]
502
+ # REST ID of the product, in the form of
503
+ # `channel~languageCode~feedLabel~offerId`. Can be used to join data with the
504
+ # `product_view` table.
505
+ #
506
+ # Required in the `SELECT` clause.
507
+ # @!attribute [rw] offer_id
508
+ # @return [::String]
509
+ # Merchant-provided id of the product.
510
+ # @!attribute [rw] title
511
+ # @return [::String]
512
+ # Title of the product.
513
+ # @!attribute [rw] brand
514
+ # @return [::String]
515
+ # Brand of the product.
516
+ # @!attribute [rw] category_l1
517
+ # @return [::String]
518
+ # Product category (1st level) in [Google's product
519
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
520
+ # @!attribute [rw] category_l2
521
+ # @return [::String]
522
+ # Product category (2nd level) in [Google's product
523
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
524
+ # @!attribute [rw] category_l3
525
+ # @return [::String]
526
+ # Product category (3rd level) in [Google's product
527
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
528
+ # @!attribute [rw] category_l4
529
+ # @return [::String]
530
+ # Product category (4th level) in [Google's product
531
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
532
+ # @!attribute [rw] category_l5
533
+ # @return [::String]
534
+ # Product category (5th level) in [Google's product
535
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
536
+ # @!attribute [rw] product_type_l1
537
+ # @return [::String]
538
+ # Product type (1st level) in merchant's own [product
539
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
540
+ # @!attribute [rw] product_type_l2
541
+ # @return [::String]
542
+ # Product type (2nd level) in merchant's own [product
543
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
544
+ # @!attribute [rw] product_type_l3
545
+ # @return [::String]
546
+ # Product type (3rd level) in merchant's own [product
547
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
548
+ # @!attribute [rw] product_type_l4
549
+ # @return [::String]
550
+ # Product type (4th level) in merchant's own [product
551
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
552
+ # @!attribute [rw] product_type_l5
553
+ # @return [::String]
554
+ # Product type (5th level) in merchant's own [product
555
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
556
+ # @!attribute [rw] price
557
+ # @return [::Google::Shopping::Type::Price]
558
+ # Current price of the product.
559
+ # @!attribute [rw] benchmark_price
560
+ # @return [::Google::Shopping::Type::Price]
561
+ # Latest available price benchmark for the product's catalog in the benchmark
562
+ # country.
563
+ class PriceCompetitivenessProductView
564
+ include ::Google::Protobuf::MessageExts
565
+ extend ::Google::Protobuf::MessageExts::ClassMethods
566
+ end
567
+
568
+ # Fields available for query in `price_insights_product_view` table.
569
+ #
570
+ # [Price insights](https://support.google.com/merchants/answer/11916926)
571
+ # report.
572
+ #
573
+ # Values are only set for fields requested explicitly in the request's search
574
+ # query.
575
+ # @!attribute [rw] id
576
+ # @return [::String]
577
+ # REST ID of the product, in the form of
578
+ # `channel~languageCode~feedLabel~offerId`. Can be used to join data with the
579
+ # `product_view` table.
580
+ #
581
+ # Required in the `SELECT` clause.
582
+ # @!attribute [rw] offer_id
583
+ # @return [::String]
584
+ # Merchant-provided id of the product.
585
+ # @!attribute [rw] title
586
+ # @return [::String]
587
+ # Title of the product.
588
+ # @!attribute [rw] brand
589
+ # @return [::String]
590
+ # Brand of the product.
591
+ # @!attribute [rw] category_l1
592
+ # @return [::String]
593
+ # Product category (1st level) in [Google's product
594
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
595
+ # @!attribute [rw] category_l2
596
+ # @return [::String]
597
+ # Product category (2nd level) in [Google's product
598
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
599
+ # @!attribute [rw] category_l3
600
+ # @return [::String]
601
+ # Product category (3rd level) in [Google's product
602
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
603
+ # @!attribute [rw] category_l4
604
+ # @return [::String]
605
+ # Product category (4th level) in [Google's product
606
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
607
+ # @!attribute [rw] category_l5
608
+ # @return [::String]
609
+ # Product category (5th level) in [Google's product
610
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
611
+ # @!attribute [rw] product_type_l1
612
+ # @return [::String]
613
+ # Product type (1st level) in merchant's own [product
614
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
615
+ # @!attribute [rw] product_type_l2
616
+ # @return [::String]
617
+ # Product type (2nd level) in merchant's own [product
618
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
619
+ # @!attribute [rw] product_type_l3
620
+ # @return [::String]
621
+ # Product type (3rd level) in merchant's own [product
622
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
623
+ # @!attribute [rw] product_type_l4
624
+ # @return [::String]
625
+ # Product type (4th level) in merchant's own [product
626
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
627
+ # @!attribute [rw] product_type_l5
628
+ # @return [::String]
629
+ # Product type (5th level) in merchant's own [product
630
+ # taxonomy](https://support.google.com/merchants/answer/6324406).
631
+ # @!attribute [rw] price
632
+ # @return [::Google::Shopping::Type::Price]
633
+ # Current price of the product.
634
+ # @!attribute [rw] suggested_price
635
+ # @return [::Google::Shopping::Type::Price]
636
+ # Latest suggested price for the product.
637
+ # @!attribute [rw] predicted_impressions_change_fraction
638
+ # @return [::Float]
639
+ # Predicted change in impressions as a fraction after introducing the
640
+ # suggested price compared to current active price. For example, 0.05 is a 5%
641
+ # predicted increase in impressions.
642
+ # @!attribute [rw] predicted_clicks_change_fraction
643
+ # @return [::Float]
644
+ # Predicted change in clicks as a fraction after introducing the
645
+ # suggested price compared to current active price. For example, 0.05 is a 5%
646
+ # predicted increase in clicks.
647
+ # @!attribute [rw] predicted_conversions_change_fraction
648
+ # @return [::Float]
649
+ # Predicted change in conversions as a fraction after introducing the
650
+ # suggested price compared to current active price. For example, 0.05 is a 5%
651
+ # predicted increase in conversions).
652
+ class PriceInsightsProductView
653
+ include ::Google::Protobuf::MessageExts
654
+ extend ::Google::Protobuf::MessageExts::ClassMethods
655
+ end
656
+
657
+ # Fields available for query in `best_sellers_product_cluster_view` table.
658
+ #
659
+ # [Best sellers](https://support.google.com/merchants/answer/9488679) report
660
+ # with top product clusters. A product cluster is a grouping for different
661
+ # offers and variants that represent the same product, for example, Google
662
+ # Pixel 7.
663
+ #
664
+ # Values are only set for fields requested explicitly in the request's search
665
+ # query.
666
+ # @!attribute [rw] report_date
667
+ # @return [::Google::Type::Date]
668
+ # Report date. The value of this field can only be one of the following:
669
+ #
670
+ # * The first day of the week (Monday) for weekly reports,
671
+ # * The first day of the month for monthly reports.
672
+ #
673
+ # Required in the `SELECT` clause. If a `WHERE` condition on `report_date` is
674
+ # not specified in the query, the latest available weekly or monthly report
675
+ # is returned.
676
+ # @!attribute [rw] report_granularity
677
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ReportGranularity::ReportGranularityEnum]
678
+ # Granularity of the report. The ranking can be done over a week or a month
679
+ # timeframe.
680
+ #
681
+ # Required in the `SELECT` clause. Condition on `report_granularity` is
682
+ # required in the `WHERE` clause.
683
+ # @!attribute [rw] report_country_code
684
+ # @return [::String]
685
+ # Country where the ranking is calculated. Represented in the ISO 3166
686
+ # format.
687
+ #
688
+ # Required in the `SELECT` clause. Condition on `report_country_code` is
689
+ # required in the `WHERE` clause.
690
+ # @!attribute [rw] report_category_id
691
+ # @return [::Integer]
692
+ # Google product category ID to calculate the ranking for, represented in
693
+ # [Google's product
694
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
695
+ #
696
+ # Required in the `SELECT` clause. If a `WHERE` condition on
697
+ # `report_category_id` is not specified in the query, rankings for all
698
+ # top-level categories are returned.
699
+ # @!attribute [rw] title
700
+ # @return [::String]
701
+ # Title of the product cluster.
702
+ # @!attribute [rw] brand
703
+ # @return [::String]
704
+ # Brand of the product cluster.
705
+ # @!attribute [rw] category_l1
706
+ # @return [::String]
707
+ # Product category (1st level) of the product cluster, represented in
708
+ # [Google's product
709
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
710
+ # @!attribute [rw] category_l2
711
+ # @return [::String]
712
+ # Product category (2nd level) of the product cluster, represented in
713
+ # [Google's product
714
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
715
+ # @!attribute [rw] category_l3
716
+ # @return [::String]
717
+ # Product category (3rd level) of the product cluster, represented in
718
+ # [Google's product
719
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
720
+ # @!attribute [rw] category_l4
721
+ # @return [::String]
722
+ # Product category (4th level) of the product cluster, represented in
723
+ # [Google's product
724
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
725
+ # @!attribute [rw] category_l5
726
+ # @return [::String]
727
+ # Product category (5th level) of the product cluster, represented in
728
+ # [Google's product
729
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
730
+ # @!attribute [rw] variant_gtins
731
+ # @return [::Array<::String>]
732
+ # GTINs of example variants of the product cluster.
733
+ # @!attribute [rw] inventory_status
734
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::BestSellersProductClusterView::InventoryStatus]
735
+ # Whether the product cluster is `IN_STOCK` in your product feed in at least
736
+ # one of the countries, `OUT_OF_STOCK` in your product feed in all countries,
737
+ # or `NOT_IN_INVENTORY` at all.
738
+ #
739
+ # The field doesn't take the Best sellers report country filter into account.
740
+ # @!attribute [rw] brand_inventory_status
741
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::BestSellersProductClusterView::InventoryStatus]
742
+ # Whether there is at least one product of the brand currently `IN_STOCK` in
743
+ # your product feed in at least one of the countries, all products are
744
+ # `OUT_OF_STOCK` in your product feed in all countries, or
745
+ # `NOT_IN_INVENTORY`.
746
+ #
747
+ # The field doesn't take the Best sellers report country filter into account.
748
+ # @!attribute [rw] rank
749
+ # @return [::Integer]
750
+ # Popularity of the product cluster on Ads and organic surfaces, in the
751
+ # selected category and country, based on the estimated number of units sold.
752
+ # @!attribute [rw] previous_rank
753
+ # @return [::Integer]
754
+ # Popularity rank in the previous week or month.
755
+ # @!attribute [rw] relative_demand
756
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::RelativeDemand::RelativeDemandEnum]
757
+ # Estimated demand in relation to the product cluster with the highest
758
+ # popularity rank in the same category and country.
759
+ # @!attribute [rw] previous_relative_demand
760
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::RelativeDemand::RelativeDemandEnum]
761
+ # Estimated demand in relation to the product cluster with the highest
762
+ # popularity rank in the same category and country in the previous week or
763
+ # month.
764
+ # @!attribute [rw] relative_demand_change
765
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::RelativeDemandChangeType::RelativeDemandChangeTypeEnum]
766
+ # Change in the estimated demand. Whether it rose, sank or remained flat.
767
+ class BestSellersProductClusterView
768
+ include ::Google::Protobuf::MessageExts
769
+ extend ::Google::Protobuf::MessageExts::ClassMethods
770
+
771
+ # Status of the product cluster or brand in your inventory.
772
+ module InventoryStatus
773
+ # Not specified.
774
+ INVENTORY_STATUS_UNSPECIFIED = 0
775
+
776
+ # You have a product for this product cluster or brand in stock.
777
+ IN_STOCK = 1
778
+
779
+ # You have a product for this product cluster or brand in inventory but it
780
+ # is currently out of stock.
781
+ OUT_OF_STOCK = 2
782
+
783
+ # You do not have a product for this product cluster or brand in inventory.
784
+ NOT_IN_INVENTORY = 3
785
+ end
786
+ end
787
+
788
+ # Fields available for query in `best_sellers_brand_view` table.
789
+ #
790
+ # [Best sellers](https://support.google.com/merchants/answer/9488679) report
791
+ # with top brands.
792
+ #
793
+ # Values are only set for fields requested explicitly in the request's search
794
+ # query.
795
+ # @!attribute [rw] report_date
796
+ # @return [::Google::Type::Date]
797
+ # Report date. The value of this field can only be one of the following:
798
+ #
799
+ # * The first day of the week (Monday) for weekly reports,
800
+ # * The first day of the month for monthly reports.
801
+ #
802
+ # Required in the `SELECT` clause. If a `WHERE` condition on `report_date` is
803
+ # not specified in the query, the latest available weekly or monthly report
804
+ # is returned.
805
+ # @!attribute [rw] report_granularity
806
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::ReportGranularity::ReportGranularityEnum]
807
+ # Granularity of the report. The ranking can be done over a week or a month
808
+ # timeframe.
809
+ #
810
+ # Required in the `SELECT` clause. Condition on `report_granularity` is
811
+ # required in the `WHERE` clause.
812
+ # @!attribute [rw] report_country_code
813
+ # @return [::String]
814
+ # Country where the ranking is calculated. Represented in the ISO 3166
815
+ # format.
816
+ #
817
+ # Required in the `SELECT` clause. Condition on `report_country_code` is
818
+ # required in the `WHERE` clause.
819
+ # @!attribute [rw] report_category_id
820
+ # @return [::Integer]
821
+ # Google product category ID to calculate the ranking for, represented in
822
+ # [Google's product
823
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
824
+ #
825
+ # Required in the `SELECT` clause. If a `WHERE` condition on
826
+ # `report_category_id` is not specified in the query, rankings for all
827
+ # top-level categories are returned.
828
+ # @!attribute [rw] brand
829
+ # @return [::String]
830
+ # Name of the brand.
831
+ # @!attribute [rw] rank
832
+ # @return [::Integer]
833
+ # Popularity of the brand on Ads and organic surfaces, in the selected
834
+ # category and country, based on the estimated number of units sold.
835
+ # @!attribute [rw] previous_rank
836
+ # @return [::Integer]
837
+ # Popularity rank in the previous week or month.
838
+ # @!attribute [rw] relative_demand
839
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::RelativeDemand::RelativeDemandEnum]
840
+ # Estimated demand in relation to the brand with the highest popularity rank
841
+ # in the same category and country.
842
+ # @!attribute [rw] previous_relative_demand
843
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::RelativeDemand::RelativeDemandEnum]
844
+ # Estimated demand in relation to the brand with the highest popularity rank
845
+ # in the same category and country in the previous week or month.
846
+ # @!attribute [rw] relative_demand_change
847
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::RelativeDemandChangeType::RelativeDemandChangeTypeEnum]
848
+ # Change in the estimated demand. Whether it rose, sank or remained flat.
849
+ class BestSellersBrandView
850
+ include ::Google::Protobuf::MessageExts
851
+ extend ::Google::Protobuf::MessageExts::ClassMethods
852
+ end
853
+
854
+ # Fields available for query in `competitive_visibility_competitor_view` table.
855
+ #
856
+ # [Competitive
857
+ # visibility](https://support.google.com/merchants/answer/11366442) report with
858
+ # businesses with similar visibility.
859
+ #
860
+ # Values are only set for fields requested explicitly in the request's search
861
+ # query.
862
+ # @!attribute [rw] date
863
+ # @return [::Google::Type::Date]
864
+ # Date of this row.
865
+ #
866
+ # A condition on `date` is required in the `WHERE` clause.
867
+ # @!attribute [rw] domain
868
+ # @return [::String]
869
+ # Domain of your competitor or your domain, if 'is_your_domain' is true.
870
+ #
871
+ # Required in the `SELECT` clause. Cannot be filtered on in the 'WHERE'
872
+ # clause.
873
+ # @!attribute [rw] is_your_domain
874
+ # @return [::Boolean]
875
+ # True if this row contains data for your domain.
876
+ #
877
+ # Cannot be filtered on in the 'WHERE' clause.
878
+ # @!attribute [rw] report_country_code
879
+ # @return [::String]
880
+ # Country where impressions appeared.
881
+ #
882
+ # Required in the `SELECT` clause. A condition on `report_country_code` is
883
+ # required in the `WHERE` clause.
884
+ # @!attribute [rw] report_category_id
885
+ # @return [::Integer]
886
+ # Google product category ID to calculate the report for, represented in
887
+ # [Google's product
888
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
889
+ #
890
+ # Required in the `SELECT` clause. A condition on `report_category_id` is
891
+ # required in the `WHERE` clause.
892
+ # @!attribute [rw] traffic_source
893
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::TrafficSource::TrafficSourceEnum]
894
+ # Traffic source of impressions.
895
+ #
896
+ # Required in the `SELECT` clause.
897
+ # @!attribute [rw] rank
898
+ # @return [::Integer]
899
+ # Position of the domain in the similar businesses ranking for the selected
900
+ # keys (`date`, `report_category_id`, `report_country_code`,
901
+ # `traffic_source`) based on impressions. 1 is the highest.
902
+ #
903
+ # Cannot be filtered on in the 'WHERE' clause.
904
+ # @!attribute [rw] ads_organic_ratio
905
+ # @return [::Float]
906
+ # [Ads / organic ratio]
907
+ # (https://support.google.com/merchants/answer/11366442#zippy=%2Cads-free-ratio)
908
+ # shows how often the domain receives impressions from Shopping ads compared
909
+ # to organic traffic. The number is rounded and bucketed.
910
+ #
911
+ # Cannot be filtered on in the 'WHERE' clause.
912
+ # @!attribute [rw] page_overlap_rate
913
+ # @return [::Float]
914
+ # [Page overlap rate]
915
+ # (https://support.google.com/merchants/answer/11366442#zippy=%2Cpage-overlap-rate)
916
+ # shows how frequently competing retailers’ offers are shown together with
917
+ # your offers on the same page.
918
+ #
919
+ # Cannot be filtered on in the 'WHERE' clause.
920
+ # @!attribute [rw] higher_position_rate
921
+ # @return [::Float]
922
+ # [Higher position rate]
923
+ # (https://support.google.com/merchants/answer/11366442#zippy=%2Chigher-position-rate)
924
+ # shows how often a competitor’s offer got placed in a higher position on the
925
+ # page than your offer.
926
+ #
927
+ # Cannot be filtered on in the 'WHERE' clause.
928
+ # @!attribute [rw] relative_visibility
929
+ # @return [::Float]
930
+ # [Relative visibility]
931
+ # (https://support.google.com/merchants/answer/11366442#zippy=%2Crelative-visibility)
932
+ # shows how often your competitors’ offers are shown compared to your offers.
933
+ # In other words, this is the number of displayed impressions of a competitor
934
+ # retailer divided by the number of your displayed impressions during a
935
+ # selected time range for a selected product category and country.
936
+ #
937
+ # Cannot be filtered on in the 'WHERE' clause.
938
+ class CompetitiveVisibilityCompetitorView
939
+ include ::Google::Protobuf::MessageExts
940
+ extend ::Google::Protobuf::MessageExts::ClassMethods
941
+ end
942
+
943
+ # Fields available for query in `competitive_visibility_top_merchant_view`
944
+ # table.
945
+ #
946
+ # [Competitive
947
+ # visibility](https://support.google.com/merchants/answer/11366442) report with
948
+ # business with highest visibility.
949
+ #
950
+ # Values are only set for fields requested explicitly in the request's search
951
+ # query.
952
+ # @!attribute [rw] date
953
+ # @return [::Google::Type::Date]
954
+ # Date of this row.
955
+ #
956
+ # Cannot be selected in the `SELECT` clause. A condition on `date` is
957
+ # required in the `WHERE` clause.
958
+ # @!attribute [rw] domain
959
+ # @return [::String]
960
+ # Domain of your competitor or your domain, if 'is_your_domain' is true.
961
+ #
962
+ # Required in the `SELECT` clause. Cannot be filtered on in the 'WHERE'
963
+ # clause.
964
+ # @!attribute [rw] is_your_domain
965
+ # @return [::Boolean]
966
+ # True if this row contains data for your domain.
967
+ #
968
+ # Cannot be filtered on in the 'WHERE' clause.
969
+ # @!attribute [rw] report_country_code
970
+ # @return [::String]
971
+ # Country where impressions appeared.
972
+ #
973
+ # Required in the `SELECT` clause. A condition on `report_country_code` is
974
+ # required in the `WHERE` clause.
975
+ # @!attribute [rw] report_category_id
976
+ # @return [::Integer]
977
+ # Google product category ID to calculate the report for, represented in
978
+ # [Google's product
979
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
980
+ #
981
+ # Required in the `SELECT` clause. A condition on `report_category_id` is
982
+ # required in the `WHERE` clause.
983
+ # @!attribute [rw] traffic_source
984
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::TrafficSource::TrafficSourceEnum]
985
+ # Traffic source of impressions.
986
+ #
987
+ # Required in the `SELECT` clause.
988
+ # @!attribute [rw] rank
989
+ # @return [::Integer]
990
+ # Position of the domain in the top merchants ranking for the selected keys
991
+ # (`date`, `report_category_id`, `report_country_code`, `traffic_source`)
992
+ # based on impressions. 1 is the highest.
993
+ #
994
+ # Cannot be filtered on in the 'WHERE' clause.
995
+ # @!attribute [rw] ads_organic_ratio
996
+ # @return [::Float]
997
+ # [Ads / organic ratio]
998
+ # (https://support.google.com/merchants/answer/11366442#zippy=%2Cads-free-ratio)
999
+ # shows how often the domain receives impressions from Shopping ads compared
1000
+ # to organic traffic. The number is rounded and bucketed.
1001
+ #
1002
+ # Cannot be filtered on in the 'WHERE' clause.
1003
+ # @!attribute [rw] page_overlap_rate
1004
+ # @return [::Float]
1005
+ # [Page overlap rate]
1006
+ # (https://support.google.com/merchants/answer/11366442#zippy=%2Cpage-overlap-rate)
1007
+ # shows how frequently competing retailers’ offers are shown together with
1008
+ # your offers on the same page.
1009
+ #
1010
+ # Cannot be filtered on in the 'WHERE' clause.
1011
+ # @!attribute [rw] higher_position_rate
1012
+ # @return [::Float]
1013
+ # [Higher position rate]
1014
+ # (https://support.google.com/merchants/answer/11366442#zippy=%2Chigher-position-rate)
1015
+ # shows how often a competitor’s offer got placed in a higher position on the
1016
+ # page than your offer.
1017
+ #
1018
+ # Cannot be filtered on in the 'WHERE' clause.
1019
+ class CompetitiveVisibilityTopMerchantView
1020
+ include ::Google::Protobuf::MessageExts
1021
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1022
+ end
1023
+
1024
+ # Fields available for query in `competitive_visibility_benchmark_view` table.
1025
+ #
1026
+ # [Competitive
1027
+ # visibility](https://support.google.com/merchants/answer/11366442) report with
1028
+ # the category benchmark.
1029
+ #
1030
+ # Values are only set for fields requested explicitly in the request's search
1031
+ # query.
1032
+ # @!attribute [rw] date
1033
+ # @return [::Google::Type::Date]
1034
+ # Date of this row.
1035
+ #
1036
+ # Required in the `SELECT` clause. A condition on `date` is required in the
1037
+ # `WHERE` clause.
1038
+ # @!attribute [rw] report_country_code
1039
+ # @return [::String]
1040
+ # Country where impressions appeared.
1041
+ #
1042
+ # Required in the `SELECT` clause. A condition on `report_country_code` is
1043
+ # required in the `WHERE` clause.
1044
+ # @!attribute [rw] report_category_id
1045
+ # @return [::Integer]
1046
+ # Google product category ID to calculate the report for, represented in
1047
+ # [Google's product
1048
+ # taxonomy](https://support.google.com/merchants/answer/6324436).
1049
+ #
1050
+ # Required in the `SELECT` clause. A condition on `report_category_id` is
1051
+ # required in the `WHERE` clause.
1052
+ # @!attribute [rw] traffic_source
1053
+ # @return [::Google::Shopping::Merchant::Reports::V1beta::TrafficSource::TrafficSourceEnum]
1054
+ # Traffic source of impressions.
1055
+ #
1056
+ # Required in the `SELECT` clause.
1057
+ # @!attribute [rw] your_domain_visibility_trend
1058
+ # @return [::Float]
1059
+ # Change in visibility based on impressions for your domain with respect to
1060
+ # the start of the selected time range (or first day with non-zero
1061
+ # impressions).
1062
+ #
1063
+ # Cannot be filtered on in the 'WHERE' clause.
1064
+ # @!attribute [rw] category_benchmark_visibility_trend
1065
+ # @return [::Float]
1066
+ # Change in visibility based on impressions with respect to the start of the
1067
+ # selected time range (or first day with non-zero impressions) for a
1068
+ # combined set of merchants with highest visibility approximating the
1069
+ # market.
1070
+ #
1071
+ # Cannot be filtered on in the 'WHERE' clause.
1072
+ class CompetitiveVisibilityBenchmarkView
1073
+ include ::Google::Protobuf::MessageExts
1074
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1075
+ end
1076
+
1077
+ # Marketing method used to promote your products on Google (organic versus
1078
+ # ads).
1079
+ class MarketingMethod
1080
+ include ::Google::Protobuf::MessageExts
1081
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1082
+
1083
+ # Marketing method values.
1084
+ module MarketingMethodEnum
1085
+ # Not specified.
1086
+ MARKETING_METHOD_ENUM_UNSPECIFIED = 0
1087
+
1088
+ # Organic marketing.
1089
+ ORGANIC = 1
1090
+
1091
+ # Ads-based marketing.
1092
+ ADS = 2
1093
+ end
1094
+ end
1095
+
1096
+ # Granularity of the Best sellers report. Best sellers reports are computed
1097
+ # over a week and a month timeframe.
1098
+ class ReportGranularity
1099
+ include ::Google::Protobuf::MessageExts
1100
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1101
+
1102
+ # Report granularity values.
1103
+ module ReportGranularityEnum
1104
+ # Not specified.
1105
+ REPORT_GRANULARITY_ENUM_UNSPECIFIED = 0
1106
+
1107
+ # Report is computed over a week timeframe.
1108
+ WEEKLY = 1
1109
+
1110
+ # Report is computed over a month timeframe.
1111
+ MONTHLY = 2
1112
+ end
1113
+ end
1114
+
1115
+ # Relative demand of a product cluster or brand in the Best sellers report.
1116
+ class RelativeDemand
1117
+ include ::Google::Protobuf::MessageExts
1118
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1119
+
1120
+ # Relative demand values.
1121
+ module RelativeDemandEnum
1122
+ # Not specified.
1123
+ RELATIVE_DEMAND_ENUM_UNSPECIFIED = 0
1124
+
1125
+ # Demand is 0-5% of the demand of the highest ranked product cluster or
1126
+ # brand.
1127
+ VERY_LOW = 10
1128
+
1129
+ # Demand is 6-10% of the demand of the highest ranked product cluster or
1130
+ # brand.
1131
+ LOW = 20
1132
+
1133
+ # Demand is 11-20% of the demand of the highest ranked product cluster or
1134
+ # brand.
1135
+ MEDIUM = 30
1136
+
1137
+ # Demand is 21-50% of the demand of the highest ranked product cluster or
1138
+ # brand.
1139
+ HIGH = 40
1140
+
1141
+ # Demand is 51-100% of the demand of the highest ranked product cluster or
1142
+ # brand.
1143
+ VERY_HIGH = 50
1144
+ end
1145
+ end
1146
+
1147
+ # Relative demand of a product cluster or brand in the Best sellers report
1148
+ # compared to the previous time period.
1149
+ class RelativeDemandChangeType
1150
+ include ::Google::Protobuf::MessageExts
1151
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1152
+
1153
+ # Relative demand change type values.
1154
+ module RelativeDemandChangeTypeEnum
1155
+ # Not specified.
1156
+ RELATIVE_DEMAND_CHANGE_TYPE_ENUM_UNSPECIFIED = 0
1157
+
1158
+ # Relative demand is lower than the previous time period.
1159
+ SINKER = 1
1160
+
1161
+ # Relative demand is equal to the previous time period.
1162
+ FLAT = 2
1163
+
1164
+ # Relative demand is higher than the previous time period.
1165
+ RISER = 3
1166
+ end
1167
+ end
1168
+
1169
+ # Traffic source of impressions in the Competitive visibility report.
1170
+ class TrafficSource
1171
+ include ::Google::Protobuf::MessageExts
1172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1173
+
1174
+ # Traffic source values.
1175
+ module TrafficSourceEnum
1176
+ # Not specified.
1177
+ TRAFFIC_SOURCE_ENUM_UNSPECIFIED = 0
1178
+
1179
+ # Organic traffic.
1180
+ ORGANIC = 1
1181
+
1182
+ # Traffic from ads.
1183
+ ADS = 2
1184
+
1185
+ # Organic and ads traffic.
1186
+ ALL = 3
1187
+ end
1188
+ end
1189
+ end
1190
+ end
1191
+ end
1192
+ end
1193
+ end