google-apis-merchantapi_inventories_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.
@@ -0,0 +1,469 @@
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 MerchantapiInventoriesV1beta
24
+
25
+ # A message that represents custom attributes. Exactly one of `value` or `
26
+ # group_values` must not be empty.
27
+ class CustomAttribute
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # Subattributes within this attribute group. If `group_values` is not empty, `
31
+ # value` must be empty.
32
+ # Corresponds to the JSON property `groupValues`
33
+ # @return [Array<Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute>]
34
+ attr_accessor :group_values
35
+
36
+ # The name of the attribute.
37
+ # Corresponds to the JSON property `name`
38
+ # @return [String]
39
+ attr_accessor :name
40
+
41
+ # The value of the attribute. If `value` is not empty, `group_values` must be
42
+ # empty.
43
+ # Corresponds to the JSON property `value`
44
+ # @return [String]
45
+ attr_accessor :value
46
+
47
+ def initialize(**args)
48
+ update!(**args)
49
+ end
50
+
51
+ # Update properties of this object
52
+ def update!(**args)
53
+ @group_values = args[:group_values] if args.key?(:group_values)
54
+ @name = args[:name] if args.key?(:name)
55
+ @value = args[:value] if args.key?(:value)
56
+ end
57
+ end
58
+
59
+ # A generic empty message that you can re-use to avoid defining duplicated empty
60
+ # messages in your APIs. A typical example is to use it as the request or the
61
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
62
+ # protobuf.Empty) returns (google.protobuf.Empty); `
63
+ class Empty
64
+ include Google::Apis::Core::Hashable
65
+
66
+ def initialize(**args)
67
+ update!(**args)
68
+ end
69
+
70
+ # Update properties of this object
71
+ def update!(**args)
72
+ end
73
+ end
74
+
75
+ # Represents a time interval, encoded as a Timestamp start (inclusive) and a
76
+ # Timestamp end (exclusive). The start must be less than or equal to the end.
77
+ # When the start equals the end, the interval is empty (matches no time). When
78
+ # both start and end are unspecified, the interval matches any time.
79
+ class Interval
80
+ include Google::Apis::Core::Hashable
81
+
82
+ # Optional. Exclusive end of the interval. If specified, a Timestamp matching
83
+ # this interval will have to be before the end.
84
+ # Corresponds to the JSON property `endTime`
85
+ # @return [String]
86
+ attr_accessor :end_time
87
+
88
+ # Optional. Inclusive start of the interval. If specified, a Timestamp matching
89
+ # this interval will have to be the same or after the start.
90
+ # Corresponds to the JSON property `startTime`
91
+ # @return [String]
92
+ attr_accessor :start_time
93
+
94
+ def initialize(**args)
95
+ update!(**args)
96
+ end
97
+
98
+ # Update properties of this object
99
+ def update!(**args)
100
+ @end_time = args[:end_time] if args.key?(:end_time)
101
+ @start_time = args[:start_time] if args.key?(:start_time)
102
+ end
103
+ end
104
+
105
+ # Response message for the `ListLocalInventories` method.
106
+ class ListLocalInventoriesResponse
107
+ include Google::Apis::Core::Hashable
108
+
109
+ # The `LocalInventory` resources for the given product from the specified
110
+ # account.
111
+ # Corresponds to the JSON property `localInventories`
112
+ # @return [Array<Google::Apis::MerchantapiInventoriesV1beta::LocalInventory>]
113
+ attr_accessor :local_inventories
114
+
115
+ # A token, which can be sent as `pageToken` to retrieve the next page. If this
116
+ # field is omitted, there are no subsequent pages.
117
+ # Corresponds to the JSON property `nextPageToken`
118
+ # @return [String]
119
+ attr_accessor :next_page_token
120
+
121
+ def initialize(**args)
122
+ update!(**args)
123
+ end
124
+
125
+ # Update properties of this object
126
+ def update!(**args)
127
+ @local_inventories = args[:local_inventories] if args.key?(:local_inventories)
128
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
129
+ end
130
+ end
131
+
132
+ # Response message for the `ListRegionalInventories` method.
133
+ class ListRegionalInventoriesResponse
134
+ include Google::Apis::Core::Hashable
135
+
136
+ # A token, which can be sent as `pageToken` to retrieve the next page. If this
137
+ # field is omitted, there are no subsequent pages.
138
+ # Corresponds to the JSON property `nextPageToken`
139
+ # @return [String]
140
+ attr_accessor :next_page_token
141
+
142
+ # The `RegionalInventory` resources for the given product from the specified
143
+ # account.
144
+ # Corresponds to the JSON property `regionalInventories`
145
+ # @return [Array<Google::Apis::MerchantapiInventoriesV1beta::RegionalInventory>]
146
+ attr_accessor :regional_inventories
147
+
148
+ def initialize(**args)
149
+ update!(**args)
150
+ end
151
+
152
+ # Update properties of this object
153
+ def update!(**args)
154
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
155
+ @regional_inventories = args[:regional_inventories] if args.key?(:regional_inventories)
156
+ end
157
+ end
158
+
159
+ # Local inventory information for the product. Represents in-store information
160
+ # for a specific product at the store specified by `storeCode`. For a list of
161
+ # all accepted attribute values, see the [local product inventory data
162
+ # specification](https://support.google.com/merchants/answer/3061342).
163
+ class LocalInventory
164
+ include Google::Apis::Core::Hashable
165
+
166
+ # Output only. The account that owns the product. This field will be ignored if
167
+ # set by the client.
168
+ # Corresponds to the JSON property `account`
169
+ # @return [Fixnum]
170
+ attr_accessor :account
171
+
172
+ # Availability of the product at this store. For accepted attribute values, see
173
+ # the [local product inventory data specification](https://support.google.com/
174
+ # merchants/answer/3061342)
175
+ # Corresponds to the JSON property `availability`
176
+ # @return [String]
177
+ attr_accessor :availability
178
+
179
+ # A list of custom (merchant-provided) attributes. You can also use `
180
+ # CustomAttribute` to submit any attribute of the data specification in its
181
+ # generic form.
182
+ # Corresponds to the JSON property `customAttributes`
183
+ # @return [Array<Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute>]
184
+ attr_accessor :custom_attributes
185
+
186
+ # Location of the product inside the store. Maximum length is 20 bytes.
187
+ # Corresponds to the JSON property `instoreProductLocation`
188
+ # @return [String]
189
+ attr_accessor :instore_product_location
190
+
191
+ # Output only. The name of the `LocalInventory` resource. Format: `accounts/`
192
+ # account`/products/`product`/localInventories/`store_code``
193
+ # Corresponds to the JSON property `name`
194
+ # @return [String]
195
+ attr_accessor :name
196
+
197
+ # Supported pickup method for this product. Unless the value is `"not supported"`
198
+ # , this field must be submitted together with `pickupSla`. For accepted
199
+ # attribute values, see the [local product inventory data specification](https://
200
+ # support.google.com/merchants/answer/3061342)
201
+ # Corresponds to the JSON property `pickupMethod`
202
+ # @return [String]
203
+ attr_accessor :pickup_method
204
+
205
+ # Relative time period from the order date for an order for this product, from
206
+ # this store, to be ready for pickup. Must be submitted with `pickupMethod`. For
207
+ # accepted attribute values, see the [local product inventory data specification]
208
+ # (https://support.google.com/merchants/answer/3061342)
209
+ # Corresponds to the JSON property `pickupSla`
210
+ # @return [String]
211
+ attr_accessor :pickup_sla
212
+
213
+ # The price represented as a number and currency.
214
+ # Corresponds to the JSON property `price`
215
+ # @return [Google::Apis::MerchantapiInventoriesV1beta::Price]
216
+ attr_accessor :price
217
+
218
+ # Quantity of the product available at this store. Must be greater than or equal
219
+ # to zero.
220
+ # Corresponds to the JSON property `quantity`
221
+ # @return [Fixnum]
222
+ attr_accessor :quantity
223
+
224
+ # The price represented as a number and currency.
225
+ # Corresponds to the JSON property `salePrice`
226
+ # @return [Google::Apis::MerchantapiInventoriesV1beta::Price]
227
+ attr_accessor :sale_price
228
+
229
+ # Represents a time interval, encoded as a Timestamp start (inclusive) and a
230
+ # Timestamp end (exclusive). The start must be less than or equal to the end.
231
+ # When the start equals the end, the interval is empty (matches no time). When
232
+ # both start and end are unspecified, the interval matches any time.
233
+ # Corresponds to the JSON property `salePriceEffectiveDate`
234
+ # @return [Google::Apis::MerchantapiInventoriesV1beta::Interval]
235
+ attr_accessor :sale_price_effective_date
236
+
237
+ # Required. Immutable. Store code (the store ID from your Business Profile) of
238
+ # the physical store the product is sold in. See the [Local product inventory
239
+ # data specification](https://support.google.com/merchants/answer/3061342) for
240
+ # more information.
241
+ # Corresponds to the JSON property `storeCode`
242
+ # @return [String]
243
+ attr_accessor :store_code
244
+
245
+ def initialize(**args)
246
+ update!(**args)
247
+ end
248
+
249
+ # Update properties of this object
250
+ def update!(**args)
251
+ @account = args[:account] if args.key?(:account)
252
+ @availability = args[:availability] if args.key?(:availability)
253
+ @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
254
+ @instore_product_location = args[:instore_product_location] if args.key?(:instore_product_location)
255
+ @name = args[:name] if args.key?(:name)
256
+ @pickup_method = args[:pickup_method] if args.key?(:pickup_method)
257
+ @pickup_sla = args[:pickup_sla] if args.key?(:pickup_sla)
258
+ @price = args[:price] if args.key?(:price)
259
+ @quantity = args[:quantity] if args.key?(:quantity)
260
+ @sale_price = args[:sale_price] if args.key?(:sale_price)
261
+ @sale_price_effective_date = args[:sale_price_effective_date] if args.key?(:sale_price_effective_date)
262
+ @store_code = args[:store_code] if args.key?(:store_code)
263
+ end
264
+ end
265
+
266
+ # The price represented as a number and currency.
267
+ class Price
268
+ include Google::Apis::Core::Hashable
269
+
270
+ # The price represented as a number in micros (1 million micros is an equivalent
271
+ # to one's currency standard unit, for example, 1 USD = 1000000 micros).
272
+ # Corresponds to the JSON property `amountMicros`
273
+ # @return [Fixnum]
274
+ attr_accessor :amount_micros
275
+
276
+ # The currency of the price using three-letter acronyms according to [ISO 4217](
277
+ # http://en.wikipedia.org/wiki/ISO_4217).
278
+ # Corresponds to the JSON property `currencyCode`
279
+ # @return [String]
280
+ attr_accessor :currency_code
281
+
282
+ def initialize(**args)
283
+ update!(**args)
284
+ end
285
+
286
+ # Update properties of this object
287
+ def update!(**args)
288
+ @amount_micros = args[:amount_micros] if args.key?(:amount_micros)
289
+ @currency_code = args[:currency_code] if args.key?(:currency_code)
290
+ end
291
+ end
292
+
293
+ # The change that happened to the product including old value, new value,
294
+ # country code as the region code and reporting context.
295
+ class ProductChange
296
+ include Google::Apis::Core::Hashable
297
+
298
+ # The new value of the changed resource or attribute.
299
+ # Corresponds to the JSON property `newValue`
300
+ # @return [String]
301
+ attr_accessor :new_value
302
+
303
+ # The old value of the changed resource or attribute.
304
+ # Corresponds to the JSON property `oldValue`
305
+ # @return [String]
306
+ attr_accessor :old_value
307
+
308
+ # Countries that have the change (if applicable)
309
+ # Corresponds to the JSON property `regionCode`
310
+ # @return [String]
311
+ attr_accessor :region_code
312
+
313
+ # Reporting contexts that have the change (if applicable)
314
+ # Corresponds to the JSON property `reportingContext`
315
+ # @return [String]
316
+ attr_accessor :reporting_context
317
+
318
+ def initialize(**args)
319
+ update!(**args)
320
+ end
321
+
322
+ # Update properties of this object
323
+ def update!(**args)
324
+ @new_value = args[:new_value] if args.key?(:new_value)
325
+ @old_value = args[:old_value] if args.key?(:old_value)
326
+ @region_code = args[:region_code] if args.key?(:region_code)
327
+ @reporting_context = args[:reporting_context] if args.key?(:reporting_context)
328
+ end
329
+ end
330
+
331
+ # The message that the merchant will receive to notify about product status
332
+ # change event
333
+ class ProductStatusChangeMessage
334
+ include Google::Apis::Core::Hashable
335
+
336
+ # The target account that owns the entity that changed. Format : `accounts/`
337
+ # merchant_id``
338
+ # Corresponds to the JSON property `account`
339
+ # @return [String]
340
+ attr_accessor :account
341
+
342
+ # The attribute in the resource that changed, in this case it will be always `
343
+ # Status`.
344
+ # Corresponds to the JSON property `attribute`
345
+ # @return [String]
346
+ attr_accessor :attribute
347
+
348
+ # A message to describe the change that happened to the product
349
+ # Corresponds to the JSON property `changes`
350
+ # @return [Array<Google::Apis::MerchantapiInventoriesV1beta::ProductChange>]
351
+ attr_accessor :changes
352
+
353
+ # The account that manages the merchant's account. can be the same as merchant
354
+ # id if it is standalone account. Format : `accounts/`service_provider_id``
355
+ # Corresponds to the JSON property `managingAccount`
356
+ # @return [String]
357
+ attr_accessor :managing_account
358
+
359
+ # The product name. Format: ``product.name=accounts/`account`/products/`product``
360
+ # `
361
+ # Corresponds to the JSON property `resource`
362
+ # @return [String]
363
+ attr_accessor :resource
364
+
365
+ # The product id.
366
+ # Corresponds to the JSON property `resourceId`
367
+ # @return [String]
368
+ attr_accessor :resource_id
369
+
370
+ # The resource that changed, in this case it will always be `Product`.
371
+ # Corresponds to the JSON property `resourceType`
372
+ # @return [String]
373
+ attr_accessor :resource_type
374
+
375
+ def initialize(**args)
376
+ update!(**args)
377
+ end
378
+
379
+ # Update properties of this object
380
+ def update!(**args)
381
+ @account = args[:account] if args.key?(:account)
382
+ @attribute = args[:attribute] if args.key?(:attribute)
383
+ @changes = args[:changes] if args.key?(:changes)
384
+ @managing_account = args[:managing_account] if args.key?(:managing_account)
385
+ @resource = args[:resource] if args.key?(:resource)
386
+ @resource_id = args[:resource_id] if args.key?(:resource_id)
387
+ @resource_type = args[:resource_type] if args.key?(:resource_type)
388
+ end
389
+ end
390
+
391
+ # Regional inventory information for the product. Represents specific
392
+ # information like price and availability for a given product in a specific `
393
+ # region`. For a list of all accepted attribute values, see the [regional
394
+ # product inventory data specification](https://support.google.com/merchants/
395
+ # answer/9698880).
396
+ class RegionalInventory
397
+ include Google::Apis::Core::Hashable
398
+
399
+ # Output only. The account that owns the product. This field will be ignored if
400
+ # set by the client.
401
+ # Corresponds to the JSON property `account`
402
+ # @return [Fixnum]
403
+ attr_accessor :account
404
+
405
+ # Availability of the product in this region. For accepted attribute values, see
406
+ # the [regional product inventory data specification](https://support.google.com/
407
+ # merchants/answer/3061342)
408
+ # Corresponds to the JSON property `availability`
409
+ # @return [String]
410
+ attr_accessor :availability
411
+
412
+ # A list of custom (merchant-provided) attributes. You can also use `
413
+ # CustomAttribute` to submit any attribute of the data specification in its
414
+ # generic form.
415
+ # Corresponds to the JSON property `customAttributes`
416
+ # @return [Array<Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute>]
417
+ attr_accessor :custom_attributes
418
+
419
+ # Output only. The name of the `RegionalInventory` resource. Format: ``
420
+ # regional_inventory.name=accounts/`account`/products/`product`/
421
+ # regionalInventories/`region``
422
+ # Corresponds to the JSON property `name`
423
+ # @return [String]
424
+ attr_accessor :name
425
+
426
+ # The price represented as a number and currency.
427
+ # Corresponds to the JSON property `price`
428
+ # @return [Google::Apis::MerchantapiInventoriesV1beta::Price]
429
+ attr_accessor :price
430
+
431
+ # Required. Immutable. ID of the region for this `RegionalInventory` resource.
432
+ # See the [Regional availability and pricing](https://support.google.com/
433
+ # merchants/answer/9698880) for more details.
434
+ # Corresponds to the JSON property `region`
435
+ # @return [String]
436
+ attr_accessor :region
437
+
438
+ # The price represented as a number and currency.
439
+ # Corresponds to the JSON property `salePrice`
440
+ # @return [Google::Apis::MerchantapiInventoriesV1beta::Price]
441
+ attr_accessor :sale_price
442
+
443
+ # Represents a time interval, encoded as a Timestamp start (inclusive) and a
444
+ # Timestamp end (exclusive). The start must be less than or equal to the end.
445
+ # When the start equals the end, the interval is empty (matches no time). When
446
+ # both start and end are unspecified, the interval matches any time.
447
+ # Corresponds to the JSON property `salePriceEffectiveDate`
448
+ # @return [Google::Apis::MerchantapiInventoriesV1beta::Interval]
449
+ attr_accessor :sale_price_effective_date
450
+
451
+ def initialize(**args)
452
+ update!(**args)
453
+ end
454
+
455
+ # Update properties of this object
456
+ def update!(**args)
457
+ @account = args[:account] if args.key?(:account)
458
+ @availability = args[:availability] if args.key?(:availability)
459
+ @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
460
+ @name = args[:name] if args.key?(:name)
461
+ @price = args[:price] if args.key?(:price)
462
+ @region = args[:region] if args.key?(:region)
463
+ @sale_price = args[:sale_price] if args.key?(:sale_price)
464
+ @sale_price_effective_date = args[:sale_price_effective_date] if args.key?(:sale_price_effective_date)
465
+ end
466
+ end
467
+ end
468
+ end
469
+ end
@@ -0,0 +1,28 @@
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
+ module Google
16
+ module Apis
17
+ module MerchantapiInventoriesV1beta
18
+ # Version of the google-apis-merchantapi_inventories_v1beta gem
19
+ GEM_VERSION = "0.1.0"
20
+
21
+ # Version of the code generator used to generate this client
22
+ GENERATOR_VERSION = "0.15.0"
23
+
24
+ # Revision of the discovery document this client was generated from
25
+ REVISION = "20240611"
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,200 @@
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 MerchantapiInventoriesV1beta
24
+
25
+ class CustomAttribute
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
31
+ class Empty
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
37
+ class Interval
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
43
+ class ListLocalInventoriesResponse
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class ListRegionalInventoriesResponse
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class LocalInventory
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
61
+ class Price
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class ProductChange
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class ProductStatusChangeMessage
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class RegionalInventory
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
85
+ class CustomAttribute
86
+ # @private
87
+ class Representation < Google::Apis::Core::JsonRepresentation
88
+ collection :group_values, as: 'groupValues', class: Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute, decorator: Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute::Representation
89
+
90
+ property :name, as: 'name'
91
+ property :value, as: 'value'
92
+ end
93
+ end
94
+
95
+ class Empty
96
+ # @private
97
+ class Representation < Google::Apis::Core::JsonRepresentation
98
+ end
99
+ end
100
+
101
+ class Interval
102
+ # @private
103
+ class Representation < Google::Apis::Core::JsonRepresentation
104
+ property :end_time, as: 'endTime'
105
+ property :start_time, as: 'startTime'
106
+ end
107
+ end
108
+
109
+ class ListLocalInventoriesResponse
110
+ # @private
111
+ class Representation < Google::Apis::Core::JsonRepresentation
112
+ collection :local_inventories, as: 'localInventories', class: Google::Apis::MerchantapiInventoriesV1beta::LocalInventory, decorator: Google::Apis::MerchantapiInventoriesV1beta::LocalInventory::Representation
113
+
114
+ property :next_page_token, as: 'nextPageToken'
115
+ end
116
+ end
117
+
118
+ class ListRegionalInventoriesResponse
119
+ # @private
120
+ class Representation < Google::Apis::Core::JsonRepresentation
121
+ property :next_page_token, as: 'nextPageToken'
122
+ collection :regional_inventories, as: 'regionalInventories', class: Google::Apis::MerchantapiInventoriesV1beta::RegionalInventory, decorator: Google::Apis::MerchantapiInventoriesV1beta::RegionalInventory::Representation
123
+
124
+ end
125
+ end
126
+
127
+ class LocalInventory
128
+ # @private
129
+ class Representation < Google::Apis::Core::JsonRepresentation
130
+ property :account, :numeric_string => true, as: 'account'
131
+ property :availability, as: 'availability'
132
+ collection :custom_attributes, as: 'customAttributes', class: Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute, decorator: Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute::Representation
133
+
134
+ property :instore_product_location, as: 'instoreProductLocation'
135
+ property :name, as: 'name'
136
+ property :pickup_method, as: 'pickupMethod'
137
+ property :pickup_sla, as: 'pickupSla'
138
+ property :price, as: 'price', class: Google::Apis::MerchantapiInventoriesV1beta::Price, decorator: Google::Apis::MerchantapiInventoriesV1beta::Price::Representation
139
+
140
+ property :quantity, :numeric_string => true, as: 'quantity'
141
+ property :sale_price, as: 'salePrice', class: Google::Apis::MerchantapiInventoriesV1beta::Price, decorator: Google::Apis::MerchantapiInventoriesV1beta::Price::Representation
142
+
143
+ property :sale_price_effective_date, as: 'salePriceEffectiveDate', class: Google::Apis::MerchantapiInventoriesV1beta::Interval, decorator: Google::Apis::MerchantapiInventoriesV1beta::Interval::Representation
144
+
145
+ property :store_code, as: 'storeCode'
146
+ end
147
+ end
148
+
149
+ class Price
150
+ # @private
151
+ class Representation < Google::Apis::Core::JsonRepresentation
152
+ property :amount_micros, :numeric_string => true, as: 'amountMicros'
153
+ property :currency_code, as: 'currencyCode'
154
+ end
155
+ end
156
+
157
+ class ProductChange
158
+ # @private
159
+ class Representation < Google::Apis::Core::JsonRepresentation
160
+ property :new_value, as: 'newValue'
161
+ property :old_value, as: 'oldValue'
162
+ property :region_code, as: 'regionCode'
163
+ property :reporting_context, as: 'reportingContext'
164
+ end
165
+ end
166
+
167
+ class ProductStatusChangeMessage
168
+ # @private
169
+ class Representation < Google::Apis::Core::JsonRepresentation
170
+ property :account, as: 'account'
171
+ property :attribute, as: 'attribute'
172
+ collection :changes, as: 'changes', class: Google::Apis::MerchantapiInventoriesV1beta::ProductChange, decorator: Google::Apis::MerchantapiInventoriesV1beta::ProductChange::Representation
173
+
174
+ property :managing_account, as: 'managingAccount'
175
+ property :resource, as: 'resource'
176
+ property :resource_id, as: 'resourceId'
177
+ property :resource_type, as: 'resourceType'
178
+ end
179
+ end
180
+
181
+ class RegionalInventory
182
+ # @private
183
+ class Representation < Google::Apis::Core::JsonRepresentation
184
+ property :account, :numeric_string => true, as: 'account'
185
+ property :availability, as: 'availability'
186
+ collection :custom_attributes, as: 'customAttributes', class: Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute, decorator: Google::Apis::MerchantapiInventoriesV1beta::CustomAttribute::Representation
187
+
188
+ property :name, as: 'name'
189
+ property :price, as: 'price', class: Google::Apis::MerchantapiInventoriesV1beta::Price, decorator: Google::Apis::MerchantapiInventoriesV1beta::Price::Representation
190
+
191
+ property :region, as: 'region'
192
+ property :sale_price, as: 'salePrice', class: Google::Apis::MerchantapiInventoriesV1beta::Price, decorator: Google::Apis::MerchantapiInventoriesV1beta::Price::Representation
193
+
194
+ property :sale_price_effective_date, as: 'salePriceEffectiveDate', class: Google::Apis::MerchantapiInventoriesV1beta::Interval, decorator: Google::Apis::MerchantapiInventoriesV1beta::Interval::Representation
195
+
196
+ end
197
+ end
198
+ end
199
+ end
200
+ end