google-apis-retail_v2beta 0.31.0 → 0.34.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -308,6 +308,35 @@ module Google
308
308
  end
309
309
  end
310
310
 
311
+ # Metadata related to the progress of the AddLocalInventories operation.
312
+ # Currently empty because there is no meaningful metadata populated from the
313
+ # AddLocalInventories method.
314
+ class GoogleCloudRetailV2AddLocalInventoriesMetadata
315
+ include Google::Apis::Core::Hashable
316
+
317
+ def initialize(**args)
318
+ update!(**args)
319
+ end
320
+
321
+ # Update properties of this object
322
+ def update!(**args)
323
+ end
324
+ end
325
+
326
+ # Response of the AddLocalInventories API. Currently empty because there is no
327
+ # meaningful response populated from the AddLocalInventories method.
328
+ class GoogleCloudRetailV2AddLocalInventoriesResponse
329
+ include Google::Apis::Core::Hashable
330
+
331
+ def initialize(**args)
332
+ update!(**args)
333
+ end
334
+
335
+ # Update properties of this object
336
+ def update!(**args)
337
+ end
338
+ end
339
+
311
340
  # Response of the ImportCompletionDataRequest. If the long running operation is
312
341
  # done, this message is returned by the google.longrunning.Operations.response
313
342
  # field if the operation is successful.
@@ -373,8 +402,7 @@ module Google
373
402
  # @return [String]
374
403
  attr_accessor :notification_pubsub_topic
375
404
 
376
- # Id of the request / operation. This is parroting back the requestId that was
377
- # passed in the request.
405
+ # Deprecated. This field is never set.
378
406
  # Corresponds to the JSON property `requestId`
379
407
  # @return [String]
380
408
  attr_accessor :request_id
@@ -562,6 +590,35 @@ module Google
562
590
  end
563
591
  end
564
592
 
593
+ # Metadata related to the progress of the RemoveLocalInventories operation.
594
+ # Currently empty because there is no meaningful metadata populated from the
595
+ # RemoveLocalInventories method.
596
+ class GoogleCloudRetailV2RemoveLocalInventoriesMetadata
597
+ include Google::Apis::Core::Hashable
598
+
599
+ def initialize(**args)
600
+ update!(**args)
601
+ end
602
+
603
+ # Update properties of this object
604
+ def update!(**args)
605
+ end
606
+ end
607
+
608
+ # Response of the RemoveLocalInventories API. Currently empty because there is
609
+ # no meaningful response populated from the RemoveLocalInventories method.
610
+ class GoogleCloudRetailV2RemoveLocalInventoriesResponse
611
+ include Google::Apis::Core::Hashable
612
+
613
+ def initialize(**args)
614
+ update!(**args)
615
+ end
616
+
617
+ # Update properties of this object
618
+ def update!(**args)
619
+ end
620
+ end
621
+
565
622
  # Metadata related to the progress of the SetInventory operation. Currently
566
623
  # empty because there is no meaningful metadata populated from the SetInventory
567
624
  # method.
@@ -843,8 +900,7 @@ module Google
843
900
  # @return [String]
844
901
  attr_accessor :notification_pubsub_topic
845
902
 
846
- # Id of the request / operation. This is parroting back the requestId that was
847
- # passed in the request.
903
+ # Deprecated. This field is never set.
848
904
  # Corresponds to the JSON property `requestId`
849
905
  # @return [String]
850
906
  attr_accessor :request_id
@@ -950,6 +1006,74 @@ module Google
950
1006
  end
951
1007
  end
952
1008
 
1009
+ # Metadata related to the progress of the PurgeProducts operation. This will be
1010
+ # returned by the google.longrunning.Operation.metadata field.
1011
+ class GoogleCloudRetailV2alphaPurgeProductsMetadata
1012
+ include Google::Apis::Core::Hashable
1013
+
1014
+ # Operation create time.
1015
+ # Corresponds to the JSON property `createTime`
1016
+ # @return [String]
1017
+ attr_accessor :create_time
1018
+
1019
+ # Count of entries that encountered errors while processing.
1020
+ # Corresponds to the JSON property `failureCount`
1021
+ # @return [Fixnum]
1022
+ attr_accessor :failure_count
1023
+
1024
+ # Count of entries that were deleted successfully.
1025
+ # Corresponds to the JSON property `successCount`
1026
+ # @return [Fixnum]
1027
+ attr_accessor :success_count
1028
+
1029
+ # Operation last update time. If the operation is done, this is also the finish
1030
+ # time.
1031
+ # Corresponds to the JSON property `updateTime`
1032
+ # @return [String]
1033
+ attr_accessor :update_time
1034
+
1035
+ def initialize(**args)
1036
+ update!(**args)
1037
+ end
1038
+
1039
+ # Update properties of this object
1040
+ def update!(**args)
1041
+ @create_time = args[:create_time] if args.key?(:create_time)
1042
+ @failure_count = args[:failure_count] if args.key?(:failure_count)
1043
+ @success_count = args[:success_count] if args.key?(:success_count)
1044
+ @update_time = args[:update_time] if args.key?(:update_time)
1045
+ end
1046
+ end
1047
+
1048
+ # Response of the PurgeProductsRequest. If the long running operation is
1049
+ # successfully done, then this message is returned by the google.longrunning.
1050
+ # Operations.response field.
1051
+ class GoogleCloudRetailV2alphaPurgeProductsResponse
1052
+ include Google::Apis::Core::Hashable
1053
+
1054
+ # The total count of products purged as a result of the operation.
1055
+ # Corresponds to the JSON property `purgeCount`
1056
+ # @return [Fixnum]
1057
+ attr_accessor :purge_count
1058
+
1059
+ # A sample of the product names that will be deleted. Only populated if `force`
1060
+ # is set to false. A max of 100 names will be returned and the names are chosen
1061
+ # at random.
1062
+ # Corresponds to the JSON property `purgeSample`
1063
+ # @return [Array<String>]
1064
+ attr_accessor :purge_sample
1065
+
1066
+ def initialize(**args)
1067
+ update!(**args)
1068
+ end
1069
+
1070
+ # Update properties of this object
1071
+ def update!(**args)
1072
+ @purge_count = args[:purge_count] if args.key?(:purge_count)
1073
+ @purge_sample = args[:purge_sample] if args.key?(:purge_sample)
1074
+ end
1075
+ end
1076
+
953
1077
  # Response of the PurgeUserEventsRequest. If the long running operation is
