google-apis-retail_v2 0.48.0 → 0.51.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -279,6 +279,26 @@ module Google
279
279
  end
280
280
  end
281
281
 
282
+ # Request for CatalogService.AddCatalogAttribute method.
283
+ class GoogleCloudRetailV2AddCatalogAttributeRequest
284
+ include Google::Apis::Core::Hashable
285
+
286
+ # Catalog level attribute config for an attribute. For example, if customers
287
+ # want to enable/disable facet for a specific attribute.
288
+ # Corresponds to the JSON property `catalogAttribute`
289
+ # @return [Google::Apis::RetailV2::GoogleCloudRetailV2CatalogAttribute]
290
+ attr_accessor :catalog_attribute
291
+
292
+ def initialize(**args)
293
+ update!(**args)
294
+ end
295
+
296
+ # Update properties of this object
297
+ def update!(**args)
298
+ @catalog_attribute = args[:catalog_attribute] if args.key?(:catalog_attribute)
299
+ end
300
+ end
301
+
282
302
  # Metadata related to the progress of the AddFulfillmentPlaces operation.
283
303
  # Currently empty because there is no meaningful metadata populated from the
284
304
  # ProductService.AddFulfillmentPlaces method.
@@ -446,6 +466,42 @@ module Google
446
466
  end
447
467
  end
448
468
 
469
+ # Catalog level attribute config.
470
+ class GoogleCloudRetailV2AttributesConfig
471
+ include Google::Apis::Core::Hashable
472
+
473
+ # Output only. The AttributeConfigLevel used for this catalog.
474
+ # Corresponds to the JSON property `attributeConfigLevel`
475
+ # @return [String]
476
+ attr_accessor :attribute_config_level
477
+
478
+ # Enable attribute(s) config at catalog level. For example, indexable,
479
+ # dynamic_facetable, or searchable for each attribute. The key is catalog
480
+ # attribute's name. For example: `color`, `brands`, `attributes.custom_attribute`
481
+ # , such as `attributes.xyz`. The maximum number of catalog attributes allowed
482
+ # in a request is 1000.
483
+ # Corresponds to the JSON property `catalogAttributes`
484
+ # @return [Hash<String,Google::Apis::RetailV2::GoogleCloudRetailV2CatalogAttribute>]
485
+ attr_accessor :catalog_attributes
486
+
487
+ # Required. Immutable. The fully qualified resource name of the attribute config.
488
+ # Format: `projects/*/locations/*/catalogs/*/attributesConfig`
489
+ # Corresponds to the JSON property `name`
490
+ # @return [String]
491
+ attr_accessor :name
492
+
493
+ def initialize(**args)
494
+ update!(**args)
495
+ end
496
+
497
+ # Update properties of this object
498
+ def update!(**args)
499
+ @attribute_config_level = args[:attribute_config_level] if args.key?(:attribute_config_level)
500
+ @catalog_attributes = args[:catalog_attributes] if args.key?(:catalog_attributes)
501
+ @name = args[:name] if args.key?(:name)
502
+ end
503
+ end
504
+
449
505
  # An intended audience of the Product for whom it's sold.
450
506
  class GoogleCloudRetailV2Audience
451
507
  include Google::Apis::Core::Hashable
@@ -495,12 +551,11 @@ module Google
495
551
  # recommendations-ai/docs/upload-catalog#mc). Supported values for user events
496
552
  # imports: * `user_event` (default): One JSON UserEvent per line. * `
497
553
  # user_event_ga360`: The schema is available here: https://support.google.com/
498
- # analytics/answer/3437719. * `user_event_ga4`: This feature is in private
499
- # preview. Please contact the support team for importing Google Analytics 4
500
- # events. The schema is available here: https://support.google.com/analytics/
501
- # answer/7029846. Supported values for auto-completion imports: * `suggestions` (
502
- # default): One JSON completion suggestion per line. * `denylist`: One JSON deny
503
- # suggestion per line. * `allowlist`: One JSON allow suggestion per line.
554
+ # analytics/answer/3437719. * `user_event_ga4`: The schema is available here:
555
+ # https://support.google.com/analytics/answer/7029846. Supported values for auto-
556
+ # completion imports: * `suggestions` (default): One JSON completion suggestion
557
+ # per line. * `denylist`: One JSON deny suggestion per line. * `allowlist`: One
558
+ # JSON allow suggestion per line.
504
559
  # Corresponds to the JSON property `dataSchema`
505
560
  # @return [String]
506
561
  attr_accessor :data_schema
@@ -592,6 +647,79 @@ module Google
592
647
  end
593
648
  end
594
649
 
