google-apis-retail_v2alpha 0.48.0 → 0.51.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -960,6 +960,79 @@ module Google
960
960
  end
961
961
  end
962
962
 
963
+ # Request for CatalogService.BatchRemoveCatalogAttributes method.
964
+ class GoogleCloudRetailV2alphaBatchRemoveCatalogAttributesRequest
965
+ include Google::Apis::Core::Hashable
966
+
967
+ # Required. The attribute name keys of the CatalogAttributes to delete. A
968
+ # maximum of 1000 catalog attributes can be deleted in a batch.
969
+ # Corresponds to the JSON property `attributeKeys`
970
+ # @return [Array<String>]
971
+ attr_accessor :attribute_keys
972
+
973
+ def initialize(**args)
974
+ update!(**args)
975
+ end
976
+
977
+ # Update properties of this object
978
+ def update!(**args)
979
+ @attribute_keys = args[:attribute_keys] if args.key?(:attribute_keys)
980
+ end
981
+ end
982
+
983
+ # Response of the CatalogService.BatchRemoveCatalogAttributes.
984
+ class GoogleCloudRetailV2alphaBatchRemoveCatalogAttributesResponse
985
+ include Google::Apis::Core::Hashable
986
+
987
+ # Catalog attributes that were deleted. Only attributes that are not in use by
988
+ # products can be deleted.
989
+ # Corresponds to the JSON property `deletedCatalogAttributes`
990
+ # @return [Array<String>]
991
+ attr_accessor :deleted_catalog_attributes
992
+
993
+ # Catalog attributes that were reset. Attributes that are in use by products
994
+ # cannot be deleted, however their configuration properties will reset to
995
+ # default values upon removal request.
996
+ # Corresponds to the JSON property `resetCatalogAttributes`
997
+ # @return [Array<String>]
998
+ attr_accessor :reset_catalog_attributes
999
+
1000
+ def initialize(**args)
1001
+ update!(**args)
1002
+ end
1003
+
1004
+ # Update properties of this object
1005
+ def update!(**args)
1006
+ @deleted_catalog_attributes = args[:deleted_catalog_attributes] if args.key?(:deleted_catalog_attributes)
1007
+ @reset_catalog_attributes = args[:reset_catalog_attributes] if args.key?(:reset_catalog_attributes)
1008
+ end
1009
+ end
1010
+
1011
+ # A BigQuery output result.
1012
+ class GoogleCloudRetailV2alphaBigQueryOutputResult
1013
+ include Google::Apis::Core::Hashable
1014
+
1015
+ # The ID of a BigQuery Dataset.
1016
+ # Corresponds to the JSON property `datasetId`
1017
+ # @return [String]
1018
+ attr_accessor :dataset_id
1019
+
1020
+ # The ID of a BigQuery Table.
1021
+ # Corresponds to the JSON property `tableId`
1022
+ # @return [String]
1023
+ attr_accessor :table_id
1024
+
1025
+ def initialize(**args)
1026
+ update!(**args)
1027
+ end
1028
+
1029
+ # Update properties of this object
1030
+ def update!(**args)
1031
+ @dataset_id = args[:dataset_id] if args.key?(:dataset_id)
1032
+ @table_id = args[:table_id] if args.key?(:table_id)
1033
+ end
1034
+ end
1035
+
963
1036
  # BigQuery source import data from.
964
1037
  class GoogleCloudRetailV2alphaBigQuerySource
965
1038
  include Google::Apis::Core::Hashable
@@ -971,12 +1044,11 @@ module Google
971
1044
  # recommendations-ai/docs/upload-catalog#mc). Supported values for user events
972
1045
  # imports: * `user_event` (default): One JSON UserEvent per line. * `
973
1046
  # user_event_ga360`: The schema is available here: https://support.google.com/
974
- # analytics/answer/3437719. * `user_event_ga4`: This feature is in private
975
- # preview. Please contact the support team for importing Google Analytics 4
976
- # events. The schema is available here: https://support.google.com/analytics/
977
- # answer/7029846. Supported values for auto-completion imports: * `suggestions` (
978
- # default): One JSON completion suggestion per line. * `denylist`: One JSON deny
979
- # suggestion per line. * `allowlist`: One JSON allow suggestion per line.
1047
+ # analytics/answer/3437719. * `user_event_ga4`: The schema is available here:
1048
+ # https://support.google.com/analytics/answer/7029846. Supported values for auto-
1049
+ # completion imports: * `suggestions` (default): One JSON completion suggestion
1050
+ # per line. * `denylist`: One JSON deny suggestion per line. * `allowlist`: One
1051
+ # JSON allow suggestion per line.
980
1052
  # Corresponds to the JSON property `dataSchema`
981
1053
  # @return [String]
982
1054
  attr_accessor :data_schema
@@ -1087,6 +1159,13 @@ module Google
1087
1159
  # @return [String]
1088
1160
  attr_accessor :dynamic_facetable_option
1089
1161
 
1162
+ # If EXACT_SEARCHABLE_ENABLED, attribute values will be exact searchable. This
1163
+ # property only applies to textual custom attributes and requires indexable set
1164
+ # to enabled to enable exact-searchable.
1165
+ # Corresponds to the JSON property `exactSearchableOption`
1166
+ # @return [String]
1167
+ attr_accessor :exact_searchable_option
1168
+
1090
1169
  # Output only. Indicates whether this attribute has been used by any products. `
1091
1170
  # True` if at least one Product is using this attribute in Product.attributes.
1092
1171
  # Otherwise, this field is `False`. CatalogAttribute can be pre-loaded by using
@@ -1148,6 +1227,7 @@ module Google
1148
1227
  # Update properties of this object
1149
1228
  def update!(**args)
1150
1229
  @dynamic_facetable_option = args[:dynamic_facetable_option] if args.key?(:dynamic_facetable_option)
1230
+ @exact_searchable_option = args[:exact_searchable_option] if args.key?(:exact_searchable_option)
1151
1231
  @in_use = args[:in_use] if args.key?(:in_use)
