google-apis-merchantapi_reports_v1beta 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.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google/apis/merchantapi_reports_v1beta/classes.rb +1830 -0
- data/lib/google/apis/merchantapi_reports_v1beta/gem_version.rb +28 -0
- data/lib/google/apis/merchantapi_reports_v1beta/representations.rb +507 -0
- data/lib/google/apis/merchantapi_reports_v1beta/service.rb +99 -0
- data/lib/google/apis/merchantapi_reports_v1beta.rb +36 -0
- data/lib/google-apis-merchantapi_reports_v1beta.rb +15 -0
- metadata +82 -0
|
@@ -0,0 +1,1830 @@
|
|
|
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 MerchantapiReportsV1beta
|
|
24
|
+
|
|
25
|
+
# Fields available for query in `best_sellers_brand_view` table. [Best sellers](
|
|
26
|
+
# https://support.google.com/merchants/answer/9488679) report with top brands.
|
|
27
|
+
# Values are only set for fields requested explicitly in the request's search
|
|
28
|
+
# query.
|
|
29
|
+
class BestSellersBrandView
|
|
30
|
+
include Google::Apis::Core::Hashable
|
|
31
|
+
|
|
32
|
+
# Name of the brand.
|
|
33
|
+
# Corresponds to the JSON property `brand`
|
|
34
|
+
# @return [String]
|
|
35
|
+
attr_accessor :brand
|
|
36
|
+
|
|
37
|
+
# Popularity rank in the previous week or month.
|
|
38
|
+
# Corresponds to the JSON property `previousRank`
|
|
39
|
+
# @return [Fixnum]
|
|
40
|
+
attr_accessor :previous_rank
|
|
41
|
+
|
|
42
|
+
# Estimated demand in relation to the brand with the highest popularity rank in
|
|
43
|
+
# the same category and country in the previous week or month.
|
|
44
|
+
# Corresponds to the JSON property `previousRelativeDemand`
|
|
45
|
+
# @return [String]
|
|
46
|
+
attr_accessor :previous_relative_demand
|
|
47
|
+
|
|
48
|
+
# Popularity of the brand on Ads and organic surfaces, in the selected category
|
|
49
|
+
# and country, based on the estimated number of units sold.
|
|
50
|
+
# Corresponds to the JSON property `rank`
|
|
51
|
+
# @return [Fixnum]
|
|
52
|
+
attr_accessor :rank
|
|
53
|
+
|
|
54
|
+
# Estimated demand in relation to the brand with the highest popularity rank in
|
|
55
|
+
# the same category and country.
|
|
56
|
+
# Corresponds to the JSON property `relativeDemand`
|
|
57
|
+
# @return [String]
|
|
58
|
+
attr_accessor :relative_demand
|
|
59
|
+
|
|
60
|
+
# Change in the estimated demand. Whether it rose, sank or remained flat.
|
|
61
|
+
# Corresponds to the JSON property `relativeDemandChange`
|
|
62
|
+
# @return [String]
|
|
63
|
+
attr_accessor :relative_demand_change
|
|
64
|
+
|
|
65
|
+
# Google product category ID to calculate the ranking for, represented in [
|
|
66
|
+
# Google's product taxonomy](https://support.google.com/merchants/answer/6324436)
|
|
67
|
+
# . Required in the `SELECT` clause. If a `WHERE` condition on `
|
|
68
|
+
# report_category_id` is not specified in the query, rankings for all top-level
|
|
69
|
+
# categories are returned.
|
|
70
|
+
# Corresponds to the JSON property `reportCategoryId`
|
|
71
|
+
# @return [Fixnum]
|
|
72
|
+
attr_accessor :report_category_id
|
|
73
|
+
|
|
74
|
+
# Country where the ranking is calculated. Represented in the ISO 3166 format.
|
|
75
|
+
# Required in the `SELECT` clause. Condition on `report_country_code` is
|
|
76
|
+
# required in the `WHERE` clause.
|
|
77
|
+
# Corresponds to the JSON property `reportCountryCode`
|
|
78
|
+
# @return [String]
|
|
79
|
+
attr_accessor :report_country_code
|
|
80
|
+
|
|
81
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
82
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
83
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
84
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
85
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
86
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
87
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
88
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
89
|
+
# Corresponds to the JSON property `reportDate`
|
|
90
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
91
|
+
attr_accessor :report_date
|
|
92
|
+
|
|
93
|
+
# Granularity of the report. The ranking can be done over a week or a month
|
|
94
|
+
# timeframe. Required in the `SELECT` clause. Condition on `report_granularity`
|
|
95
|
+
# is required in the `WHERE` clause.
|
|
96
|
+
# Corresponds to the JSON property `reportGranularity`
|
|
97
|
+
# @return [String]
|
|
98
|
+
attr_accessor :report_granularity
|
|
99
|
+
|
|
100
|
+
def initialize(**args)
|
|
101
|
+
update!(**args)
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
# Update properties of this object
|
|
105
|
+
def update!(**args)
|
|
106
|
+
@brand = args[:brand] if args.key?(:brand)
|
|
107
|
+
@previous_rank = args[:previous_rank] if args.key?(:previous_rank)
|
|
108
|
+
@previous_relative_demand = args[:previous_relative_demand] if args.key?(:previous_relative_demand)
|
|
109
|
+
@rank = args[:rank] if args.key?(:rank)
|
|
110
|
+
@relative_demand = args[:relative_demand] if args.key?(:relative_demand)
|
|
111
|
+
@relative_demand_change = args[:relative_demand_change] if args.key?(:relative_demand_change)
|
|
112
|
+
@report_category_id = args[:report_category_id] if args.key?(:report_category_id)
|
|
113
|
+
@report_country_code = args[:report_country_code] if args.key?(:report_country_code)
|
|
114
|
+
@report_date = args[:report_date] if args.key?(:report_date)
|
|
115
|
+
@report_granularity = args[:report_granularity] if args.key?(:report_granularity)
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
# Fields available for query in `best_sellers_product_cluster_view` table. [Best
|
|
120
|
+
# sellers](https://support.google.com/merchants/answer/9488679) report with top
|
|
121
|
+
# product clusters. A product cluster is a grouping for different offers and
|
|
122
|
+
# variants that represent the same product, for example, Google Pixel 7. Values
|
|
123
|
+
# are only set for fields requested explicitly in the request's search query.
|
|
124
|
+
class BestSellersProductClusterView
|
|
125
|
+
include Google::Apis::Core::Hashable
|
|
126
|
+
|
|
127
|
+
# Brand of the product cluster.
|
|
128
|
+
# Corresponds to the JSON property `brand`
|
|
129
|
+
# @return [String]
|
|
130
|
+
attr_accessor :brand
|
|
131
|
+
|
|
132
|
+
# Whether there is at least one product of the brand currently `IN_STOCK` in
|
|
133
|
+
# your product data source in at least one of the countries, all products are `
|
|
134
|
+
# OUT_OF_STOCK` in your product data source in all countries, or `
|
|
135
|
+
# NOT_IN_INVENTORY`. The field doesn't take the Best sellers report country
|
|
136
|
+
# filter into account.
|
|
137
|
+
# Corresponds to the JSON property `brandInventoryStatus`
|
|
138
|
+
# @return [String]
|
|
139
|
+
attr_accessor :brand_inventory_status
|
|
140
|
+
|
|
141
|
+
# Product category (1st level) of the product cluster, represented in [Google's
|
|
142
|
+
# product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
143
|
+
# Corresponds to the JSON property `categoryL1`
|
|
144
|
+
# @return [String]
|
|
145
|
+
attr_accessor :category_l1
|
|
146
|
+
|
|
147
|
+
# Product category (2nd level) of the product cluster, represented in [Google's
|
|
148
|
+
# product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
149
|
+
# Corresponds to the JSON property `categoryL2`
|
|
150
|
+
# @return [String]
|
|
151
|
+
attr_accessor :category_l2
|
|
152
|
+
|
|
153
|
+
# Product category (3rd level) of the product cluster, represented in [Google's
|
|
154
|
+
# product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
155
|
+
# Corresponds to the JSON property `categoryL3`
|
|
156
|
+
# @return [String]
|
|
157
|
+
attr_accessor :category_l3
|
|
158
|
+
|
|
159
|
+
# Product category (4th level) of the product cluster, represented in [Google's
|
|
160
|
+
# product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
161
|
+
# Corresponds to the JSON property `categoryL4`
|
|
162
|
+
# @return [String]
|
|
163
|
+
attr_accessor :category_l4
|
|
164
|
+
|
|
165
|
+
# Product category (5th level) of the product cluster, represented in [Google's
|
|
166
|
+
# product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
167
|
+
# Corresponds to the JSON property `categoryL5`
|
|
168
|
+
# @return [String]
|
|
169
|
+
attr_accessor :category_l5
|
|
170
|
+
|
|
171
|
+
# Whether the product cluster is `IN_STOCK` in your product data source in at
|
|
172
|
+
# least one of the countries, `OUT_OF_STOCK` in your product data source in all
|
|
173
|
+
# countries, or `NOT_IN_INVENTORY` at all. The field doesn't take the Best
|
|
174
|
+
# sellers report country filter into account.
|
|
175
|
+
# Corresponds to the JSON property `inventoryStatus`
|
|
176
|
+
# @return [String]
|
|
177
|
+
attr_accessor :inventory_status
|
|
178
|
+
|
|
179
|
+
# Popularity rank in the previous week or month.
|
|
180
|
+
# Corresponds to the JSON property `previousRank`
|
|
181
|
+
# @return [Fixnum]
|
|
182
|
+
attr_accessor :previous_rank
|
|
183
|
+
|
|
184
|
+
# Estimated demand in relation to the product cluster with the highest
|
|
185
|
+
# popularity rank in the same category and country in the previous week or month.
|
|
186
|
+
# Corresponds to the JSON property `previousRelativeDemand`
|
|
187
|
+
# @return [String]
|
|
188
|
+
attr_accessor :previous_relative_demand
|
|
189
|
+
|
|
190
|
+
# Popularity of the product cluster on Ads and organic surfaces, in the selected
|
|
191
|
+
# category and country, based on the estimated number of units sold.
|
|
192
|
+
# Corresponds to the JSON property `rank`
|
|
193
|
+
# @return [Fixnum]
|
|
194
|
+
attr_accessor :rank
|
|
195
|
+
|
|
196
|
+
# Estimated demand in relation to the product cluster with the highest
|
|
197
|
+
# popularity rank in the same category and country.
|
|
198
|
+
# Corresponds to the JSON property `relativeDemand`
|
|
199
|
+
# @return [String]
|
|
200
|
+
attr_accessor :relative_demand
|
|
201
|
+
|
|
202
|
+
# Change in the estimated demand. Whether it rose, sank or remained flat.
|
|
203
|
+
# Corresponds to the JSON property `relativeDemandChange`
|
|
204
|
+
# @return [String]
|
|
205
|
+
attr_accessor :relative_demand_change
|
|
206
|
+
|
|
207
|
+
# Google product category ID to calculate the ranking for, represented in [
|
|
208
|
+
# Google's product taxonomy](https://support.google.com/merchants/answer/6324436)
|
|
209
|
+
# . Required in the `SELECT` clause. If a `WHERE` condition on `
|
|
210
|
+
# report_category_id` is not specified in the query, rankings for all top-level
|
|
211
|
+
# categories are returned.
|
|
212
|
+
# Corresponds to the JSON property `reportCategoryId`
|
|
213
|
+
# @return [Fixnum]
|
|
214
|
+
attr_accessor :report_category_id
|
|
215
|
+
|
|
216
|
+
# Country where the ranking is calculated. Represented in the ISO 3166 format.
|
|
217
|
+
# Required in the `SELECT` clause. Condition on `report_country_code` is
|
|
218
|
+
# required in the `WHERE` clause.
|
|
219
|
+
# Corresponds to the JSON property `reportCountryCode`
|
|
220
|
+
# @return [String]
|
|
221
|
+
attr_accessor :report_country_code
|
|
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 `reportDate`
|
|
232
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
233
|
+
attr_accessor :report_date
|
|
234
|
+
|
|
235
|
+
# Granularity of the report. The ranking can be done over a week or a month
|
|
236
|
+
# timeframe. Required in the `SELECT` clause. Condition on `report_granularity`
|
|
237
|
+
# is required in the `WHERE` clause.
|
|
238
|
+
# Corresponds to the JSON property `reportGranularity`
|
|
239
|
+
# @return [String]
|
|
240
|
+
attr_accessor :report_granularity
|
|
241
|
+
|
|
242
|
+
# Title of the product cluster.
|
|
243
|
+
# Corresponds to the JSON property `title`
|
|
244
|
+
# @return [String]
|
|
245
|
+
attr_accessor :title
|
|
246
|
+
|
|
247
|
+
# GTINs of example variants of the product cluster.
|
|
248
|
+
# Corresponds to the JSON property `variantGtins`
|
|
249
|
+
# @return [Array<String>]
|
|
250
|
+
attr_accessor :variant_gtins
|
|
251
|
+
|
|
252
|
+
def initialize(**args)
|
|
253
|
+
update!(**args)
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
# Update properties of this object
|
|
257
|
+
def update!(**args)
|
|
258
|
+
@brand = args[:brand] if args.key?(:brand)
|
|
259
|
+
@brand_inventory_status = args[:brand_inventory_status] if args.key?(:brand_inventory_status)
|
|
260
|
+
@category_l1 = args[:category_l1] if args.key?(:category_l1)
|
|
261
|
+
@category_l2 = args[:category_l2] if args.key?(:category_l2)
|
|
262
|
+
@category_l3 = args[:category_l3] if args.key?(:category_l3)
|
|
263
|
+
@category_l4 = args[:category_l4] if args.key?(:category_l4)
|
|
264
|
+
@category_l5 = args[:category_l5] if args.key?(:category_l5)
|
|
265
|
+
@inventory_status = args[:inventory_status] if args.key?(:inventory_status)
|
|
266
|
+
@previous_rank = args[:previous_rank] if args.key?(:previous_rank)
|
|
267
|
+
@previous_relative_demand = args[:previous_relative_demand] if args.key?(:previous_relative_demand)
|
|
268
|
+
@rank = args[:rank] if args.key?(:rank)
|
|
269
|
+
@relative_demand = args[:relative_demand] if args.key?(:relative_demand)
|
|
270
|
+
@relative_demand_change = args[:relative_demand_change] if args.key?(:relative_demand_change)
|
|
271
|
+
@report_category_id = args[:report_category_id] if args.key?(:report_category_id)
|
|
272
|
+
@report_country_code = args[:report_country_code] if args.key?(:report_country_code)
|
|
273
|
+
@report_date = args[:report_date] if args.key?(:report_date)
|
|
274
|
+
@report_granularity = args[:report_granularity] if args.key?(:report_granularity)
|
|
275
|
+
@title = args[:title] if args.key?(:title)
|
|
276
|
+
@variant_gtins = args[:variant_gtins] if args.key?(:variant_gtins)
|
|
277
|
+
end
|
|
278
|
+
end
|
|
279
|
+
|
|
280
|
+
# Fields available for query in `competitive_visibility_benchmark_view` table. [
|
|
281
|
+
# Competitive visibility](https://support.google.com/merchants/answer/11366442)
|
|
282
|
+
# report with the category benchmark. Values are only set for fields requested
|
|
283
|
+
# explicitly in the request's search query.
|
|
284
|
+
class CompetitiveVisibilityBenchmarkView
|
|
285
|
+
include Google::Apis::Core::Hashable
|
|
286
|
+
|
|
287
|
+
# Change in visibility based on impressions with respect to the start of the
|
|
288
|
+
# selected time range (or first day with non-zero impressions) for a combined
|
|
289
|
+
# set of merchants with highest visibility approximating the market. Cannot be
|
|
290
|
+
# filtered on in the 'WHERE' clause.
|
|
291
|
+
# Corresponds to the JSON property `categoryBenchmarkVisibilityTrend`
|
|
292
|
+
# @return [Float]
|
|
293
|
+
attr_accessor :category_benchmark_visibility_trend
|
|
294
|
+
|
|
295
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
296
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
297
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
298
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
299
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
300
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
301
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
302
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
303
|
+
# Corresponds to the JSON property `date`
|
|
304
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
305
|
+
attr_accessor :date
|
|
306
|
+
|
|
307
|
+
# Google product category ID to calculate the report for, represented in [Google'
|
|
308
|
+
# s product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
309
|
+
# Required in the `SELECT` clause. A condition on `report_category_id` is
|
|
310
|
+
# required in the `WHERE` clause.
|
|
311
|
+
# Corresponds to the JSON property `reportCategoryId`
|
|
312
|
+
# @return [Fixnum]
|
|
313
|
+
attr_accessor :report_category_id
|
|
314
|
+
|
|
315
|
+
# Country where impressions appeared. Required in the `SELECT` clause. A
|
|
316
|
+
# condition on `report_country_code` is required in the `WHERE` clause.
|
|
317
|
+
# Corresponds to the JSON property `reportCountryCode`
|
|
318
|
+
# @return [String]
|
|
319
|
+
attr_accessor :report_country_code
|
|
320
|
+
|
|
321
|
+
# Traffic source of impressions. Required in the `SELECT` clause.
|
|
322
|
+
# Corresponds to the JSON property `trafficSource`
|
|
323
|
+
# @return [String]
|
|
324
|
+
attr_accessor :traffic_source
|
|
325
|
+
|
|
326
|
+
# Change in visibility based on impressions for your domain with respect to the
|
|
327
|
+
# start of the selected time range (or first day with non-zero impressions).
|
|
328
|
+
# Cannot be filtered on in the 'WHERE' clause.
|
|
329
|
+
# Corresponds to the JSON property `yourDomainVisibilityTrend`
|
|
330
|
+
# @return [Float]
|
|
331
|
+
attr_accessor :your_domain_visibility_trend
|
|
332
|
+
|
|
333
|
+
def initialize(**args)
|
|
334
|
+
update!(**args)
|
|
335
|
+
end
|
|
336
|
+
|
|
337
|
+
# Update properties of this object
|
|
338
|
+
def update!(**args)
|
|
339
|
+
@category_benchmark_visibility_trend = args[:category_benchmark_visibility_trend] if args.key?(:category_benchmark_visibility_trend)
|
|
340
|
+
@date = args[:date] if args.key?(:date)
|
|
341
|
+
@report_category_id = args[:report_category_id] if args.key?(:report_category_id)
|
|
342
|
+
@report_country_code = args[:report_country_code] if args.key?(:report_country_code)
|
|
343
|
+
@traffic_source = args[:traffic_source] if args.key?(:traffic_source)
|
|
344
|
+
@your_domain_visibility_trend = args[:your_domain_visibility_trend] if args.key?(:your_domain_visibility_trend)
|
|
345
|
+
end
|
|
346
|
+
end
|
|
347
|
+
|
|
348
|
+
# Fields available for query in `competitive_visibility_competitor_view` table. [
|
|
349
|
+
# Competitive visibility](https://support.google.com/merchants/answer/11366442)
|
|
350
|
+
# report with businesses with similar visibility. Values are only set for fields
|
|
351
|
+
# requested explicitly in the request's search query.
|
|
352
|
+
class CompetitiveVisibilityCompetitorView
|
|
353
|
+
include Google::Apis::Core::Hashable
|
|
354
|
+
|
|
355
|
+
# [Ads / organic ratio] (https://support.google.com/merchants/answer/11366442#
|
|
356
|
+
# zippy=%2Cads-free-ratio) shows how often the domain receives impressions from
|
|
357
|
+
# Shopping ads compared to organic traffic. The number is rounded and bucketed.
|
|
358
|
+
# Cannot be filtered on in the 'WHERE' clause.
|
|
359
|
+
# Corresponds to the JSON property `adsOrganicRatio`
|
|
360
|
+
# @return [Float]
|
|
361
|
+
attr_accessor :ads_organic_ratio
|
|
362
|
+
|
|
363
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
364
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
365
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
366
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
367
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
368
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
369
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
370
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
371
|
+
# Corresponds to the JSON property `date`
|
|
372
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
373
|
+
attr_accessor :date
|
|
374
|
+
|
|
375
|
+
# Domain of your competitor or your domain, if 'is_your_domain' is true.
|
|
376
|
+
# Required in the `SELECT` clause. Cannot be filtered on in the 'WHERE' clause.
|
|
377
|
+
# Corresponds to the JSON property `domain`
|
|
378
|
+
# @return [String]
|
|
379
|
+
attr_accessor :domain
|
|
380
|
+
|
|
381
|
+
# [Higher position rate] (https://support.google.com/merchants/answer/11366442#
|
|
382
|
+
# zippy=%2Chigher-position-rate) shows how often a competitor’s offer got placed
|
|
383
|
+
# in a higher position on the page than your offer. Cannot be filtered on in the
|
|
384
|
+
# 'WHERE' clause.
|
|
385
|
+
# Corresponds to the JSON property `higherPositionRate`
|
|
386
|
+
# @return [Float]
|
|
387
|
+
attr_accessor :higher_position_rate
|
|
388
|
+
|
|
389
|
+
# True if this row contains data for your domain. Cannot be filtered on in the '
|
|
390
|
+
# WHERE' clause.
|
|
391
|
+
# Corresponds to the JSON property `isYourDomain`
|
|
392
|
+
# @return [Boolean]
|
|
393
|
+
attr_accessor :is_your_domain
|
|
394
|
+
alias_method :is_your_domain?, :is_your_domain
|
|
395
|
+
|
|
396
|
+
# [Page overlap rate] (https://support.google.com/merchants/answer/11366442#
|
|
397
|
+
# zippy=%2Cpage-overlap-rate) shows how frequently competing retailers’ offers
|
|
398
|
+
# are shown together with your offers on the same page. Cannot be filtered on in
|
|
399
|
+
# the 'WHERE' clause.
|
|
400
|
+
# Corresponds to the JSON property `pageOverlapRate`
|
|
401
|
+
# @return [Float]
|
|
402
|
+
attr_accessor :page_overlap_rate
|
|
403
|
+
|
|
404
|
+
# Position of the domain in the similar businesses ranking for the selected keys
|
|
405
|
+
# (`date`, `report_category_id`, `report_country_code`, `traffic_source`) based
|
|
406
|
+
# on impressions. 1 is the highest. Cannot be filtered on in the 'WHERE' clause.
|
|
407
|
+
# Corresponds to the JSON property `rank`
|
|
408
|
+
# @return [Fixnum]
|
|
409
|
+
attr_accessor :rank
|
|
410
|
+
|
|
411
|
+
# [Relative visibility] (https://support.google.com/merchants/answer/11366442#
|
|
412
|
+
# zippy=%2Crelative-visibility) shows how often your competitors’ offers are
|
|
413
|
+
# shown compared to your offers. In other words, this is the number of displayed
|
|
414
|
+
# impressions of a competitor retailer divided by the number of your displayed
|
|
415
|
+
# impressions during a selected time range for a selected product category and
|
|
416
|
+
# country. Cannot be filtered on in the 'WHERE' clause.
|
|
417
|
+
# Corresponds to the JSON property `relativeVisibility`
|
|
418
|
+
# @return [Float]
|
|
419
|
+
attr_accessor :relative_visibility
|
|
420
|
+
|
|
421
|
+
# Google product category ID to calculate the report for, represented in [Google'
|
|
422
|
+
# s product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
423
|
+
# Required in the `SELECT` clause. A condition on `report_category_id` is
|
|
424
|
+
# required in the `WHERE` clause.
|
|
425
|
+
# Corresponds to the JSON property `reportCategoryId`
|
|
426
|
+
# @return [Fixnum]
|
|
427
|
+
attr_accessor :report_category_id
|
|
428
|
+
|
|
429
|
+
# Country where impressions appeared. Required in the `SELECT` clause. A
|
|
430
|
+
# condition on `report_country_code` is required in the `WHERE` clause.
|
|
431
|
+
# Corresponds to the JSON property `reportCountryCode`
|
|
432
|
+
# @return [String]
|
|
433
|
+
attr_accessor :report_country_code
|
|
434
|
+
|
|
435
|
+
# Traffic source of impressions. Required in the `SELECT` clause.
|
|
436
|
+
# Corresponds to the JSON property `trafficSource`
|
|
437
|
+
# @return [String]
|
|
438
|
+
attr_accessor :traffic_source
|
|
439
|
+
|
|
440
|
+
def initialize(**args)
|
|
441
|
+
update!(**args)
|
|
442
|
+
end
|
|
443
|
+
|
|
444
|
+
# Update properties of this object
|
|
445
|
+
def update!(**args)
|
|
446
|
+
@ads_organic_ratio = args[:ads_organic_ratio] if args.key?(:ads_organic_ratio)
|
|
447
|
+
@date = args[:date] if args.key?(:date)
|
|
448
|
+
@domain = args[:domain] if args.key?(:domain)
|
|
449
|
+
@higher_position_rate = args[:higher_position_rate] if args.key?(:higher_position_rate)
|
|
450
|
+
@is_your_domain = args[:is_your_domain] if args.key?(:is_your_domain)
|
|
451
|
+
@page_overlap_rate = args[:page_overlap_rate] if args.key?(:page_overlap_rate)
|
|
452
|
+
@rank = args[:rank] if args.key?(:rank)
|
|
453
|
+
@relative_visibility = args[:relative_visibility] if args.key?(:relative_visibility)
|
|
454
|
+
@report_category_id = args[:report_category_id] if args.key?(:report_category_id)
|
|
455
|
+
@report_country_code = args[:report_country_code] if args.key?(:report_country_code)
|
|
456
|
+
@traffic_source = args[:traffic_source] if args.key?(:traffic_source)
|
|
457
|
+
end
|
|
458
|
+
end
|
|
459
|
+
|
|
460
|
+
# Fields available for query in `competitive_visibility_top_merchant_view` table.
|
|
461
|
+
# [Competitive visibility](https://support.google.com/merchants/answer/11366442)
|
|
462
|
+
# report with business with highest visibility. Values are only set for fields
|
|
463
|
+
# requested explicitly in the request's search query.
|
|
464
|
+
class CompetitiveVisibilityTopMerchantView
|
|
465
|
+
include Google::Apis::Core::Hashable
|
|
466
|
+
|
|
467
|
+
# [Ads / organic ratio] (https://support.google.com/merchants/answer/11366442#
|
|
468
|
+
# zippy=%2Cads-free-ratio) shows how often the domain receives impressions from
|
|
469
|
+
# Shopping ads compared to organic traffic. The number is rounded and bucketed.
|
|
470
|
+
# Cannot be filtered on in the 'WHERE' clause.
|
|
471
|
+
# Corresponds to the JSON property `adsOrganicRatio`
|
|
472
|
+
# @return [Float]
|
|
473
|
+
attr_accessor :ads_organic_ratio
|
|
474
|
+
|
|
475
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
476
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
477
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
478
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
479
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
480
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
481
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
482
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
483
|
+
# Corresponds to the JSON property `date`
|
|
484
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
485
|
+
attr_accessor :date
|
|
486
|
+
|
|
487
|
+
# Domain of your competitor or your domain, if 'is_your_domain' is true.
|
|
488
|
+
# Required in the `SELECT` clause. Cannot be filtered on in the 'WHERE' clause.
|
|
489
|
+
# Corresponds to the JSON property `domain`
|
|
490
|
+
# @return [String]
|
|
491
|
+
attr_accessor :domain
|
|
492
|
+
|
|
493
|
+
# [Higher position rate] (https://support.google.com/merchants/answer/11366442#
|
|
494
|
+
# zippy=%2Chigher-position-rate) shows how often a competitor’s offer got placed
|
|
495
|
+
# in a higher position on the page than your offer. Cannot be filtered on in the
|
|
496
|
+
# 'WHERE' clause.
|
|
497
|
+
# Corresponds to the JSON property `higherPositionRate`
|
|
498
|
+
# @return [Float]
|
|
499
|
+
attr_accessor :higher_position_rate
|
|
500
|
+
|
|
501
|
+
# True if this row contains data for your domain. Cannot be filtered on in the '
|
|
502
|
+
# WHERE' clause.
|
|
503
|
+
# Corresponds to the JSON property `isYourDomain`
|
|
504
|
+
# @return [Boolean]
|
|
505
|
+
attr_accessor :is_your_domain
|
|
506
|
+
alias_method :is_your_domain?, :is_your_domain
|
|
507
|
+
|
|
508
|
+
# [Page overlap rate] (https://support.google.com/merchants/answer/11366442#
|
|
509
|
+
# zippy=%2Cpage-overlap-rate) shows how frequently competing retailers’ offers
|
|
510
|
+
# are shown together with your offers on the same page. Cannot be filtered on in
|
|
511
|
+
# the 'WHERE' clause.
|
|
512
|
+
# Corresponds to the JSON property `pageOverlapRate`
|
|
513
|
+
# @return [Float]
|
|
514
|
+
attr_accessor :page_overlap_rate
|
|
515
|
+
|
|
516
|
+
# Position of the domain in the top merchants ranking for the selected keys (`
|
|
517
|
+
# date`, `report_category_id`, `report_country_code`, `traffic_source`) based on
|
|
518
|
+
# impressions. 1 is the highest. Cannot be filtered on in the 'WHERE' clause.
|
|
519
|
+
# Corresponds to the JSON property `rank`
|
|
520
|
+
# @return [Fixnum]
|
|
521
|
+
attr_accessor :rank
|
|
522
|
+
|
|
523
|
+
# Google product category ID to calculate the report for, represented in [Google'
|
|
524
|
+
# s product taxonomy](https://support.google.com/merchants/answer/6324436).
|
|
525
|
+
# Required in the `SELECT` clause. A condition on `report_category_id` is
|
|
526
|
+
# required in the `WHERE` clause.
|
|
527
|
+
# Corresponds to the JSON property `reportCategoryId`
|
|
528
|
+
# @return [Fixnum]
|
|
529
|
+
attr_accessor :report_category_id
|
|
530
|
+
|
|
531
|
+
# Country where impressions appeared. Required in the `SELECT` clause. A
|
|
532
|
+
# condition on `report_country_code` is required in the `WHERE` clause.
|
|
533
|
+
# Corresponds to the JSON property `reportCountryCode`
|
|
534
|
+
# @return [String]
|
|
535
|
+
attr_accessor :report_country_code
|
|
536
|
+
|
|
537
|
+
# Traffic source of impressions. Required in the `SELECT` clause.
|
|
538
|
+
# Corresponds to the JSON property `trafficSource`
|
|
539
|
+
# @return [String]
|
|
540
|
+
attr_accessor :traffic_source
|
|
541
|
+
|
|
542
|
+
def initialize(**args)
|
|
543
|
+
update!(**args)
|
|
544
|
+
end
|
|
545
|
+
|
|
546
|
+
# Update properties of this object
|
|
547
|
+
def update!(**args)
|
|
548
|
+
@ads_organic_ratio = args[:ads_organic_ratio] if args.key?(:ads_organic_ratio)
|
|
549
|
+
@date = args[:date] if args.key?(:date)
|
|
550
|
+
@domain = args[:domain] if args.key?(:domain)
|
|
551
|
+
@higher_position_rate = args[:higher_position_rate] if args.key?(:higher_position_rate)
|
|
552
|
+
@is_your_domain = args[:is_your_domain] if args.key?(:is_your_domain)
|
|
553
|
+
@page_overlap_rate = args[:page_overlap_rate] if args.key?(:page_overlap_rate)
|
|
554
|
+
@rank = args[:rank] if args.key?(:rank)
|
|
555
|
+
@report_category_id = args[:report_category_id] if args.key?(:report_category_id)
|
|
556
|
+
@report_country_code = args[:report_country_code] if args.key?(:report_country_code)
|
|
557
|
+
@traffic_source = args[:traffic_source] if args.key?(:traffic_source)
|
|
558
|
+
end
|
|
559
|
+
end
|
|
560
|
+
|
|
561
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
562
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
563
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
564
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
565
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
566
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
567
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
568
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
569
|
+
class Date
|
|
570
|
+
include Google::Apis::Core::Hashable
|
|
571
|
+
|
|
572
|
+
# Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
|
|
573
|
+
# specify a year by itself or a year and month where the day isn't significant.
|
|
574
|
+
# Corresponds to the JSON property `day`
|
|
575
|
+
# @return [Fixnum]
|
|
576
|
+
attr_accessor :day
|
|
577
|
+
|
|
578
|
+
# Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
|
|
579
|
+
# and day.
|
|
580
|
+
# Corresponds to the JSON property `month`
|
|
581
|
+
# @return [Fixnum]
|
|
582
|
+
attr_accessor :month
|
|
583
|
+
|
|
584
|
+
# Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
|
|
585
|
+
# year.
|
|
586
|
+
# Corresponds to the JSON property `year`
|
|
587
|
+
# @return [Fixnum]
|
|
588
|
+
attr_accessor :year
|
|
589
|
+
|
|
590
|
+
def initialize(**args)
|
|
591
|
+
update!(**args)
|
|
592
|
+
end
|
|
593
|
+
|
|
594
|
+
# Update properties of this object
|
|
595
|
+
def update!(**args)
|
|
596
|
+
@day = args[:day] if args.key?(:day)
|
|
597
|
+
@month = args[:month] if args.key?(:month)
|
|
598
|
+
@year = args[:year] if args.key?(:year)
|
|
599
|
+
end
|
|
600
|
+
end
|
|
601
|
+
|
|
602
|
+
# Issue severity per reporting context.
|
|
603
|
+
class IssueSeverityPerReportingContext
|
|
604
|
+
include Google::Apis::Core::Hashable
|
|
605
|
+
|
|
606
|
+
# List of demoted countries in the reporting context, represented in ISO 3166
|
|
607
|
+
# format.
|
|
608
|
+
# Corresponds to the JSON property `demotedCountries`
|
|
609
|
+
# @return [Array<String>]
|
|
610
|
+
attr_accessor :demoted_countries
|
|
611
|
+
|
|
612
|
+
# List of disapproved countries in the reporting context, represented in ISO
|
|
613
|
+
# 3166 format.
|
|
614
|
+
# Corresponds to the JSON property `disapprovedCountries`
|
|
615
|
+
# @return [Array<String>]
|
|
616
|
+
attr_accessor :disapproved_countries
|
|
617
|
+
|
|
618
|
+
# Reporting context the issue applies to.
|
|
619
|
+
# Corresponds to the JSON property `reportingContext`
|
|
620
|
+
# @return [String]
|
|
621
|
+
attr_accessor :reporting_context
|
|
622
|
+
|
|
623
|
+
def initialize(**args)
|
|
624
|
+
update!(**args)
|
|
625
|
+
end
|
|
626
|
+
|
|
627
|
+
# Update properties of this object
|
|
628
|
+
def update!(**args)
|
|
629
|
+
@demoted_countries = args[:demoted_countries] if args.key?(:demoted_countries)
|
|
630
|
+
@disapproved_countries = args[:disapproved_countries] if args.key?(:disapproved_countries)
|
|
631
|
+
@reporting_context = args[:reporting_context] if args.key?(:reporting_context)
|
|
632
|
+
end
|
|
633
|
+
end
|
|
634
|
+
|
|
635
|
+
# Item issue associated with the product.
|
|
636
|
+
class ItemIssue
|
|
637
|
+
include Google::Apis::Core::Hashable
|
|
638
|
+
|
|
639
|
+
# Item issue resolution.
|
|
640
|
+
# Corresponds to the JSON property `resolution`
|
|
641
|
+
# @return [String]
|
|
642
|
+
attr_accessor :resolution
|
|
643
|
+
|
|
644
|
+
# How the issue affects the serving of the product.
|
|
645
|
+
# Corresponds to the JSON property `severity`
|
|
646
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::ItemIssueSeverity]
|
|
647
|
+
attr_accessor :severity
|
|
648
|
+
|
|
649
|
+
# Issue type.
|
|
650
|
+
# Corresponds to the JSON property `type`
|
|
651
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::ItemIssueType]
|
|
652
|
+
attr_accessor :type
|
|
653
|
+
|
|
654
|
+
def initialize(**args)
|
|
655
|
+
update!(**args)
|
|
656
|
+
end
|
|
657
|
+
|
|
658
|
+
# Update properties of this object
|
|
659
|
+
def update!(**args)
|
|
660
|
+
@resolution = args[:resolution] if args.key?(:resolution)
|
|
661
|
+
@severity = args[:severity] if args.key?(:severity)
|
|
662
|
+
@type = args[:type] if args.key?(:type)
|
|
663
|
+
end
|
|
664
|
+
end
|
|
665
|
+
|
|
666
|
+
# How the issue affects the serving of the product.
|
|
667
|
+
class ItemIssueSeverity
|
|
668
|
+
include Google::Apis::Core::Hashable
|
|
669
|
+
|
|
670
|
+
# Aggregated severity of the issue for all reporting contexts it affects. **This
|
|
671
|
+
# field can be used for filtering the results.**
|
|
672
|
+
# Corresponds to the JSON property `aggregatedSeverity`
|
|
673
|
+
# @return [String]
|
|
674
|
+
attr_accessor :aggregated_severity
|
|
675
|
+
|
|
676
|
+
# Issue severity per reporting context.
|
|
677
|
+
# Corresponds to the JSON property `severityPerReportingContext`
|
|
678
|
+
# @return [Array<Google::Apis::MerchantapiReportsV1beta::IssueSeverityPerReportingContext>]
|
|
679
|
+
attr_accessor :severity_per_reporting_context
|
|
680
|
+
|
|
681
|
+
def initialize(**args)
|
|
682
|
+
update!(**args)
|
|
683
|
+
end
|
|
684
|
+
|
|
685
|
+
# Update properties of this object
|
|
686
|
+
def update!(**args)
|
|
687
|
+
@aggregated_severity = args[:aggregated_severity] if args.key?(:aggregated_severity)
|
|
688
|
+
@severity_per_reporting_context = args[:severity_per_reporting_context] if args.key?(:severity_per_reporting_context)
|
|
689
|
+
end
|
|
690
|
+
end
|
|
691
|
+
|
|
692
|
+
# Issue type.
|
|
693
|
+
class ItemIssueType
|
|
694
|
+
include Google::Apis::Core::Hashable
|
|
695
|
+
|
|
696
|
+
# Canonical attribute name for attribute-specific issues.
|
|
697
|
+
# Corresponds to the JSON property `canonicalAttribute`
|
|
698
|
+
# @return [String]
|
|
699
|
+
attr_accessor :canonical_attribute
|
|
700
|
+
|
|
701
|
+
# Error code of the issue, equivalent to the `code` of [Product issues](https://
|
|
702
|
+
# developers.google.com/shopping-content/guides/product-issues).
|
|
703
|
+
# Corresponds to the JSON property `code`
|
|
704
|
+
# @return [String]
|
|
705
|
+
attr_accessor :code
|
|
706
|
+
|
|
707
|
+
def initialize(**args)
|
|
708
|
+
update!(**args)
|
|
709
|
+
end
|
|
710
|
+
|
|
711
|
+
# Update properties of this object
|
|
712
|
+
def update!(**args)
|
|
713
|
+
@canonical_attribute = args[:canonical_attribute] if args.key?(:canonical_attribute)
|
|
714
|
+
@code = args[:code] if args.key?(:code)
|
|
715
|
+
end
|
|
716
|
+
end
|
|
717
|
+
|
|
718
|
+
# Fields available for query in `non_product_performance_view` table.
|
|
719
|
+
# Performance data on images and online store links leading to your non-product
|
|
720
|
+
# pages. This includes performance metrics (for example, `clicks`) and
|
|
721
|
+
# dimensions according to which performance metrics are segmented (for example, `
|
|
722
|
+
# date`). Segment fields cannot be selected in queries without also selecting at
|
|
723
|
+
# least one metric field. Values are only set for fields requested explicitly in
|
|
724
|
+
# the request's search query.
|
|
725
|
+
class NonProductPerformanceView
|
|
726
|
+
include Google::Apis::Core::Hashable
|
|
727
|
+
|
|
728
|
+
# Click-through rate - the number of clicks (`clicks`) divided by the number of
|
|
729
|
+
# impressions (`impressions`) of images and online store links leading to your
|
|
730
|
+
# non-product pages. Metric.
|
|
731
|
+
# Corresponds to the JSON property `clickThroughRate`
|
|
732
|
+
# @return [Float]
|
|
733
|
+
attr_accessor :click_through_rate
|
|
734
|
+
|
|
735
|
+
# Number of clicks on images and online store links leading to your non-product
|
|
736
|
+
# pages. Metric.
|
|
737
|
+
# Corresponds to the JSON property `clicks`
|
|
738
|
+
# @return [Fixnum]
|
|
739
|
+
attr_accessor :clicks
|
|
740
|
+
|
|
741
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
742
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
743
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
744
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
745
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
746
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
747
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
748
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
749
|
+
# Corresponds to the JSON property `date`
|
|
750
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
751
|
+
attr_accessor :date
|
|
752
|
+
|
|
753
|
+
# Number of times images and online store links leading to your non-product
|
|
754
|
+
# pages were shown. Metric.
|
|
755
|
+
# Corresponds to the JSON property `impressions`
|
|
756
|
+
# @return [Fixnum]
|
|
757
|
+
attr_accessor :impressions
|
|
758
|
+
|
|
759
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
760
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
761
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
762
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
763
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
764
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
765
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
766
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
767
|
+
# Corresponds to the JSON property `week`
|
|
768
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
769
|
+
attr_accessor :week
|
|
770
|
+
|
|
771
|
+
def initialize(**args)
|
|
772
|
+
update!(**args)
|
|
773
|
+
end
|
|
774
|
+
|
|
775
|
+
# Update properties of this object
|
|
776
|
+
def update!(**args)
|
|
777
|
+
@click_through_rate = args[:click_through_rate] if args.key?(:click_through_rate)
|
|
778
|
+
@clicks = args[:clicks] if args.key?(:clicks)
|
|
779
|
+
@date = args[:date] if args.key?(:date)
|
|
780
|
+
@impressions = args[:impressions] if args.key?(:impressions)
|
|
781
|
+
@week = args[:week] if args.key?(:week)
|
|
782
|
+
end
|
|
783
|
+
end
|
|
784
|
+
|
|
785
|
+
# The price represented as a number and currency.
|
|
786
|
+
class Price
|
|
787
|
+
include Google::Apis::Core::Hashable
|
|
788
|
+
|
|
789
|
+
# The price represented as a number in micros (1 million micros is an equivalent
|
|
790
|
+
# to one's currency standard unit, for example, 1 USD = 1000000 micros).
|
|
791
|
+
# Corresponds to the JSON property `amountMicros`
|
|
792
|
+
# @return [Fixnum]
|
|
793
|
+
attr_accessor :amount_micros
|
|
794
|
+
|
|
795
|
+
# The currency of the price using three-letter acronyms according to [ISO 4217](
|
|
796
|
+
# http://en.wikipedia.org/wiki/ISO_4217).
|
|
797
|
+
# Corresponds to the JSON property `currencyCode`
|
|
798
|
+
# @return [String]
|
|
799
|
+
attr_accessor :currency_code
|
|
800
|
+
|
|
801
|
+
def initialize(**args)
|
|
802
|
+
update!(**args)
|
|
803
|
+
end
|
|
804
|
+
|
|
805
|
+
# Update properties of this object
|
|
806
|
+
def update!(**args)
|
|
807
|
+
@amount_micros = args[:amount_micros] if args.key?(:amount_micros)
|
|
808
|
+
@currency_code = args[:currency_code] if args.key?(:currency_code)
|
|
809
|
+
end
|
|
810
|
+
end
|
|
811
|
+
|
|
812
|
+
# Fields available for query in `price_competitiveness_product_view` table. [
|
|
813
|
+
# Price competitiveness](https://support.google.com/merchants/answer/9626903)
|
|
814
|
+
# report. Values are only set for fields requested explicitly in the request's
|
|
815
|
+
# search query.
|
|
816
|
+
class PriceCompetitivenessProductView
|
|
817
|
+
include Google::Apis::Core::Hashable
|
|
818
|
+
|
|
819
|
+
# The price represented as a number and currency.
|
|
820
|
+
# Corresponds to the JSON property `benchmarkPrice`
|
|
821
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Price]
|
|
822
|
+
attr_accessor :benchmark_price
|
|
823
|
+
|
|
824
|
+
# Brand of the product.
|
|
825
|
+
# Corresponds to the JSON property `brand`
|
|
826
|
+
# @return [String]
|
|
827
|
+
attr_accessor :brand
|
|
828
|
+
|
|
829
|
+
# Product category (1st level) in [Google's product taxonomy](https://support.
|
|
830
|
+
# google.com/merchants/answer/6324436).
|
|
831
|
+
# Corresponds to the JSON property `categoryL1`
|
|
832
|
+
# @return [String]
|
|
833
|
+
attr_accessor :category_l1
|
|
834
|
+
|
|
835
|
+
# Product category (2nd level) in [Google's product taxonomy](https://support.
|
|
836
|
+
# google.com/merchants/answer/6324436).
|
|
837
|
+
# Corresponds to the JSON property `categoryL2`
|
|
838
|
+
# @return [String]
|
|
839
|
+
attr_accessor :category_l2
|
|
840
|
+
|
|
841
|
+
# Product category (3rd level) in [Google's product taxonomy](https://support.
|
|
842
|
+
# google.com/merchants/answer/6324436).
|
|
843
|
+
# Corresponds to the JSON property `categoryL3`
|
|
844
|
+
# @return [String]
|
|
845
|
+
attr_accessor :category_l3
|
|
846
|
+
|
|
847
|
+
# Product category (4th level) in [Google's product taxonomy](https://support.
|
|
848
|
+
# google.com/merchants/answer/6324436).
|
|
849
|
+
# Corresponds to the JSON property `categoryL4`
|
|
850
|
+
# @return [String]
|
|
851
|
+
attr_accessor :category_l4
|
|
852
|
+
|
|
853
|
+
# Product category (5th level) in [Google's product taxonomy](https://support.
|
|
854
|
+
# google.com/merchants/answer/6324436).
|
|
855
|
+
# Corresponds to the JSON property `categoryL5`
|
|
856
|
+
# @return [String]
|
|
857
|
+
attr_accessor :category_l5
|
|
858
|
+
|
|
859
|
+
# REST ID of the product, in the form of `channel~languageCode~feedLabel~offerId`
|
|
860
|
+
# . Can be used to join data with the `product_view` table. Required in the `
|
|
861
|
+
# SELECT` clause.
|
|
862
|
+
# Corresponds to the JSON property `id`
|
|
863
|
+
# @return [String]
|
|
864
|
+
attr_accessor :id
|
|
865
|
+
|
|
866
|
+
# Merchant-provided id of the product.
|
|
867
|
+
# Corresponds to the JSON property `offerId`
|
|
868
|
+
# @return [String]
|
|
869
|
+
attr_accessor :offer_id
|
|
870
|
+
|
|
871
|
+
# The price represented as a number and currency.
|
|
872
|
+
# Corresponds to the JSON property `price`
|
|
873
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Price]
|
|
874
|
+
attr_accessor :price
|
|
875
|
+
|
|
876
|
+
# Product type (1st level) in merchant's own [product taxonomy](https://support.
|
|
877
|
+
# google.com/merchants/answer/6324406).
|
|
878
|
+
# Corresponds to the JSON property `productTypeL1`
|
|
879
|
+
# @return [String]
|
|
880
|
+
attr_accessor :product_type_l1
|
|
881
|
+
|
|
882
|
+
# Product type (2nd level) in merchant's own [product taxonomy](https://support.
|
|
883
|
+
# google.com/merchants/answer/6324406).
|
|
884
|
+
# Corresponds to the JSON property `productTypeL2`
|
|
885
|
+
# @return [String]
|
|
886
|
+
attr_accessor :product_type_l2
|
|
887
|
+
|
|
888
|
+
# Product type (3rd level) in merchant's own [product taxonomy](https://support.
|
|
889
|
+
# google.com/merchants/answer/6324406).
|
|
890
|
+
# Corresponds to the JSON property `productTypeL3`
|
|
891
|
+
# @return [String]
|
|
892
|
+
attr_accessor :product_type_l3
|
|
893
|
+
|
|
894
|
+
# Product type (4th level) in merchant's own [product taxonomy](https://support.
|
|
895
|
+
# google.com/merchants/answer/6324406).
|
|
896
|
+
# Corresponds to the JSON property `productTypeL4`
|
|
897
|
+
# @return [String]
|
|
898
|
+
attr_accessor :product_type_l4
|
|
899
|
+
|
|
900
|
+
# Product type (5th level) in merchant's own [product taxonomy](https://support.
|
|
901
|
+
# google.com/merchants/answer/6324406).
|
|
902
|
+
# Corresponds to the JSON property `productTypeL5`
|
|
903
|
+
# @return [String]
|
|
904
|
+
attr_accessor :product_type_l5
|
|
905
|
+
|
|
906
|
+
# Country of the price benchmark. Represented in the ISO 3166 format. Required
|
|
907
|
+
# in the `SELECT` clause.
|
|
908
|
+
# Corresponds to the JSON property `reportCountryCode`
|
|
909
|
+
# @return [String]
|
|
910
|
+
attr_accessor :report_country_code
|
|
911
|
+
|
|
912
|
+
# Title of the product.
|
|
913
|
+
# Corresponds to the JSON property `title`
|
|
914
|
+
# @return [String]
|
|
915
|
+
attr_accessor :title
|
|
916
|
+
|
|
917
|
+
def initialize(**args)
|
|
918
|
+
update!(**args)
|
|
919
|
+
end
|
|
920
|
+
|
|
921
|
+
# Update properties of this object
|
|
922
|
+
def update!(**args)
|
|
923
|
+
@benchmark_price = args[:benchmark_price] if args.key?(:benchmark_price)
|
|
924
|
+
@brand = args[:brand] if args.key?(:brand)
|
|
925
|
+
@category_l1 = args[:category_l1] if args.key?(:category_l1)
|
|
926
|
+
@category_l2 = args[:category_l2] if args.key?(:category_l2)
|
|
927
|
+
@category_l3 = args[:category_l3] if args.key?(:category_l3)
|
|
928
|
+
@category_l4 = args[:category_l4] if args.key?(:category_l4)
|
|
929
|
+
@category_l5 = args[:category_l5] if args.key?(:category_l5)
|
|
930
|
+
@id = args[:id] if args.key?(:id)
|
|
931
|
+
@offer_id = args[:offer_id] if args.key?(:offer_id)
|
|
932
|
+
@price = args[:price] if args.key?(:price)
|
|
933
|
+
@product_type_l1 = args[:product_type_l1] if args.key?(:product_type_l1)
|
|
934
|
+
@product_type_l2 = args[:product_type_l2] if args.key?(:product_type_l2)
|
|
935
|
+
@product_type_l3 = args[:product_type_l3] if args.key?(:product_type_l3)
|
|
936
|
+
@product_type_l4 = args[:product_type_l4] if args.key?(:product_type_l4)
|
|
937
|
+
@product_type_l5 = args[:product_type_l5] if args.key?(:product_type_l5)
|
|
938
|
+
@report_country_code = args[:report_country_code] if args.key?(:report_country_code)
|
|
939
|
+
@title = args[:title] if args.key?(:title)
|
|
940
|
+
end
|
|
941
|
+
end
|
|
942
|
+
|
|
943
|
+
# Fields available for query in `price_insights_product_view` table. [Price
|
|
944
|
+
# insights](https://support.google.com/merchants/answer/11916926) report. Values
|
|
945
|
+
# are only set for fields requested explicitly in the request's search query.
|
|
946
|
+
class PriceInsightsProductView
|
|
947
|
+
include Google::Apis::Core::Hashable
|
|
948
|
+
|
|
949
|
+
# Brand of the product.
|
|
950
|
+
# Corresponds to the JSON property `brand`
|
|
951
|
+
# @return [String]
|
|
952
|
+
attr_accessor :brand
|
|
953
|
+
|
|
954
|
+
# Product category (1st level) in [Google's product taxonomy](https://support.
|
|
955
|
+
# google.com/merchants/answer/6324436).
|
|
956
|
+
# Corresponds to the JSON property `categoryL1`
|
|
957
|
+
# @return [String]
|
|
958
|
+
attr_accessor :category_l1
|
|
959
|
+
|
|
960
|
+
# Product category (2nd level) in [Google's product taxonomy](https://support.
|
|
961
|
+
# google.com/merchants/answer/6324436).
|
|
962
|
+
# Corresponds to the JSON property `categoryL2`
|
|
963
|
+
# @return [String]
|
|
964
|
+
attr_accessor :category_l2
|
|
965
|
+
|
|
966
|
+
# Product category (3rd level) in [Google's product taxonomy](https://support.
|
|
967
|
+
# google.com/merchants/answer/6324436).
|
|
968
|
+
# Corresponds to the JSON property `categoryL3`
|
|
969
|
+
# @return [String]
|
|
970
|
+
attr_accessor :category_l3
|
|
971
|
+
|
|
972
|
+
# Product category (4th level) in [Google's product taxonomy](https://support.
|
|
973
|
+
# google.com/merchants/answer/6324436).
|
|
974
|
+
# Corresponds to the JSON property `categoryL4`
|
|
975
|
+
# @return [String]
|
|
976
|
+
attr_accessor :category_l4
|
|
977
|
+
|
|
978
|
+
# Product category (5th level) in [Google's product taxonomy](https://support.
|
|
979
|
+
# google.com/merchants/answer/6324436).
|
|
980
|
+
# Corresponds to the JSON property `categoryL5`
|
|
981
|
+
# @return [String]
|
|
982
|
+
attr_accessor :category_l5
|
|
983
|
+
|
|
984
|
+
# The predicted effectiveness of applying the price suggestion, bucketed.
|
|
985
|
+
# Corresponds to the JSON property `effectiveness`
|
|
986
|
+
# @return [String]
|
|
987
|
+
attr_accessor :effectiveness
|
|
988
|
+
|
|
989
|
+
# REST ID of the product, in the form of `channel~languageCode~feedLabel~offerId`
|
|
990
|
+
# . Can be used to join data with the `product_view` table. Required in the `
|
|
991
|
+
# SELECT` clause.
|
|
992
|
+
# Corresponds to the JSON property `id`
|
|
993
|
+
# @return [String]
|
|
994
|
+
attr_accessor :id
|
|
995
|
+
|
|
996
|
+
# Merchant-provided id of the product.
|
|
997
|
+
# Corresponds to the JSON property `offerId`
|
|
998
|
+
# @return [String]
|
|
999
|
+
attr_accessor :offer_id
|
|
1000
|
+
|
|
1001
|
+
# Predicted change in clicks as a fraction after introducing the suggested price
|
|
1002
|
+
# compared to current active price. For example, 0.05 is a 5% predicted increase
|
|
1003
|
+
# in clicks.
|
|
1004
|
+
# Corresponds to the JSON property `predictedClicksChangeFraction`
|
|
1005
|
+
# @return [Float]
|
|
1006
|
+
attr_accessor :predicted_clicks_change_fraction
|
|
1007
|
+
|
|
1008
|
+
# Predicted change in conversions as a fraction after introducing the suggested
|
|
1009
|
+
# price compared to current active price. For example, 0.05 is a 5% predicted
|
|
1010
|
+
# increase in conversions).
|
|
1011
|
+
# Corresponds to the JSON property `predictedConversionsChangeFraction`
|
|
1012
|
+
# @return [Float]
|
|
1013
|
+
attr_accessor :predicted_conversions_change_fraction
|
|
1014
|
+
|
|
1015
|
+
# Predicted change in impressions as a fraction after introducing the suggested
|
|
1016
|
+
# price compared to current active price. For example, 0.05 is a 5% predicted
|
|
1017
|
+
# increase in impressions.
|
|
1018
|
+
# Corresponds to the JSON property `predictedImpressionsChangeFraction`
|
|
1019
|
+
# @return [Float]
|
|
1020
|
+
attr_accessor :predicted_impressions_change_fraction
|
|
1021
|
+
|
|
1022
|
+
# The price represented as a number and currency.
|
|
1023
|
+
# Corresponds to the JSON property `price`
|
|
1024
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Price]
|
|
1025
|
+
attr_accessor :price
|
|
1026
|
+
|
|
1027
|
+
# Product type (1st level) in merchant's own [product taxonomy](https://support.
|
|
1028
|
+
# google.com/merchants/answer/6324406).
|
|
1029
|
+
# Corresponds to the JSON property `productTypeL1`
|
|
1030
|
+
# @return [String]
|
|
1031
|
+
attr_accessor :product_type_l1
|
|
1032
|
+
|
|
1033
|
+
# Product type (2nd level) in merchant's own [product taxonomy](https://support.
|
|
1034
|
+
# google.com/merchants/answer/6324406).
|
|
1035
|
+
# Corresponds to the JSON property `productTypeL2`
|
|
1036
|
+
# @return [String]
|
|
1037
|
+
attr_accessor :product_type_l2
|
|
1038
|
+
|
|
1039
|
+
# Product type (3rd level) in merchant's own [product taxonomy](https://support.
|
|
1040
|
+
# google.com/merchants/answer/6324406).
|
|
1041
|
+
# Corresponds to the JSON property `productTypeL3`
|
|
1042
|
+
# @return [String]
|
|
1043
|
+
attr_accessor :product_type_l3
|
|
1044
|
+
|
|
1045
|
+
# Product type (4th level) in merchant's own [product taxonomy](https://support.
|
|
1046
|
+
# google.com/merchants/answer/6324406).
|
|
1047
|
+
# Corresponds to the JSON property `productTypeL4`
|
|
1048
|
+
# @return [String]
|
|
1049
|
+
attr_accessor :product_type_l4
|
|
1050
|
+
|
|
1051
|
+
# Product type (5th level) in merchant's own [product taxonomy](https://support.
|
|
1052
|
+
# google.com/merchants/answer/6324406).
|
|
1053
|
+
# Corresponds to the JSON property `productTypeL5`
|
|
1054
|
+
# @return [String]
|
|
1055
|
+
attr_accessor :product_type_l5
|
|
1056
|
+
|
|
1057
|
+
# The price represented as a number and currency.
|
|
1058
|
+
# Corresponds to the JSON property `suggestedPrice`
|
|
1059
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Price]
|
|
1060
|
+
attr_accessor :suggested_price
|
|
1061
|
+
|
|
1062
|
+
# Title of the product.
|
|
1063
|
+
# Corresponds to the JSON property `title`
|
|
1064
|
+
# @return [String]
|
|
1065
|
+
attr_accessor :title
|
|
1066
|
+
|
|
1067
|
+
def initialize(**args)
|
|
1068
|
+
update!(**args)
|
|
1069
|
+
end
|
|
1070
|
+
|
|
1071
|
+
# Update properties of this object
|
|
1072
|
+
def update!(**args)
|
|
1073
|
+
@brand = args[:brand] if args.key?(:brand)
|
|
1074
|
+
@category_l1 = args[:category_l1] if args.key?(:category_l1)
|
|
1075
|
+
@category_l2 = args[:category_l2] if args.key?(:category_l2)
|
|
1076
|
+
@category_l3 = args[:category_l3] if args.key?(:category_l3)
|
|
1077
|
+
@category_l4 = args[:category_l4] if args.key?(:category_l4)
|
|
1078
|
+
@category_l5 = args[:category_l5] if args.key?(:category_l5)
|
|
1079
|
+
@effectiveness = args[:effectiveness] if args.key?(:effectiveness)
|
|
1080
|
+
@id = args[:id] if args.key?(:id)
|
|
1081
|
+
@offer_id = args[:offer_id] if args.key?(:offer_id)
|
|
1082
|
+
@predicted_clicks_change_fraction = args[:predicted_clicks_change_fraction] if args.key?(:predicted_clicks_change_fraction)
|
|
1083
|
+
@predicted_conversions_change_fraction = args[:predicted_conversions_change_fraction] if args.key?(:predicted_conversions_change_fraction)
|
|
1084
|
+
@predicted_impressions_change_fraction = args[:predicted_impressions_change_fraction] if args.key?(:predicted_impressions_change_fraction)
|
|
1085
|
+
@price = args[:price] if args.key?(:price)
|
|
1086
|
+
@product_type_l1 = args[:product_type_l1] if args.key?(:product_type_l1)
|
|
1087
|
+
@product_type_l2 = args[:product_type_l2] if args.key?(:product_type_l2)
|
|
1088
|
+
@product_type_l3 = args[:product_type_l3] if args.key?(:product_type_l3)
|
|
1089
|
+
@product_type_l4 = args[:product_type_l4] if args.key?(:product_type_l4)
|
|
1090
|
+
@product_type_l5 = args[:product_type_l5] if args.key?(:product_type_l5)
|
|
1091
|
+
@suggested_price = args[:suggested_price] if args.key?(:suggested_price)
|
|
1092
|
+
@title = args[:title] if args.key?(:title)
|
|
1093
|
+
end
|
|
1094
|
+
end
|
|
1095
|
+
|
|
1096
|
+
# The change that happened to the product including old value, new value,
|
|
1097
|
+
# country code as the region code and reporting context.
|
|
1098
|
+
class ProductChange
|
|
1099
|
+
include Google::Apis::Core::Hashable
|
|
1100
|
+
|
|
1101
|
+
# The new value of the changed resource or attribute.
|
|
1102
|
+
# Corresponds to the JSON property `newValue`
|
|
1103
|
+
# @return [String]
|
|
1104
|
+
attr_accessor :new_value
|
|
1105
|
+
|
|
1106
|
+
# The old value of the changed resource or attribute.
|
|
1107
|
+
# Corresponds to the JSON property `oldValue`
|
|
1108
|
+
# @return [String]
|
|
1109
|
+
attr_accessor :old_value
|
|
1110
|
+
|
|
1111
|
+
# Countries that have the change (if applicable)
|
|
1112
|
+
# Corresponds to the JSON property `regionCode`
|
|
1113
|
+
# @return [String]
|
|
1114
|
+
attr_accessor :region_code
|
|
1115
|
+
|
|
1116
|
+
# Reporting contexts that have the change (if applicable)
|
|
1117
|
+
# Corresponds to the JSON property `reportingContext`
|
|
1118
|
+
# @return [String]
|
|
1119
|
+
attr_accessor :reporting_context
|
|
1120
|
+
|
|
1121
|
+
def initialize(**args)
|
|
1122
|
+
update!(**args)
|
|
1123
|
+
end
|
|
1124
|
+
|
|
1125
|
+
# Update properties of this object
|
|
1126
|
+
def update!(**args)
|
|
1127
|
+
@new_value = args[:new_value] if args.key?(:new_value)
|
|
1128
|
+
@old_value = args[:old_value] if args.key?(:old_value)
|
|
1129
|
+
@region_code = args[:region_code] if args.key?(:region_code)
|
|
1130
|
+
@reporting_context = args[:reporting_context] if args.key?(:reporting_context)
|
|
1131
|
+
end
|
|
1132
|
+
end
|
|
1133
|
+
|
|
1134
|
+
# Fields available for query in `product_performance_view` table. Product
|
|
1135
|
+
# performance data for your account, including performance metrics (for example,
|
|
1136
|
+
# `clicks`) and dimensions according to which performance metrics are segmented (
|
|
1137
|
+
# for example, `offer_id`). Values of product dimensions, such as `offer_id`,
|
|
1138
|
+
# reflect the state of a product at the time of the impression. Segment fields
|
|
1139
|
+
# cannot be selected in queries without also selecting at least one metric field.
|
|
1140
|
+
# Values are only set for fields requested explicitly in the request's search
|
|
1141
|
+
# query.
|
|
1142
|
+
class ProductPerformanceView
|
|
1143
|
+
include Google::Apis::Core::Hashable
|
|
1144
|
+
|
|
1145
|
+
# Brand of the product. Segment.
|
|
1146
|
+
# Corresponds to the JSON property `brand`
|
|
1147
|
+
# @return [String]
|
|
1148
|
+
attr_accessor :brand
|
|
1149
|
+
|
|
1150
|
+
# [Product category (1st level)](https://developers.google.com/shopping-content/
|
|
1151
|
+
# guides/reports/segmentation#category_and_product_type) in Google's product
|
|
1152
|
+
# taxonomy. Segment.
|
|
1153
|
+
# Corresponds to the JSON property `categoryL1`
|
|
1154
|
+
# @return [String]
|
|
1155
|
+
attr_accessor :category_l1
|
|
1156
|
+
|
|
1157
|
+
# [Product category (2nd level)](https://developers.google.com/shopping-content/
|
|
1158
|
+
# guides/reports/segmentation#category_and_product_type) in Google's product
|
|
1159
|
+
# taxonomy. Segment.
|
|
1160
|
+
# Corresponds to the JSON property `categoryL2`
|
|
1161
|
+
# @return [String]
|
|
1162
|
+
attr_accessor :category_l2
|
|
1163
|
+
|
|
1164
|
+
# [Product category (3rd level)](https://developers.google.com/shopping-content/
|
|
1165
|
+
# guides/reports/segmentation#category_and_product_type) in Google's product
|
|
1166
|
+
# taxonomy. Segment.
|
|
1167
|
+
# Corresponds to the JSON property `categoryL3`
|
|
1168
|
+
# @return [String]
|
|
1169
|
+
attr_accessor :category_l3
|
|
1170
|
+
|
|
1171
|
+
# [Product category (4th level)](https://developers.google.com/shopping-content/
|
|
1172
|
+
# guides/reports/segmentation#category_and_product_type) in Google's product
|
|
1173
|
+
# taxonomy. Segment.
|
|
1174
|
+
# Corresponds to the JSON property `categoryL4`
|
|
1175
|
+
# @return [String]
|
|
1176
|
+
attr_accessor :category_l4
|
|
1177
|
+
|
|
1178
|
+
# [Product category (5th level)](https://developers.google.com/shopping-content/
|
|
1179
|
+
# guides/reports/segmentation#category_and_product_type) in Google's product
|
|
1180
|
+
# taxonomy. Segment.
|
|
1181
|
+
# Corresponds to the JSON property `categoryL5`
|
|
1182
|
+
# @return [String]
|
|
1183
|
+
attr_accessor :category_l5
|
|
1184
|
+
|
|
1185
|
+
# Click-through rate - the number of clicks merchant's products receive (clicks)
|
|
1186
|
+
# divided by the number of times the products are shown (impressions). Metric.
|
|
1187
|
+
# Corresponds to the JSON property `clickThroughRate`
|
|
1188
|
+
# @return [Float]
|
|
1189
|
+
attr_accessor :click_through_rate
|
|
1190
|
+
|
|
1191
|
+
# Number of clicks. Metric.
|
|
1192
|
+
# Corresponds to the JSON property `clicks`
|
|
1193
|
+
# @return [Fixnum]
|
|
1194
|
+
attr_accessor :clicks
|
|
1195
|
+
|
|
1196
|
+
# Number of conversions divided by the number of clicks, reported on the
|
|
1197
|
+
# impression date. Metric. Available only for the `FREE` traffic source.
|
|
1198
|
+
# Corresponds to the JSON property `conversionRate`
|
|
1199
|
+
# @return [Float]
|
|
1200
|
+
attr_accessor :conversion_rate
|
|
1201
|
+
|
|
1202
|
+
# The price represented as a number and currency.
|
|
1203
|
+
# Corresponds to the JSON property `conversionValue`
|
|
1204
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Price]
|
|
1205
|
+
attr_accessor :conversion_value
|
|
1206
|
+
|
|
1207
|
+
# Number of conversions attributed to the product, reported on the conversion
|
|
1208
|
+
# date. Depending on the attribution model, a conversion might be distributed
|
|
1209
|
+
# across multiple clicks, where each click gets its own credit assigned. This
|
|
1210
|
+
# metric is a sum of all such credits. Metric. Available only for the `FREE`
|
|
1211
|
+
# traffic source.
|
|
1212
|
+
# Corresponds to the JSON property `conversions`
|
|
1213
|
+
# @return [Float]
|
|
1214
|
+
attr_accessor :conversions
|
|
1215
|
+
|
|
1216
|
+
# Custom label 0 for custom grouping of products. Segment.
|
|
1217
|
+
# Corresponds to the JSON property `customLabel0`
|
|
1218
|
+
# @return [String]
|
|
1219
|
+
attr_accessor :custom_label0
|
|
1220
|
+
|
|
1221
|
+
# Custom label 1 for custom grouping of products. Segment.
|
|
1222
|
+
# Corresponds to the JSON property `customLabel1`
|
|
1223
|
+
# @return [String]
|
|
1224
|
+
attr_accessor :custom_label1
|
|
1225
|
+
|
|
1226
|
+
# Custom label 2 for custom grouping of products. Segment.
|
|
1227
|
+
# Corresponds to the JSON property `customLabel2`
|
|
1228
|
+
# @return [String]
|
|
1229
|
+
attr_accessor :custom_label2
|
|
1230
|
+
|
|
1231
|
+
# Custom label 3 for custom grouping of products. Segment.
|
|
1232
|
+
# Corresponds to the JSON property `customLabel3`
|
|
1233
|
+
# @return [String]
|
|
1234
|
+
attr_accessor :custom_label3
|
|
1235
|
+
|
|
1236
|
+
# Custom label 4 for custom grouping of products. Segment.
|
|
1237
|
+
# Corresponds to the JSON property `customLabel4`
|
|
1238
|
+
# @return [String]
|
|
1239
|
+
attr_accessor :custom_label4
|
|
1240
|
+
|
|
1241
|
+
# Code of the country where the customer is located at the time of the event.
|
|
1242
|
+
# Represented in the ISO 3166 format. Segment. If the customer country cannot be
|
|
1243
|
+
# determined, a special 'ZZ' code is returned.
|
|
1244
|
+
# Corresponds to the JSON property `customerCountryCode`
|
|
1245
|
+
# @return [String]
|
|
1246
|
+
attr_accessor :customer_country_code
|
|
1247
|
+
|
|
1248
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
1249
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
1250
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
1251
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
1252
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
1253
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
1254
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
1255
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
1256
|
+
# Corresponds to the JSON property `date`
|
|
1257
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
1258
|
+
attr_accessor :date
|
|
1259
|
+
|
|
1260
|
+
# Number of times merchant's products are shown. Metric.
|
|
1261
|
+
# Corresponds to the JSON property `impressions`
|
|
1262
|
+
# @return [Fixnum]
|
|
1263
|
+
attr_accessor :impressions
|
|
1264
|
+
|
|
1265
|
+
# Marketing method to which metrics apply. Segment.
|
|
1266
|
+
# Corresponds to the JSON property `marketingMethod`
|
|
1267
|
+
# @return [String]
|
|
1268
|
+
attr_accessor :marketing_method
|
|
1269
|
+
|
|
1270
|
+
# Merchant-provided id of the product. Segment.
|
|
1271
|
+
# Corresponds to the JSON property `offerId`
|
|
1272
|
+
# @return [String]
|
|
1273
|
+
attr_accessor :offer_id
|
|
1274
|
+
|
|
1275
|
+
# [Product type (1st level)](https://developers.google.com/shopping-content/
|
|
1276
|
+
# guides/reports/segmentation#category_and_product_type) in merchant's own
|
|
1277
|
+
# product taxonomy. Segment.
|
|
1278
|
+
# Corresponds to the JSON property `productTypeL1`
|
|
1279
|
+
# @return [String]
|
|
1280
|
+
attr_accessor :product_type_l1
|
|
1281
|
+
|
|
1282
|
+
# [Product type (2nd level)](https://developers.google.com/shopping-content/
|
|
1283
|
+
# guides/reports/segmentation#category_and_product_type) in merchant's own
|
|
1284
|
+
# product taxonomy. Segment.
|
|
1285
|
+
# Corresponds to the JSON property `productTypeL2`
|
|
1286
|
+
# @return [String]
|
|
1287
|
+
attr_accessor :product_type_l2
|
|
1288
|
+
|
|
1289
|
+
# [Product type (3rd level)](https://developers.google.com/shopping-content/
|
|
1290
|
+
# guides/reports/segmentation#category_and_product_type) in merchant's own
|
|
1291
|
+
# product taxonomy. Segment.
|
|
1292
|
+
# Corresponds to the JSON property `productTypeL3`
|
|
1293
|
+
# @return [String]
|
|
1294
|
+
attr_accessor :product_type_l3
|
|
1295
|
+
|
|
1296
|
+
# [Product type (4th level)](https://developers.google.com/shopping-content/
|
|
1297
|
+
# guides/reports/segmentation#category_and_product_type) in merchant's own
|
|
1298
|
+
# product taxonomy. Segment.
|
|
1299
|
+
# Corresponds to the JSON property `productTypeL4`
|
|
1300
|
+
# @return [String]
|
|
1301
|
+
attr_accessor :product_type_l4
|
|
1302
|
+
|
|
1303
|
+
# [Product type (5th level)](https://developers.google.com/shopping-content/
|
|
1304
|
+
# guides/reports/segmentation#category_and_product_type) in merchant's own
|
|
1305
|
+
# product taxonomy. Segment.
|
|
1306
|
+
# Corresponds to the JSON property `productTypeL5`
|
|
1307
|
+
# @return [String]
|
|
1308
|
+
attr_accessor :product_type_l5
|
|
1309
|
+
|
|
1310
|
+
# Title of the product. Segment.
|
|
1311
|
+
# Corresponds to the JSON property `title`
|
|
1312
|
+
# @return [String]
|
|
1313
|
+
attr_accessor :title
|
|
1314
|
+
|
|
1315
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
1316
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
1317
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
1318
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
1319
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
1320
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
1321
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
1322
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
1323
|
+
# Corresponds to the JSON property `week`
|
|
1324
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
1325
|
+
attr_accessor :week
|
|
1326
|
+
|
|
1327
|
+
def initialize(**args)
|
|
1328
|
+
update!(**args)
|
|
1329
|
+
end
|
|
1330
|
+
|
|
1331
|
+
# Update properties of this object
|
|
1332
|
+
def update!(**args)
|
|
1333
|
+
@brand = args[:brand] if args.key?(:brand)
|
|
1334
|
+
@category_l1 = args[:category_l1] if args.key?(:category_l1)
|
|
1335
|
+
@category_l2 = args[:category_l2] if args.key?(:category_l2)
|
|
1336
|
+
@category_l3 = args[:category_l3] if args.key?(:category_l3)
|
|
1337
|
+
@category_l4 = args[:category_l4] if args.key?(:category_l4)
|
|
1338
|
+
@category_l5 = args[:category_l5] if args.key?(:category_l5)
|
|
1339
|
+
@click_through_rate = args[:click_through_rate] if args.key?(:click_through_rate)
|
|
1340
|
+
@clicks = args[:clicks] if args.key?(:clicks)
|
|
1341
|
+
@conversion_rate = args[:conversion_rate] if args.key?(:conversion_rate)
|
|
1342
|
+
@conversion_value = args[:conversion_value] if args.key?(:conversion_value)
|
|
1343
|
+
@conversions = args[:conversions] if args.key?(:conversions)
|
|
1344
|
+
@custom_label0 = args[:custom_label0] if args.key?(:custom_label0)
|
|
1345
|
+
@custom_label1 = args[:custom_label1] if args.key?(:custom_label1)
|
|
1346
|
+
@custom_label2 = args[:custom_label2] if args.key?(:custom_label2)
|
|
1347
|
+
@custom_label3 = args[:custom_label3] if args.key?(:custom_label3)
|
|
1348
|
+
@custom_label4 = args[:custom_label4] if args.key?(:custom_label4)
|
|
1349
|
+
@customer_country_code = args[:customer_country_code] if args.key?(:customer_country_code)
|
|
1350
|
+
@date = args[:date] if args.key?(:date)
|
|
1351
|
+
@impressions = args[:impressions] if args.key?(:impressions)
|
|
1352
|
+
@marketing_method = args[:marketing_method] if args.key?(:marketing_method)
|
|
1353
|
+
@offer_id = args[:offer_id] if args.key?(:offer_id)
|
|
1354
|
+
@product_type_l1 = args[:product_type_l1] if args.key?(:product_type_l1)
|
|
1355
|
+
@product_type_l2 = args[:product_type_l2] if args.key?(:product_type_l2)
|
|
1356
|
+
@product_type_l3 = args[:product_type_l3] if args.key?(:product_type_l3)
|
|
1357
|
+
@product_type_l4 = args[:product_type_l4] if args.key?(:product_type_l4)
|
|
1358
|
+
@product_type_l5 = args[:product_type_l5] if args.key?(:product_type_l5)
|
|
1359
|
+
@title = args[:title] if args.key?(:title)
|
|
1360
|
+
@week = args[:week] if args.key?(:week)
|
|
1361
|
+
end
|
|
1362
|
+
end
|
|
1363
|
+
|
|
1364
|
+
# The message that the merchant will receive to notify about product status
|
|
1365
|
+
# change event
|
|
1366
|
+
class ProductStatusChangeMessage
|
|
1367
|
+
include Google::Apis::Core::Hashable
|
|
1368
|
+
|
|
1369
|
+
# The target account that owns the entity that changed. Format : `accounts/`
|
|
1370
|
+
# merchant_id``
|
|
1371
|
+
# Corresponds to the JSON property `account`
|
|
1372
|
+
# @return [String]
|
|
1373
|
+
attr_accessor :account
|
|
1374
|
+
|
|
1375
|
+
# The attribute in the resource that changed, in this case it will be always `
|
|
1376
|
+
# Status`.
|
|
1377
|
+
# Corresponds to the JSON property `attribute`
|
|
1378
|
+
# @return [String]
|
|
1379
|
+
attr_accessor :attribute
|
|
1380
|
+
|
|
1381
|
+
# A message to describe the change that happened to the product
|
|
1382
|
+
# Corresponds to the JSON property `changes`
|
|
1383
|
+
# @return [Array<Google::Apis::MerchantapiReportsV1beta::ProductChange>]
|
|
1384
|
+
attr_accessor :changes
|
|
1385
|
+
|
|
1386
|
+
# The account that manages the merchant's account. can be the same as merchant
|
|
1387
|
+
# id if it is standalone account. Format : `accounts/`service_provider_id``
|
|
1388
|
+
# Corresponds to the JSON property `managingAccount`
|
|
1389
|
+
# @return [String]
|
|
1390
|
+
attr_accessor :managing_account
|
|
1391
|
+
|
|
1392
|
+
# The product name. Format: ``product.name=accounts/`account`/products/`product``
|
|
1393
|
+
# `
|
|
1394
|
+
# Corresponds to the JSON property `resource`
|
|
1395
|
+
# @return [String]
|
|
1396
|
+
attr_accessor :resource
|
|
1397
|
+
|
|
1398
|
+
# The product id.
|
|
1399
|
+
# Corresponds to the JSON property `resourceId`
|
|
1400
|
+
# @return [String]
|
|
1401
|
+
attr_accessor :resource_id
|
|
1402
|
+
|
|
1403
|
+
# The resource that changed, in this case it will always be `Product`.
|
|
1404
|
+
# Corresponds to the JSON property `resourceType`
|
|
1405
|
+
# @return [String]
|
|
1406
|
+
attr_accessor :resource_type
|
|
1407
|
+
|
|
1408
|
+
def initialize(**args)
|
|
1409
|
+
update!(**args)
|
|
1410
|
+
end
|
|
1411
|
+
|
|
1412
|
+
# Update properties of this object
|
|
1413
|
+
def update!(**args)
|
|
1414
|
+
@account = args[:account] if args.key?(:account)
|
|
1415
|
+
@attribute = args[:attribute] if args.key?(:attribute)
|
|
1416
|
+
@changes = args[:changes] if args.key?(:changes)
|
|
1417
|
+
@managing_account = args[:managing_account] if args.key?(:managing_account)
|
|
1418
|
+
@resource = args[:resource] if args.key?(:resource)
|
|
1419
|
+
@resource_id = args[:resource_id] if args.key?(:resource_id)
|
|
1420
|
+
@resource_type = args[:resource_type] if args.key?(:resource_type)
|
|
1421
|
+
end
|
|
1422
|
+
end
|
|
1423
|
+
|
|
1424
|
+
# Fields available for query in `product_view` table. Products in the current
|
|
1425
|
+
# inventory. Products in this table are the same as in Products sub-API but not
|
|
1426
|
+
# all product attributes from Products sub-API are available for query in this
|
|
1427
|
+
# table. In contrast to Products sub-API, this table allows to filter the
|
|
1428
|
+
# returned list of products by product attributes. To retrieve a single product
|
|
1429
|
+
# by `id` or list all products, Products sub-API should be used. Values are only
|
|
1430
|
+
# set for fields requested explicitly in the request's search query.
|
|
1431
|
+
class ProductView
|
|
1432
|
+
include Google::Apis::Core::Hashable
|
|
1433
|
+
|
|
1434
|
+
# Aggregated status.
|
|
1435
|
+
# Corresponds to the JSON property `aggregatedReportingContextStatus`
|
|
1436
|
+
# @return [String]
|
|
1437
|
+
attr_accessor :aggregated_reporting_context_status
|
|
1438
|
+
|
|
1439
|
+
# [Availability](https://support.google.com/merchants/answer/6324448) of the
|
|
1440
|
+
# product.
|
|
1441
|
+
# Corresponds to the JSON property `availability`
|
|
1442
|
+
# @return [String]
|
|
1443
|
+
attr_accessor :availability
|
|
1444
|
+
|
|
1445
|
+
# Brand of the product.
|
|
1446
|
+
# Corresponds to the JSON property `brand`
|
|
1447
|
+
# @return [String]
|
|
1448
|
+
attr_accessor :brand
|
|
1449
|
+
|
|
1450
|
+
# Product category (1st level) in [Google's product taxonomy](https://support.
|
|
1451
|
+
# google.com/merchants/answer/6324436).
|
|
1452
|
+
# Corresponds to the JSON property `categoryL1`
|
|
1453
|
+
# @return [String]
|
|
1454
|
+
attr_accessor :category_l1
|
|
1455
|
+
|
|
1456
|
+
# Product category (2nd level) in [Google's product taxonomy](https://support.
|
|
1457
|
+
# google.com/merchants/answer/6324436).
|
|
1458
|
+
# Corresponds to the JSON property `categoryL2`
|
|
1459
|
+
# @return [String]
|
|
1460
|
+
attr_accessor :category_l2
|
|
1461
|
+
|
|
1462
|
+
# Product category (3rd level) in [Google's product taxonomy](https://support.
|
|
1463
|
+
# google.com/merchants/answer/6324436).
|
|
1464
|
+
# Corresponds to the JSON property `categoryL3`
|
|
1465
|
+
# @return [String]
|
|
1466
|
+
attr_accessor :category_l3
|
|
1467
|
+
|
|
1468
|
+
# Product category (4th level) in [Google's product taxonomy](https://support.
|
|
1469
|
+
# google.com/merchants/answer/6324436).
|
|
1470
|
+
# Corresponds to the JSON property `categoryL4`
|
|
1471
|
+
# @return [String]
|
|
1472
|
+
attr_accessor :category_l4
|
|
1473
|
+
|
|
1474
|
+
# Product category (5th level) in [Google's product taxonomy](https://support.
|
|
1475
|
+
# google.com/merchants/answer/6324436).
|
|
1476
|
+
# Corresponds to the JSON property `categoryL5`
|
|
1477
|
+
# @return [String]
|
|
1478
|
+
attr_accessor :category_l5
|
|
1479
|
+
|
|
1480
|
+
# Channel of the product. Can be `ONLINE` or `LOCAL`.
|
|
1481
|
+
# Corresponds to the JSON property `channel`
|
|
1482
|
+
# @return [String]
|
|
1483
|
+
attr_accessor :channel
|
|
1484
|
+
|
|
1485
|
+
# Estimated performance potential compared to highest performing products of the
|
|
1486
|
+
# merchant.
|
|
1487
|
+
# Corresponds to the JSON property `clickPotential`
|
|
1488
|
+
# @return [String]
|
|
1489
|
+
attr_accessor :click_potential
|
|
1490
|
+
|
|
1491
|
+
# Rank of the product based on its click potential. A product with `
|
|
1492
|
+
# click_potential_rank` 1 has the highest click potential among the merchant's
|
|
1493
|
+
# products that fulfill the search query conditions.
|
|
1494
|
+
# Corresponds to the JSON property `clickPotentialRank`
|
|
1495
|
+
# @return [Fixnum]
|
|
1496
|
+
attr_accessor :click_potential_rank
|
|
1497
|
+
|
|
1498
|
+
# [Condition](https://support.google.com/merchants/answer/6324469) of the
|
|
1499
|
+
# product.
|
|
1500
|
+
# Corresponds to the JSON property `condition`
|
|
1501
|
+
# @return [String]
|
|
1502
|
+
attr_accessor :condition
|
|
1503
|
+
|
|
1504
|
+
# The time the merchant created the product in timestamp seconds.
|
|
1505
|
+
# Corresponds to the JSON property `creationTime`
|
|
1506
|
+
# @return [String]
|
|
1507
|
+
attr_accessor :creation_time
|
|
1508
|
+
|
|
1509
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
|
1510
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
|
1511
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
|
1512
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
|
1513
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
|
1514
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
|
1515
|
+
# example, a credit card expiration date). Related types: * google.type.
|
|
1516
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
|
1517
|
+
# Corresponds to the JSON property `expirationDate`
|
|
1518
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Date]
|
|
1519
|
+
attr_accessor :expiration_date
|
|
1520
|
+
|
|
1521
|
+
# Feed label of the product.
|
|
1522
|
+
# Corresponds to the JSON property `feedLabel`
|
|
1523
|
+
# @return [String]
|
|
1524
|
+
attr_accessor :feed_label
|
|
1525
|
+
|
|
1526
|
+
# List of Global Trade Item Numbers (GTINs) of the product.
|
|
1527
|
+
# Corresponds to the JSON property `gtin`
|
|
1528
|
+
# @return [Array<String>]
|
|
1529
|
+
attr_accessor :gtin
|
|
1530
|
+
|
|
1531
|
+
# REST ID of the product, in the form of `channel~languageCode~feedLabel~offerId`
|
|
1532
|
+
# . Merchant API methods that operate on products take this as their `name`
|
|
1533
|
+
# parameter. Required in the `SELECT` clause.
|
|
1534
|
+
# Corresponds to the JSON property `id`
|
|
1535
|
+
# @return [String]
|
|
1536
|
+
attr_accessor :id
|
|
1537
|
+
|
|
1538
|
+
# Item group id provided by the merchant for grouping variants together.
|
|
1539
|
+
# Corresponds to the JSON property `itemGroupId`
|
|
1540
|
+
# @return [String]
|
|
1541
|
+
attr_accessor :item_group_id
|
|
1542
|
+
|
|
1543
|
+
# List of item issues for the product. **This field cannot be used for sorting
|
|
1544
|
+
# the results.** **Only selected attributes of this field (for example, `
|
|
1545
|
+
# item_issues.severity.aggregated_severity`) can be used for filtering the
|
|
1546
|
+
# results.**
|
|
1547
|
+
# Corresponds to the JSON property `itemIssues`
|
|
1548
|
+
# @return [Array<Google::Apis::MerchantapiReportsV1beta::ItemIssue>]
|
|
1549
|
+
attr_accessor :item_issues
|
|
1550
|
+
|
|
1551
|
+
# Language code of the product in BCP 47 format.
|
|
1552
|
+
# Corresponds to the JSON property `languageCode`
|
|
1553
|
+
# @return [String]
|
|
1554
|
+
attr_accessor :language_code
|
|
1555
|
+
|
|
1556
|
+
# Merchant-provided id of the product.
|
|
1557
|
+
# Corresponds to the JSON property `offerId`
|
|
1558
|
+
# @return [String]
|
|
1559
|
+
attr_accessor :offer_id
|
|
1560
|
+
|
|
1561
|
+
# The price represented as a number and currency.
|
|
1562
|
+
# Corresponds to the JSON property `price`
|
|
1563
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::Price]
|
|
1564
|
+
attr_accessor :price
|
|
1565
|
+
|
|
1566
|
+
# Product type (1st level) in merchant's own [product taxonomy](https://support.
|
|
1567
|
+
# google.com/merchants/answer/6324406).
|
|
1568
|
+
# Corresponds to the JSON property `productTypeL1`
|
|
1569
|
+
# @return [String]
|
|
1570
|
+
attr_accessor :product_type_l1
|
|
1571
|
+
|
|
1572
|
+
# Product type (2nd level) in merchant's own [product taxonomy](https://support.
|
|
1573
|
+
# google.com/merchants/answer/6324406).
|
|
1574
|
+
# Corresponds to the JSON property `productTypeL2`
|
|
1575
|
+
# @return [String]
|
|
1576
|
+
attr_accessor :product_type_l2
|
|
1577
|
+
|
|
1578
|
+
# Product type (3rd level) in merchant's own [product taxonomy](https://support.
|
|
1579
|
+
# google.com/merchants/answer/6324406).
|
|
1580
|
+
# Corresponds to the JSON property `productTypeL3`
|
|
1581
|
+
# @return [String]
|
|
1582
|
+
attr_accessor :product_type_l3
|
|
1583
|
+
|
|
1584
|
+
# Product type (4th level) in merchant's own [product taxonomy](https://support.
|
|
1585
|
+
# google.com/merchants/answer/6324406).
|
|
1586
|
+
# Corresponds to the JSON property `productTypeL4`
|
|
1587
|
+
# @return [String]
|
|
1588
|
+
attr_accessor :product_type_l4
|
|
1589
|
+
|
|
1590
|
+
# Product type (5th level) in merchant's own [product taxonomy](https://support.
|
|
1591
|
+
# google.com/merchants/answer/6324406).
|
|
1592
|
+
# Corresponds to the JSON property `productTypeL5`
|
|
1593
|
+
# @return [String]
|
|
1594
|
+
attr_accessor :product_type_l5
|
|
1595
|
+
|
|
1596
|
+
# Normalized [shipping label](https://support.google.com/merchants/answer/
|
|
1597
|
+
# 6324504) specified in the data source.
|
|
1598
|
+
# Corresponds to the JSON property `shippingLabel`
|
|
1599
|
+
# @return [String]
|
|
1600
|
+
attr_accessor :shipping_label
|
|
1601
|
+
|
|
1602
|
+
# Link to the processed image of the product, hosted on the Google
|
|
1603
|
+
# infrastructure.
|
|
1604
|
+
# Corresponds to the JSON property `thumbnailLink`
|
|
1605
|
+
# @return [String]
|
|
1606
|
+
attr_accessor :thumbnail_link
|
|
1607
|
+
|
|
1608
|
+
# Title of the product.
|
|
1609
|
+
# Corresponds to the JSON property `title`
|
|
1610
|
+
# @return [String]
|
|
1611
|
+
attr_accessor :title
|
|
1612
|
+
|
|
1613
|
+
def initialize(**args)
|
|
1614
|
+
update!(**args)
|
|
1615
|
+
end
|
|
1616
|
+
|
|
1617
|
+
# Update properties of this object
|
|
1618
|
+
def update!(**args)
|
|
1619
|
+
@aggregated_reporting_context_status = args[:aggregated_reporting_context_status] if args.key?(:aggregated_reporting_context_status)
|
|
1620
|
+
@availability = args[:availability] if args.key?(:availability)
|
|
1621
|
+
@brand = args[:brand] if args.key?(:brand)
|
|
1622
|
+
@category_l1 = args[:category_l1] if args.key?(:category_l1)
|
|
1623
|
+
@category_l2 = args[:category_l2] if args.key?(:category_l2)
|
|
1624
|
+
@category_l3 = args[:category_l3] if args.key?(:category_l3)
|
|
1625
|
+
@category_l4 = args[:category_l4] if args.key?(:category_l4)
|
|
1626
|
+
@category_l5 = args[:category_l5] if args.key?(:category_l5)
|
|
1627
|
+
@channel = args[:channel] if args.key?(:channel)
|
|
1628
|
+
@click_potential = args[:click_potential] if args.key?(:click_potential)
|
|
1629
|
+
@click_potential_rank = args[:click_potential_rank] if args.key?(:click_potential_rank)
|
|
1630
|
+
@condition = args[:condition] if args.key?(:condition)
|
|
1631
|
+
@creation_time = args[:creation_time] if args.key?(:creation_time)
|
|
1632
|
+
@expiration_date = args[:expiration_date] if args.key?(:expiration_date)
|
|
1633
|
+
@feed_label = args[:feed_label] if args.key?(:feed_label)
|
|
1634
|
+
@gtin = args[:gtin] if args.key?(:gtin)
|
|
1635
|
+
@id = args[:id] if args.key?(:id)
|
|
1636
|
+
@item_group_id = args[:item_group_id] if args.key?(:item_group_id)
|
|
1637
|
+
@item_issues = args[:item_issues] if args.key?(:item_issues)
|
|
1638
|
+
@language_code = args[:language_code] if args.key?(:language_code)
|
|
1639
|
+
@offer_id = args[:offer_id] if args.key?(:offer_id)
|
|
1640
|
+
@price = args[:price] if args.key?(:price)
|
|
1641
|
+
@product_type_l1 = args[:product_type_l1] if args.key?(:product_type_l1)
|
|
1642
|
+
@product_type_l2 = args[:product_type_l2] if args.key?(:product_type_l2)
|
|
1643
|
+
@product_type_l3 = args[:product_type_l3] if args.key?(:product_type_l3)
|
|
1644
|
+
@product_type_l4 = args[:product_type_l4] if args.key?(:product_type_l4)
|
|
1645
|
+
@product_type_l5 = args[:product_type_l5] if args.key?(:product_type_l5)
|
|
1646
|
+
@shipping_label = args[:shipping_label] if args.key?(:shipping_label)
|
|
1647
|
+
@thumbnail_link = args[:thumbnail_link] if args.key?(:thumbnail_link)
|
|
1648
|
+
@title = args[:title] if args.key?(:title)
|
|
1649
|
+
end
|
|
1650
|
+
end
|
|
1651
|
+
|
|
1652
|
+
# Result row returned from the search query. Only the message corresponding to
|
|
1653
|
+
# the queried table is populated in the response. Within the populated message,
|
|
1654
|
+
# only the fields requested explicitly in the query are populated.
|
|
1655
|
+
class ReportRow
|
|
1656
|
+
include Google::Apis::Core::Hashable
|
|
1657
|
+
|
|
1658
|
+
# Fields available for query in `best_sellers_brand_view` table. [Best sellers](
|
|
1659
|
+
# https://support.google.com/merchants/answer/9488679) report with top brands.
|
|
1660
|
+
# Values are only set for fields requested explicitly in the request's search
|
|
1661
|
+
# query.
|
|
1662
|
+
# Corresponds to the JSON property `bestSellersBrandView`
|
|
1663
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::BestSellersBrandView]
|
|
1664
|
+
attr_accessor :best_sellers_brand_view
|
|
1665
|
+
|
|
1666
|
+
# Fields available for query in `best_sellers_product_cluster_view` table. [Best
|
|
1667
|
+
# sellers](https://support.google.com/merchants/answer/9488679) report with top
|
|
1668
|
+
# product clusters. A product cluster is a grouping for different offers and
|
|
1669
|
+
# variants that represent the same product, for example, Google Pixel 7. Values
|
|
1670
|
+
# are only set for fields requested explicitly in the request's search query.
|
|
1671
|
+
# Corresponds to the JSON property `bestSellersProductClusterView`
|
|
1672
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::BestSellersProductClusterView]
|
|
1673
|
+
attr_accessor :best_sellers_product_cluster_view
|
|
1674
|
+
|
|
1675
|
+
# Fields available for query in `competitive_visibility_benchmark_view` table. [
|
|
1676
|
+
# Competitive visibility](https://support.google.com/merchants/answer/11366442)
|
|
1677
|
+
# report with the category benchmark. Values are only set for fields requested
|
|
1678
|
+
# explicitly in the request's search query.
|
|
1679
|
+
# Corresponds to the JSON property `competitiveVisibilityBenchmarkView`
|
|
1680
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::CompetitiveVisibilityBenchmarkView]
|
|
1681
|
+
attr_accessor :competitive_visibility_benchmark_view
|
|
1682
|
+
|
|
1683
|
+
# Fields available for query in `competitive_visibility_competitor_view` table. [
|
|
1684
|
+
# Competitive visibility](https://support.google.com/merchants/answer/11366442)
|
|
1685
|
+
# report with businesses with similar visibility. Values are only set for fields
|
|
1686
|
+
# requested explicitly in the request's search query.
|
|
1687
|
+
# Corresponds to the JSON property `competitiveVisibilityCompetitorView`
|
|
1688
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::CompetitiveVisibilityCompetitorView]
|
|
1689
|
+
attr_accessor :competitive_visibility_competitor_view
|
|
1690
|
+
|
|
1691
|
+
# Fields available for query in `competitive_visibility_top_merchant_view` table.
|
|
1692
|
+
# [Competitive visibility](https://support.google.com/merchants/answer/11366442)
|
|
1693
|
+
# report with business with highest visibility. Values are only set for fields
|
|
1694
|
+
# requested explicitly in the request's search query.
|
|
1695
|
+
# Corresponds to the JSON property `competitiveVisibilityTopMerchantView`
|
|
1696
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::CompetitiveVisibilityTopMerchantView]
|
|
1697
|
+
attr_accessor :competitive_visibility_top_merchant_view
|
|
1698
|
+
|
|
1699
|
+
# Fields available for query in `non_product_performance_view` table.
|
|
1700
|
+
# Performance data on images and online store links leading to your non-product
|
|
1701
|
+
# pages. This includes performance metrics (for example, `clicks`) and
|
|
1702
|
+
# dimensions according to which performance metrics are segmented (for example, `
|
|
1703
|
+
# date`). Segment fields cannot be selected in queries without also selecting at
|
|
1704
|
+
# least one metric field. Values are only set for fields requested explicitly in
|
|
1705
|
+
# the request's search query.
|
|
1706
|
+
# Corresponds to the JSON property `nonProductPerformanceView`
|
|
1707
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::NonProductPerformanceView]
|
|
1708
|
+
attr_accessor :non_product_performance_view
|
|
1709
|
+
|
|
1710
|
+
# Fields available for query in `price_competitiveness_product_view` table. [
|
|
1711
|
+
# Price competitiveness](https://support.google.com/merchants/answer/9626903)
|
|
1712
|
+
# report. Values are only set for fields requested explicitly in the request's
|
|
1713
|
+
# search query.
|
|
1714
|
+
# Corresponds to the JSON property `priceCompetitivenessProductView`
|
|
1715
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::PriceCompetitivenessProductView]
|
|
1716
|
+
attr_accessor :price_competitiveness_product_view
|
|
1717
|
+
|
|
1718
|
+
# Fields available for query in `price_insights_product_view` table. [Price
|
|
1719
|
+
# insights](https://support.google.com/merchants/answer/11916926) report. Values
|
|
1720
|
+
# are only set for fields requested explicitly in the request's search query.
|
|
1721
|
+
# Corresponds to the JSON property `priceInsightsProductView`
|
|
1722
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::PriceInsightsProductView]
|
|
1723
|
+
attr_accessor :price_insights_product_view
|
|
1724
|
+
|
|
1725
|
+
# Fields available for query in `product_performance_view` table. Product
|
|
1726
|
+
# performance data for your account, including performance metrics (for example,
|
|
1727
|
+
# `clicks`) and dimensions according to which performance metrics are segmented (
|
|
1728
|
+
# for example, `offer_id`). Values of product dimensions, such as `offer_id`,
|
|
1729
|
+
# reflect the state of a product at the time of the impression. Segment fields
|
|
1730
|
+
# cannot be selected in queries without also selecting at least one metric field.
|
|
1731
|
+
# Values are only set for fields requested explicitly in the request's search
|
|
1732
|
+
# query.
|
|
1733
|
+
# Corresponds to the JSON property `productPerformanceView`
|
|
1734
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::ProductPerformanceView]
|
|
1735
|
+
attr_accessor :product_performance_view
|
|
1736
|
+
|
|
1737
|
+
# Fields available for query in `product_view` table. Products in the current
|
|
1738
|
+
# inventory. Products in this table are the same as in Products sub-API but not
|
|
1739
|
+
# all product attributes from Products sub-API are available for query in this
|
|
1740
|
+
# table. In contrast to Products sub-API, this table allows to filter the
|
|
1741
|
+
# returned list of products by product attributes. To retrieve a single product
|
|
1742
|
+
# by `id` or list all products, Products sub-API should be used. Values are only
|
|
1743
|
+
# set for fields requested explicitly in the request's search query.
|
|
1744
|
+
# Corresponds to the JSON property `productView`
|
|
1745
|
+
# @return [Google::Apis::MerchantapiReportsV1beta::ProductView]
|
|
1746
|
+
attr_accessor :product_view
|
|
1747
|
+
|
|
1748
|
+
def initialize(**args)
|
|
1749
|
+
update!(**args)
|
|
1750
|
+
end
|
|
1751
|
+
|
|
1752
|
+
# Update properties of this object
|
|
1753
|
+
def update!(**args)
|
|
1754
|
+
@best_sellers_brand_view = args[:best_sellers_brand_view] if args.key?(:best_sellers_brand_view)
|
|
1755
|
+
@best_sellers_product_cluster_view = args[:best_sellers_product_cluster_view] if args.key?(:best_sellers_product_cluster_view)
|
|
1756
|
+
@competitive_visibility_benchmark_view = args[:competitive_visibility_benchmark_view] if args.key?(:competitive_visibility_benchmark_view)
|
|
1757
|
+
@competitive_visibility_competitor_view = args[:competitive_visibility_competitor_view] if args.key?(:competitive_visibility_competitor_view)
|
|
1758
|
+
@competitive_visibility_top_merchant_view = args[:competitive_visibility_top_merchant_view] if args.key?(:competitive_visibility_top_merchant_view)
|
|
1759
|
+
@non_product_performance_view = args[:non_product_performance_view] if args.key?(:non_product_performance_view)
|
|
1760
|
+
@price_competitiveness_product_view = args[:price_competitiveness_product_view] if args.key?(:price_competitiveness_product_view)
|
|
1761
|
+
@price_insights_product_view = args[:price_insights_product_view] if args.key?(:price_insights_product_view)
|
|
1762
|
+
@product_performance_view = args[:product_performance_view] if args.key?(:product_performance_view)
|
|
1763
|
+
@product_view = args[:product_view] if args.key?(:product_view)
|
|
1764
|
+
end
|
|
1765
|
+
end
|
|
1766
|
+
|
|
1767
|
+
# Request message for the `ReportService.Search` method.
|
|
1768
|
+
class SearchRequest
|
|
1769
|
+
include Google::Apis::Core::Hashable
|
|
1770
|
+
|
|
1771
|
+
# Optional. Number of `ReportRows` to retrieve in a single page. Defaults to
|
|
1772
|
+
# 1000. Values above 5000 are coerced to 5000.
|
|
1773
|
+
# Corresponds to the JSON property `pageSize`
|
|
1774
|
+
# @return [Fixnum]
|
|
1775
|
+
attr_accessor :page_size
|
|
1776
|
+
|
|
1777
|
+
# Optional. Token of the page to retrieve. If not specified, the first page of
|
|
1778
|
+
# results is returned. In order to request the next page of results, the value
|
|
1779
|
+
# obtained from `next_page_token` in the previous response should be used.
|
|
1780
|
+
# Corresponds to the JSON property `pageToken`
|
|
1781
|
+
# @return [String]
|
|
1782
|
+
attr_accessor :page_token
|
|
1783
|
+
|
|
1784
|
+
# Required. Query that defines a report to be retrieved. For details on how to
|
|
1785
|
+
# construct your query, see the Query Language guide. For the full list of
|
|
1786
|
+
# available tables and fields, see the Available fields.
|
|
1787
|
+
# Corresponds to the JSON property `query`
|
|
1788
|
+
# @return [String]
|
|
1789
|
+
attr_accessor :query
|
|
1790
|
+
|
|
1791
|
+
def initialize(**args)
|
|
1792
|
+
update!(**args)
|
|
1793
|
+
end
|
|
1794
|
+
|
|
1795
|
+
# Update properties of this object
|
|
1796
|
+
def update!(**args)
|
|
1797
|
+
@page_size = args[:page_size] if args.key?(:page_size)
|
|
1798
|
+
@page_token = args[:page_token] if args.key?(:page_token)
|
|
1799
|
+
@query = args[:query] if args.key?(:query)
|
|
1800
|
+
end
|
|
1801
|
+
end
|
|
1802
|
+
|
|
1803
|
+
# Response message for the `ReportService.Search` method.
|
|
1804
|
+
class SearchResponse
|
|
1805
|
+
include Google::Apis::Core::Hashable
|
|
1806
|
+
|
|
1807
|
+
# Token which can be sent as `page_token` to retrieve the next page. If omitted,
|
|
1808
|
+
# there are no subsequent pages.
|
|
1809
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
1810
|
+
# @return [String]
|
|
1811
|
+
attr_accessor :next_page_token
|
|
1812
|
+
|
|
1813
|
+
# Rows that matched the search query.
|
|
1814
|
+
# Corresponds to the JSON property `results`
|
|
1815
|
+
# @return [Array<Google::Apis::MerchantapiReportsV1beta::ReportRow>]
|
|
1816
|
+
attr_accessor :results
|
|
1817
|
+
|
|
1818
|
+
def initialize(**args)
|
|
1819
|
+
update!(**args)
|
|
1820
|
+
end
|
|
1821
|
+
|
|
1822
|
+
# Update properties of this object
|
|
1823
|
+
def update!(**args)
|
|
1824
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
1825
|
+
@results = args[:results] if args.key?(:results)
|
|
1826
|
+
end
|
|
1827
|
+
end
|
|
1828
|
+
end
|
|
1829
|
+
end
|
|
1830
|
+
end
|