650
+ # Catalog level attribute config for an attribute. For example, if customers
651
+ # want to enable/disable facet for a specific attribute.
652
+ class GoogleCloudRetailV2CatalogAttribute
653
+ include Google::Apis::Core::Hashable
654
+
655
+ # If DYNAMIC_FACETABLE_ENABLED, attribute values are available for dynamic facet.
656
+ # Could only be DYNAMIC_FACETABLE_DISABLED if CatalogAttribute.indexable_option
657
+ # is INDEXABLE_DISABLED. Otherwise, an INVALID_ARGUMENT error is returned.
658
+ # Corresponds to the JSON property `dynamicFacetableOption`
659
+ # @return [String]
660
+ attr_accessor :dynamic_facetable_option
661
+
662
+ # Output only. Indicates whether this attribute has been used by any products. `
663
+ # True` if at least one Product is using this attribute in Product.attributes.
664
+ # Otherwise, this field is `False`. CatalogAttribute can be pre-loaded by using
665
+ # CatalogService.AddCatalogAttribute, CatalogService.ImportCatalogAttributes, or
666
+ # CatalogService.UpdateAttributesConfig APIs. This field is `False` for pre-
667
+ # loaded CatalogAttributes. Only pre-loaded CatalogAttributes that are neither
668
+ # in use by products nor predefined can be deleted. CatalogAttributes that are
669
+ # either in use by products or are predefined cannot be deleted; however, their
670
+ # configuration properties will reset to default values upon removal request.
671
+ # After catalog changes, it takes about 10 minutes for this field to update.
672
+ # Corresponds to the JSON property `inUse`
673
+ # @return [Boolean]
674
+ attr_accessor :in_use
675
+ alias_method :in_use?, :in_use
676
+
677
+ # When AttributesConfig.attribute_config_level is CATALOG_LEVEL_ATTRIBUTE_CONFIG,
678
+ # if INDEXABLE_ENABLED attribute values are indexed so that it can be filtered,
679
+ # faceted, or boosted in SearchService.Search.
680
+ # Corresponds to the JSON property `indexableOption`
681
+ # @return [String]
682
+ attr_accessor :indexable_option
683
+
684
+ # Required. Attribute name. For example: `color`, `brands`, `attributes.
685
+ # custom_attribute`, such as `attributes.xyz`. To be indexable, the attribute
686
+ # name can contain only alpha-numeric characters and underscores. For example,
687
+ # an attribute named `attributes.abc_xyz` can be indexed, but an attribute named
688
+ # `attributes.abc-xyz` cannot be indexed.
689
+ # Corresponds to the JSON property `key`
690
+ # @return [String]
691
+ attr_accessor :key
692
+
693
+ # When AttributesConfig.attribute_config_level is CATALOG_LEVEL_ATTRIBUTE_CONFIG,
694
+ # if SEARCHABLE_ENABLED, attribute values are searchable by text queries in
695
+ # SearchService.Search. If SEARCHABLE_ENABLED but attribute type is numerical,
696
+ # attribute values will not be searchable by text queries in SearchService.
697
+ # Search, as there are no text values associated to numerical attributes.
698
+ # Corresponds to the JSON property `searchableOption`
699
+ # @return [String]
700
+ attr_accessor :searchable_option
701
+
702
+ # Output only. The type of this attribute. This is derived from the attribute in
703
+ # Product.attributes.
704
+ # Corresponds to the JSON property `type`
705
+ # @return [String]
706
+ attr_accessor :type
707
+
708
+ def initialize(**args)
709
+ update!(**args)
710
+ end
711
+
712
+ # Update properties of this object
713
+ def update!(**args)
714
+ @dynamic_facetable_option = args[:dynamic_facetable_option] if args.key?(:dynamic_facetable_option)
715
+ @in_use = args[:in_use] if args.key?(:in_use)
716
+ @indexable_option = args[:indexable_option] if args.key?(:indexable_option)
717
+ @key = args[:key] if args.key?(:key)
718
+ @searchable_option = args[:searchable_option] if args.key?(:searchable_option)
719
+ @type = args[:type] if args.key?(:type)
720
+ end
721
+ end
722
+
595
723
  # The color information of a Product.
596
724
  class GoogleCloudRetailV2ColorInfo
597
725
  include Google::Apis::Core::Hashable
@@ -655,7 +783,7 @@ module Google
655
783
  # CompleteQueryRequest.visitor_id field is set and UserEvent is imported. The
656
784
  # recent searches satisfy the follow rules: * They are ordered from latest to
657
785
  # oldest. * They are matched with CompleteQueryRequest.query case insensitively.
658
- # * They are transformed to lower cases. * They are UTF-8 safe. Recent searches
786
+ # * They are transformed to lower case. * They are UTF-8 safe. Recent searches
659
787
  # are deduplicated. More recent searches will be reserved when duplication
660
788
  # happens.
661
789
  # Corresponds to the JSON property `recentSearchResults`
@@ -721,6 +849,105 @@ module Google
721
849
  end
722
850
  end
723
851
 