1152
1232
  @indexable_option = args[:indexable_option] if args.key?(:indexable_option)
1153
1233
  @key = args[:key] if args.key?(:key)
@@ -1245,9 +1325,8 @@ module Google
1245
1325
 
1246
1326
  # Custom attributes for the suggestion term. * For "user-data", the attributes
1247
1327
  # are additional custom attributes ingested through BigQuery. * For "cloud-
1248
- # retail", the attributes are product attributes generated by Cloud Retail. This
1249
- # is an experimental feature. Contact Retail Search support team if you are
1250
- # interested in enabling it.
1328
+ # retail", the attributes are product attributes generated by Cloud Retail. It
1329
+ # requires UserEvent.product_details is imported properly.
1251
1330
  # Corresponds to the JSON property `attributes`
1252
1331
  # @return [Hash<String,Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaCustomAttribute>]
1253
1332
  attr_accessor :attributes
@@ -1341,16 +1420,16 @@ module Google
1341
1420
  # @return [String]
1342
1421
  attr_accessor :matching_order
1343
1422
 
1344
- # The maximum number of autocomplete suggestions returned per term. The maximum
1345
- # allowed max suggestions is 20. Default value is 20. If left unset or set to 0,
1346
- # then will fallback to default value.
1423
+ # The maximum number of autocomplete suggestions returned per term. Default
1424
+ # value is 20. If left unset or set to 0, then will fallback to default value.
1425
+ # Value range is 1 to 20.
1347
1426
  # Corresponds to the JSON property `maxSuggestions`
1348
1427
  # @return [Fixnum]
1349
1428
  attr_accessor :max_suggestions
1350
1429
 
1351
1430
  # The minimum number of characters needed to be typed in order to get
1352
1431
  # suggestions. Default value is 2. If left unset or set to 0, then will fallback
1353
- # to default value.
1432
+ # to default value. Value range is 1 to 20.
1354
1433
  # Corresponds to the JSON property `minPrefixLength`
1355
1434
  # @return [Fixnum]
1356
1435
  attr_accessor :min_prefix_length
@@ -1586,6 +1665,26 @@ module Google
1586
1665
  end
1587
1666
  end
1588
1667
 
1668
+ # Metadata associated with a create operation.
1669
+ class GoogleCloudRetailV2alphaCreateModelMetadata
1670
+ include Google::Apis::Core::Hashable
1671
+
1672
+ # The resource name of the model that this create applies to. Format: projects/`
1673
+ # project_number`/locations/`location_id`/catalogs/`catalog_id`/models/`model_id`
1674
+ # Corresponds to the JSON property `model`
1675
+ # @return [String]
1676
+ attr_accessor :model
1677
+
1678
+ def initialize(**args)
1679
+ update!(**args)
1680
+ end
1681
+
1682
+ # Update properties of this object
1683
+ def update!(**args)
1684
+ @model = args[:model] if args.key?(:model)
1685
+ end
1686
+ end
1687
+
1589
1688
  # A custom attribute that is not explicitly modeled in Product.
1590
1689
  class GoogleCloudRetailV2alphaCustomAttribute
1591
1690
  include Google::Apis::Core::Hashable
@@ -1707,6 +1806,11 @@ module Google
1707
1806
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaExportErrorsConfig]
1708
1807
  attr_accessor :errors_config
1709
1808
 
1809
+ # Output result.
1810
+ # Corresponds to the JSON property `outputResult`
1811
+ # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaOutputResult]
1812
+ attr_accessor :output_result
1813
+
1710
1814
  def initialize(**args)
1711
1815
  update!(**args)
1712
1816
  end
@@ -1715,6 +1819,7 @@ module Google
1715
1819
  def update!(**args)
1716
1820
  @error_samples = args[:error_samples] if args.key?(:error_samples)
1717
1821
  @errors_config = args[:errors_config] if args.key?(:errors_config)
1822
+ @output_result = args[:output_result] if args.key?(:output_result)
1718
1823
  end
1719
1824
  end
1720
1825
 
@@ -1734,6 +1839,11 @@ module Google
1734
1839
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaExportErrorsConfig]
1735
1840
  attr_accessor :errors_config
1736
1841
 
1842
+ # Output result.
1843
+ # Corresponds to the JSON property `outputResult`
1844
+ # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaOutputResult]
1845
+ attr_accessor :output_result
1846
+
1737
1847
  def initialize(**args)
1738
1848
  update!(**args)
1739
1849
  end
@@ -1742,6 +1852,7 @@ module Google
1742
1852
  def update!(**args)
1743
1853
  @error_samples = args[:error_samples] if args.key?(:error_samples)
1744
1854
  @errors_config = args[:errors_config] if args.key?(:errors_config)
1855
+ @output_result = args[:output_result] if args.key?(:output_result)
1745
1856
  end
1746
1857
  end
1747
1858
 
@@ -1996,6 +2107,11 @@ module Google
1996
2107
  # @return [Fixnum]
1997
2108
  attr_accessor :success_count
1998
2109
 
2110
+ # Metadata related to transform user events operation.
2111
+ # Corresponds to the JSON property `transformedUserEventsMetadata`
2112
+ # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaTransformedUserEventsMetadata]
2113
+ attr_accessor :transformed_user_events_metadata
2114
+
1999
2115
  # Operation last update time. If the operation is done, this is also the finish
2000
2116
  # time.
2001
2117
  # Corresponds to the JSON property `updateTime`
@@ -2013,6 +2129,7 @@ module Google
2013
2129
  @notification_pubsub_topic = args[:notification_pubsub_topic] if args.key?(:notification_pubsub_topic)
2014
2130
  @request_id = args[:request_id] if args.key?(:request_id)
2015
2131
  @success_count = args[:success_count] if args.key?(:success_count)
2132
+ @transformed_user_events_metadata = args[:transformed_user_events_metadata] if args.key?(:transformed_user_events_metadata)
2016
2133
  @update_time = args[:update_time] if args.key?(:update_time)
