google-apis-retail_v2beta 0.32.0 → 0.35.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.
@@ -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
@@ -1310,6 +1366,86 @@ module Google
1310
1366
  end
1311
1367
  end
1312
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
+
1313
1449
  # Catalog level attribute config.
1314
1450
  class GoogleCloudRetailV2betaAttributesConfig
1315
1451
  include Google::Apis::Core::Hashable
@@ -1398,7 +1534,9 @@ module Google
1398
1534
  # analytics/answer/3437719. * `user_event_ga4`: This feature is in private
1399
1535
  # preview. Please contact the support team for importing Google Analytics 4
1400
1536
  # events. The schema is available here: https://support.google.com/analytics/
1401
- # 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.
1402
1540
  # Corresponds to the JSON property `dataSchema`
1403
1541
  # @return [String]
1404
1542
  attr_accessor :data_schema
@@ -1467,6 +1605,12 @@ module Google
1467
1605
  # @return [String]
1468
1606
  attr_accessor :display_name
1469
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
+
1470
1614
  # Required. Immutable. The fully qualified resource name of the catalog.
1471
1615
  # Corresponds to the JSON property `name`
1472
1616
  # @return [String]
@@ -1485,6 +1629,7 @@ module Google
1485
1629
  # Update properties of this object
1486
1630
  def update!(**args)
1487
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)
1488
1633
  @name = args[:name] if args.key?(:name)
1489
1634
  @product_level_config = args[:product_level_config] if args.key?(:product_level_config)
1490
1635
  end
@@ -1603,9 +1748,9 @@ module Google
1603
1748
  class GoogleCloudRetailV2betaCompleteQueryResponse
1604
1749
  include Google::Apis::Core::Hashable
1605
1750
 
1606
- # A unique complete token. This should be included in the SearchRequest
1607
- # resulting from this completion, which enables accurate attribution of complete
1608
- # 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.
1609
1754
  # Corresponds to the JSON property `attributionToken`
1610
1755
  # @return [String]
1611
1756
  attr_accessor :attribution_token
@@ -1645,7 +1790,9 @@ module Google
1645
1790
  class GoogleCloudRetailV2betaCompleteQueryResponseCompletionResult
1646
1791
  include Google::Apis::Core::Hashable
1647
1792
 
1648
- # 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.
1649
1796
  # Corresponds to the JSON property `attributes`
1650
1797
  # @return [Hash<String,Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCustomAttribute>]
1651
1798
  attr_accessor :attributes
@@ -1685,6 +1832,103 @@ module Google
1685
1832
  end
1686
1833
  end
1687
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
+
1688
1932
  # The input config source for completion data.
1689
1933
  class GoogleCloudRetailV2betaCompletionDataInputConfig
1690
1934
  include Google::Apis::Core::Hashable
@@ -1862,14 +2106,6 @@ module Google
1862
2106
  # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaRule]
1863
2107
  attr_accessor :rule
1864
2108
 
1865
- # Required. Specifies the use case for the control. Affects what condition
1866
- # fields can be set. Only settable by search controls. Will default to
1867
- # SEARCH_SOLUTION_USE_CASE_SEARCH if not specified. Currently only allow one
1868
- # search_solution_use_case per control.
1869
- # Corresponds to the JSON property `searchSolutionUseCase`
1870
- # @return [Array<String>]
1871
- attr_accessor :search_solution_use_case
1872
-
1873
2109
  # Required. Immutable. The solution types that the serving config is used for.
1874
2110
  # Currently we support setting only one type of solution at creation time. Only `
1875
2111
  # SOLUTION_TYPE_SEARCH` value is supported at the moment. If no solution type is
@@ -1889,7 +2125,6 @@ module Google
1889
2125
  @facet_spec = args[:facet_spec] if args.key?(:facet_spec)
1890
2126
  @name = args[:name] if args.key?(:name)
1891
2127
  @rule = args[:rule] if args.key?(:rule)
1892
- @search_solution_use_case = args[:search_solution_use_case] if args.key?(:search_solution_use_case)
1893
2128
  @solution_types = args[:solution_types] if args.key?(:solution_types)
1894
2129
  end
1895
2130
  end
@@ -2290,8 +2525,7 @@ module Google
2290
2525
  # @return [String]
2291
2526
  attr_accessor :notification_pubsub_topic
2292
2527
 
2293
- # Id of the request / operation. This is parroting back the requestId that was
2294
- # passed in the request.
2528
+ # Deprecated. This field is never set.
2295
2529
  # Corresponds to the JSON property `requestId`