852
+ # Catalog level autocomplete config for customers to customize autocomplete
853
+ # feature's settings.
854
+ class GoogleCloudRetailV2CompletionConfig
855
+ include Google::Apis::Core::Hashable
856
+
857
+ # The input config source for completion data.
858
+ # Corresponds to the JSON property `allowlistInputConfig`
859
+ # @return [Google::Apis::RetailV2::GoogleCloudRetailV2CompletionDataInputConfig]
860
+ attr_accessor :allowlist_input_config
861
+
862
+ # If set to true, the auto learning function is enabled. Auto learning uses user
863
+ # data to generate suggestions using ML techniques. Default value is false. Only
864
+ # after enabling auto learning can users use `cloud-retail` data in
865
+ # CompleteQueryRequest.
866
+ # Corresponds to the JSON property `autoLearning`
867
+ # @return [Boolean]
868
+ attr_accessor :auto_learning
869
+ alias_method :auto_learning?, :auto_learning
870
+
871
+ # The input config source for completion data.
872
+ # Corresponds to the JSON property `denylistInputConfig`
873
+ # @return [Google::Apis::RetailV2::GoogleCloudRetailV2CompletionDataInputConfig]
874
+ attr_accessor :denylist_input_config
875
+
876
+ # Output only. Name of the LRO corresponding to the latest allowlist import. Can
877
+ # use GetOperation API to retrieve the latest state of the Long Running
878
+ # Operation.
879
+ # Corresponds to the JSON property `lastAllowlistImportOperation`
880
+ # @return [String]
881
+ attr_accessor :last_allowlist_import_operation
882
+
883
+ # Output only. Name of the LRO corresponding to the latest denylist import. Can
884
+ # use GetOperation API to retrieve the latest state of the Long Running
885
+ # Operation.
886
+ # Corresponds to the JSON property `lastDenylistImportOperation`
887
+ # @return [String]
888
+ attr_accessor :last_denylist_import_operation
889
+
890
+ # Output only. Name of the LRO corresponding to the latest suggestion terms list
891
+ # import. Can use GetOperation API to retrieve the latest state of the Long
892
+ # Running Operation.
893
+ # Corresponds to the JSON property `lastSuggestionsImportOperation`
894
+ # @return [String]
895
+ attr_accessor :last_suggestions_import_operation
896
+
897
+ # Specifies the matching order for autocomplete suggestions, e.g., a query
898
+ # consisting of 'sh' with 'out-of-order' specified would suggest "women's shoes",
899
+ # whereas a query of 'red s' with 'exact-prefix' specified would suggest "red
900
+ # shoes". Currently supported values: * 'out-of-order' * 'exact-prefix' Default
901
+ # value: 'exact-prefix'.
902
+ # Corresponds to the JSON property `matchingOrder`
903
+ # @return [String]
904
+ attr_accessor :matching_order
905
+
906
+ # The maximum number of autocomplete suggestions returned per term. Default
907
+ # value is 20. If left unset or set to 0, then will fallback to default value.
908
+ # Value range is 1 to 20.
909
+ # Corresponds to the JSON property `maxSuggestions`
910
+ # @return [Fixnum]
911
+ attr_accessor :max_suggestions
912
+
913
+ # The minimum number of characters needed to be typed in order to get
914
+ # suggestions. Default value is 2. If left unset or set to 0, then will fallback
915
+ # to default value. Value range is 1 to 20.
916
+ # Corresponds to the JSON property `minPrefixLength`
917
+ # @return [Fixnum]
918
+ attr_accessor :min_prefix_length
919
+
920
+ # Required. Immutable. Fully qualified name `projects/*/locations/*/catalogs/*/
921
+ # completionConfig`
922
+ # Corresponds to the JSON property `name`
923
+ # @return [String]
924
+ attr_accessor :name
925
+
926
+ # The input config source for completion data.
927
+ # Corresponds to the JSON property `suggestionsInputConfig`
928
+ # @return [Google::Apis::RetailV2::GoogleCloudRetailV2CompletionDataInputConfig]
929
+ attr_accessor :suggestions_input_config
930
+
931
+ def initialize(**args)
932
+ update!(**args)
933
+ end
934
+
935
+ # Update properties of this object
936
+ def update!(**args)
937
+ @allowlist_input_config = args[:allowlist_input_config] if args.key?(:allowlist_input_config)
938
+ @auto_learning = args[:auto_learning] if args.key?(:auto_learning)
939
+ @denylist_input_config = args[:denylist_input_config] if args.key?(:denylist_input_config)
940
+ @last_allowlist_import_operation = args[:last_allowlist_import_operation] if args.key?(:last_allowlist_import_operation)
941
+ @last_denylist_import_operation = args[:last_denylist_import_operation] if args.key?(:last_denylist_import_operation)
942
+ @last_suggestions_import_operation = args[:last_suggestions_import_operation] if args.key?(:last_suggestions_import_operation)
943
+ @matching_order = args[:matching_order] if args.key?(:matching_order)
944
+ @max_suggestions = args[:max_suggestions] if args.key?(:max_suggestions)
945
+ @min_prefix_length = args[:min_prefix_length] if args.key?(:min_prefix_length)
946
+ @name = args[:name] if args.key?(:name)
947
+ @suggestions_input_config = args[:suggestions_input_config] if args.key?(:suggestions_input_config)
948
+ end
949
+ end
950
+
724
951
  # The input config source for completion data.
725
952
  class GoogleCloudRetailV2CompletionDataInputConfig
726
953
  include Google::Apis::Core::Hashable
@@ -866,7 +1093,7 @@ module Google
866
1093
  end
867
1094
  end
868
1095
 
869
- # Google Cloud Storage location for input content. format.
1096
+ # Google Cloud Storage location for input content.
870
1097
  class GoogleCloudRetailV2GcsSource
871
1098
  include Google::Apis::Core::Hashable
872
1099
 
@@ -877,8 +1104,8 @@ module Google
877
1104
  # recommendations-ai/docs/upload-catalog#mc). Supported values for user events
878
1105
  # imports: * `user_event` (default): One JSON UserEvent per line. * `
879
1106
  # user_event_ga360`: Using https://support.google.com/analytics/answer/3437719.
880
- # Supported values for control imports: * 'control' (default): One JSON Control
881
- # per line. Supported values for catalog attribute imports: * 'catalog_attribute'
1107
+ # Supported values for control imports: * `control` (default): One JSON Control
1108
+ # per line. Supported values for catalog attribute imports: * `catalog_attribute`
882
1109
  # (default): One CSV CatalogAttribute per line.
883
1110
  # Corresponds to the JSON property `dataSchema`
884
1111
  # @return [String]
@@ -988,9 +1215,9 @@ module Google
988
1215
  attr_accessor :input_config