2017
2134
  end
2018
2135
  end
@@ -2035,11 +2152,9 @@ module Google
2035
2152
  # the import is finished, a notification will be sent to specified Pub/Sub topic.
2036
2153
  # The message data will be JSON string of a Operation. Format of the Pub/Sub
2037
2154
  # topic is `projects/`project`/topics/`topic``. It has to be within the same
2038
- # project as ImportProductsRequest.parent. Make sure that both `cloud-retail-
2039
- # customer-data-access@system.gserviceaccount.com` and `service-@gcp-sa-retail.
2040
- # iam.gserviceaccount.com` have the `pubsub.topics.publish` IAM permission on
2041
- # the topic. Only supported when ImportProductsRequest.reconciliation_mode is
2042
- # set to `FULL`.
2155
+ # project as ImportProductsRequest.parent. Make sure that `service-@gcp-sa-
2156
+ # retail.iam.gserviceaccount.com` has the `pubsub.topics.publish` IAM permission
2157
+ # on the topic.
2043
2158
  # Corresponds to the JSON property `notificationPubsubTopic`
2044
2159
  # @return [String]
2045
2160
  attr_accessor :notification_pubsub_topic
@@ -2260,6 +2375,31 @@ module Google
2260
2375
  end
2261
2376
  end
2262
2377
 
2378
+ # Response to a ListModelRequest.
2379
+ class GoogleCloudRetailV2alphaListModelsResponse
2380
+ include Google::Apis::Core::Hashable
2381
+
2382
+ # List of Models.
2383
+ # Corresponds to the JSON property `models`
2384
+ # @return [Array<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaModel>]
2385
+ attr_accessor :models
2386
+
2387
+ # Pagination token, if not returned indicates the last page.
2388
+ # Corresponds to the JSON property `nextPageToken`
2389
+ # @return [String]
2390
+ attr_accessor :next_page_token
2391
+
2392
+ def initialize(**args)
2393
+ update!(**args)
2394
+ end
2395
+
2396
+ # Update properties of this object
2397
+ def update!(**args)
2398
+ @models = args[:models] if args.key?(:models)
2399
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2400
+ end
2401
+ end
2402
+
2263
2403
  # Response message for ProductService.ListProducts method.
2264
2404
  class GoogleCloudRetailV2alphaListProductsResponse
2265
2405
  include Google::Apis::Core::Hashable
@@ -2455,6 +2595,291 @@ module Google
2455
2595
  end
2456
2596
  end
2457
2597
 