2296
2530
  # @return [String]
2297
2531
  attr_accessor :request_id
@@ -2351,11 +2585,7 @@ module Google
2351
2585
  # @return [String]
2352
2586
  attr_accessor :reconciliation_mode
2353
2587
 
2354
- # Unique identifier provided by client, within the ancestor dataset scope.
2355
- # Ensures idempotency and used for request deduplication. Server-generated if
2356
- # unspecified. Up to 128 characters long and must match the pattern: `[a-zA-Z0-
2357
- # 9_]+`. This is returned as Operation.name in ImportMetadata. Only supported
2358
- # when ImportProductsRequest.reconciliation_mode is set to `FULL`.
2588
+ # Deprecated. This field has no effect.
2359
2589
  # Corresponds to the JSON property `requestId`
2360
2590
  # @return [String]
2361
2591
  attr_accessor :request_id
@@ -2606,6 +2836,141 @@ module Google
2606
2836
  end
2607
2837
  end
2608
2838
 
2839
+ # The inventory information at a place (e.g. a store) identified by a place ID.
2840
+ class GoogleCloudRetailV2betaLocalInventory
2841
+ include Google::Apis::Core::Hashable
2842
+
2843
+ # Additional local inventory attributes, for example, store name, promotion tags,
2844
+ # etc. This field needs to pass all below criteria, otherwise an
2845
+ # INVALID_ARGUMENT error is returned: * At most 30 attributes are allowed. * The
2846
+ # key must be a UTF-8 encoded string with a length limit of 32 characters. * The
2847
+ # key must match the pattern: `a-zA-Z0-9*`. For example, key0LikeThis or
2848
+ # KEY_1_LIKE_THIS. * The attribute values must be of the same type (text or
2849
+ # number). * Only 1 value is allowed for each attribute. * For text values, the
2850
+ # length limit is 256 UTF-8 characters. * The attribute does not support search.
2851
+ # The `searchable` field should be unset or set to false. * The max summed total
2852
+ # bytes of custom attribute keys and values per product is 5MiB.
2853
+ # Corresponds to the JSON property `attributes`
2854
+ # @return [Hash<String,Google::Apis::RetailV2beta::GoogleCloudRetailV2betaCustomAttribute>]
2855
+ attr_accessor :attributes
2856
+
2857
+ # Input only. Supported fulfillment types. Valid fulfillment type values include
2858
+ # commonly used types (such as pickup in store and same day delivery), and
2859
+ # custom types. Customers have to map custom types to their display names before
2860
+ # rendering UI. Supported values: * "pickup-in-store" * "ship-to-store" * "same-
2861
+ # day-delivery" * "next-day-delivery" * "custom-type-1" * "custom-type-2" * "
2862
+ # custom-type-3" * "custom-type-4" * "custom-type-5" If this field is set to an
2863
+ # invalid value other than these, an INVALID_ARGUMENT error is returned. All the
2864
+ # elements must be distinct. Otherwise, an INVALID_ARGUMENT error is returned.
2865
+ # Corresponds to the JSON property `fulfillmentTypes`
2866
+ # @return [Array<String>]
2867
+ attr_accessor :fulfillment_types
2868
+
2869
+ # The place ID for the current set of inventory information.
2870
+ # Corresponds to the JSON property `placeId`
2871
+ # @return [String]
2872
+ attr_accessor :place_id
2873
+
2874
+ # The price information of a Product.
2875
+ # Corresponds to the JSON property `priceInfo`
2876
+ # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaPriceInfo]
2877
+ attr_accessor :price_info
2878
+
2879
+ def initialize(**args)
2880
+ update!(**args)
2881
+ end
2882
+
2883
+ # Update properties of this object
2884
+ def update!(**args)
2885
+ @attributes = args[:attributes] if args.key?(:attributes)
2886
+ @fulfillment_types = args[:fulfillment_types] if args.key?(:fulfillment_types)
2887
+ @place_id = args[:place_id] if args.key?(:place_id)
2888
+ @price_info = args[:price_info] if args.key?(:price_info)
2889
+ end
2890
+ end
2891
+
2892
+ # Represents a link between a Merchant Center account and a branch. Once a link
2893
+ # is established, products from the linked merchant center account will be
2894
+ # streamed to the linked branch.
2895
+ class GoogleCloudRetailV2betaMerchantCenterLink
2896
+ include Google::Apis::Core::Hashable
2897
+
2898
+ # The branch id (e.g. 0/1/2) within this catalog that products from
2899
+ # merchant_center_account_id are streamed to. When updating this field, an empty
2900
+ # value will use the currently configured default branch. However, changing the
2901
+ # default branch later on won't change the linked branch here. A single branch
2902
+ # id can only have one linked merchant center account id.
2903
+ # Corresponds to the JSON property `branchId`
2904
+ # @return [String]
2905
+ attr_accessor :branch_id
2906
+
2907
+ # String representing the destination to import for, all if left empty. List of
2908
+ # possible values can be found here. [https://support.google.com/merchants/
2909
+ # answer/7501026] List of allowed string values: "Shopping_ads", "
2910
+ # Buy_on_google_listings", "Display_ads", "Local_inventory _ads", "Free_listings"
2911
+ # , "Free_local_listings" NOTE: The string values are case sensitive.
2912
+ # Corresponds to the JSON property `destinations`
2913
+ # @return [Array<String>]
2914
+ attr_accessor :destinations
2915
+
2916
+ # Language of the title/description and other string attributes. Use language
2917
+ # tags defined by [BCP 47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt). ISO
2918
+ # 639-1. This specifies the language of offers in Merchant Center that will be
2919
+ # accepted. If empty no language filtering will be performed. Example value: `en`
2920
+ # .
2921
+ # Corresponds to the JSON property `languageCode`
2922
+ # @return [String]
2923
+ attr_accessor :language_code
2924
+
2925
+ # Required. The linked [Merchant center account id](https://developers.google.
2926
+ # com/shopping-content/guides/accountstatuses). The account must be a standalone
2927
+ # account or a sub-account of a MCA.
2928
+ # Corresponds to the JSON property `merchantCenterAccountId`
2929
+ # @return [Fixnum]
2930
+ attr_accessor :merchant_center_account_id
2931
+
2932
+ # Region code of offers to accept. 2-letter Uppercase ISO 3166-1 alpha-2 code.
2933
+ # List of values can be found [here](https://www.iana.org/assignments/language-
2934
+ # subtag-registry/language-subtag-registry) under the `region` tag. If left
2935
+ # blank no region filtering will be performed. Example value: `US`.
2936
+ # Corresponds to the JSON property `regionCode`
2937
+ # @return [String]
2938
+ attr_accessor :region_code
2939
+
2940
+ def initialize(**args)
2941
+ update!(**args)
2942
+ end
2943
+
2944
+ # Update properties of this object
2945
+ def update!(**args)
2946
+ @branch_id = args[:branch_id] if args.key?(:branch_id)
2947
+ @destinations = args[:destinations] if args.key?(:destinations)
2948
+ @language_code = args[:language_code] if args.key?(:language_code)
2949
+ @merchant_center_account_id = args[:merchant_center_account_id] if args.key?(:merchant_center_account_id)
2950
+ @region_code = args[:region_code] if args.key?(:region_code)
2951
+ end
2952
+ end
2953
+
2954
+ # Configures Merchant Center linking. Links contained in the config will be used
2955
+ # to sync data from a Merchant Center account to a Cloud Retail branch.
2956
+ class GoogleCloudRetailV2betaMerchantCenterLinkingConfig
2957
+ include Google::Apis::Core::Hashable
2958
+
2959
+ # Links between Merchant Center accounts and branches.
2960
+ # Corresponds to the JSON property `links`
2961
+ # @return [Array<Google::Apis::RetailV2beta::GoogleCloudRetailV2betaMerchantCenterLink>]
2962
+ attr_accessor :links
2963
+
2964
+ def initialize(**args)
2965
+ update!(**args)
2966
+ end
2967
+
2968
+ # Update properties of this object
2969
+ def update!(**args)
2970
+ @links = args[:links] if args.key?(:links)
2971
+ end
2972
+ end
2973
+
2609
2974
  # Request message for Predict method.