954
1078
  # successfully done, then this message is returned by the google.longrunning.
955
1079
  # Operations.response field.
@@ -1242,6 +1366,86 @@ module Google
1242
1366
  end
1243
1367
  end
1244
1368
 
1369
+ # Metadata related to the progress of the AddLocalInventories operation.
1370
+ # Currently empty because there is no meaningful metadata populated from the
1371
+ # AddLocalInventories method.
1372
+ class GoogleCloudRetailV2betaAddLocalInventoriesMetadata
1373
+ include Google::Apis::Core::Hashable
1374
+
1375
+ def initialize(**args)
1376
+ update!(**args)
1377
+ end
1378
+
1379
+ # Update properties of this object
1380
+ def update!(**args)
1381
+ end
1382
+ end
1383
+
1384
+ # Request message for AddLocalInventories method.
1385
+ class GoogleCloudRetailV2betaAddLocalInventoriesRequest
1386
+ include Google::Apis::Core::Hashable
1387
+
1388
+ # Indicates which inventory fields in the provided list of LocalInventory to
1389
+ # update. The field is updated to the provided value. If a field is set while
1390
+ # the place does not have a previous local inventory, the local inventory at
1391
+ # that store is created. If a field is set while the value of that field is not
1392
+ # provided, the original field value, if it exists, is deleted. If the mask is
1393
+ # not set or set with empty paths, all inventory fields will be updated. If an
1394
+ # unsupported or unknown field is provided, an INVALID_ARGUMENT error is
1395
+ # returned and the entire update will be ignored.
1396
+ # Corresponds to the JSON property `addMask`
1397
+ # @return [String]
1398
+ attr_accessor :add_mask
1399
+
1400
+ # The time when the inventory updates are issued. Used to prevent out-of-order
1401
+ # updates on local inventory fields. If not provided, the internal system time
1402
+ # will be used.
1403
+ # Corresponds to the JSON property `addTime`
1404
+ # @return [String]
1405
+ attr_accessor :add_time
1406
+
1407
+ # If set to true, and the Product is not found, the local inventory will still
1408
+ # be processed and retained for at most 1 day and processed once the Product is
1409
+ # created. If set to false, a NOT_FOUND error is returned if the Product is not
1410
+ # found.
1411
+ # Corresponds to the JSON property `allowMissing`
1412
+ # @return [Boolean]
1413
+ attr_accessor :allow_missing
1414
+ alias_method :allow_missing?, :allow_missing
1415
+
1416
+ # Required. A list of inventory information at difference places. Each place is
1417
+ # identified by its place ID. At most 3000 inventories are allowed per request.
1418
+ # Corresponds to the JSON property `localInventories`
1419
+ # @return [Array<Google::Apis::RetailV2beta::GoogleCloudRetailV2betaLocalInventory>]
1420
+ attr_accessor :local_inventories
1421
+
1422
+ def initialize(**args)
1423
+ update!(**args)
1424
+ end
1425
+
1426
+ # Update properties of this object
1427
+ def update!(**args)
1428
+ @add_mask = args[:add_mask] if args.key?(:add_mask)
1429
+ @add_time = args[:add_time] if args.key?(:add_time)
1430
+ @allow_missing = args[:allow_missing] if args.key?(:allow_missing)
1431
+ @local_inventories = args[:local_inventories] if args.key?(:local_inventories)
1432
+ end
1433
+ end
1434
+
1435
+ # Response of the AddLocalInventories API. Currently empty because there is no
1436
+ # meaningful response populated from the AddLocalInventories method.
1437
+ class GoogleCloudRetailV2betaAddLocalInventoriesResponse
1438
+ include Google::Apis::Core::Hashable
1439
+
1440
+ def initialize(**args)
1441
+ update!(**args)
1442
+ end
1443
+
1444
+ # Update properties of this object
1445
+ def update!(**args)
1446
+ end
1447
+ end
1448
+
1245
1449
  # Catalog level attribute config.