2598
+ # Metadata that describes the training and serving parameters of a Model. A
2599
+ # Model can be associated with a ServingConfig and then queried through the
2600
+ # Predict api.
2601
+ class GoogleCloudRetailV2alphaModel
2602
+ include Google::Apis::Core::Hashable
2603
+
2604
+ # Output only. Timestamp the Recommendation Model was created at.
2605
+ # Corresponds to the JSON property `createTime`
2606
+ # @return [String]
2607
+ attr_accessor :create_time
2608
+
2609
+ # Output only. The state of data requirements for this model: DATA_OK and
2610
+ # DATA_ERROR. Recommendation model cannot be trained if the data is in
2611
+ # DATA_ERROR state. Recommendation model can have DATA_ERROR state even if
2612
+ # serving state is ACTIVE: models were trained successfully before, but cannot
2613
+ # be refreshed because model no longer has sufficient data for training.
2614
+ # Corresponds to the JSON property `dataState`
2615
+ # @return [String]
2616
+ attr_accessor :data_state
2617
+
2618
+ # Required. The display name of the model. Should be human readable, used to
2619
+ # display Recommendation Models in the Retail Cloud Cosole Dashboard. UTF-8
2620
+ # encoded string with limit of 1024 characters.
2621
+ # Corresponds to the JSON property `displayName`
2622
+ # @return [String]
2623
+ attr_accessor :display_name
2624
+
2625
+ # Optional. If RECOMMENDATIONS_FILTERING_ENABLED, recommendation filtering by
2626
+ # attributes is enabled for the model.
2627
+ # Corresponds to the JSON property `filteringOption`
2628
+ # @return [String]
2629
+ attr_accessor :filtering_option
2630
+
2631
+ # Output only. The timestamp when the latest successful tune finished.
2632
+ # Corresponds to the JSON property `lastTuneTime`
2633
+ # @return [String]
2634
+ attr_accessor :last_tune_time
2635
+
2636
+ # Required. The fully qualified resource name of the model. Format: projects/`
2637
+ # project_number`/locations/`location_id`/catalogs/`catalog_id`/models/`model_id`
2638
+ # catalog_id has char limit of 50. recommendation_model_id has char limit of 40.
2639
+ # Corresponds to the JSON property `name`
2640
+ # @return [String]
2641
+ attr_accessor :name
2642
+
2643
+ # Optional. The optimization objective e.g. `cvr`. Currently supported values: `
2644
+ # ctr`, `cvr`, `revenue-per-order`. If not specified, we choose default based on
2645
+ # model type. Default depends on type of recommendation: `recommended-for-you` =>
2646
+ # `ctr` `others-you-may-like` => `ctr` `frequently-bought-together` => `
2647
+ # revenue_per_order`
2648
+ # Corresponds to the JSON property `optimizationObjective`
2649
+ # @return [String]
2650
+ attr_accessor :optimization_objective
2651
+
2652
+ # The PageOptimizationConfig for model training. This determines how many panels
2653
+ # to optimize for, and which serving configurations to consider for each panel.
2654
+ # The purpose of this model is to optimize which ServingConfig to show on which
2655
+ # panels in way that optimizes the visitors shopping journey.
2656
+ # Corresponds to the JSON property `pageOptimizationConfig`
2657
+ # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaModelPageOptimizationConfig]
2658
+ attr_accessor :page_optimization_config
2659
+
2660
+ # Optional. The state of periodic tuning. The period we use is 3 months - to do
2661
+ # a one-off tune earlier use the TuneModel method. Default value is
2662
+ # PERIODIC_TUNING_ENABLED.
2663
+ # Corresponds to the JSON property `periodicTuningState`
2664
+ # @return [String]
2665
+ attr_accessor :periodic_tuning_state
2666
+
2667
+ # Output only. The list of valid serving configs associated with the
2668
+ # PageOptimizationConfig.
2669
+ # Corresponds to the JSON property `servingConfigLists`
2670
+ # @return [Array<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaModelServingConfigList>]
2671
+ attr_accessor :serving_config_lists
2672
+
2673
+ # Output only. The serving state of the model: ACTIVE, NOT_ACTIVE.
2674
+ # Corresponds to the JSON property `servingState`
2675
+ # @return [String]
2676
+ attr_accessor :serving_state
2677
+
2678
+ # Optional. The training state that the model is in (e.g. TRAINING or PAUSED).
2679
+ # Since part of the cost of running the service is frequency of training - this
2680
+ # can be used to determine when to train model in order to control cost. If not
2681
+ # specified: the default value for CreateModel method is TRAINING. the default
2682
+ # value for UpdateModel method is to keep the state the same as before.
2683
+ # Corresponds to the JSON property `trainingState`
2684
+ # @return [String]
2685
+ attr_accessor :training_state
2686
+
2687
+ # Output only. The tune operation associated with the model. Can be used to
2688
+ # determine if there is an ongoing tune for this recommendation. Empty field
2689
+ # implies no tune is goig on.
2690
+ # Corresponds to the JSON property `tuningOperation`
2691
+ # @return [String]
2692
+ attr_accessor :tuning_operation
2693
+
2694
+ # Required. The type of model e.g. `home-page`. Currently supported values: `
2695
+ # recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `
2696
+ # page-optimization`, 'similar-items', 'buy-it-again', `recently-viewed`(
2697
+ # readonly value).
2698
+ # Corresponds to the JSON property `type`
2699
+ # @return [String]
2700
+ attr_accessor :type
2701
+
2702
+ # Output only. Timestamp the Recommendation Model was last updated. E.g. if a
2703
+ # Recommendation Model was paused - this would be the time the pause was
2704
+ # initiated.
2705
+ # Corresponds to the JSON property `updateTime`
2706
+ # @return [String]
2707
+ attr_accessor :update_time
2708
+
2709
+ def initialize(**args)
2710
+ update!(**args)
2711
+ end
2712
+
2713
+ # Update properties of this object
2714
+ def update!(**args)
2715
+ @create_time = args[:create_time] if args.key?(:create_time)
2716
+ @data_state = args[:data_state] if args.key?(:data_state)
2717
+ @display_name = args[:display_name] if args.key?(:display_name)
2718
+ @filtering_option = args[:filtering_option] if args.key?(:filtering_option)
2719
+ @last_tune_time = args[:last_tune_time] if args.key?(:last_tune_time)
2720
+ @name = args[:name] if args.key?(:name)
2721
+ @optimization_objective = args[:optimization_objective] if args.key?(:optimization_objective)
2722
+ @page_optimization_config = args[:page_optimization_config] if args.key?(:page_optimization_config)
2723
+ @periodic_tuning_state = args[:periodic_tuning_state] if args.key?(:periodic_tuning_state)
2724
+ @serving_config_lists = args[:serving_config_lists] if args.key?(:serving_config_lists)
2725
+ @serving_state = args[:serving_state] if args.key?(:serving_state)
2726
+ @training_state = args[:training_state] if args.key?(:training_state)
2727
+ @tuning_operation = args[:tuning_operation] if args.key?(:tuning_operation)
2728
+ @type = args[:type] if args.key?(:type)
2729
+ @update_time = args[:update_time] if args.key?(:update_time)
2730
+ end
2731
+ end
2732
+
2733
+ # The PageOptimizationConfig for model training. This determines how many panels
2734
+ # to optimize for, and which serving configurations to consider for each panel.
2735
+ # The purpose of this model is to optimize which ServingConfig to show on which
2736
+ # panels in way that optimizes the visitors shopping journey.
2737
+ class GoogleCloudRetailV2alphaModelPageOptimizationConfig
2738
+ include Google::Apis::Core::Hashable
2739
+
2740
+ # Required. The type of UserEvent this page optimization is shown for. Each page
2741
+ # has an associated event type - this will be the corresponding event type for
2742
+ # the page that the page optimization model is used on. Supported types: * `add-
2743
+ # to-cart`: Products being added to cart. * `detail-page-view`: Products detail
2744
+ # page viewed. * `home-page-view`: Homepage viewed * `category-page-view`:
2745
+ # Homepage viewed * `shopping-cart-page-view`: User viewing a shopping cart. `
2746
+ # home-page-view` only allows models with type `recommended-for-you`. All other
2747
+ # page_optimization_event_type allow all Model.types.
2748
+ # Corresponds to the JSON property `pageOptimizationEventType`
2749
+ # @return [String]
2750
+ attr_accessor :page_optimization_event_type
2751
+
2752
+ # Required. A list of panel configurations. Limit = 5.
2753
+ # Corresponds to the JSON property `panels`
2754
+ # @return [Array<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaModelPageOptimizationConfigPanel>]
2755
+ attr_accessor :panels
2756
+
2757
+ # Optional. How to restrict results across panels e.g. can the same
2758
+ # ServingConfig be shown on multiple panels at once. If unspecified, default to `
2759
+ # UNIQUE_MODEL_RESTRICTION`.
2760
+ # Corresponds to the JSON property `restriction`
2761
+ # @return [String]
2762
+ attr_accessor :restriction
2763
+
2764
+ def initialize(**args)
2765
+ update!(**args)
2766
+ end
2767
+
2768
+ # Update properties of this object
2769
+ def update!(**args)
2770
+ @page_optimization_event_type = args[:page_optimization_event_type] if args.key?(:page_optimization_event_type)
2771
+ @panels = args[:panels] if args.key?(:panels)
2772
+ @restriction = args[:restriction] if args.key?(:restriction)
2773
+ end
2774
+ end
2775
+
2776
+ # A candidate to consider for a given panel. Currently only ServingConfig are
2777
+ # valid candidates.
2778
+ class GoogleCloudRetailV2alphaModelPageOptimizationConfigCandidate
2779
+ include Google::Apis::Core::Hashable
2780
+
2781
+ # This has to be a valid ServingConfig identifier. e.g. for a ServingConfig with
2782
+ # full name: `projects/*/locations/global/catalogs/default_catalog/
2783
+ # servingConfigs/my_candidate_config` this would be 'my_candidate_config'
2784
+ # Corresponds to the JSON property `servingConfigId`
2785
+ # @return [String]
2786
+ attr_accessor :serving_config_id
2787
+
2788
+ def initialize(**args)
2789
+ update!(**args)
2790
+ end
2791
+
2792
+ # Update properties of this object
2793
+ def update!(**args)
2794
+ @serving_config_id = args[:serving_config_id] if args.key?(:serving_config_id)
2795
+ end
2796
+ end
2797
+
2798
+ # An individual panel with a list of ServingConfigs to consider for it.
2799
+ class GoogleCloudRetailV2alphaModelPageOptimizationConfigPanel
2800
+ include Google::Apis::Core::Hashable
2801
+
2802
+ # Required. The candidates to consider on the panel. Limit = 10.
2803
+ # Corresponds to the JSON property `candidates`
2804
+ # @return [Array<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaModelPageOptimizationConfigCandidate>]
2805
+ attr_accessor :candidates
2806
+
2807
+ # A candidate to consider for a given panel. Currently only ServingConfig are
2808
+ # valid candidates.
2809
+ # Corresponds to the JSON property `defaultCandidate`
2810
+ # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaModelPageOptimizationConfigCandidate]
2811
+ attr_accessor :default_candidate
2812
+
2813
+ # Optional. The name to display for the panel.
2814
+ # Corresponds to the JSON property `displayName`
2815
+ # @return [String]
2816
+ attr_accessor :display_name
2817
+
2818
+ def initialize(**args)
2819
+ update!(**args)
2820
+ end
2821
+
2822
+ # Update properties of this object
2823
+ def update!(**args)
2824
+ @candidates = args[:candidates] if args.key?(:candidates)
2825
+ @default_candidate = args[:default_candidate] if args.key?(:default_candidate)
2826
+ @display_name = args[:display_name] if args.key?(:display_name)
2827
+ end
2828
+ end
2829
+
2830
+ # Represents an ordered combination of valid serving configs, which / may be
2831
+ # used for PAGE_OPTIMIZATION recommendations.
2832
+ class GoogleCloudRetailV2alphaModelServingConfigList
2833
+ include Google::Apis::Core::Hashable
2834
+
2835
+ # Optional. A set of valid serving configs that may be used for
2836
+ # PAGE_OPTIMIZATION.
2837
+ # Corresponds to the JSON property `servingConfigIds`
2838
+ # @return [Array<String>]
2839
+ attr_accessor :serving_config_ids
2840
+
2841
+ def initialize(**args)
2842
+ update!(**args)
2843
+ end
2844
+
2845
+ # Update properties of this object
2846
+ def update!(**args)
2847
+ @serving_config_ids = args[:serving_config_ids] if args.key?(:serving_config_ids)
2848
+ end
2849
+ end
2850
+
2851
+ # Output result.
2852
+ class GoogleCloudRetailV2alphaOutputResult
2853
+ include Google::Apis::Core::Hashable
2854
+
2855
+ # Export result in BigQuery.
2856
+ # Corresponds to the JSON property `bigqueryResult`
2857
+ # @return [Array<Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaBigQueryOutputResult>]
2858
+ attr_accessor :bigquery_result
2859
+
2860
+ def initialize(**args)
2861
+ update!(**args)
2862
+ end
2863
+
2864
+ # Update properties of this object
2865
+ def update!(**args)
2866
+ @bigquery_result = args[:bigquery_result] if args.key?(:bigquery_result)
2867
+ end
2868
+ end
2869
+
2870
+ # Request for pausing training of a model.
2871
+ class GoogleCloudRetailV2alphaPauseModelRequest
2872
+ include Google::Apis::Core::Hashable
2873
+
2874
+ def initialize(**args)
2875
+ update!(**args)
2876
+ end
2877
+
2878
+ # Update properties of this object
2879
+ def update!(**args)
2880
+ end
2881
+ end
2882
+
2458
2883
  # Request message for Predict method.