989
1216
 
990
1217
  # Pub/Sub topic for receiving notification. If this field is set, when the
991
- # import is finished, a notification will be sent to specified Pub/Sub topic.
992
- # The message data will be JSON string of a Operation. Format of the Pub/Sub
993
- # topic is `projects/`project`/topics/`topic``.
1218
+ # import is finished, a notification is sent to specified Pub/Sub topic. The
1219
+ # message data is JSON string of a Operation. Format of the Pub/Sub topic is `
1220
+ # projects/`project`/topics/`topic``.
994
1221
  # Corresponds to the JSON property `notificationPubsubTopic`
995
1222
  # @return [String]
996
1223
  attr_accessor :notification_pubsub_topic
@@ -1032,8 +1259,8 @@ module Google
1032
1259
  include Google::Apis::Core::Hashable
1033
1260
 
1034
1261
  # Google Cloud Storage prefix for import errors. This must be an empty, existing
1035
- # Cloud Storage directory. Import errors will be written to sharded files in
1036
- # this directory, one per line, as a JSON-encoded `google.rpc.Status` message.
1262
+ # Cloud Storage directory. Import errors are written to sharded files in this
1263
+ # directory, one per line, as a JSON-encoded `google.rpc.Status` message.
1037
1264
  # Corresponds to the JSON property `gcsPrefix`
1038
1265
  # @return [String]
1039
1266
  attr_accessor :gcs_prefix
@@ -1048,8 +1275,8 @@ module Google
1048
1275
  end
1049
1276
  end
1050
1277
 
1051
- # Metadata related to the progress of the Import operation. This will be
1052
- # returned by the google.longrunning.Operation.metadata field.
1278
+ # Metadata related to the progress of the Import operation. This is returned by
1279
+ # the google.longrunning.Operation.metadata field.
1053
1280
  class GoogleCloudRetailV2ImportMetadata
1054
1281
  include Google::Apis::Core::Hashable
1055
1282
 
@@ -1064,9 +1291,9 @@ module Google
1064
1291
  attr_accessor :failure_count
1065
1292
 
1066
1293
  # Pub/Sub topic for receiving notification. If this field is set, when the
1067
- # import is finished, a notification will be sent to specified Pub/Sub topic.
1068
- # The message data will be JSON string of a Operation. Format of the Pub/Sub
1069
- # topic is `projects/`project`/topics/`topic``.
1294
+ # import is finished, a notification is sent to specified Pub/Sub topic. The
1295
+ # message data is JSON string of a Operation. Format of the Pub/Sub topic is `
1296
+ # projects/`project`/topics/`topic``.
1070
1297
  # Corresponds to the JSON property `notificationPubsubTopic`
1071
1298
  # @return [String]
1072
1299
  attr_accessor :notification_pubsub_topic
@@ -1117,14 +1344,12 @@ module Google
1117
1344
  attr_accessor :input_config
1118
1345
 
1119
1346
  # Full Pub/Sub topic name for receiving notification. If this field is set, when
1120
- # the import is finished, a notification will be sent to specified Pub/Sub topic.
1121
- # The message data will be JSON string of a Operation. Format of the Pub/Sub
1122
- # topic is `projects/`project`/topics/`topic``. It has to be within the same
1123
- # project as ImportProductsRequest.parent. Make sure that both `cloud-retail-
1124
- # customer-data-access@system.gserviceaccount.com` and `service-@gcp-sa-retail.
1125
- # iam.gserviceaccount.com` have the `pubsub.topics.publish` IAM permission on
1126
- # the topic. Only supported when ImportProductsRequest.reconciliation_mode is
1127
- # set to `FULL`.
1347
+ # the import is finished, a notification is sent to specified Pub/Sub topic. The
1348
+ # message data is JSON string of a Operation. Format of the Pub/Sub topic is `
1349
+ # projects/`project`/topics/`topic``. It has to be within the same project as
1350
+ # ImportProductsRequest.parent. Make sure that `service-@gcp-sa-retail.iam.
1351
+ # gserviceaccount.com` has the `pubsub.topics.publish` IAM permission on the
1352
+ # topic.
1128
1353
  # Corresponds to the JSON property `notificationPubsubTopic`
1129
1354
  # @return [String]
1130
1355
  attr_accessor :notification_pubsub_topic
@@ -1140,8 +1365,8 @@ module Google
1140
1365
  # @return [String]
1141
1366
  attr_accessor :request_id
1142
1367
 
1143
- # Indicates which fields in the provided imported 'products' to update. If not
1144
- # set, will by default update all fields.
1368
+ # Indicates which fields in the provided imported `products` to update. If not
1369
+ # set, all fields are updated.
1145
1370
  # Corresponds to the JSON property `updateMask`
1146
1371
  # @return [String]
1147
1372
  attr_accessor :update_mask
@@ -1433,15 +1658,15 @@ module Google
1433
1658
  # @return [Hash<String,String>]
1434
1659
  attr_accessor :labels
1435
1660
 
1436
- # Maximum number of results to return per page. Set this property to the number
1437
- # of prediction results needed. If zero, the service will choose a reasonable
1661
+ # Maximum number of results to return. Set this property to the number of
1662
+ # prediction results needed. If zero, the service will choose a reasonable
1438
1663
  # default. The maximum allowed value is 100. Values above 100 will be coerced to
1439
1664
  # 100.
1440
1665
  # Corresponds to the JSON property `pageSize`
1441
1666
  # @return [Fixnum]