1246
1450
  class GoogleCloudRetailV2betaAttributesConfig
1247
1451
  include Google::Apis::Core::Hashable
@@ -1330,7 +1534,9 @@ module Google
1330
1534
  # analytics/answer/3437719. * `user_event_ga4`: This feature is in private
1331
1535
  # preview. Please contact the support team for importing Google Analytics 4
1332
1536
  # events. The schema is available here: https://support.google.com/analytics/
1333
- # answer/7029846.
1537
+ # answer/7029846. Supported values for auto-completion imports: * `suggestions` (
1538
+ # default): One JSON completion suggestion per line. * `denylist`: One JSON deny
1539
+ # suggestion per line. * `allowlist`: One JSON allow suggestion per line.
1334
1540
  # Corresponds to the JSON property `dataSchema`
1335
1541
  # @return [String]
1336
1542
  attr_accessor :data_schema
@@ -1399,6 +1605,12 @@ module Google
1399
1605
  # @return [String]
1400
1606
  attr_accessor :display_name
1401
1607
 
1608
+ # Configures Merchant Center linking. Links contained in the config will be used
1609
+ # to sync data from a Merchant Center account to a Cloud Retail branch.
1610
+ # Corresponds to the JSON property `merchantCenterLinkingConfig`
1611
+ # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaMerchantCenterLinkingConfig]
1612
+ attr_accessor :merchant_center_linking_config
1613
+
1402
1614
  # Required. Immutable. The fully qualified resource name of the catalog.
1403
1615
  # Corresponds to the JSON property `name`
1404
1616
  # @return [String]
@@ -1417,6 +1629,7 @@ module Google
1417
1629
  # Update properties of this object
1418
1630
  def update!(**args)
1419
1631
  @display_name = args[:display_name] if args.key?(:display_name)
1632
+ @merchant_center_linking_config = args[:merchant_center_linking_config] if args.key?(:merchant_center_linking_config)
1420
1633
  @name = args[:name] if args.key?(:name)
1421
1634
  @product_level_config = args[:product_level_config] if args.key?(:product_level_config)
1422
1635
  end
@@ -1535,9 +1748,9 @@ module Google
1535
1748
  class GoogleCloudRetailV2betaCompleteQueryResponse
1536
1749
  include Google::Apis::Core::Hashable
1537
1750
 
1538
- # A unique complete token. This should be included in the SearchRequest
1539
- # resulting from this completion, which enables accurate attribution of complete
1540
- # model performance.
1751
+ # A unique complete token. This should be included in the UserEvent.
1752
+ # completion_detail for search events resulting from this completion, which
1753
+ # enables accurate attribution of complete model performance.
1541
1754
  # Corresponds to the JSON property `attributionToken`
1542
1755
  # @return [String]
1543
1756
  attr_accessor :attribution_token
@@ -1577,7 +1790,9 @@ module Google
1577
1790
  class GoogleCloudRetailV2betaCompleteQueryResponseCompletionResult
1578
1791
  include Google::Apis::Core::Hashable
1579
1792
 
1580
- # Additional custom attributes ingested through BigQuery.
1793
+ # Custom attributes for the suggestion term. * For "user-data", the attributes
1794
+ # are additional custom attributes ingested through BigQuery. * For "cloud-
1795
+ # retail", the attributes are product attributes generated by Cloud Retail.
1581
1796
  # Corresponds to the JSON property `attributes`
1582
1797
  # @return [Hash<String,Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCustomAttribute>]
1583
1798
  attr_accessor :attributes
@@ -1617,6 +1832,103 @@ module Google
1617
1832
  end
1618
1833
  end
1619
1834
 