2459
2884
  class GoogleCloudRetailV2alphaPredictRequest
2460
2885
  include Google::Apis::Core::Hashable
@@ -2476,7 +2901,7 @@ module Google
2476
2901
  # in `PredictRequest.params` to receive empty results instead. Note that the API
2477
2902
  # will never return items with storageStatus of "EXPIRED" or "DELETED"
2478
2903
  # regardless of filter choices. If `filterSyntaxV2` is set to true under the `
2479
- # params` field, then attribute based expressions are expected instead of the
2904
+ # params` field, then attribute-based expressions are expected instead of the
2480
2905
  # above described tag-based syntax. Examples: * (colors: ANY("Red", "Blue")) AND
2481
2906
  # NOT (categories: ANY("Phones")) * (availability: ANY("IN_STOCK")) AND (colors:
2482
2907
  # ANY("Red") OR categories: ANY("Phones"))
@@ -2507,7 +2932,7 @@ module Google
2507
2932
  # @return [Fixnum]
2508
2933
  attr_accessor :page_size
2509
2934
 
2510
- # This field is not used for now, please leave it unset.
2935
+ # This field is not used for now, leave it unset.
2511
2936
  # Corresponds to the JSON property `pageToken`
2512
2937
  # @return [String]
2513
2938
  attr_accessor :page_token