1442
1667
  attr_accessor :page_size
1443
1668
 
1444
- # This field is not used for now, leave it unset.
1669
+ # This field is not used; leave it unset.
1445
1670
  # Corresponds to the JSON property `pageToken`
1446
1671
  # @return [String]
1447
1672
  attr_accessor :page_token
@@ -1748,7 +1973,7 @@ module Google
1748
1973
 
1749
1974
  # The id of the collection members when type is Type.COLLECTION. Non-existent
1750
1975
  # product ids are allowed. The type of the members must be either Type.PRIMARY
1751
- # or Type.VARIANT otherwise and INVALID_ARGUMENT error is thrown. Should not set
1976
+ # or Type.VARIANT otherwise an INVALID_ARGUMENT error is thrown. Should not set
1752
1977
  # it for other types. A maximum of 1000 values are allowed. Otherwise, an
1753
1978
  # INVALID_ARGUMENT error is return.
1754
1979
  # Corresponds to the JSON property `collectionMemberIds`
@@ -2097,7 +2322,7 @@ module Google
2097
2322
  # @return [Google::Apis::RetailV2::GoogleCloudRetailV2BigQuerySource]
2098
2323
  attr_accessor :big_query_source
2099
2324
 
2100
- # Google Cloud Storage location for input content. format.
2325
+ # Google Cloud Storage location for input content.
2101
2326
  # Corresponds to the JSON property `gcsSource`
2102
2327
  # @return [Google::Apis::RetailV2::GoogleCloudRetailV2GcsSource]
2103
2328
  attr_accessor :gcs_source
@@ -2400,6 +2625,25 @@ module Google
2400
2625
  end
2401
2626
  end
2402
2627
 
2628
+ # Request for CatalogService.RemoveCatalogAttribute method.
2629
+ class GoogleCloudRetailV2RemoveCatalogAttributeRequest
2630
+ include Google::Apis::Core::Hashable
2631
+
2632
+ # Required. The attribute name key of the CatalogAttribute to remove.
2633
+ # Corresponds to the JSON property `key`
2634
+ # @return [String]
2635
+ attr_accessor :key
2636
+
2637
+ def initialize(**args)
2638
+ update!(**args)
2639
+ end
2640
+
2641
+ # Update properties of this object
2642
+ def update!(**args)
2643
+ @key = args[:key] if args.key?(:key)
2644
+ end
2645
+ end
2646
+
2403
2647
  # Metadata related to the progress of the RemoveFulfillmentPlaces operation.
2404
2648
  # Currently empty because there is no meaningful metadata populated from the
2405
2649
  # ProductService.RemoveFulfillmentPlaces method.
@@ -3010,6 +3254,13 @@ module Google
3010
3254
  # @return [Array<String>]
3011
3255
  attr_accessor :restricted_values
3012
3256
 
3257
+ # Returns the min and max value for each numerical facet intervals. Ignored for
3258
+ # textual facets.
3259
+ # Corresponds to the JSON property `returnMinMax`
3260
+ # @return [Boolean]
3261
+ attr_accessor :return_min_max
3262
+ alias_method :return_min_max?, :return_min_max
3263
+
3013
3264
  def initialize(**args)
3014
3265
  update!(**args)
3015
3266
  end
@@ -3024,6 +3275,7 @@ module Google
3024
3275
  @prefixes = args[:prefixes] if args.key?(:prefixes)
3025
3276
  @query = args[:query] if args.key?(:query)
3026
3277
  @restricted_values = args[:restricted_values] if args.key?(:restricted_values)
3278
+ @return_min_max = args[:return_min_max] if args.key?(:return_min_max)
3027
3279
  end
3028
3280
  end
3029
3281
 
@@ -3226,6 +3478,18 @@ module Google
3226
3478
  # @return [Google::Apis::RetailV2::GoogleCloudRetailV2Interval]
3227
3479
  attr_accessor :interval
3228
3480
 
3481
+ # The maximum value in the FacetValue.interval. Only supported on numerical
3482
+ # facets and returned if SearchRequest.FacetSpec.FacetKey.return_min_max is true.
3483
+ # Corresponds to the JSON property `maxValue`
3484
+ # @return [Float]
3485
+ attr_accessor :max_value
3486
+
3487
+ # The minimum value in the FacetValue.interval. Only supported on numerical
3488
+ # facets and returned if SearchRequest.FacetSpec.FacetKey.return_min_max is true.
3489
+ # Corresponds to the JSON property `minValue`
3490
+ # @return [Float]
3491
+ attr_accessor :min_value
3492
+
3229
3493
  # Text value of a facet, such as "Black" for facet "colorFamilies".
3230
3494
  # Corresponds to the JSON property `value`
3231
3495
  # @return [String]
@@ -3239,6 +3503,8 @@ module Google
3239
3503
  def update!(**args)
3240
3504
  @count = args[:count] if args.key?(:count)
3241
3505
  @interval = args[:interval] if args.key?(:interval)
3506
+ @max_value = args[:max_value] if args.key?(:max_value)
3507
+ @min_value = args[:min_value] if args.key?(:min_value)
3242
3508
  @value = args[:value] if args.key?(:value)
3243
3509
  end
3244
3510
  end
@@ -3294,6 +3560,15 @@ module Google
3294
3560
  # @return [Hash<String,String>]
3295
3561
  attr_accessor :matching_variant_fields
3296
3562
 