1835
+ # Catalog level autocomplete config for customers to customize autocomplete
1836
+ # feature's settings.
1837
+ class GoogleCloudRetailV2betaCompletionConfig
1838
+ include Google::Apis::Core::Hashable
1839
+
1840
+ # The input config source for completion data.
1841
+ # Corresponds to the JSON property `allowlistInputConfig`
1842
+ # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCompletionDataInputConfig]
1843
+ attr_accessor :allowlist_input_config
1844
+
1845
+ # If set to true, the auto learning function is enabled. Auto learning uses user
1846
+ # data to generate suggestions using ML techniques. Default value is false. Only
1847
+ # after enabling auto learning can users use `cloud-retail` data in
1848
+ # CompleteQueryRequest.
1849
+ # Corresponds to the JSON property `autoLearning`
1850
+ # @return [Boolean]
1851
+ attr_accessor :auto_learning
1852
+ alias_method :auto_learning?, :auto_learning
1853
+
1854
+ # The input config source for completion data.
1855
+ # Corresponds to the JSON property `denylistInputConfig`
1856
+ # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCompletionDataInputConfig]
1857
+ attr_accessor :denylist_input_config
1858
+
1859
+ # Output only. LRO corresponding to the latest allowlist import. Can use
1860
+ # GetOperation API to retrieve the latest state of the Long Running Operation.
1861
+ # Corresponds to the JSON property `lastAllowlistImportOperation`
1862
+ # @return [String]
1863
+ attr_accessor :last_allowlist_import_operation
1864
+
1865
+ # Output only. LRO corresponding to the latest denylist import. Can use
1866
+ # GetOperation API to retrieve the latest state of the Long Running Operation.
1867
+ # Corresponds to the JSON property `lastDenylistImportOperation`
1868
+ # @return [String]
1869
+ attr_accessor :last_denylist_import_operation
1870
+
1871
+ # Output only. Name of the LRO corresponding to the latest suggestion terms list
1872
+ # import. Can use GetOperation API to retrieve the latest state of the Long
1873
+ # Running Operation.
1874
+ # Corresponds to the JSON property `lastSuggestionsImportOperation`
1875
+ # @return [String]
1876
+ attr_accessor :last_suggestions_import_operation
1877
+
1878
+ # Specifies the matching order for autocomplete suggestions, e.g., a query
1879
+ # consisting of 'sh' with 'out-of-order' specified would suggest "women's shoes",
1880
+ # whereas a query of 'red s' with 'exact-prefix' specified would suggest "red
1881
+ # shoes". Currently supported values: * 'out-of-order' * 'exact-prefix' Default
1882
+ # value: 'exact-prefix'.
1883
+ # Corresponds to the JSON property `matchingOrder`
1884
+ # @return [String]
1885
+ attr_accessor :matching_order
1886
+
1887
+ # The maximum number of autocomplete suggestions returned per term. The maximum
1888
+ # allowed max suggestions is 20. Default value is 20. If left unset or set to 0,
1889
+ # then will fallback to default value.
1890
+ # Corresponds to the JSON property `maxSuggestions`
1891
+ # @return [Fixnum]
1892
+ attr_accessor :max_suggestions
1893
+
1894
+ # The minimum number of characters needed to be typed in order to get
1895
+ # suggestions. Default value is 2. If left unset or set to 0, then will fallback
1896
+ # to default value.
1897
+ # Corresponds to the JSON property `minPrefixLength`
1898
+ # @return [Fixnum]
1899
+ attr_accessor :min_prefix_length
1900
+
1901
+ # Required. Immutable. Fully qualified name projects/*/locations/*/catalogs/*/
1902
+ # completionConfig
1903
+ # Corresponds to the JSON property `name`
1904
+ # @return [String]
1905
+ attr_accessor :name
1906
+
1907
+ # The input config source for completion data.
1908
+ # Corresponds to the JSON property `suggestionsInputConfig`
1909
+ # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCompletionDataInputConfig]
1910
+ attr_accessor :suggestions_input_config
1911
+
1912
+ def initialize(**args)
1913
+ update!(**args)
1914
+ end
1915
+
1916
+ # Update properties of this object
1917
+ def update!(**args)
1918
+ @allowlist_input_config = args[:allowlist_input_config] if args.key?(:allowlist_input_config)
1919
+ @auto_learning = args[:auto_learning] if args.key?(:auto_learning)
1920
+ @denylist_input_config = args[:denylist_input_config] if args.key?(:denylist_input_config)
1921
+ @last_allowlist_import_operation = args[:last_allowlist_import_operation] if args.key?(:last_allowlist_import_operation)
1922
+ @last_denylist_import_operation = args[:last_denylist_import_operation] if args.key?(:last_denylist_import_operation)
1923
+ @last_suggestions_import_operation = args[:last_suggestions_import_operation] if args.key?(:last_suggestions_import_operation)
1924
+ @matching_order = args[:matching_order] if args.key?(:matching_order)
1925
+ @max_suggestions = args[:max_suggestions] if args.key?(:max_suggestions)
1926
+ @min_prefix_length = args[:min_prefix_length] if args.key?(:min_prefix_length)
1927
+ @name = args[:name] if args.key?(:name)
1928
+ @suggestions_input_config = args[:suggestions_input_config] if args.key?(:suggestions_input_config)
1929
+ end
1930
+ end
1931
+
1620
1932
  # The input config source for completion data.
1621
1933
  class GoogleCloudRetailV2betaCompletionDataInputConfig
1622
1934
  include Google::Apis::Core::Hashable
@@ -1794,6 +2106,14 @@ module Google
1794
2106
  # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaRule]
1795
2107
  attr_accessor :rule
1796
2108
 
2109
+ # Required. Specifies the use case for the control. Affects what condition
2110
+ # fields can be set. Only settable by search controls. Will default to
2111
+ # SEARCH_SOLUTION_USE_CASE_SEARCH if not specified. Currently only allow one
2112
+ # search_solution_use_case per control.
2113
+ # Corresponds to the JSON property `searchSolutionUseCase`
2114
+ # @return [Array<String>]
2115
+ attr_accessor :search_solution_use_case
2116
+
1797
2117
  # Required. Immutable. The solution types that the serving config is used for.