@@ -2529,8 +2954,8 @@ module Google
2529
2954
  # it needs to be one of `'no-diversity', 'low-diversity', 'medium-diversity', '
2530
2955
  # high-diversity', 'auto-diversity'`. This gives request-level control and
2531
2956
  # adjusts prediction results based on product category. * `filterSyntaxV2`:
2532
- # Boolean. False by default. If set to true, the `filter` field will be
2533
- # interpreteted according to the new, attribute-based syntax.
2957
+ # Boolean. False by default. If set to true, the `filter` field is interpreteted
2958
+ # according to the new, attribute-based syntax.
2534
2959
  # Corresponds to the JSON property `params`
2535
2960
  # @return [Hash<String,Object>]
2536
2961
  attr_accessor :params
@@ -2814,7 +3239,7 @@ module Google
2814
3239
 
2815
3240
  # The id of the collection members when type is Type.COLLECTION. Non-existent
2816
3241
  # product ids are allowed. The type of the members must be either Type.PRIMARY
2817
- # or Type.VARIANT otherwise and INVALID_ARGUMENT error is thrown. Should not set
3242
+ # or Type.VARIANT otherwise an INVALID_ARGUMENT error is thrown. Should not set
2818
3243
  # it for other types. A maximum of 1000 values are allowed. Otherwise, an
2819
3244
  # INVALID_ARGUMENT error is return.
2820
3245
  # Corresponds to the JSON property `collectionMemberIds`
@@ -3794,6 +4219,19 @@ module Google
3794
4219
  end
3795
4220
  end
3796
4221
 
4222
+ # Request for resuming training of a model.
4223
+ class GoogleCloudRetailV2alphaResumeModelRequest
4224
+ include Google::Apis::Core::Hashable
4225
+
4226
+ def initialize(**args)
4227
+ update!(**args)
4228
+ end
4229
+
4230
+ # Update properties of this object
4231
+ def update!(**args)
4232
+ end
4233
+ end
4234
+
3797
4235
  # A rule is a condition-action pair * A condition defines when a rule is to be
3798
4236
  # triggered. * An action specifies what occurs on that trigger. Currently only
3799
4237
  # boost rules are supported. Currently only supported by the search endpoint.
@@ -3821,13 +4259,13 @@ module Google
3821
4259
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleDoNotAssociateAction]
3822
4260
  attr_accessor :do_not_associate_action
3823
4261
 
3824
- # * Rule Condition: - No Condition provided is a global match. - 1 or more
3825
- # Condition provided is combined with OR operator. * Action Input: The request
3826
- # query and filter that will be applied to the retrieved products, in addition
3827
- # to any filters already provided with the SearchRequest. The AND operator is
3828
- # used to combine the query's existing filters with the filter rule(s). NOTE:
3829
- # May result in 0 results when filters conflict. * Action Result: Filters the
3830
- # returned objects to be ONLY those that passed the filter.
4262
+ # * Rule Condition: - No Condition.query_terms provided is a global match. - 1
4263
+ # or more Condition.query_terms provided is combined with OR operator. * Action
4264
+ # Input: The request query and filter that are applied to the retrieved products,
4265
+ # in addition to any filters already provided with the SearchRequest. The AND
4266
+ # operator is used to combine the query's existing filters with the filter rule(
4267
+ # s). NOTE: May result in 0 results when filters conflict. * Action Result:
4268
+ # Filters the returned objects to be ONLY those that passed the filter.
3831
4269
  # Corresponds to the JSON property `filterAction`
3832
4270
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleFilterAction]
3833
4271
  attr_accessor :filter_action
@@ -3847,8 +4285,8 @@ module Google
3847
4285
  attr_accessor :oneway_synonyms_action
3848
4286
 
3849
4287
  # Redirects a shopper to a specific page. * Rule Condition: - Must specify
3850
- # Condition. * Action Input: Request Query * Action Result: Redirects shopper to
3851
- # provided uri.
4288
+ # Condition.query_terms. * Action Input: Request Query * Action Result:
4289
+ # Redirects shopper to provided uri.
3852
4290
  # Corresponds to the JSON property `redirectAction`
3853
4291
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleRedirectAction]
3854
4292
  attr_accessor :redirect_action
@@ -3958,13 +4396,13 @@ module Google
3958
4396
  end
3959
4397
  end
3960
4398
 
3961
- # * Rule Condition: - No Condition provided is a global match. - 1 or more
3962
- # Condition provided is combined with OR operator. * Action Input: The request
3963
- # query and filter that will be applied to the retrieved products, in addition
3964
- # to any filters already provided with the SearchRequest. The AND operator is
3965
- # used to combine the query's existing filters with the filter rule(s). NOTE:
3966
- # May result in 0 results when filters conflict. * Action Result: Filters the
3967
- # returned objects to be ONLY those that passed the filter.
4399
+ # * Rule Condition: - No Condition.query_terms provided is a global match. - 1
4400
+ # or more Condition.query_terms provided is combined with OR operator. * Action
4401
+ # Input: The request query and filter that are applied to the retrieved products,
4402
+ # in addition to any filters already provided with the SearchRequest. The AND
4403
+ # operator is used to combine the query's existing filters with the filter rule(
4404
+ # s). NOTE: May result in 0 results when filters conflict. * Action Result:
4405
+ # Filters the returned objects to be ONLY those that passed the filter.
3968
4406
  class GoogleCloudRetailV2alphaRuleFilterAction
3969
4407
  include Google::Apis::Core::Hashable
3970
4408
 
@@ -4045,8 +4483,8 @@ module Google
4045
4483
  end
4046
4484
 
4047
4485
  # Redirects a shopper to a specific page. * Rule Condition: - Must specify
4048
- # Condition. * Action Input: Request Query * Action Result: Redirects shopper to
4049
- # provided uri.
4486
+ # Condition.query_terms. * Action Input: Request Query * Action Result:
4487
+ # Redirects shopper to provided uri.
4050
4488
  class GoogleCloudRetailV2alphaRuleRedirectAction