2610
2975
  class GoogleCloudRetailV2betaPredictRequest
2611
2976
  include Google::Apis::Core::Hashable
@@ -3337,13 +3702,13 @@ module Google
3337
3702
  # The type of Products allowed to be ingested into the catalog. Acceptable
3338
3703
  # values are: * `primary` (default): You can ingest Products of all types. When
3339
3704
  # ingesting a Product, its type will default to Product.Type.PRIMARY if unset. *
3340
- # `variant`: You can only ingest Product.Type.VARIANT Products. This means
3341
- # Product.primary_product_id cannot be empty. If this field is set to an invalid
3342
- # value other than these, an INVALID_ARGUMENT error is returned. If this field
3343
- # is `variant` and merchant_center_product_id_field is `itemGroupId`, an
3344
- # INVALID_ARGUMENT error is returned. See [Using product levels](https://cloud.
3345
- # google.com/retail/recommendations-ai/docs/catalog#product-levels) for more
3346
- # details.
3705
+ # `variant` (incompatible with Retail Search): You can only ingest Product.Type.
3706
+ # VARIANT Products. This means Product.primary_product_id cannot be empty. If
3707
+ # this field is set to an invalid value other than these, an INVALID_ARGUMENT
3708
+ # error is returned. If this field is `variant` and
3709
+ # merchant_center_product_id_field is `itemGroupId`, an INVALID_ARGUMENT error
3710
+ # is returned. See [Product levels](https://cloud.google.com/retail/docs/catalog#
3711
+ # product-levels) for more details.
3347
3712
  # Corresponds to the JSON property `ingestionProductType`