1798
2118
  # Currently we support setting only one type of solution at creation time. Only `
1799
2119
  # SOLUTION_TYPE_SEARCH` value is supported at the moment. If no solution type is
@@ -1813,6 +2133,7 @@ module Google
1813
2133
  @facet_spec = args[:facet_spec] if args.key?(:facet_spec)
1814
2134
  @name = args[:name] if args.key?(:name)
1815
2135
  @rule = args[:rule] if args.key?(:rule)
2136
+ @search_solution_use_case = args[:search_solution_use_case] if args.key?(:search_solution_use_case)
1816
2137
  @solution_types = args[:solution_types] if args.key?(:solution_types)
1817
2138
  end
1818
2139
  end
@@ -2080,7 +2401,10 @@ module Google
2080
2401
  end
2081
2402
  end
2082
2403
 
2083
- # Product thumbnail/detail image.
2404
+ # Product image. Recommendations AI and Retail Search do not use product images
2405
+ # to improve prediction and search results. However, product images can be
2406
+ # returned in results, and are shown in prediction or search previews in the
2407
+ # console.
2084
2408
  class GoogleCloudRetailV2betaImage
2085
2409
  include Google::Apis::Core::Hashable
2086
2410
 
@@ -2210,8 +2534,7 @@ module Google
2210
2534
  # @return [String]
2211
2535
  attr_accessor :notification_pubsub_topic
2212
2536
 
2213
- # Id of the request / operation. This is parroting back the requestId that was
2214
- # passed in the request.
2537
+ # Deprecated. This field is never set.
2215
2538
  # Corresponds to the JSON property `requestId`
2216
2539
  # @return [String]
2217
2540
  attr_accessor :request_id
@@ -2271,11 +2594,7 @@ module Google
2271
2594
  # @return [String]
2272
2595
  attr_accessor :reconciliation_mode
2273
2596
 
2274
- # Unique identifier provided by client, within the ancestor dataset scope.
2275
- # Ensures idempotency and used for request deduplication. Server-generated if
2276
- # unspecified. Up to 128 characters long and must match the pattern: `[a-zA-Z0-
2277
- # 9_]+`. This is returned as Operation.name in ImportMetadata. Only supported
2278
- # when ImportProductsRequest.reconciliation_mode is set to `FULL`.
2597
+ # Deprecated. This field has no effect.
2279
2598
  # Corresponds to the JSON property `requestId`
2280
2599
  # @return [String]
2281
2600
  attr_accessor :request_id
@@ -2526,6 +2845,141 @@ module Google
2526
2845
  end
2527
2846
  end
2528
2847
 