4051
4489
  include Google::Apis::Core::Hashable
4052
4490
 
@@ -4588,6 +5026,13 @@ module Google
4588
5026
  # @return [Array<String>]
4589
5027
  attr_accessor :restricted_values
4590
5028
 
5029
+ # Returns the min and max value for each numerical facet intervals. Ignored for
5030
+ # textual facets.
5031
+ # Corresponds to the JSON property `returnMinMax`
5032
+ # @return [Boolean]
5033
+ attr_accessor :return_min_max
5034
+ alias_method :return_min_max?, :return_min_max
5035
+
4591
5036
  def initialize(**args)
4592
5037
  update!(**args)
4593
5038
  end
@@ -4602,6 +5047,7 @@ module Google
4602
5047
  @prefixes = args[:prefixes] if args.key?(:prefixes)
4603
5048
  @query = args[:query] if args.key?(:query)
4604
5049
  @restricted_values = args[:restricted_values] if args.key?(:restricted_values)
5050
+ @return_min_max = args[:return_min_max] if args.key?(:return_min_max)
4605
5051
  end
4606
5052
  end
4607
5053
 
@@ -4692,7 +5138,7 @@ module Google
4692
5138
 
4693
5139
  # Contains the spell corrected query, if found. If the spell correction type is
4694
5140
  # AUTOMATIC, then the search results are based on corrected_query. Otherwise the
4695
- # original query will be used for search.
5141
+ # original query is used for search.
4696
5142
  # Corresponds to the JSON property `correctedQuery`
4697
5143
  # @return [String]
4698
5144
  attr_accessor :corrected_query
@@ -4804,6 +5250,18 @@ module Google
4804
5250
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaInterval]
4805
5251
  attr_accessor :interval
4806
5252
 
5253
+ # The maximum value in the FacetValue.interval. Only supported on numerical
5254
+ # facets and returned if SearchRequest.FacetSpec.FacetKey.return_min_max is true.
5255
+ # Corresponds to the JSON property `maxValue`
5256
+ # @return [Float]
5257
+ attr_accessor :max_value
5258
+
5259
+ # The minimum value in the FacetValue.interval. Only supported on numerical
5260
+ # facets and returned if SearchRequest.FacetSpec.FacetKey.return_min_max is true.
5261
+ # Corresponds to the JSON property `minValue`
5262
+ # @return [Float]
5263
+ attr_accessor :min_value
5264
+
4807
5265
  # Text value of a facet, such as "Black" for facet "colorFamilies".
4808
5266
  # Corresponds to the JSON property `value`
4809
5267
  # @return [String]
@@ -4817,6 +5275,8 @@ module Google
4817
5275
  def update!(**args)
4818
5276
  @count = args[:count] if args.key?(:count)
4819
5277
  @interval = args[:interval] if args.key?(:interval)
5278
+ @max_value = args[:max_value] if args.key?(:max_value)
5279
+ @min_value = args[:min_value] if args.key?(:min_value)
4820
5280
  @value = args[:value] if args.key?(:value)
4821
5281
  end
4822
5282
  end
@@ -4872,6 +5332,15 @@ module Google
4872
5332
  # @return [Hash<String,String>]
4873
5333
  attr_accessor :matching_variant_fields
4874
5334
 
5335
+ # Specifies previous events related to this product for this user based on
5336
+ # UserEvent with same SearchRequest.visitor_id or UserInfo.user_id. This is set
5337
+ # only when SearchRequest.PersonalizationSpec.mode is SearchRequest.
5338
+ # PersonalizationSpec.Mode.AUTO. Possible values: * `purchased`: Indicates that
5339
+ # this product has been purchased before.
5340
+ # Corresponds to the JSON property `personalLabels`
5341
+ # @return [Array<String>]
5342
+ attr_accessor :personal_labels
5343
+
4875
5344
  # Product captures all metadata information of items to be recommended or
4876
5345
  # searched.
4877
5346
  # Corresponds to the JSON property `product`
@@ -4904,6 +5373,7 @@ module Google
4904
5373
  @id = args[:id] if args.key?(:id)
4905
5374
  @matching_variant_count = args[:matching_variant_count] if args.key?(:matching_variant_count)
4906
5375
  @matching_variant_fields = args[:matching_variant_fields] if args.key?(:matching_variant_fields)
5376
+ @personal_labels = args[:personal_labels] if args.key?(:personal_labels)
4907
5377
  @product = args[:product] if args.key?(:product)
4908
5378
  @variant_rollup_values = args[:variant_rollup_values] if args.key?(:variant_rollup_values)
4909
5379
  end
@@ -5200,6 +5670,79 @@ module Google
5200
5670
  end
5201
5671
  end
5202
5672
 