3348
3713
  # @return [String]
3349
3714
  attr_accessor :ingestion_product_type
@@ -3356,8 +3721,8 @@ module Google
3356
3721
  # the item group. If this field is set to an invalid value other than these, an
3357
3722
  # INVALID_ARGUMENT error is returned. If this field is `itemGroupId` and
3358
3723
  # ingestion_product_type is `variant`, an INVALID_ARGUMENT error is returned.
3359
- # See [Using product levels](https://cloud.google.com/retail/recommendations-ai/
3360
- # docs/catalog#product-levels) for more details.
3724
+ # See [Product levels](https://cloud.google.com/retail/docs/catalog#product-
3725
+ # levels) for more details.
3361
3726
  # Corresponds to the JSON property `merchantCenterProductIdField`
3362
3727
  # @return [String]
3363
3728
  attr_accessor :merchant_center_product_id_field
@@ -3730,6 +4095,73 @@ module Google
3730
4095
  end
3731
4096
  end
3732
4097
 
4098
+ # Metadata related to the progress of the RemoveLocalInventories operation.
4099
+ # Currently empty because there is no meaningful metadata populated from the
4100
+ # RemoveLocalInventories method.
4101
+ class GoogleCloudRetailV2betaRemoveLocalInventoriesMetadata
4102
+ include Google::Apis::Core::Hashable
4103
+
4104
+ def initialize(**args)
4105
+ update!(**args)
4106
+ end
4107
+
4108
+ # Update properties of this object
4109
+ def update!(**args)
4110
+ end
4111
+ end
4112
+
4113
+ # Request message for RemoveLocalInventories method.
4114
+ class GoogleCloudRetailV2betaRemoveLocalInventoriesRequest
4115
+ include Google::Apis::Core::Hashable
4116
+
4117
+ # If set to true, and the Product is not found, the local inventory removal
4118
+ # request will still be processed and retained for at most 1 day and processed
4119
+ # once the Product is created. If set to false, a NOT_FOUND error is returned if
4120
+ # the Product is not found.
4121
+ # Corresponds to the JSON property `allowMissing`
4122
+ # @return [Boolean]
4123
+ attr_accessor :allow_missing
4124
+ alias_method :allow_missing?, :allow_missing
4125
+
4126
+ # Required. A list of place IDs to have their inventory deleted. At most 3000
4127
+ # place IDs are allowed per request.
4128
+ # Corresponds to the JSON property `placeIds`
4129
+ # @return [Array<String>]
4130
+ attr_accessor :place_ids
4131
+
4132
+ # The time when the inventory deletions are issued. Used to prevent out-of-order
4133
+ # updates and deletions on local inventory fields. If not provided, the internal
4134
+ # system time will be used.
4135
+ # Corresponds to the JSON property `removeTime`
4136
+ # @return [String]
4137
+ attr_accessor :remove_time
4138
+
4139
+ def initialize(**args)
4140
+ update!(**args)
4141
+ end
4142
+
4143
+ # Update properties of this object
4144
+ def update!(**args)
4145
+ @allow_missing = args[:allow_missing] if args.key?(:allow_missing)
4146
+ @place_ids = args[:place_ids] if args.key?(:place_ids)
4147
+ @remove_time = args[:remove_time] if args.key?(:remove_time)
4148
+ end
4149
+ end
4150
+
4151
+ # Response of the RemoveLocalInventories API. Currently empty because there is
4152
+ # no meaningful response populated from the RemoveLocalInventories method.
4153
+ class GoogleCloudRetailV2betaRemoveLocalInventoriesResponse
4154
+ include Google::Apis::Core::Hashable
4155
+
4156
+ def initialize(**args)
4157
+ update!(**args)
4158
+ end
4159
+
4160
+ # Update properties of this object
4161
+ def update!(**args)
4162
+ end
4163
+ end
4164
+
3733
4165
  # Request for CatalogService.ReplaceCatalogAttribute method.