3563
+ # Specifies previous events related to this product for this user based on
3564
+ # UserEvent with same SearchRequest.visitor_id or UserInfo.user_id. This is set
3565
+ # only when SearchRequest.PersonalizationSpec.mode is SearchRequest.
3566
+ # PersonalizationSpec.Mode.AUTO. Possible values: * `purchased`: Indicates that
3567
+ # this product has been purchased before.
3568
+ # Corresponds to the JSON property `personalLabels`
3569
+ # @return [Array<String>]
3570
+ attr_accessor :personal_labels
3571
+
3297
3572
  # Product captures all metadata information of items to be recommended or
3298
3573
  # searched.
3299
3574
  # Corresponds to the JSON property `product`
@@ -3326,6 +3601,7 @@ module Google
3326
3601
  @id = args[:id] if args.key?(:id)
3327
3602
  @matching_variant_count = args[:matching_variant_count] if args.key?(:matching_variant_count)
3328
3603
  @matching_variant_fields = args[:matching_variant_fields] if args.key?(:matching_variant_fields)
3604
+ @personal_labels = args[:personal_labels] if args.key?(:personal_labels)
3329
3605
  @product = args[:product] if args.key?(:product)
3330
3606
  @variant_rollup_values = args[:variant_rollup_values] if args.key?(:variant_rollup_values)
3331
3607
  end
@@ -3727,7 +4003,7 @@ module Google
3727
4003
  # @return [Google::Apis::RetailV2::GoogleCloudRetailV2BigQuerySource]
3728
4004
  attr_accessor :big_query_source
3729
4005
 
3730
- # Google Cloud Storage location for input content. format.
4006
+ # Google Cloud Storage location for input content.
3731
4007
  # Corresponds to the JSON property `gcsSource`
3732
4008
  # @return [Google::Apis::RetailV2::GoogleCloudRetailV2GcsSource]
3733
4009
  attr_accessor :gcs_source
@@ -4052,8 +4328,8 @@ module Google
4052
4328
  include Google::Apis::Core::Hashable
4053
4329
 
4054
4330
  # Google Cloud Storage prefix for import errors. This must be an empty, existing
4055
- # Cloud Storage directory. Import errors will be written to sharded files in
4056
- # this directory, one per line, as a JSON-encoded `google.rpc.Status` message.
4331
+ # Cloud Storage directory. Import errors are written to sharded files in this
4332
+ # directory, one per line, as a JSON-encoded `google.rpc.Status` message.
4057
4333
  # Corresponds to the JSON property `gcsPrefix`
4058
4334
  # @return [String]
4059
4335
  attr_accessor :gcs_prefix
@@ -4068,8 +4344,8 @@ module Google
4068
4344
  end
4069
4345
  end
4070
4346
 
4071
- # Metadata related to the progress of the Import operation. This will be
4072
- # returned by the google.longrunning.Operation.metadata field.
4347
+ # Metadata related to the progress of the Import operation. This is returned by
4348
+ # the google.longrunning.Operation.metadata field.
4073
4349
  class GoogleCloudRetailV2alphaImportMetadata
4074
4350
  include Google::Apis::Core::Hashable
4075
4351
 
@@ -4084,9 +4360,9 @@ module Google
4084
4360
  attr_accessor :failure_count
4085
4361
 
4086
4362
  # Pub/Sub topic for receiving notification. If this field is set, when the
4087
- # import is finished, a notification will be sent to specified Pub/Sub topic.
4088
- # The message data will be JSON string of a Operation. Format of the Pub/Sub
4089
- # topic is `projects/`project`/topics/`topic``.
4363
+ # import is finished, a notification is sent to specified Pub/Sub topic. The
4364
+ # message data is JSON string of a Operation. Format of the Pub/Sub topic is `
4365
+ # projects/`project`/topics/`topic``.
4090
4366
  # Corresponds to the JSON property `notificationPubsubTopic`
4091
4367
  # @return [String]
4092
4368
  attr_accessor :notification_pubsub_topic
@@ -4101,6 +4377,11 @@ module Google
4101
4377
  # @return [Fixnum]
4102
4378
  attr_accessor :success_count
4103
4379
 
4380
+ # Metadata related to transform user events operation.
4381
+ # Corresponds to the JSON property `transformedUserEventsMetadata`
4382
+ # @return [Google::Apis::RetailV2::GoogleCloudRetailV2alphaTransformedUserEventsMetadata]
4383
+ attr_accessor :transformed_user_events_metadata
4384
+
4104
4385
  # Operation last update time. If the operation is done, this is also the finish
4105
4386
  # time.
4106
4387
  # Corresponds to the JSON property `updateTime`
@@ -4118,6 +4399,7 @@ module Google
4118
4399
  @notification_pubsub_topic = args[:notification_pubsub_topic] if args.key?(:notification_pubsub_topic)
4119
4400
  @request_id = args[:request_id] if args.key?(:request_id)
4120
4401
  @success_count = args[:success_count] if args.key?(:success_count)
4402
+ @transformed_user_events_metadata = args[:transformed_user_events_metadata] if args.key?(:transformed_user_events_metadata)
4121
4403
  @update_time = args[:update_time] if args.key?(:update_time)
4122
4404
  end
4123
4405
  end
@@ -4185,7 +4467,7 @@ module Google
4185
4467
 
4186
4468
  # Metadata that describes the training and serving parameters of a Model. A
4187
4469
  # Model can be associated with a ServingConfig and then queried through the
4188
- # Predict api.
4470
+ # Predict API.
4189
4471
  class GoogleCloudRetailV2alphaModel