5673
+ # Metadata related to transform user events operation.
5674
+ class GoogleCloudRetailV2alphaTransformedUserEventsMetadata
5675
+ include Google::Apis::Core::Hashable
5676
+
5677
+ # Count of entries in the source user events BigQuery table.
5678
+ # Corresponds to the JSON property `sourceEventsCount`
5679
+ # @return [Fixnum]
5680
+ attr_accessor :source_events_count
5681
+
5682
+ # Count of entries in the transformed user events BigQuery table, which could be
5683
+ # different from the actually imported number of user events.
5684
+ # Corresponds to the JSON property `transformedEventsCount`
5685
+ # @return [Fixnum]
5686
+ attr_accessor :transformed_events_count
5687
+
5688
+ def initialize(**args)
5689
+ update!(**args)
5690
+ end
5691
+
5692
+ # Update properties of this object
5693
+ def update!(**args)
5694
+ @source_events_count = args[:source_events_count] if args.key?(:source_events_count)
5695
+ @transformed_events_count = args[:transformed_events_count] if args.key?(:transformed_events_count)
5696
+ end
5697
+ end
5698
+
5699
+ # Metadata associated with a tune operation.
5700
+ class GoogleCloudRetailV2alphaTuneModelMetadata
5701
+ include Google::Apis::Core::Hashable
5702
+
5703
+ # The resource name of the model that this tune applies to. Format: projects/`
5704
+ # project_number`/locations/`location_id`/catalogs/`catalog_id`/models/`model_id`
5705
+ # Corresponds to the JSON property `model`
5706
+ # @return [String]
5707
+ attr_accessor :model
5708
+
5709
+ def initialize(**args)
5710
+ update!(**args)
5711
+ end
5712
+
5713
+ # Update properties of this object
5714
+ def update!(**args)
5715
+ @model = args[:model] if args.key?(:model)
5716
+ end
5717
+ end
5718
+
5719
+ # Request to manually start a tuning process now (instead of waiting for the
5720
+ # periodically scheduled tuning to happen).
5721
+ class GoogleCloudRetailV2alphaTuneModelRequest
5722
+ include Google::Apis::Core::Hashable
5723
+
5724
+ def initialize(**args)
5725
+ update!(**args)
5726
+ end
5727
+
5728
+ # Update properties of this object
5729
+ def update!(**args)
5730
+ end
5731
+ end
5732
+
5733
+ # Response associated with a tune operation.
5734
+ class GoogleCloudRetailV2alphaTuneModelResponse
5735
+ include Google::Apis::Core::Hashable
5736
+
5737
+ def initialize(**args)
5738
+ update!(**args)
5739
+ end
5740
+
5741
+ # Update properties of this object
5742
+ def update!(**args)
5743
+ end
5744
+ end
5745
+
5203
5746
  # UserEvent captures all metadata information Retail API needs to know about how
5204
5747
  # end users interact with customers' website.
5205
5748
  class GoogleCloudRetailV2alphaUserEvent
@@ -5622,6 +6165,31 @@ module Google
5622
6165
  end
5623
6166
  end
5624
6167
 
6168
+ # A BigQuery output result.
6169
+ class GoogleCloudRetailV2betaBigQueryOutputResult
6170
+ include Google::Apis::Core::Hashable
6171
+
6172
+ # The ID of a BigQuery Dataset.
6173
+ # Corresponds to the JSON property `datasetId`
6174
+ # @return [String]
6175
+ attr_accessor :dataset_id
6176
+
6177
+ # The ID of a BigQuery Table.
6178
+ # Corresponds to the JSON property `tableId`
6179
+ # @return [String]
6180
+ attr_accessor :table_id
6181
+
6182
+ def initialize(**args)
6183
+ update!(**args)
6184
+ end
6185
+
6186
+ # Update properties of this object
6187
+ def update!(**args)
6188
+ @dataset_id = args[:dataset_id] if args.key?(:dataset_id)
6189
+ @table_id = args[:table_id] if args.key?(:table_id)
6190
+ end
6191
+ end
6192
+
5625
6193
  # Configuration of destination for Export related errors.
5626
6194
  class GoogleCloudRetailV2betaExportErrorsConfig
5627
6195
  include Google::Apis::Core::Hashable
@@ -5686,6 +6254,11 @@ module Google
5686
6254
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2betaExportErrorsConfig]
5687
6255
  attr_accessor :errors_config
5688
6256
 
6257
+ # Output result.
6258
+ # Corresponds to the JSON property `outputResult`
6259
+ # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2betaOutputResult]
6260
+ attr_accessor :output_result
6261
+
5689
6262
  def initialize(**args)
5690
6263
  update!(**args)
5691
6264
  end
@@ -5694,6 +6267,7 @@ module Google
5694
6267
  def update!(**args)
5695
6268
  @error_samples = args[:error_samples] if args.key?(:error_samples)
5696
6269
  @errors_config = args[:errors_config] if args.key?(:errors_config)
6270
+ @output_result = args[:output_result] if args.key?(:output_result)
5697
6271
  end
5698
6272
  end
5699
6273
 
@@ -5713,6 +6287,11 @@ module Google
5713
6287
  # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2betaExportErrorsConfig]
5714
6288
  attr_accessor :errors_config
5715
6289
 
6290
+ # Output result.
6291
+ # Corresponds to the JSON property `outputResult`
6292
+ # @return [Google::Apis::RetailV2alpha::GoogleCloudRetailV2betaOutputResult]
6293
+ attr_accessor :output_result
6294
+
5716
6295
  def initialize(**args)
5717
6296
  update!(**args)
5718
6297
  end
@@ -5721,6 +6300,7 @@ module Google
5721
6300
  def update!(**args)
5722
6301
  @error_samples = args[:error_samples] if args.key?(:error_samples)
5723
6302
  @errors_config = args[:errors_config] if args.key?(:errors_config)
6303
+ @output_result = args[:output_result] if args.key?(:output_result)
5724
6304
  end
5725
6305
  end
5726
6306
 
@@ -5881,6 +6461,25 @@ module Google
5881
6461
  end
5882
6462
  end
5883
6463
 
6464
+ # Output result.
6465
+ class GoogleCloudRetailV2betaOutputResult
6466
+ include Google::Apis::Core::Hashable
6467
+
6468
+ # Export result in BigQuery.
6469
+ # Corresponds to the JSON property `bigqueryResult`
6470
+ # @return [Array<Google::Apis::RetailV2alpha::GoogleCloudRetailV2betaBigQueryOutputResult>]
6471
+ attr_accessor :bigquery_result
6472
+
6473
+ def initialize(**args)
6474
+ update!(**args)
6475
+ end
6476
+
6477
+ # Update properties of this object
6478
+ def update!(**args)
6479
+ @bigquery_result = args[:bigquery_result] if args.key?(:bigquery_result)
6480
+ end
6481
+ end
6482
+
5884
6483
  # Metadata related to the progress of the Purge operation. This will be returned
5885
6484
  # by the google.longrunning.Operation.metadata field.
5886
6485
  class GoogleCloudRetailV2betaPurgeMetadata