3734
4166
  class GoogleCloudRetailV2betaReplaceCatalogAttributeRequest
3735
4167
  include Google::Apis::Core::Hashable
@@ -4182,7 +4614,8 @@ module Google
4182
4614
  # @return [Google::Apis::RetailV2beta::GoogleCloudRetailV2betaSearchRequestPersonalizationSpec]
4183
4615
  attr_accessor :personalization_spec
4184
4616
 
4185
- # Raw search query.
4617
+ # Raw search query. If this field is empty, the request is considered a category
4618
+ # browsing request and returned results are based on filter and page_categories.
4186
4619
  # Corresponds to the JSON property `query`
4187
4620
  # @return [String]
4188
4621
  attr_accessor :query
@@ -5279,10 +5712,12 @@ module Google
5279
5712
  # Required. A unique identifier for tracking visitors. For example, this could
5280
5713
  # be implemented with an HTTP cookie, which should be able to uniquely identify
5281
5714
  # a visitor on a single device. This unique identifier should not change if the
5282
- # visitor log in/out of the website. The field must be a UTF-8 encoded string
5283
- # with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is
5284
- # returned. The field should not contain PII or user-data. We recommend to use
5285
- # Google Analystics [Client ID](https://developers.google.com/analytics/
5715
+ # visitor log in/out of the website. Don't set the field to the same fixed ID
5716
+ # for different users. This mixes the event history of those users together,
5717
+ # which results in degraded model quality. The field must be a UTF-8 encoded
5718
+ # string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT
5719
+ # error is returned. The field should not contain PII or user-data. We recommend
5720
+ # to use Google Analystics [Client ID](https://developers.google.com/analytics/
5286
5721
  # devguides/collection/analyticsjs/field-reference#clientId) for this field.
5287
5722
  # Corresponds to the JSON property `visitorId`
5288
5723
  # @return [String]
@@ -5409,13 +5844,12 @@ module Google
5409
5844
  attr_accessor :direct_user_request
5410
5845
  alias_method :direct_user_request?, :direct_user_request
5411
5846
 
5412
- # The end user's IP address. Required for getting SearchResponse.
5413
- # sponsored_results. This field is used to extract location information for
5414
- # personalization. This field must be either an IPv4 address (e.g. "104.133.9.80"
5415
- # ) or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334").
5416
- # Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when
5417
- # using the JavaScript tag in UserEventService.CollectUserEvent or if
5418
- # direct_user_request is set.
5847
+ # The end user's IP address. This field is used to extract location information
5848
+ # for personalization. This field must be either an IPv4 address (e.g. "104.133.
5849
+ # 9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334").
5850
+ # Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when:
5851
+ # * setting SearchRequest.user_info. * using the JavaScript tag in
5852
+ # UserEventService.CollectUserEvent or if direct_user_request is set.
5419
5853
  # Corresponds to the JSON property `ipAddress`
5420
5854
  # @return [String]
5421
5855
  attr_accessor :ip_address
@@ -5431,7 +5865,10 @@ module Google
5431
5865
  attr_accessor :user_agent
5432
5866
 
5433
5867
  # Highly recommended for logged-in users. Unique identifier for logged-in user,
5434
- # such as a user name. The field must be a UTF-8 encoded string with a length
5868
+ # such as a user name. Don't set for anonymous users. Always use a hashed value
5869
+ # for this ID. Don't set the field to the same fixed ID for different users.
5870
+ # This mixes the event history of those users together, which results in
5871
+ # degraded model quality. The field must be a UTF-8 encoded string with a length
5435
5872
  # limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
5436
5873
  # Corresponds to the JSON property `userId`
5437
5874
  # @return [String]
@@ -5540,8 +5977,7 @@ module Google
5540
5977
  # A generic empty message that you can re-use to avoid defining duplicated empty
5541
5978
  # messages in your APIs. A typical example is to use it as the request or the
5542
5979
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
5543
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
5544
- # `Empty` is empty JSON object ````.
5980
+ # protobuf.Empty) returns (google.protobuf.Empty); `
5545
5981
  class GoogleProtobufEmpty
5546
5982
  include Google::Apis::Core::Hashable
5547
5983