2848
+ # The inventory information at a place (e.g. a store) identified by a place ID.
2849
+ class GoogleCloudRetailV2betaLocalInventory
2850
+ include Google::Apis::Core::Hashable
2851
+
2852
+ # Additional local inventory attributes, for example, store name, promotion tags,
2853
+ # etc. This field needs to pass all below criteria, otherwise an
2854
+ # INVALID_ARGUMENT error is returned: * At most 30 attributes are allowed. * The
2855
+ # key must be a UTF-8 encoded string with a length limit of 32 characters. * The
2856
+ # key must match the pattern: `a-zA-Z0-9*`. For example, key0LikeThis or
2857
+ # KEY_1_LIKE_THIS. * The attribute values must be of the same type (text or
2858
+ # number). * Only 1 value is allowed for each attribute. * For text values, the
2859
+ # length limit is 256 UTF-8 characters. * The attribute does not support search.
2860
+ # The `searchable` field should be unset or set to false. * The max summed total
2861
+ # bytes of custom attribute keys and values per product is 5MiB.
2862
+ # Corresponds to the JSON property `attributes`
2863
+ # @return [Hash<String,Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCustomAttribute>]
2864
+ attr_accessor :attributes
2865
+
2866
+ # Input only. Supported fulfillment types. Valid fulfillment type values include
2867
+ # commonly used types (such as pickup in store and same day delivery), and
2868
+ # custom types. Customers have to map custom types to their display names before
2869
+ # rendering UI. Supported values: * "pickup-in-store" * "ship-to-store" * "same-
2870
+ # day-delivery" * "next-day-delivery" * "custom-type-1" * "custom-type-2" * "
2871
+ # custom-type-3" * "custom-type-4" * "custom-type-5" If this field is set to an
2872
+ # invalid value other than these, an INVALID_ARGUMENT error is returned. All the
2873
+ # elements must be distinct. Otherwise, an INVALID_ARGUMENT error is returned.
2874
+ # Corresponds to the JSON property `fulfillmentTypes`
2875
+ # @return [Array<String>]
2876
+ attr_accessor :fulfillment_types
2877
+
2878
+ # The place ID for the current set of inventory information.
2879
+ # Corresponds to the JSON property `placeId`
2880
+ # @return [String]
2881
+ attr_accessor :place_id
2882
+
2883
+ # The price information of a Product.
2884
+ # Corresponds to the JSON property `priceInfo`
2885
+ # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaPriceInfo]
2886
+ attr_accessor :price_info
2887
+
2888
+ def initialize(**args)
2889
+ update!(**args)
2890
+ end
2891
+
2892
+ # Update properties of this object
2893
+ def update!(**args)
2894
+ @attributes = args[:attributes] if args.key?(:attributes)
2895
+ @fulfillment_types = args[:fulfillment_types] if args.key?(:fulfillment_types)
2896
+ @place_id = args[:place_id] if args.key?(:place_id)
2897
+ @price_info = args[:price_info] if args.key?(:price_info)
2898
+ end
2899
+ end
2900
+
2901
+ # Represents a link between a Merchant Center account and a branch. Once a link
2902
+ # is established, products from the linked merchant center account will be
2903
+ # streamed to the linked branch.
2904
+ class GoogleCloudRetailV2betaMerchantCenterLink
2905
+ include Google::Apis::Core::Hashable
2906
+
2907
+ # The branch id (e.g. 0/1/2) within this catalog that products from
2908
+ # merchant_center_account_id are streamed to. When updating this field, an empty
2909
+ # value will use the currently configured default branch. However, changing the
2910
+ # default branch later on won't change the linked branch here. A single branch
2911
+ # id can only have one linked merchant center account id.
2912
+ # Corresponds to the JSON property `branchId`
2913
+ # @return [String]
2914
+ attr_accessor :branch_id
2915
+
2916
+ # String representing the destination to import for, all if left empty. List of
2917
+ # possible values can be found here. [https://support.google.com/merchants/
2918
+ # answer/7501026] List of allowed string values: "Shopping_ads", "
2919
+ # Buy_on_google_listings", "Display_ads", "Local_inventory _ads", "Free_listings"
2920
+ # , "Free_local_listings" NOTE: The string values are case sensitive.
2921
+ # Corresponds to the JSON property `destinations`
2922
+ # @return [Array<String>]
2923
+ attr_accessor :destinations
2924
+
2925
+ # Language of the title/description and other string attributes. Use language
2926
+ # tags defined by [BCP 47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt). ISO
2927
+ # 639-1. This specifies the language of offers in Merchant Center that will be
2928
+ # accepted. If empty no language filtering will be performed. Example value: `en`
2929
+ # .
2930
+ # Corresponds to the JSON property `languageCode`
2931
+ # @return [String]
2932
+ attr_accessor :language_code
2933
+
2934
+ # Required. The linked [Merchant center account id](https://developers.google.
2935
+ # com/shopping-content/guides/accountstatuses). The account must be a standalone
2936
+ # account or a sub-account of a MCA.
2937
+ # Corresponds to the JSON property `merchantCenterAccountId`
2938
+ # @return [Fixnum]
2939
+ attr_accessor :merchant_center_account_id
2940
+
2941
+ # Region code of offers to accept. 2-letter Uppercase ISO 3166-1 alpha-2 code.
2942
+ # List of values can be found [here](https://www.iana.org/assignments/language-
2943
+ # subtag-registry/language-subtag-registry) under the `region` tag. If left
2944
+ # blank no region filtering will be performed. Example value: `US`.
2945
+ # Corresponds to the JSON property `regionCode`
2946
+ # @return [String]
2947
+ attr_accessor :region_code
2948
+
2949
+ def initialize(**args)
2950
+ update!(**args)
2951
+ end
2952
+
2953
+ # Update properties of this object
2954
+ def update!(**args)
2955
+ @branch_id = args[:branch_id] if args.key?(:branch_id)
2956
+ @destinations = args[:destinations] if args.key?(:destinations)
2957
+ @language_code = args[:language_code] if args.key?(:language_code)
2958
+ @merchant_center_account_id = args[:merchant_center_account_id] if args.key?(:merchant_center_account_id)
2959
+ @region_code = args[:region_code] if args.key?(:region_code)
2960
+ end
2961
+ end
2962
+
2963
+ # Configures Merchant Center linking. Links contained in the config will be used
2964
+ # to sync data from a Merchant Center account to a Cloud Retail branch.
2965
+ class GoogleCloudRetailV2betaMerchantCenterLinkingConfig
2966
+ include Google::Apis::Core::Hashable
2967
+
2968
+ # Links between Merchant Center accounts and branches.
2969
+ # Corresponds to the JSON property `links`
2970
+ # @return [Array<Google::Apis::RetailV2beta::GoogleCloudRetailV2betaMerchantCenterLink>]
2971
+ attr_accessor :links
2972
+
2973
+ def initialize(**args)
2974
+ update!(**args)
2975
+ end
2976
+
2977
+ # Update properties of this object
2978
+ def update!(**args)
2979
+ @links = args[:links] if args.key?(:links)
2980
+ end
2981
+ end
2982
+
2529
2983
  # Request message for Predict method.
2530
2984
  class GoogleCloudRetailV2betaPredictRequest
2531
2985
  include Google::Apis::Core::Hashable
@@ -2542,9 +2996,11 @@ module Google
2542
2996
  # do not have a stockState value of OUT_OF_STOCK. Examples: * tag=("Red" OR "