4190
4472
  include Google::Apis::Core::Hashable
4191
4473
 
@@ -4194,23 +4476,23 @@ module Google
4194
4476
  # @return [String]
4195
4477
  attr_accessor :create_time
4196
4478
 
4197
- # Output only. The state of data requirements for this model: DATA_OK and
4198
- # DATA_ERROR. Recommendation model cannot be trained if the data is in
4199
- # DATA_ERROR state. Recommendation model can have DATA_ERROR state even if
4200
- # serving state is ACTIVE: models were trained successfully before, but cannot
4479
+ # Output only. The state of data requirements for this model: `DATA_OK` and `
4480
+ # DATA_ERROR`. Recommendation model cannot be trained if the data is in `
4481
+ # DATA_ERROR` state. Recommendation model can have `DATA_ERROR` state even if
4482
+ # serving state is `ACTIVE`: models were trained successfully before, but cannot
4201
4483
  # be refreshed because model no longer has sufficient data for training.
4202
4484
  # Corresponds to the JSON property `dataState`
4203
4485
  # @return [String]
4204
4486
  attr_accessor :data_state
4205
4487
 
4206
4488
  # Required. The display name of the model. Should be human readable, used to
4207
- # display Recommendation Models in the Retail Pantheon Dashboard. UTF-8 encoded
4208
- # string with limit of 1024 characters.
4489
+ # display Recommendation Models in the Retail Cloud Console Dashboard. UTF-8
4490
+ # encoded string with limit of 1024 characters.
4209
4491
  # Corresponds to the JSON property `displayName`
4210
4492
  # @return [String]
4211
4493
  attr_accessor :display_name
4212
4494
 
4213
- # Optional. If RECOMMENDATIONS_FILTERING_ENABLED, recommendation filtering by
4495
+ # Optional. If `RECOMMENDATIONS_FILTERING_ENABLED`, recommendation filtering by
4214
4496
  # attributes is enabled for the model.
4215
4497
  # Corresponds to the JSON property `filteringOption`
4216
4498
  # @return [String]
@@ -4221,9 +4503,10 @@ module Google
4221
4503
  # @return [String]
4222
4504
  attr_accessor :last_tune_time
4223
4505
 
4224
- # Required. The fully qualified resource name of the model. Format: projects/`
4506
+ # Required. The fully qualified resource name of the model. Format: `projects/`
4225
4507
  # project_number`/locations/`location_id`/catalogs/`catalog_id`/models/`model_id`
4226
- # catalog_id has char limit of 50. recommendation_model_id has char limit of 40.
4508
+ # ` catalog_id has char limit of 50. recommendation_model_id has char limit of
4509
+ # 40.
4227
4510
  # Corresponds to the JSON property `name`
4228
4511
  # @return [String]
4229
4512
  attr_accessor :name
@@ -4246,8 +4529,8 @@ module Google
4246
4529
  attr_accessor :page_optimization_config
4247
4530
 
4248
4531
  # Optional. The state of periodic tuning. The period we use is 3 months - to do
4249
- # a one-off tune earlier use the TuneModel method. Default value is
4250
- # PERIODIC_TUNING_ENABLED.
4532
+ # a one-off tune earlier use the `TuneModel` method. Default value is `
4533
+ # PERIODIC_TUNING_ENABLED`.
4251
4534
  # Corresponds to the JSON property `periodicTuningState`
4252
4535
  # @return [String]
4253
4536
  attr_accessor :periodic_tuning_state
@@ -4258,16 +4541,16 @@ module Google
4258
4541
  # @return [Array<Google::Apis::RetailV2::GoogleCloudRetailV2alphaModelServingConfigList>]
4259
4542
  attr_accessor :serving_config_lists
4260
4543
 
4261
- # Output only. The serving state of the model: ACTIVE, NOT_ACTIVE.
4544
+ # Output only. The serving state of the model: `ACTIVE`, `NOT_ACTIVE`.
4262
4545
  # Corresponds to the JSON property `servingState`
4263
4546
  # @return [String]
4264
4547
  attr_accessor :serving_state
4265
4548
 
4266
- # Optional. The training state that the model is in (e.g. TRAINING or PAUSED).
4267
- # Since part of the cost of running the service is frequency of training - this
4268
- # can be used to determine when to train model in order to control cost. If not
4269
- # specified: the default value for CreateModel method is TRAINING. the default
4270
- # value for UpdateModel method is to keep the state the same as before.
4549
+ # Optional. The training state that the model is in (e.g. `TRAINING` or `PAUSED`)
4550
+ # . Since part of the cost of running the service is frequency of training -
4551
+ # this can be used to determine when to train model in order to control cost. If
4552
+ # not specified: the default value for `CreateModel` method is `TRAINING`. The
4553
+ # default value for `UpdateModel` method is to keep the state the same as before.
4271
4554
  # Corresponds to the JSON property `trainingState`
4272
4555
  # @return [String]
4273
4556
  attr_accessor :training_state
@@ -4281,7 +4564,7 @@ module Google
4281
4564
 
4282
4565
  # Required. The type of model e.g. `home-page`. Currently supported values: `
4283
4566
  # recommended-for-you`, `others-you-may-like`, `frequently-bought-together`, `
4284
- # page-optimization`, 'similar-items', 'buy-it-again', `recently-viewed`(
4567
+ # page-optimization`, `similar-items`, `buy-it-again`, and `recently-viewed`(
4285
4568
  # readonly value).