2543
2997
  # Blue") tag="New-Arrival" tag=(NOT "promotional") * filterOutOfStockItems tag=(-
2544
2998
  # "promotional") * filterOutOfStockItems If your filter blocks all prediction
2545
- # results, nothing will be returned. If you want generic (unfiltered) popular
2546
- # products to be returned instead, set `strictFiltering` to false in `
2547
- # PredictRequest.params`.
2999
+ # results, the API will return generic (unfiltered) popular products. If you
3000
+ # only want results strictly matching the filters, set `strictFiltering` to True
3001
+ # in `PredictRequest.params` to receive empty results instead. Note that the API
3002
+ # will never return items with storageStatus of "EXPIRED" or "DELETED"
3003
+ # regardless of filter choices.
2548
3004
  # Corresponds to the JSON property `filter`
2549
3005
  # @return [String]
2550
3006
  attr_accessor :filter
@@ -2951,7 +3407,7 @@ module Google
2951
3407
  # @return [String]
2952
3408
  attr_accessor :id
2953
3409
 
2954
- # Product images for the product.Highly recommended to put the main image to the
3410
+ # Product images for the product. We highly recommend putting the main image
2955
3411
  # first. A maximum of 300 images are allowed. Corresponding properties: Google
2956
3412
  # Merchant Center property [image_link](https://support.google.com/merchants/
2957
3413
  # answer/6324350). Schema.org property [Product.image](https://schema.org/image).
@@ -3648,6 +4104,73 @@ module Google
3648
4104
  end
3649
4105
  end
3650
4106
 
4107
+ # Metadata related to the progress of the RemoveLocalInventories operation.
4108
+ # Currently empty because there is no meaningful metadata populated from the
4109
+ # RemoveLocalInventories method.
4110
+ class GoogleCloudRetailV2betaRemoveLocalInventoriesMetadata
4111
+ include Google::Apis::Core::Hashable
4112
+
4113
+ def initialize(**args)
4114
+ update!(**args)
4115
+ end
4116
+
4117
+ # Update properties of this object
4118
+ def update!(**args)
4119
+ end
4120
+ end
4121
+
4122
+ # Request message for RemoveLocalInventories method.
4123
+ class GoogleCloudRetailV2betaRemoveLocalInventoriesRequest
4124
+ include Google::Apis::Core::Hashable
4125
+
4126
+ # If set to true, and the Product is not found, the local inventory removal
4127
+ # request will still be processed and retained for at most 1 day and processed
4128
+ # once the Product is created. If set to false, a NOT_FOUND error is returned if
4129
+ # the Product is not found.
4130
+ # Corresponds to the JSON property `allowMissing`
4131
+ # @return [Boolean]
4132
+ attr_accessor :allow_missing
4133
+ alias_method :allow_missing?, :allow_missing
4134
+
4135
+ # Required. A list of place IDs to have their inventory deleted. At most 3000
4136
+ # place IDs are allowed per request.
4137
+ # Corresponds to the JSON property `placeIds`
4138
+ # @return [Array<String>]
4139
+ attr_accessor :place_ids
4140
+
4141
+ # The time when the inventory deletions are issued. Used to prevent out-of-order
4142
+ # updates and deletions on local inventory fields. If not provided, the internal
4143
+ # system time will be used.
4144
+ # Corresponds to the JSON property `removeTime`
4145
+ # @return [String]
4146
+ attr_accessor :remove_time
4147
+
4148
+ def initialize(**args)
4149
+ update!(**args)
4150
+ end
4151
+
4152
+ # Update properties of this object
4153
+ def update!(**args)
4154
+ @allow_missing = args[:allow_missing] if args.key?(:allow_missing)
4155
+ @place_ids = args[:place_ids] if args.key?(:place_ids)
4156
+ @remove_time = args[:remove_time] if args.key?(:remove_time)
4157
+ end
4158
+ end
4159
+
4160
+ # Response of the RemoveLocalInventories API. Currently empty because there is
4161
+ # no meaningful response populated from the RemoveLocalInventories method.
4162
+ class GoogleCloudRetailV2betaRemoveLocalInventoriesResponse
4163
+ include Google::Apis::Core::Hashable
4164
+
4165
+ def initialize(**args)
4166
+ update!(**args)
4167
+ end
4168
+
4169
+ # Update properties of this object
4170
+ def update!(**args)
4171
+ end
4172
+ end
4173
+
3651
4174
  # Request for CatalogService.ReplaceCatalogAttribute method.
3652
4175
  class GoogleCloudRetailV2betaReplaceCatalogAttributeRequest
3653
4176
  include Google::Apis::Core::Hashable
@@ -4019,12 +4542,13 @@ module Google
4019
4542
  # @return [String]
4020
4543
  attr_accessor :branch
4021
4544
 
4022
- # The filter applied to every search request when quality improvement such as
4023
- # query expansion is needed. For example, if a query does not have enough
4024
- # results, an expanded query with SearchRequest.canonical_filter will be
4025
- # returned as a supplement of the original query. This field is strongly
4026
- # recommended to achieve high search quality. See SearchRequest.filter for more
4027
- # details about filter syntax.
4545
+ # The default filter that is applied when a user performs a search without
4546
+ # checking any filters on the search page. The filter applied to every search
4547
+ # request when quality improvement such as query expansion is needed. For
4548
+ # example, if a query does not have enough results, an expanded query with
4549
+ # SearchRequest.canonical_filter will be returned as a supplement of the
4550
+ # original query. This field is strongly recommended to achieve high search
4551
+ # quality. See SearchRequest.filter for more details about filter syntax.
4028
4552
  # Corresponds to the JSON property `canonicalFilter`
4029
4553
  # @return [String]
4030
4554
  attr_accessor :canonical_filter
@@ -5014,15 +5538,21 @@ module Google
5014
5538
  class GoogleCloudRetailV2betaUserEvent
5015
5539
  include Google::Apis::Core::Hashable
5016
5540
 
5017
- # Extra user event features to include in the recommendation model. This field
5018
- # needs to pass all below criteria, otherwise an INVALID_ARGUMENT error is
5019
- # returned: * The key must be a UTF-8 encoded string with a length limit of 5,
5020
- # 000 characters. * For text attributes, at most 400 values are allowed. Empty
5021
- # values are not allowed. Each value must be a UTF-8 encoded string with a
5022
- # length limit of 256 characters. * For number attributes, at most 400 values
5023
- # are allowed. For product recommendation, an example of extra user information
5024
- # is traffic_channel, i.e. how user arrives at the site. Users can arrive at the
5025
- # site by coming to the site directly, or coming through Google search, and etc.
5541
+ # Extra user event features to include in the recommendation model. If you
5542
+ # provide custom attributes for ingested user events, also include them in the
5543
+ # user events that you associate with prediction requests. Custom attribute
5544
+ # formatting must be consistent between imported events and events provided with
5545
+ # prediction requests. This lets the Retail API use those custom attributes when
5546
+ # training models and serving predictions, which helps improve recommendation
5547
+ # quality. This field needs to pass all below criteria, otherwise an
5548
+ # INVALID_ARGUMENT error is returned: * The key must be a UTF-8 encoded string
5549
+ # with a length limit of 5,000 characters. * For text attributes, at most 400
5550
+ # values are allowed. Empty values are not allowed. Each value must be a UTF-8
5551
+ # encoded string with a length limit of 256 characters. * For number attributes,
5552
+ # at most 400 values are allowed. For product recommendations, an example of
5553
+ # extra user information is traffic_channel, which is how a user arrives at the
5554
+ # site. Users can arrive at the site by coming to the site directly, coming
5555
+ # through Google search, or in other ways.
5026
5556
  # Corresponds to the JSON property `attributes`
5027
5557
  # @return [Hash<String,Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCustomAttribute>]
5028
5558
  attr_accessor :attributes
@@ -5320,13 +5850,12 @@ module Google
5320
5850
  attr_accessor :direct_user_request
5321
5851
  alias_method :direct_user_request?, :direct_user_request
5322
5852
 
5323
- # The end user's IP address. Required for getting SearchResponse.
5324
- # sponsored_results. This field is used to extract location information for
5325
- # personalization. This field must be either an IPv4 address (e.g. "104.133.9.80"
5326
- # ) or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334").
5327
- # Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when
5328
- # using the JavaScript tag in UserEventService.CollectUserEvent or if
5329
- # direct_user_request is set.
5853
+ # The end user's IP address. This field is used to extract location information
5854
+ # for personalization. This field must be either an IPv4 address (e.g. "104.133.
5855
+ # 9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334").
5856
+ # Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when:
5857
+ # * setting SearchRequest.user_info. * using the JavaScript tag in
5858
+ # UserEventService.CollectUserEvent or if direct_user_request is set.
5330
5859
  # Corresponds to the JSON property `ipAddress`
5331
5860
  # @return [String]
5332
5861
  attr_accessor :ip_address
@@ -5342,8 +5871,9 @@ module Google
5342
5871
  attr_accessor :user_agent
5343
5872
 
5344
5873
  # Highly recommended for logged-in users. Unique identifier for logged-in user,
5345
- # such as a user name. The field must be a UTF-8 encoded string with a length
5346
- # limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
5874
+ # such as a user name. Always use a hashed value for this ID. The field must be
5875
+ # a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an
5876
+ # INVALID_ARGUMENT error is returned.
5347
5877
  # Corresponds to the JSON property `userId`
5348
5878
  # @return [String]
5349
5879
  attr_accessor :user_id
@@ -5451,8 +5981,7 @@ module Google
5451
5981
  # A generic empty message that you can re-use to avoid defining duplicated empty
5452
5982
  # messages in your APIs. A typical example is to use it as the request or the
5453
5983
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
5454
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
5455
- # `Empty` is empty JSON object ````.
5984
+ # protobuf.Empty) returns (google.protobuf.Empty); `
5456
5985
  class GoogleProtobufEmpty
5457
5986
  include Google::Apis::Core::Hashable
5458
5987