4286
4569
  # Corresponds to the JSON property `type`
4287
4570
  # @return [String]
@@ -4366,9 +4649,10 @@ module Google
4366
4649
  class GoogleCloudRetailV2alphaModelPageOptimizationConfigCandidate
4367
4650
  include Google::Apis::Core::Hashable
4368
4651
 
4369
- # This has to be a valid ServingConfig identifier. e.g. for a ServingConfig with
4370
- # full name: `projects/*/locations/global/catalogs/default_catalog/
4371
- # servingConfigs/my_candidate_config` this would be 'my_candidate_config'
4652
+ # This has to be a valid ServingConfig identifier. For example, for a
4653
+ # ServingConfig with full name: `projects/*/locations/global/catalogs/
4654
+ # default_catalog/servingConfigs/my_candidate_config`, this would be `
4655
+ # my_candidate_config`.
4372
4656
  # Corresponds to the JSON property `servingConfigId`
4373
4657
  # @return [String]
4374
4658
  attr_accessor :serving_config_id
@@ -4415,13 +4699,13 @@ module Google
4415
4699
  end
4416
4700
  end
4417
4701
 
4418
- # Represents an ordered combination of valid serving configs, which / may be
4419
- # used for PAGE_OPTIMIZATION recommendations.
4702
+ # Represents an ordered combination of valid serving configs, which can be used
4703
+ # for `PAGE_OPTIMIZATION` recommendations.
4420
4704
  class GoogleCloudRetailV2alphaModelServingConfigList
4421
4705
  include Google::Apis::Core::Hashable
4422
4706
 
4423
- # Optional. A set of valid serving configs that may be used for
4424
- # PAGE_OPTIMIZATION.
4707
+ # Optional. A set of valid serving configs that may be used for `
4708
+ # PAGE_OPTIMIZATION`.
4425
4709
  # Corresponds to the JSON property `servingConfigIds`
4426
4710
  # @return [Array<String>]
4427
4711
  attr_accessor :serving_config_ids
@@ -4679,6 +4963,32 @@ module Google
4679
4963
  end
4680
4964
  end
4681
4965
 
4966
+ # Metadata related to transform user events operation.
4967
+ class GoogleCloudRetailV2alphaTransformedUserEventsMetadata
4968
+ include Google::Apis::Core::Hashable
4969
+
4970
+ # Count of entries in the source user events BigQuery table.
4971
+ # Corresponds to the JSON property `sourceEventsCount`
4972
+ # @return [Fixnum]
4973
+ attr_accessor :source_events_count
4974
+
4975
+ # Count of entries in the transformed user events BigQuery table, which could be
4976
+ # different from the actually imported number of user events.
4977
+ # Corresponds to the JSON property `transformedEventsCount`
4978
+ # @return [Fixnum]
4979
+ attr_accessor :transformed_events_count
4980
+
4981
+ def initialize(**args)
4982
+ update!(**args)
4983
+ end
4984
+
4985
+ # Update properties of this object
4986
+ def update!(**args)
4987
+ @source_events_count = args[:source_events_count] if args.key?(:source_events_count)
4988
+ @transformed_events_count = args[:transformed_events_count] if args.key?(:transformed_events_count)
4989
+ end
4990
+ end
4991
+
4682
4992
  # Metadata associated with a tune operation.
4683
4993
  class GoogleCloudRetailV2alphaTuneModelMetadata
4684
4994
  include Google::Apis::Core::Hashable
@@ -4964,8 +5274,8 @@ module Google
4964
5274
  include Google::Apis::Core::Hashable
4965
5275
 
4966
5276
  # Google Cloud Storage prefix for import errors. This must be an empty, existing
4967
- # Cloud Storage directory. Import errors will be written to sharded files in
4968
- # this directory, one per line, as a JSON-encoded `google.rpc.Status` message.
5277
+ # Cloud Storage directory. Import errors are written to sharded files in this
5278
+ # directory, one per line, as a JSON-encoded `google.rpc.Status` message.
4969
5279
  # Corresponds to the JSON property `gcsPrefix`
4970
5280
  # @return [String]
4971
5281
  attr_accessor :gcs_prefix
@@ -4980,8 +5290,8 @@ module Google
4980
5290
  end
4981
5291
  end
4982
5292
 
4983
- # Metadata related to the progress of the Import operation. This will be
4984
- # returned by the google.longrunning.Operation.metadata field.
5293
+ # Metadata related to the progress of the Import operation. This is returned by
5294
+ # the google.longrunning.Operation.metadata field.
4985
5295
  class GoogleCloudRetailV2betaImportMetadata
4986
5296
  include Google::Apis::Core::Hashable
4987
5297
 
@@ -4996,9 +5306,9 @@ module Google
4996
5306
  attr_accessor :failure_count
4997
5307
 
4998
5308
  # Pub/Sub topic for receiving notification. If this field is set, when the
4999
- # import is finished, a notification will be sent to specified Pub/Sub topic.
5000
- # The message data will be JSON string of a Operation. Format of the Pub/Sub
5001
- # topic is `projects/`project`/topics/`topic``.
5309
+ # import is finished, a notification is sent to specified Pub/Sub topic. The
5310
+ # message data is JSON string of a Operation. Format of the Pub/Sub topic is `
5311
+ # projects/`project`/topics/`topic``.
5002
5312
  # Corresponds to the JSON property `notificationPubsubTopic`
5003
5313
  # @return [String]
5004
5314
  attr_accessor :notification_pubsub_topic