google-apis-discoveryengine_v1alpha 0.47.0 → 0.49.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,320 @@ module Google
22
22
  module Apis
23
23
  module DiscoveryengineV1alpha
24
24
 
25
+ # `Distribution` contains summary statistics for a population of values. It
26
+ # optionally contains a histogram representing the distribution of those values
27
+ # across a set of buckets. The summary statistics are the count, mean, sum of
28
+ # the squared deviation from the mean, the minimum, and the maximum of the set
29
+ # of population of values. The histogram is based on a sequence of buckets and
30
+ # gives a count of values that fall into each bucket. The boundaries of the
31
+ # buckets are given either explicitly or by formulas for buckets of fixed or
32
+ # exponentially increasing widths. Although it is not forbidden, it is generally
33
+ # a bad idea to include non-finite values (infinities or NaNs) in the population
34
+ # of values, as this will render the `mean` and `sum_of_squared_deviation`
35
+ # fields meaningless.
36
+ class GoogleApiDistribution
37
+ include Google::Apis::Core::Hashable
38
+
39
+ # The number of values in each bucket of the histogram, as described in `
40
+ # bucket_options`. If the distribution does not have a histogram, then omit this
41
+ # field. If there is a histogram, then the sum of the values in `bucket_counts`
42
+ # must equal the value in the `count` field of the distribution. If present, `
43
+ # bucket_counts` should contain N values, where N is the number of buckets
44
+ # specified in `bucket_options`. If you supply fewer than N values, the
45
+ # remaining values are assumed to be 0. The order of the values in `
46
+ # bucket_counts` follows the bucket numbering schemes described for the three
47
+ # bucket types. The first value must be the count for the underflow bucket (
48
+ # number 0). The next N-2 values are the counts for the finite buckets (number 1
49
+ # through N-2). The N'th value in `bucket_counts` is the count for the overflow
50
+ # bucket (number N-1).
51
+ # Corresponds to the JSON property `bucketCounts`
52
+ # @return [Array<Fixnum>]
53
+ attr_accessor :bucket_counts
54
+
55
+ # `BucketOptions` describes the bucket boundaries used to create a histogram for
56
+ # the distribution. The buckets can be in a linear sequence, an exponential
57
+ # sequence, or each bucket can be specified explicitly. `BucketOptions` does not
58
+ # include the number of values in each bucket. A bucket has an inclusive lower
59
+ # bound and exclusive upper bound for the values that are counted for that
60
+ # bucket. The upper bound of a bucket must be strictly greater than the lower
61
+ # bound. The sequence of N buckets for a distribution consists of an underflow
62
+ # bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an
63
+ # overflow bucket (number N - 1). The buckets are contiguous: the lower bound of
64
+ # bucket i (i > 0) is the same as the upper bound of bucket i - 1. The buckets
65
+ # span the whole range of finite values: lower bound of the underflow bucket is -
66
+ # infinity and the upper bound of the overflow bucket is +infinity. The finite
67
+ # buckets are so-called because both bounds are finite.
68
+ # Corresponds to the JSON property `bucketOptions`
69
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleApiDistributionBucketOptions]
70
+ attr_accessor :bucket_options
71
+
72
+ # The number of values in the population. Must be non-negative. This value must
73
+ # equal the sum of the values in `bucket_counts` if a histogram is provided.
74
+ # Corresponds to the JSON property `count`
75
+ # @return [Fixnum]
76
+ attr_accessor :count
77
+
78
+ # Must be in increasing order of `value` field.
79
+ # Corresponds to the JSON property `exemplars`
80
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleApiDistributionExemplar>]
81
+ attr_accessor :exemplars
82
+
83
+ # The arithmetic mean of the values in the population. If `count` is zero then
84
+ # this field must be zero.
85
+ # Corresponds to the JSON property `mean`
86
+ # @return [Float]
87
+ attr_accessor :mean
88
+
89
+ # The range of the population values.
90
+ # Corresponds to the JSON property `range`
91
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleApiDistributionRange]
92
+ attr_accessor :range
93
+
94
+ # The sum of squared deviations from the mean of the values in the population.
95
+ # For values x_i this is: Sum[i=1..n]((x_i - mean)^2) Knuth, "The Art of
96
+ # Computer Programming", Vol. 2, page 232, 3rd edition describes Welford's
97
+ # method for accumulating this sum in one pass. If `count` is zero then this
98
+ # field must be zero.
99
+ # Corresponds to the JSON property `sumOfSquaredDeviation`
100
+ # @return [Float]
101
+ attr_accessor :sum_of_squared_deviation
102
+
103
+ def initialize(**args)
104
+ update!(**args)
105
+ end
106
+
107
+ # Update properties of this object
108
+ def update!(**args)
109
+ @bucket_counts = args[:bucket_counts] if args.key?(:bucket_counts)
110
+ @bucket_options = args[:bucket_options] if args.key?(:bucket_options)
111
+ @count = args[:count] if args.key?(:count)
112
+ @exemplars = args[:exemplars] if args.key?(:exemplars)
113
+ @mean = args[:mean] if args.key?(:mean)
114
+ @range = args[:range] if args.key?(:range)
115
+ @sum_of_squared_deviation = args[:sum_of_squared_deviation] if args.key?(:sum_of_squared_deviation)
116
+ end
117
+ end
118
+
119
+ # `BucketOptions` describes the bucket boundaries used to create a histogram for
120
+ # the distribution. The buckets can be in a linear sequence, an exponential
121
+ # sequence, or each bucket can be specified explicitly. `BucketOptions` does not
122
+ # include the number of values in each bucket. A bucket has an inclusive lower
123
+ # bound and exclusive upper bound for the values that are counted for that
124
+ # bucket. The upper bound of a bucket must be strictly greater than the lower
125
+ # bound. The sequence of N buckets for a distribution consists of an underflow
126
+ # bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an
127
+ # overflow bucket (number N - 1). The buckets are contiguous: the lower bound of
128
+ # bucket i (i > 0) is the same as the upper bound of bucket i - 1. The buckets
129
+ # span the whole range of finite values: lower bound of the underflow bucket is -
130
+ # infinity and the upper bound of the overflow bucket is +infinity. The finite
131
+ # buckets are so-called because both bounds are finite.
132
+ class GoogleApiDistributionBucketOptions
133
+ include Google::Apis::Core::Hashable
134
+
135
+ # Specifies a set of buckets with arbitrary widths. There are `size(bounds) + 1`
136
+ # (= N) buckets. Bucket `i` has the following boundaries: Upper bound (0 <= i <
137
+ # N-1): bounds[i] Lower bound (1 <= i < N); bounds[i - 1] The `bounds` field
138
+ # must contain at least one element. If `bounds` has only one element, then
139
+ # there are no finite buckets, and that single element is the common boundary of
140
+ # the overflow and underflow buckets.
141
+ # Corresponds to the JSON property `explicitBuckets`
142
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleApiDistributionBucketOptionsExplicit]
143
+ attr_accessor :explicit_buckets
144
+
145
+ # Specifies an exponential sequence of buckets that have a width that is
146
+ # proportional to the value of the lower bound. Each bucket represents a
147
+ # constant relative uncertainty on a specific value in the bucket. There are `
148
+ # num_finite_buckets + 2` (= N) buckets. Bucket `i` has the following boundaries:
149
+ # Upper bound (0 <= i < N-1): scale * (growth_factor ^ i). Lower bound (1 <= i <
150
+ # N): scale * (growth_factor ^ (i - 1)).
151
+ # Corresponds to the JSON property `exponentialBuckets`
152
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleApiDistributionBucketOptionsExponential]
153
+ attr_accessor :exponential_buckets
154
+
155
+ # Specifies a linear sequence of buckets that all have the same width (except
156
+ # overflow and underflow). Each bucket represents a constant absolute
157
+ # uncertainty on the specific value in the bucket. There are `num_finite_buckets
158
+ # + 2` (= N) buckets. Bucket `i` has the following boundaries: Upper bound (0 <=
159
+ # i < N-1): offset + (width * i). Lower bound (1 <= i < N): offset + (width * (i
160
+ # - 1)).
161
+ # Corresponds to the JSON property `linearBuckets`
162
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleApiDistributionBucketOptionsLinear]
163
+ attr_accessor :linear_buckets
164
+
165
+ def initialize(**args)
166
+ update!(**args)
167
+ end
168
+
169
+ # Update properties of this object
170
+ def update!(**args)
171
+ @explicit_buckets = args[:explicit_buckets] if args.key?(:explicit_buckets)
172
+ @exponential_buckets = args[:exponential_buckets] if args.key?(:exponential_buckets)
173
+ @linear_buckets = args[:linear_buckets] if args.key?(:linear_buckets)
174
+ end
175
+ end
176
+
177
+ # Specifies a set of buckets with arbitrary widths. There are `size(bounds) + 1`
178
+ # (= N) buckets. Bucket `i` has the following boundaries: Upper bound (0 <= i <
179
+ # N-1): bounds[i] Lower bound (1 <= i < N); bounds[i - 1] The `bounds` field
180
+ # must contain at least one element. If `bounds` has only one element, then
181
+ # there are no finite buckets, and that single element is the common boundary of
182
+ # the overflow and underflow buckets.
183
+ class GoogleApiDistributionBucketOptionsExplicit
184
+ include Google::Apis::Core::Hashable
185
+
186
+ # The values must be monotonically increasing.
187
+ # Corresponds to the JSON property `bounds`
188
+ # @return [Array<Float>]
189
+ attr_accessor :bounds
190
+
191
+ def initialize(**args)
192
+ update!(**args)
193
+ end
194
+
195
+ # Update properties of this object
196
+ def update!(**args)
197
+ @bounds = args[:bounds] if args.key?(:bounds)
198
+ end
199
+ end
200
+
201
+ # Specifies an exponential sequence of buckets that have a width that is
202
+ # proportional to the value of the lower bound. Each bucket represents a
203
+ # constant relative uncertainty on a specific value in the bucket. There are `
204
+ # num_finite_buckets + 2` (= N) buckets. Bucket `i` has the following boundaries:
205
+ # Upper bound (0 <= i < N-1): scale * (growth_factor ^ i). Lower bound (1 <= i <
206
+ # N): scale * (growth_factor ^ (i - 1)).
207
+ class GoogleApiDistributionBucketOptionsExponential
208
+ include Google::Apis::Core::Hashable
209
+
210
+ # Must be greater than 1.
211
+ # Corresponds to the JSON property `growthFactor`
212
+ # @return [Float]
213
+ attr_accessor :growth_factor
214
+
215
+ # Must be greater than 0.
216
+ # Corresponds to the JSON property `numFiniteBuckets`
217
+ # @return [Fixnum]
218
+ attr_accessor :num_finite_buckets
219
+
220
+ # Must be greater than 0.
221
+ # Corresponds to the JSON property `scale`
222
+ # @return [Float]
223
+ attr_accessor :scale
224
+
225
+ def initialize(**args)
226
+ update!(**args)
227
+ end
228
+
229
+ # Update properties of this object
230
+ def update!(**args)
231
+ @growth_factor = args[:growth_factor] if args.key?(:growth_factor)
232
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
233
+ @scale = args[:scale] if args.key?(:scale)
234
+ end
235
+ end
236
+
237
+ # Specifies a linear sequence of buckets that all have the same width (except
238
+ # overflow and underflow). Each bucket represents a constant absolute
239
+ # uncertainty on the specific value in the bucket. There are `num_finite_buckets
240
+ # + 2` (= N) buckets. Bucket `i` has the following boundaries: Upper bound (0 <=
241
+ # i < N-1): offset + (width * i). Lower bound (1 <= i < N): offset + (width * (i
242
+ # - 1)).
243
+ class GoogleApiDistributionBucketOptionsLinear
244
+ include Google::Apis::Core::Hashable
245
+
246
+ # Must be greater than 0.
247
+ # Corresponds to the JSON property `numFiniteBuckets`
248
+ # @return [Fixnum]
249
+ attr_accessor :num_finite_buckets
250
+
251
+ # Lower bound of the first bucket.
252
+ # Corresponds to the JSON property `offset`
253
+ # @return [Float]
254
+ attr_accessor :offset
255
+
256
+ # Must be greater than 0.
257
+ # Corresponds to the JSON property `width`
258
+ # @return [Float]
259
+ attr_accessor :width
260
+
261
+ def initialize(**args)
262
+ update!(**args)
263
+ end
264
+
265
+ # Update properties of this object
266
+ def update!(**args)
267
+ @num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
268
+ @offset = args[:offset] if args.key?(:offset)
269
+ @width = args[:width] if args.key?(:width)
270
+ end
271
+ end
272
+
273
+ # Exemplars are example points that may be used to annotate aggregated
274
+ # distribution values. They are metadata that gives information about a
275
+ # particular value added to a Distribution bucket, such as a trace ID that was
276
+ # active when a value was added. They may contain further information, such as a
277
+ # example values and timestamps, origin, etc.
278
+ class GoogleApiDistributionExemplar
279
+ include Google::Apis::Core::Hashable
280
+
281
+ # Contextual information about the example value. Examples are: Trace: type.
282
+ # googleapis.com/google.monitoring.v3.SpanContext Literal string: type.
283
+ # googleapis.com/google.protobuf.StringValue Labels dropped during aggregation:
284
+ # type.googleapis.com/google.monitoring.v3.DroppedLabels There may be only a
285
+ # single attachment of any given message type in a single exemplar, and this is
286
+ # enforced by the system.
287
+ # Corresponds to the JSON property `attachments`
288
+ # @return [Array<Hash<String,Object>>]
289
+ attr_accessor :attachments
290
+
291
+ # The observation (sampling) time of the above value.
292
+ # Corresponds to the JSON property `timestamp`
293
+ # @return [String]
294
+ attr_accessor :timestamp
295
+
296
+ # Value of the exemplar point. This value determines to which bucket the
297
+ # exemplar belongs.
298
+ # Corresponds to the JSON property `value`
299
+ # @return [Float]
300
+ attr_accessor :value
301
+
302
+ def initialize(**args)
303
+ update!(**args)
304
+ end
305
+
306
+ # Update properties of this object
307
+ def update!(**args)
308
+ @attachments = args[:attachments] if args.key?(:attachments)
309
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
310
+ @value = args[:value] if args.key?(:value)
311
+ end
312
+ end
313
+
314
+ # The range of the population values.
315
+ class GoogleApiDistributionRange
316
+ include Google::Apis::Core::Hashable
317
+
318
+ # The maximum of the population values.
319
+ # Corresponds to the JSON property `max`
320
+ # @return [Float]
321
+ attr_accessor :max
322
+
323
+ # The minimum of the population values.
324
+ # Corresponds to the JSON property `min`
325
+ # @return [Float]
326
+ attr_accessor :min
327
+
328
+ def initialize(**args)
329
+ update!(**args)
330
+ end
331
+
332
+ # Update properties of this object
333
+ def update!(**args)
334
+ @max = args[:max] if args.key?(:max)
335
+ @min = args[:min] if args.key?(:min)
336
+ end
337
+ end
338
+
25
339
  # Message that represents an arbitrary HTTP body. It should only be used for
26
340
  # payload formats that can't be represented as JSON, such as raw binary or an
27
341
  # HTML page. This message can be used both in streaming and non-streaming API
@@ -70,6 +384,46 @@ module Google
70
384
  end
71
385
  end
72
386
 
387
+ # An object representing a resource that can be used for monitoring, logging,
388
+ # billing, or other purposes. Examples include virtual machine instances,
389
+ # databases, and storage devices such as disks. The `type` field identifies a
390
+ # MonitoredResourceDescriptor object that describes the resource's schema.
391
+ # Information in the `labels` field identifies the actual resource and its
392
+ # attributes according to the schema. For example, a particular Compute Engine
393
+ # VM instance could be represented by the following object, because the
394
+ # MonitoredResourceDescriptor for `"gce_instance"` has labels `"project_id"`, `"
395
+ # instance_id"` and `"zone"`: ` "type": "gce_instance", "labels": ` "project_id":
396
+ # "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" ``
397
+ class GoogleApiMonitoredResource
398
+ include Google::Apis::Core::Hashable
399
+
400
+ # Required. Values for all of the labels listed in the associated monitored
401
+ # resource descriptor. For example, Compute Engine VM instances use the labels `"
402
+ # project_id"`, `"instance_id"`, and `"zone"`.
403
+ # Corresponds to the JSON property `labels`
404
+ # @return [Hash<String,String>]
405
+ attr_accessor :labels
406
+
407
+ # Required. The monitored resource type. This field must match the `type` field
408
+ # of a MonitoredResourceDescriptor object. For example, the type of a Compute
409
+ # Engine VM instance is `gce_instance`. Some descriptors include the service
410
+ # name in the type; for example, the type of a Datastream stream is `datastream.
411
+ # googleapis.com/Stream`.
412
+ # Corresponds to the JSON property `type`
413
+ # @return [String]
414
+ attr_accessor :type
415
+
416
+ def initialize(**args)
417
+ update!(**args)
418
+ end
419
+
420
+ # Update properties of this object
421
+ def update!(**args)
422
+ @labels = args[:labels] if args.key?(:labels)
423
+ @type = args[:type] if args.key?(:type)
424
+ end
425
+ end
426
+
73
427
  # A description of the context in which an error occurred.
74
428
  class GoogleCloudDiscoveryengineLoggingErrorContext
75
429
  include Google::Apis::Core::Hashable
@@ -323,22 +677,20 @@ module Google
323
677
  end
324
678
  end
325
679
 
326
- # Metadata related to the progress of the DataStoreService.CreateDataStore
327
- # operation. This will be returned by the google.longrunning.Operation.metadata
328
- # field.
329
- class GoogleCloudDiscoveryengineV1CreateDataStoreMetadata
680
+ # Defines circumstances to be checked before allowing a behavior
681
+ class GoogleCloudDiscoveryengineV1Condition
330
682
  include Google::Apis::Core::Hashable
331
683
 
332
- # Operation create time.
333
- # Corresponds to the JSON property `createTime`
334
- # @return [String]
335
- attr_accessor :create_time
684
+ # Range of time(s) specifying when condition is active. Maximum of 10 time
685
+ # ranges.
686
+ # Corresponds to the JSON property `activeTimeRange`
687
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ConditionTimeRange>]
688
+ attr_accessor :active_time_range
336
689
 
337
- # Operation last update time. If the operation is done, this is also the finish
338
- # time.
339
- # Corresponds to the JSON property `updateTime`
340
- # @return [String]
341
- attr_accessor :update_time
690
+ # Search only A list of terms to match the query on. Maximum of 10 query terms.
691
+ # Corresponds to the JSON property `queryTerms`
692
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ConditionQueryTerm>]
693
+ attr_accessor :query_terms
342
694
 
343
695
  def initialize(**args)
344
696
  update!(**args)
@@ -346,26 +698,27 @@ module Google
346
698
 
347
699
  # Update properties of this object
348
700
  def update!(**args)
349
- @create_time = args[:create_time] if args.key?(:create_time)
350
- @update_time = args[:update_time] if args.key?(:update_time)
701
+ @active_time_range = args[:active_time_range] if args.key?(:active_time_range)
702
+ @query_terms = args[:query_terms] if args.key?(:query_terms)
351
703
  end
352
704
  end
353
705
 
354
- # Metadata related to the progress of the EngineService.CreateEngine operation.
355
- # This will be returned by the google.longrunning.Operation.metadata field.
356
- class GoogleCloudDiscoveryengineV1CreateEngineMetadata
706
+ # Matcher for search request query
707
+ class GoogleCloudDiscoveryengineV1ConditionQueryTerm
357
708
  include Google::Apis::Core::Hashable
358
709
 
359
- # Operation create time.
360
- # Corresponds to the JSON property `createTime`
361
- # @return [String]
362
- attr_accessor :create_time
710
+ # Whether the search query needs to exactly match the query term.
711
+ # Corresponds to the JSON property `fullMatch`
712
+ # @return [Boolean]
713
+ attr_accessor :full_match
714
+ alias_method :full_match?, :full_match
363
715
 
364
- # Operation last update time. If the operation is done, this is also the finish
365
- # time.
366
- # Corresponds to the JSON property `updateTime`
716
+ # The specific query value to match against Must be lowercase, must be UTF-8.
717
+ # Can have at most 3 space separated terms if full_match is true. Cannot be an
718
+ # empty string. Maximum length of 5000 characters.
719
+ # Corresponds to the JSON property `value`
367
720
  # @return [String]
368
- attr_accessor :update_time
721
+ attr_accessor :value
369
722
 
370
723
  def initialize(**args)
371
724
  update!(**args)
@@ -373,25 +726,24 @@ module Google
373
726
 
374
727
  # Update properties of this object
375
728
  def update!(**args)
376
- @create_time = args[:create_time] if args.key?(:create_time)
377
- @update_time = args[:update_time] if args.key?(:update_time)
729
+ @full_match = args[:full_match] if args.key?(:full_match)
730
+ @value = args[:value] if args.key?(:value)
378
731
  end
379
732
  end
380
733
 
381
- # Metadata for Create Schema LRO.
382
- class GoogleCloudDiscoveryengineV1CreateSchemaMetadata
734
+ # Used for time-dependent conditions.
735
+ class GoogleCloudDiscoveryengineV1ConditionTimeRange
383
736
  include Google::Apis::Core::Hashable
384
737
 
385
- # Operation create time.
386
- # Corresponds to the JSON property `createTime`
738
+ # End of time range. Range is inclusive. Must be in the future.
739
+ # Corresponds to the JSON property `endTime`
387
740
  # @return [String]
388
- attr_accessor :create_time
741
+ attr_accessor :end_time
389
742
 
390
- # Operation last update time. If the operation is done, this is also the finish
391
- # time.
392
- # Corresponds to the JSON property `updateTime`
743
+ # Start of time range. Range is inclusive.
744
+ # Corresponds to the JSON property `startTime`
393
745
  # @return [String]
394
- attr_accessor :update_time
746
+ attr_accessor :start_time
395
747
 
396
748
  def initialize(**args)
397
749
  update!(**args)
@@ -399,27 +751,78 @@ module Google
399
751
 
400
752
  # Update properties of this object
401
753
  def update!(**args)
402
- @create_time = args[:create_time] if args.key?(:create_time)
403
- @update_time = args[:update_time] if args.key?(:update_time)
754
+ @end_time = args[:end_time] if args.key?(:end_time)
755
+ @start_time = args[:start_time] if args.key?(:start_time)
404
756
  end
405
757
  end
406
758
 
407
- # Metadata related to the progress of the SiteSearchEngineService.
408
- # CreateTargetSite operation. This will be returned by the google.longrunning.
409
- # Operation.metadata field.
410
- class GoogleCloudDiscoveryengineV1CreateTargetSiteMetadata
759
+ # Defines a conditioned behavior to employ during serving. Must be attached to a
760
+ # ServingConfig to be considered at serving time. Permitted actions dependent on
761
+ # `SolutionType`.
762
+ class GoogleCloudDiscoveryengineV1Control
411
763
  include Google::Apis::Core::Hashable
412
764
 
413
- # Operation create time.
414
- # Corresponds to the JSON property `createTime`
765
+ # Output only. List of all ServingConfig ids this control is attached to. May
766
+ # take up to 10 minutes to update after changes.
767
+ # Corresponds to the JSON property `associatedServingConfigIds`
768
+ # @return [Array<String>]
769
+ attr_accessor :associated_serving_config_ids
770
+
771
+ # Adjusts order of products in returned list.
772
+ # Corresponds to the JSON property `boostAction`
773
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ControlBoostAction]
774
+ attr_accessor :boost_action
775
+
776
+ # Determines when the associated action will trigger. Omit to always apply the
777
+ # action. Currently only a single condition may be specified. Otherwise an
778
+ # INVALID ARGUMENT error is thrown.
779
+ # Corresponds to the JSON property `conditions`
780
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1Condition>]
781
+ attr_accessor :conditions
782
+
783
+ # Required. Human readable name. The identifier used in UI views. Must be UTF-8
784
+ # encoded string. Length limit is 128 characters. Otherwise an INVALID ARGUMENT
785
+ # error is thrown.
786
+ # Corresponds to the JSON property `displayName`
415
787
  # @return [String]
416
- attr_accessor :create_time
788
+ attr_accessor :display_name
417
789
 
418
- # Operation last update time. If the operation is done, this is also the finish
419
- # time.
420
- # Corresponds to the JSON property `updateTime`
790
+ # Specified which products may be included in results. Uses same filter as boost.
791
+ # Corresponds to the JSON property `filterAction`
792
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ControlFilterAction]
793
+ attr_accessor :filter_action
794
+
795
+ # Immutable. Fully qualified name `projects/*/locations/global/dataStore/*/
796
+ # controls/*`
797
+ # Corresponds to the JSON property `name`
421
798
  # @return [String]
422
- attr_accessor :update_time
799
+ attr_accessor :name
800
+
801
+ # Redirects a shopper to the provided URI.
802
+ # Corresponds to the JSON property `redirectAction`
803
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ControlRedirectAction]
804
+ attr_accessor :redirect_action
805
+
806
+ # Required. Immutable. What solution the control belongs to. Must be compatible
807
+ # with vertical of resource. Otherwise an INVALID ARGUMENT error is thrown.
808
+ # Corresponds to the JSON property `solutionType`
809
+ # @return [String]
810
+ attr_accessor :solution_type
811
+
812
+ # Creates a set of terms that will act as synonyms of one another. Example: "
813
+ # happy" will also be considered as "glad", "glad" will also be considered as "
814
+ # happy".
815
+ # Corresponds to the JSON property `synonymsAction`
816
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ControlSynonymsAction]
817
+ attr_accessor :synonyms_action
818
+
819
+ # Specifies the use case for the control. Affects what condition fields can be
820
+ # set. Only applies to SOLUTION_TYPE_SEARCH. Currently only allow one use case
821
+ # per control. Must be set when solution_type is SolutionType.
822
+ # SOLUTION_TYPE_SEARCH.
823
+ # Corresponds to the JSON property `useCases`
824
+ # @return [Array<String>]
825
+ attr_accessor :use_cases
423
826
 
424
827
  def initialize(**args)
425
828
  update!(**args)
@@ -427,44 +830,270 @@ module Google
427
830
 
428
831
  # Update properties of this object
429
832
  def update!(**args)
430
- @create_time = args[:create_time] if args.key?(:create_time)
431
- @update_time = args[:update_time] if args.key?(:update_time)
833
+ @associated_serving_config_ids = args[:associated_serving_config_ids] if args.key?(:associated_serving_config_ids)
834
+ @boost_action = args[:boost_action] if args.key?(:boost_action)
835
+ @conditions = args[:conditions] if args.key?(:conditions)
836
+ @display_name = args[:display_name] if args.key?(:display_name)
837
+ @filter_action = args[:filter_action] if args.key?(:filter_action)
838
+ @name = args[:name] if args.key?(:name)
839
+ @redirect_action = args[:redirect_action] if args.key?(:redirect_action)
840
+ @solution_type = args[:solution_type] if args.key?(:solution_type)
841
+ @synonyms_action = args[:synonyms_action] if args.key?(:synonyms_action)
842
+ @use_cases = args[:use_cases] if args.key?(:use_cases)
432
843
  end
433
844
  end
434
845
 
435
- # DataStore captures global settings and configs at the DataStore level.
436
- class GoogleCloudDiscoveryengineV1DataStore
846
+ # Adjusts order of products in returned list.
847
+ class GoogleCloudDiscoveryengineV1ControlBoostAction
437
848
  include Google::Apis::Core::Hashable
438
849
 
439
- # Immutable. The content config of the data store. If this field is unset, the
440
- # server behavior defaults to ContentConfig.NO_CONTENT.
441
- # Corresponds to the JSON property `contentConfig`
442
- # @return [String]
443
- attr_accessor :content_config
850
+ # Required. Strength of the boost, which should be in [-1, 1]. Negative boost
851
+ # means demotion. Default is 0.0 (No-op).
852
+ # Corresponds to the JSON property `boost`
853
+ # @return [Float]
854
+ attr_accessor :boost
444
855
 
445
- # Output only. Timestamp the DataStore was created at.
446
- # Corresponds to the JSON property `createTime`
856
+ # Required. Specifies which data store's documents can be boosted by this
857
+ # control. Full data store name e.g. projects/123/locations/global/collections/
858
+ # default_collection/dataStores/default_data_store
859
+ # Corresponds to the JSON property `dataStore`
447
860
  # @return [String]
448
- attr_accessor :create_time
861
+ attr_accessor :data_store
449
862
 
450
- # Output only. The id of the default Schema asscociated to this data store.
451
- # Corresponds to the JSON property `defaultSchemaId`
863
+ # Required. Specifies which products to apply the boost to. If no filter is
864
+ # provided all products will be boosted (No-op). Syntax documentation: https://
865
+ # cloud.google.com/retail/docs/filter-and-order Maximum length is 5000
866
+ # characters. Otherwise an INVALID ARGUMENT error is thrown.
867
+ # Corresponds to the JSON property `filter`
452
868
  # @return [String]
453
- attr_accessor :default_schema_id
869
+ attr_accessor :filter
454
870
 
455
- # Required. The data store display name. This field must be a UTF-8 encoded
456
- # string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT
457
- # error is returned.
458
- # Corresponds to the JSON property `displayName`
459
- # @return [String]
460
- attr_accessor :display_name
871
+ def initialize(**args)
872
+ update!(**args)
873
+ end
461
874
 
462
- # A singleton resource of DataStore. It's empty when DataStore is created, which
463
- # defaults to digital parser. The first call to DataStoreService.
464
- # UpdateDocumentProcessingConfig method will initialize the config.
465
- # Corresponds to the JSON property `documentProcessingConfig`
466
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfig]
467
- attr_accessor :document_processing_config
875
+ # Update properties of this object
876
+ def update!(**args)
877
+ @boost = args[:boost] if args.key?(:boost)
878
+ @data_store = args[:data_store] if args.key?(:data_store)
879
+ @filter = args[:filter] if args.key?(:filter)
880
+ end
881
+ end
882
+
883
+ # Specified which products may be included in results. Uses same filter as boost.
884
+ class GoogleCloudDiscoveryengineV1ControlFilterAction
885
+ include Google::Apis::Core::Hashable
886
+
887
+ # Required. Specifies which data store's documents can be filtered by this
888
+ # control. Full data store name e.g. projects/123/locations/global/collections/
889
+ # default_collection/dataStores/default_data_store
890
+ # Corresponds to the JSON property `dataStore`
891
+ # @return [String]
892
+ attr_accessor :data_store
893
+
894
+ # Required. A filter to apply on the matching condition results. Required Syntax
895
+ # documentation: https://cloud.google.com/retail/docs/filter-and-order Maximum
896
+ # length is 5000 characters. Otherwise an INVALID ARGUMENT error is thrown.
897
+ # Corresponds to the JSON property `filter`
898
+ # @return [String]
899
+ attr_accessor :filter
900
+
901
+ def initialize(**args)
902
+ update!(**args)
903
+ end
904
+
905
+ # Update properties of this object
906
+ def update!(**args)
907
+ @data_store = args[:data_store] if args.key?(:data_store)
908
+ @filter = args[:filter] if args.key?(:filter)
909
+ end
910
+ end
911
+
912
+ # Redirects a shopper to the provided URI.
913
+ class GoogleCloudDiscoveryengineV1ControlRedirectAction
914
+ include Google::Apis::Core::Hashable
915
+
916
+ # Required. The URI to which the shopper will be redirected. Required. URI must
917
+ # have length equal or less than 2000 characters. Otherwise an INVALID ARGUMENT
918
+ # error is thrown.
919
+ # Corresponds to the JSON property `redirectUri`
920
+ # @return [String]
921
+ attr_accessor :redirect_uri
922
+
923
+ def initialize(**args)
924
+ update!(**args)
925
+ end
926
+
927
+ # Update properties of this object
928
+ def update!(**args)
929
+ @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
930
+ end
931
+ end
932
+
933
+ # Creates a set of terms that will act as synonyms of one another. Example: "
934
+ # happy" will also be considered as "glad", "glad" will also be considered as "
935
+ # happy".
936
+ class GoogleCloudDiscoveryengineV1ControlSynonymsAction
937
+ include Google::Apis::Core::Hashable
938
+
939
+ # Defines a set of synonyms. Can specify up to 100 synonyms. Must specify at
940
+ # least 2 synonyms. Otherwise an INVALID ARGUMENT error is thrown.
941
+ # Corresponds to the JSON property `synonyms`
942
+ # @return [Array<String>]
943
+ attr_accessor :synonyms
944
+
945
+ def initialize(**args)
946
+ update!(**args)
947
+ end
948
+
949
+ # Update properties of this object
950
+ def update!(**args)
951
+ @synonyms = args[:synonyms] if args.key?(:synonyms)
952
+ end
953
+ end
954
+
955
+ # Metadata related to the progress of the DataStoreService.CreateDataStore
956
+ # operation. This will be returned by the google.longrunning.Operation.metadata
957
+ # field.
958
+ class GoogleCloudDiscoveryengineV1CreateDataStoreMetadata
959
+ include Google::Apis::Core::Hashable
960
+
961
+ # Operation create time.
962
+ # Corresponds to the JSON property `createTime`
963
+ # @return [String]
964
+ attr_accessor :create_time
965
+
966
+ # Operation last update time. If the operation is done, this is also the finish
967
+ # time.
968
+ # Corresponds to the JSON property `updateTime`
969
+ # @return [String]
970
+ attr_accessor :update_time
971
+
972
+ def initialize(**args)
973
+ update!(**args)
974
+ end
975
+
976
+ # Update properties of this object
977
+ def update!(**args)
978
+ @create_time = args[:create_time] if args.key?(:create_time)
979
+ @update_time = args[:update_time] if args.key?(:update_time)
980
+ end
981
+ end
982
+
983
+ # Metadata related to the progress of the EngineService.CreateEngine operation.
984
+ # This will be returned by the google.longrunning.Operation.metadata field.
985
+ class GoogleCloudDiscoveryengineV1CreateEngineMetadata
986
+ include Google::Apis::Core::Hashable
987
+
988
+ # Operation create time.
989
+ # Corresponds to the JSON property `createTime`
990
+ # @return [String]
991
+ attr_accessor :create_time
992
+
993
+ # Operation last update time. If the operation is done, this is also the finish
994
+ # time.
995
+ # Corresponds to the JSON property `updateTime`
996
+ # @return [String]
997
+ attr_accessor :update_time
998
+
999
+ def initialize(**args)
1000
+ update!(**args)
1001
+ end
1002
+
1003
+ # Update properties of this object
1004
+ def update!(**args)
1005
+ @create_time = args[:create_time] if args.key?(:create_time)
1006
+ @update_time = args[:update_time] if args.key?(:update_time)
1007
+ end
1008
+ end
1009
+
1010
+ # Metadata for Create Schema LRO.
1011
+ class GoogleCloudDiscoveryengineV1CreateSchemaMetadata
1012
+ include Google::Apis::Core::Hashable
1013
+
1014
+ # Operation create time.
1015
+ # Corresponds to the JSON property `createTime`
1016
+ # @return [String]
1017
+ attr_accessor :create_time
1018
+
1019
+ # Operation last update time. If the operation is done, this is also the finish
1020
+ # time.
1021
+ # Corresponds to the JSON property `updateTime`
1022
+ # @return [String]
1023
+ attr_accessor :update_time
1024
+
1025
+ def initialize(**args)
1026
+ update!(**args)
1027
+ end
1028
+
1029
+ # Update properties of this object
1030
+ def update!(**args)
1031
+ @create_time = args[:create_time] if args.key?(:create_time)
1032
+ @update_time = args[:update_time] if args.key?(:update_time)
1033
+ end
1034
+ end
1035
+
1036
+ # Metadata related to the progress of the SiteSearchEngineService.
1037
+ # CreateTargetSite operation. This will be returned by the google.longrunning.
1038
+ # Operation.metadata field.
1039
+ class GoogleCloudDiscoveryengineV1CreateTargetSiteMetadata
1040
+ include Google::Apis::Core::Hashable
1041
+
1042
+ # Operation create time.
1043
+ # Corresponds to the JSON property `createTime`
1044
+ # @return [String]
1045
+ attr_accessor :create_time
1046
+
1047
+ # Operation last update time. If the operation is done, this is also the finish
1048
+ # time.
1049
+ # Corresponds to the JSON property `updateTime`
1050
+ # @return [String]
1051
+ attr_accessor :update_time
1052
+
1053
+ def initialize(**args)
1054
+ update!(**args)
1055
+ end
1056
+
1057
+ # Update properties of this object
1058
+ def update!(**args)
1059
+ @create_time = args[:create_time] if args.key?(:create_time)
1060
+ @update_time = args[:update_time] if args.key?(:update_time)
1061
+ end
1062
+ end
1063
+
1064
+ # DataStore captures global settings and configs at the DataStore level.
1065
+ class GoogleCloudDiscoveryengineV1DataStore
1066
+ include Google::Apis::Core::Hashable
1067
+
1068
+ # Immutable. The content config of the data store. If this field is unset, the
1069
+ # server behavior defaults to ContentConfig.NO_CONTENT.
1070
+ # Corresponds to the JSON property `contentConfig`
1071
+ # @return [String]
1072
+ attr_accessor :content_config
1073
+
1074
+ # Output only. Timestamp the DataStore was created at.
1075
+ # Corresponds to the JSON property `createTime`
1076
+ # @return [String]
1077
+ attr_accessor :create_time
1078
+
1079
+ # Output only. The id of the default Schema asscociated to this data store.
1080
+ # Corresponds to the JSON property `defaultSchemaId`
1081
+ # @return [String]
1082
+ attr_accessor :default_schema_id
1083
+
1084
+ # Required. The data store display name. This field must be a UTF-8 encoded
1085
+ # string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT
1086
+ # error is returned.
1087
+ # Corresponds to the JSON property `displayName`
1088
+ # @return [String]
1089
+ attr_accessor :display_name
1090
+
1091
+ # A singleton resource of DataStore. It's empty when DataStore is created, which
1092
+ # defaults to digital parser. The first call to DataStoreService.
1093
+ # UpdateDocumentProcessingConfig method will initialize the config.
1094
+ # Corresponds to the JSON property `documentProcessingConfig`
1095
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfig]
1096
+ attr_accessor :document_processing_config
468
1097
 
469
1098
  # Immutable. The industry vertical that the data store registers.
470
1099
  # Corresponds to the JSON property `industryVertical`
@@ -666,6 +1295,11 @@ module Google
666
1295
  class GoogleCloudDiscoveryengineV1DocumentProcessingConfig
667
1296
  include Google::Apis::Core::Hashable
668
1297
 
1298
+ # Configuration for chunking config.
1299
+ # Corresponds to the JSON property `chunkingConfig`
1300
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfigChunkingConfig]
1301
+ attr_accessor :chunking_config
1302
+
669
1303
  # Related configurations applied to a specific type of document parser.
670
1304
  # Corresponds to the JSON property `defaultParsingConfig`
671
1305
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfig]
@@ -693,12 +1327,60 @@ module Google
693
1327
 
694
1328
  # Update properties of this object
695
1329
  def update!(**args)
1330
+ @chunking_config = args[:chunking_config] if args.key?(:chunking_config)
696
1331
  @default_parsing_config = args[:default_parsing_config] if args.key?(:default_parsing_config)
697
1332
  @name = args[:name] if args.key?(:name)
698
1333
  @parsing_config_overrides = args[:parsing_config_overrides] if args.key?(:parsing_config_overrides)
699
1334
  end
700
1335
  end
701
1336
 
1337
+ # Configuration for chunking config.
1338
+ class GoogleCloudDiscoveryengineV1DocumentProcessingConfigChunkingConfig
1339
+ include Google::Apis::Core::Hashable
1340
+
1341
+ # Configuration for the layout based chunking.
1342
+ # Corresponds to the JSON property `layoutBasedChunkingConfig`
1343
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfigChunkingConfigLayoutBasedChunkingConfig]
1344
+ attr_accessor :layout_based_chunking_config
1345
+
1346
+ def initialize(**args)
1347
+ update!(**args)
1348
+ end
1349
+
1350
+ # Update properties of this object
1351
+ def update!(**args)
1352
+ @layout_based_chunking_config = args[:layout_based_chunking_config] if args.key?(:layout_based_chunking_config)
1353
+ end
1354
+ end
1355
+
1356
+ # Configuration for the layout based chunking.
1357
+ class GoogleCloudDiscoveryengineV1DocumentProcessingConfigChunkingConfigLayoutBasedChunkingConfig
1358
+ include Google::Apis::Core::Hashable
1359
+
1360
+ # The token size limit for each chunk. Supported values: 100-500 (inclusive).
1361
+ # Default value: 500.
1362
+ # Corresponds to the JSON property `chunkSize`
1363
+ # @return [Fixnum]
1364
+ attr_accessor :chunk_size
1365
+
1366
+ # Whether to include appending different levels of headings to chunks from the
1367
+ # middle of the document to prevent context loss. Default value: False.
1368
+ # Corresponds to the JSON property `includeAncestorHeadings`
1369
+ # @return [Boolean]
1370
+ attr_accessor :include_ancestor_headings
1371
+ alias_method :include_ancestor_headings?, :include_ancestor_headings
1372
+
1373
+ def initialize(**args)
1374
+ update!(**args)
1375
+ end
1376
+
1377
+ # Update properties of this object
1378
+ def update!(**args)
1379
+ @chunk_size = args[:chunk_size] if args.key?(:chunk_size)
1380
+ @include_ancestor_headings = args[:include_ancestor_headings] if args.key?(:include_ancestor_headings)
1381
+ end
1382
+ end
1383
+
702
1384
  # Related configurations applied to a specific type of document parser.
703
1385
  class GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfig
704
1386
  include Google::Apis::Core::Hashable
@@ -708,6 +1390,11 @@ module Google
708
1390
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfigDigitalParsingConfig]
709
1391
  attr_accessor :digital_parsing_config
710
1392
 
1393
+ # The layout parsing configurations for documents.
1394
+ # Corresponds to the JSON property `layoutParsingConfig`
1395
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfigLayoutParsingConfig]
1396
+ attr_accessor :layout_parsing_config
1397
+
711
1398
  # The OCR parsing configurations for documents.
712
1399
  # Corresponds to the JSON property `ocrParsingConfig`
713
1400
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfigOcrParsingConfig]
@@ -720,6 +1407,7 @@ module Google
720
1407
  # Update properties of this object
721
1408
  def update!(**args)
722
1409
  @digital_parsing_config = args[:digital_parsing_config] if args.key?(:digital_parsing_config)
1410
+ @layout_parsing_config = args[:layout_parsing_config] if args.key?(:layout_parsing_config)
723
1411
  @ocr_parsing_config = args[:ocr_parsing_config] if args.key?(:ocr_parsing_config)
724
1412
  end
725
1413
  end
@@ -737,16 +1425,29 @@ module Google
737
1425
  end
738
1426
  end
739
1427
 
740
- # The OCR parsing configurations for documents.
741
- class GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfigOcrParsingConfig
1428
+ # The layout parsing configurations for documents.
1429
+ class GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfigLayoutParsingConfig
742
1430
  include Google::Apis::Core::Hashable
743
1431
 
744
- # [DEPRECATED] This field is deprecated. To use the additional enhanced document
745
- # elements processing, please switch to `layout_parsing_config`.
746
- # Corresponds to the JSON property `enhancedDocumentElements`
747
- # @return [Array<String>]
748
- attr_accessor :enhanced_document_elements
749
-
1432
+ def initialize(**args)
1433
+ update!(**args)
1434
+ end
1435
+
1436
+ # Update properties of this object
1437
+ def update!(**args)
1438
+ end
1439
+ end
1440
+
1441
+ # The OCR parsing configurations for documents.
1442
+ class GoogleCloudDiscoveryengineV1DocumentProcessingConfigParsingConfigOcrParsingConfig
1443
+ include Google::Apis::Core::Hashable
1444
+
1445
+ # [DEPRECATED] This field is deprecated. To use the additional enhanced document
1446
+ # elements processing, please switch to `layout_parsing_config`.
1447
+ # Corresponds to the JSON property `enhancedDocumentElements`
1448
+ # @return [Array<String>]
1449
+ attr_accessor :enhanced_document_elements
1450
+
750
1451
  # If true, will use native text instead of OCR text on pages containing native
751
1452
  # text.
752
1453
  # Corresponds to the JSON property `useNativeText`
@@ -1004,8 +1705,8 @@ module Google
1004
1705
  class GoogleCloudDiscoveryengineV1EngineCommonConfig
1005
1706
  include Google::Apis::Core::Hashable
1006
1707
 
1007
- # Immutable. The name of the company, business or entity that is associated with
1008
- # the engine. Setting this may help improve LLM related features.
1708
+ # The name of the company, business or entity that is associated with the engine.
1709
+ # Setting this may help improve LLM related features.
1009
1710
  # Corresponds to the JSON property `companyName`
1010
1711
  # @return [String]
1011
1712
  attr_accessor :company_name
@@ -1277,6 +1978,108 @@ module Google
1277
1978
  end
1278
1979
  end
1279
1980
 
1981
+ # Metadata and configurations for a Google Cloud project in the service.
1982
+ class GoogleCloudDiscoveryengineV1Project
1983
+ include Google::Apis::Core::Hashable
1984
+
1985
+ # Output only. The timestamp when this project is created.
1986
+ # Corresponds to the JSON property `createTime`
1987
+ # @return [String]
1988
+ attr_accessor :create_time
1989
+
1990
+ # Output only. Full resource name of the project, for example `projects/`
1991
+ # project_number``. Note that when making requests, project number and project
1992
+ # id are both acceptable, but the server will always respond in project number.
1993
+ # Corresponds to the JSON property `name`
1994
+ # @return [String]
1995
+ attr_accessor :name
1996
+
1997
+ # Output only. The timestamp when this project is successfully provisioned.
1998
+ # Empty value means this project is still provisioning and is not ready for use.
1999
+ # Corresponds to the JSON property `provisionCompletionTime`
2000
+ # @return [String]
2001
+ attr_accessor :provision_completion_time
2002
+
2003
+ # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
2004
+ # Corresponds to the JSON property `serviceTermsMap`
2005
+ # @return [Hash<String,Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ProjectServiceTerms>]
2006
+ attr_accessor :service_terms_map
2007
+
2008
+ def initialize(**args)
2009
+ update!(**args)
2010
+ end
2011
+
2012
+ # Update properties of this object
2013
+ def update!(**args)
2014
+ @create_time = args[:create_time] if args.key?(:create_time)
2015
+ @name = args[:name] if args.key?(:name)
2016
+ @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
2017
+ @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
2018
+ end
2019
+ end
2020
+
2021
+ # Metadata about the terms of service.
2022
+ class GoogleCloudDiscoveryengineV1ProjectServiceTerms
2023
+ include Google::Apis::Core::Hashable
2024
+
2025
+ # The last time when the project agreed to the terms of service.
2026
+ # Corresponds to the JSON property `acceptTime`
2027
+ # @return [String]
2028
+ attr_accessor :accept_time
2029
+
2030
+ # The last time when the project declined or revoked the agreement to terms of
2031
+ # service.
2032
+ # Corresponds to the JSON property `declineTime`
2033
+ # @return [String]
2034
+ attr_accessor :decline_time
2035
+
2036
+ # The unique identifier of this terms of service. Available terms: * `
2037
+ # GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-
2038
+ # use-terms). When using this as `id`, the acceptable version to provide is `
2039
+ # 2022-11-23`.
2040
+ # Corresponds to the JSON property `id`
2041
+ # @return [String]
2042
+ attr_accessor :id
2043
+
2044
+ # Whether the project has accepted/rejected the service terms or it is still
2045
+ # pending.
2046
+ # Corresponds to the JSON property `state`
2047
+ # @return [String]
2048
+ attr_accessor :state
2049
+
2050
+ # The version string of the terms of service. For acceptable values, see the
2051
+ # comments for id above.
2052
+ # Corresponds to the JSON property `version`
2053
+ # @return [String]
2054
+ attr_accessor :version
2055
+
2056
+ def initialize(**args)
2057
+ update!(**args)
2058
+ end
2059
+
2060
+ # Update properties of this object
2061
+ def update!(**args)
2062
+ @accept_time = args[:accept_time] if args.key?(:accept_time)
2063
+ @decline_time = args[:decline_time] if args.key?(:decline_time)
2064
+ @id = args[:id] if args.key?(:id)
2065
+ @state = args[:state] if args.key?(:state)
2066
+ @version = args[:version] if args.key?(:version)
2067
+ end
2068
+ end
2069
+
2070
+ # Metadata associated with a project provision operation.
2071
+ class GoogleCloudDiscoveryengineV1ProvisionProjectMetadata
2072
+ include Google::Apis::Core::Hashable
2073
+
2074
+ def initialize(**args)
2075
+ update!(**args)
2076
+ end
2077
+
2078
+ # Update properties of this object
2079
+ def update!(**args)
2080
+ end
2081
+ end
2082
+
1280
2083
  # Metadata related to the progress of the PurgeDocuments operation. This will be
1281
2084
  # returned by the google.longrunning.Operation.metadata field.
1282
2085
  class GoogleCloudDiscoveryengineV1PurgeDocumentsMetadata
@@ -1666,6 +2469,64 @@ module Google
1666
2469
  end
1667
2470
  end
1668
2471
 
2472
+ # AlloyDB source import data from.
2473
+ class GoogleCloudDiscoveryengineV1alphaAlloyDbSource
2474
+ include Google::Apis::Core::Hashable
2475
+
2476
+ # Required. The AlloyDB cluster to copy the data from with a length limit of 256
2477
+ # characters.
2478
+ # Corresponds to the JSON property `clusterId`
2479
+ # @return [String]
2480
+ attr_accessor :cluster_id
2481
+
2482
+ # Required. The AlloyDB database to copy the data from with a length limit of
2483
+ # 256 characters.
2484
+ # Corresponds to the JSON property `databaseId`
2485
+ # @return [String]
2486
+ attr_accessor :database_id
2487
+
2488
+ # Intermediate Cloud Storage directory used for the import with a length limit
2489
+ # of 2,000 characters. Can be specified if one wants to have the AlloyDB export
2490
+ # to a specific Cloud Storage directory. Ensure that the AlloyDB service account
2491
+ # has the necessary Cloud Storage Admin permissions to access the specified
2492
+ # Cloud Storage directory.
2493
+ # Corresponds to the JSON property `gcsStagingDir`
2494
+ # @return [String]
2495
+ attr_accessor :gcs_staging_dir
2496
+
2497
+ # Required. The AlloyDB location to copy the data from with a length limit of
2498
+ # 256 characters.
2499
+ # Corresponds to the JSON property `locationId`
2500
+ # @return [String]
2501
+ attr_accessor :location_id
2502
+
2503
+ # The project ID that the AlloyDB source is in with a length limit of 128
2504
+ # characters. If not specified, inherits the project ID from the parent request.
2505
+ # Corresponds to the JSON property `projectId`
2506
+ # @return [String]
2507
+ attr_accessor :project_id
2508
+
2509
+ # Required. The AlloyDB table to copy the data from with a length limit of 256
2510
+ # characters.
2511
+ # Corresponds to the JSON property `tableId`
2512
+ # @return [String]
2513
+ attr_accessor :table_id
2514
+
2515
+ def initialize(**args)
2516
+ update!(**args)
2517
+ end
2518
+
2519
+ # Update properties of this object
2520
+ def update!(**args)
2521
+ @cluster_id = args[:cluster_id] if args.key?(:cluster_id)
2522
+ @database_id = args[:database_id] if args.key?(:database_id)
2523
+ @gcs_staging_dir = args[:gcs_staging_dir] if args.key?(:gcs_staging_dir)
2524
+ @location_id = args[:location_id] if args.key?(:location_id)
2525
+ @project_id = args[:project_id] if args.key?(:project_id)
2526
+ @table_id = args[:table_id] if args.key?(:table_id)
2527
+ end
2528
+ end
2529
+
1669
2530
  # Defines an answer.
1670
2531
  class GoogleCloudDiscoveryengineV1alphaAnswer
1671
2532
  include Google::Apis::Core::Hashable
@@ -1849,6 +2710,21 @@ module Google
1849
2710
  # @return [String]
1850
2711
  attr_accessor :session
1851
2712
 
2713
+ # The user labels applied to a resource must meet the following requirements: *
2714
+ # Each resource can have multiple labels, up to a maximum of 64. * Each label
2715
+ # must be a key-value pair. * Keys have a minimum length of 1 character and a
2716
+ # maximum length of 63 characters and cannot be empty. Values can be empty and
2717
+ # have a maximum length of 63 characters. * Keys and values can contain only
2718
+ # lowercase letters, numeric characters, underscores, and dashes. All characters
2719
+ # must use UTF-8 encoding, and international characters are allowed. * The key
2720
+ # portion of a label must be unique. However, you can use the same key with
2721
+ # multiple resources. * Keys must start with a lowercase letter or international
2722
+ # character. See [Google Cloud Document](https://cloud.google.com/resource-
2723
+ # manager/docs/creating-managing-labels#requirements) for more details.
2724
+ # Corresponds to the JSON property `userLabels`
2725
+ # @return [Hash<String,String>]
2726
+ attr_accessor :user_labels
2727
+
1852
2728
  # A unique identifier for tracking visitors. For example, this could be
1853
2729
  # implemented with an HTTP cookie, which should be able to uniquely identify a
1854
2730
  # visitor on a single device. This unique identifier should not change if the
@@ -1874,6 +2750,7 @@ module Google
1874
2750
  @safety_spec = args[:safety_spec] if args.key?(:safety_spec)
1875
2751
  @search_spec = args[:search_spec] if args.key?(:search_spec)
1876
2752
  @session = args[:session] if args.key?(:session)
2753
+ @user_labels = args[:user_labels] if args.key?(:user_labels)
1877
2754
  @user_pseudo_id = args[:user_pseudo_id] if args.key?(:user_pseudo_id)
1878
2755
  end
1879
2756
  end
@@ -1900,6 +2777,15 @@ module Google
1900
2777
  attr_accessor :ignore_adversarial_query
1901
2778
  alias_method :ignore_adversarial_query?, :ignore_adversarial_query
1902
2779
 
2780
+ # Specifies whether to filter out queries that have low relevance. If this field
2781
+ # is set to `false`, all search results are used regardless of relevance to
2782
+ # generate answers. If set to `true` or unset, the behavior will be determined
2783
+ # automatically by the service.
2784
+ # Corresponds to the JSON property `ignoreLowRelevantContent`
2785
+ # @return [Boolean]
2786
+ attr_accessor :ignore_low_relevant_content
2787
+ alias_method :ignore_low_relevant_content?, :ignore_low_relevant_content
2788
+
1903
2789
  # Specifies whether to filter out queries that are not answer-seeking. The
1904
2790
  # default value is `false`. Google employs search-query classification to detect
1905
2791
  # answer-seeking queries. No answer is returned if the search query is
@@ -1936,6 +2822,7 @@ module Google
1936
2822
  def update!(**args)
1937
2823
  @answer_language_code = args[:answer_language_code] if args.key?(:answer_language_code)
1938
2824
  @ignore_adversarial_query = args[:ignore_adversarial_query] if args.key?(:ignore_adversarial_query)
2825
+ @ignore_low_relevant_content = args[:ignore_low_relevant_content] if args.key?(:ignore_low_relevant_content)
1939
2826
  @ignore_non_answer_seeking_query = args[:ignore_non_answer_seeking_query] if args.key?(:ignore_non_answer_seeking_query)
1940
2827
  @include_citations = args[:include_citations] if args.key?(:include_citations)
1941
2828
  @model_spec = args[:model_spec] if args.key?(:model_spec)
@@ -2132,6 +3019,14 @@ module Google
2132
3019
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec]
2133
3020
  attr_accessor :custom_fine_tuning_spec
2134
3021
 
3022
+ # Specs defining dataStores to filter on in a search call and configurations for
3023
+ # those dataStores. This is only considered for engines with multiple dataStores
3024
+ # use case. For single dataStore within an engine, they should use the specs at
3025
+ # the top level.
3026
+ # Corresponds to the JSON property `dataStoreSpecs`
3027
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchRequestDataStoreSpec>]
3028
+ attr_accessor :data_store_specs
3029
+
2135
3030
  # The filter syntax consists of an expression language for constructing a
2136
3031
  # predicate from one or more fields of the documents being filtered. Filter
2137
3032
  # expression is case-sensitive. This will be used to filter search results which
@@ -2179,6 +3074,7 @@ module Google
2179
3074
  def update!(**args)
2180
3075
  @boost_spec = args[:boost_spec] if args.key?(:boost_spec)
2181
3076
  @custom_fine_tuning_spec = args[:custom_fine_tuning_spec] if args.key?(:custom_fine_tuning_spec)
3077
+ @data_store_specs = args[:data_store_specs] if args.key?(:data_store_specs)
2182
3078
  @filter = args[:filter] if args.key?(:filter)
2183
3079
  @max_return_results = args[:max_return_results] if args.key?(:max_return_results)
2184
3080
  @order_by = args[:order_by] if args.key?(:order_by)
@@ -2533,6 +3429,12 @@ module Google
2533
3429
  # @return [String]
2534
3430
  attr_accessor :page_identifier
2535
3431
 
3432
+ # The structured JSON metadata for the document. It is populated from the struct
3433
+ # data from the Chunk in search result.
3434
+ # Corresponds to the JSON property `structData`
3435
+ # @return [Hash<String,Object>]
3436
+ attr_accessor :struct_data
3437
+
2536
3438
  # Title.
2537
3439
  # Corresponds to the JSON property `title`
2538
3440
  # @return [String]
@@ -2551,6 +3453,7 @@ module Google
2551
3453
  def update!(**args)
2552
3454
  @document = args[:document] if args.key?(:document)
2553
3455
  @page_identifier = args[:page_identifier] if args.key?(:page_identifier)
3456
+ @struct_data = args[:struct_data] if args.key?(:struct_data)
2554
3457
  @title = args[:title] if args.key?(:title)
2555
3458
  @uri = args[:uri] if args.key?(:uri)
2556
3459
  end
@@ -2570,6 +3473,12 @@ module Google
2570
3473
  # @return [String]
2571
3474
  attr_accessor :document
2572
3475
 
3476
+ # The structured JSON metadata for the document. It is populated from the struct
3477
+ # data from the Chunk in search result.
3478
+ # Corresponds to the JSON property `structData`
3479
+ # @return [Hash<String,Object>]
3480
+ attr_accessor :struct_data
3481
+
2573
3482
  # Title.
2574
3483
  # Corresponds to the JSON property `title`
2575
3484
  # @return [String]
@@ -2588,6 +3497,7 @@ module Google
2588
3497
  def update!(**args)
2589
3498
  @chunk_contents = args[:chunk_contents] if args.key?(:chunk_contents)
2590
3499
  @document = args[:document] if args.key?(:document)
3500
+ @struct_data = args[:struct_data] if args.key?(:struct_data)
2591
3501
  @title = args[:title] if args.key?(:title)
2592
3502
  @uri = args[:uri] if args.key?(:uri)
2593
3503
  end
@@ -3284,6 +4194,134 @@ module Google
3284
4194
  end
3285
4195
  end
3286
4196
 
4197
+ # Request for CheckRequirement method.
4198
+ class GoogleCloudDiscoveryengineV1alphaCheckRequirementRequest
4199
+ include Google::Apis::Core::Hashable
4200
+
4201
+ # A Requirement.type specifying the requirement to check.
4202
+ # Corresponds to the JSON property `requirementType`
4203
+ # @return [String]
4204
+ attr_accessor :requirement_type
4205
+
4206
+ # The resources to be checked for this requirement.
4207
+ # Corresponds to the JSON property `resources`
4208
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleApiMonitoredResource>]
4209
+ attr_accessor :resources
4210
+
4211
+ def initialize(**args)
4212
+ update!(**args)
4213
+ end
4214
+
4215
+ # Update properties of this object
4216
+ def update!(**args)
4217
+ @requirement_type = args[:requirement_type] if args.key?(:requirement_type)
4218
+ @resources = args[:resources] if args.key?(:resources)
4219
+ end
4220
+ end
4221
+
4222
+ # Response for CheckRequirement method.
4223
+ class GoogleCloudDiscoveryengineV1alphaCheckRequirementResponse
4224
+ include Google::Apis::Core::Hashable
4225
+
4226
+ # Metric results.
4227
+ # Corresponds to the JSON property `metricResults`
4228
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCheckRequirementResponseMetricQueryResult>]
4229
+ attr_accessor :metric_results
4230
+
4231
+ # Timestamp of the oldest calculated metric (i.e. the most stale metric).
4232
+ # Indicates that the `requirement_result` may not accurately reflect any Event
4233
+ # and Product Catalog updates performed after this time.
4234
+ # Corresponds to the JSON property `oldestMetricTimestamp`
4235
+ # @return [String]
4236
+ attr_accessor :oldest_metric_timestamp
4237
+
4238
+ # A data requirement.
4239
+ # Corresponds to the JSON property `requirement`
4240
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaRequirement]
4241
+ attr_accessor :requirement
4242
+
4243
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
4244
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
4245
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
4246
+ # "Summary size limit" description: "Determines if a summary is less than 100
4247
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
4248
+ # Requestor is owner" description: "Determines if requestor is the document
4249
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
4250
+ # Logic): title: "Public documents" description: "Determine whether the document
4251
+ # should be publicly visible" expression: "document.type != 'private' &&
4252
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
4253
+ # string" description: "Create a notification string with a timestamp."
4254
+ # expression: "'New message received at ' + string(document.create_time)" The
4255
+ # exact variables and functions that may be referenced within an expression are
4256
+ # determined by the service that evaluates it. See the service documentation for
4257
+ # additional information.
4258
+ # Corresponds to the JSON property `requirementCondition`
4259
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleTypeExpr]
4260
+ attr_accessor :requirement_condition
4261
+
4262
+ # Requirement result, e.g. pass or fail.
4263
+ # Corresponds to the JSON property `requirementResult`
4264
+ # @return [String]
4265
+ attr_accessor :requirement_result
4266
+
4267
+ def initialize(**args)
4268
+ update!(**args)
4269
+ end
4270
+
4271
+ # Update properties of this object
4272
+ def update!(**args)
4273
+ @metric_results = args[:metric_results] if args.key?(:metric_results)
4274
+ @oldest_metric_timestamp = args[:oldest_metric_timestamp] if args.key?(:oldest_metric_timestamp)
4275
+ @requirement = args[:requirement] if args.key?(:requirement)
4276
+ @requirement_condition = args[:requirement_condition] if args.key?(:requirement_condition)
4277
+ @requirement_result = args[:requirement_result] if args.key?(:requirement_result)
4278
+ end
4279
+ end
4280
+
4281
+ # Metric result. The metric are in the requirement_condition.
4282
+ class GoogleCloudDiscoveryengineV1alphaCheckRequirementResponseMetricQueryResult
4283
+ include Google::Apis::Core::Hashable
4284
+
4285
+ # Type identifier of the metric corresponding to this query result.
4286
+ # Corresponds to the JSON property `metricType`
4287
+ # @return [String]
4288
+ attr_accessor :metric_type
4289
+
4290
+ # This metric query name is mapping to variables in the requirement_condition.
4291
+ # Corresponds to the JSON property `name`
4292
+ # @return [String]
4293
+ attr_accessor :name
4294
+
4295
+ # Time corresponding to when this metric value was calculated.
4296
+ # Corresponds to the JSON property `timestamp`
4297
+ # @return [String]
4298
+ attr_accessor :timestamp
4299
+
4300
+ # The unit in which this metric is reported. Follows [The Unified Code for Units
4301
+ # of Measure](https://unitsofmeasure.org/ucum.html) standard.
4302
+ # Corresponds to the JSON property `unit`
4303
+ # @return [String]
4304
+ attr_accessor :unit
4305
+
4306
+ # A single strongly-typed value.
4307
+ # Corresponds to the JSON property `value`
4308
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleMonitoringV3TypedValue]
4309
+ attr_accessor :value
4310
+
4311
+ def initialize(**args)
4312
+ update!(**args)
4313
+ end
4314
+
4315
+ # Update properties of this object
4316
+ def update!(**args)
4317
+ @metric_type = args[:metric_type] if args.key?(:metric_type)
4318
+ @name = args[:name] if args.key?(:name)
4319
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
4320
+ @unit = args[:unit] if args.key?(:unit)
4321
+ @value = args[:value] if args.key?(:value)
4322
+ end
4323
+ end
4324
+
3287
4325
  # Chunk captures all raw metadata information of items to be recommended or
3288
4326
  # searched in the chunk mode.
3289
4327
  class GoogleCloudDiscoveryengineV1alphaChunk
@@ -3330,9 +4368,9 @@ module Google
3330
4368
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaChunkPageSpan]
3331
4369
  attr_accessor :page_span
3332
4370
 
3333
- # Represents the relevance score based on similarity. Higher score represents
3334
- # the chunk relevance. The score is in range [-1.0, 1.0]. Only populated on
3335
- # SearchService.SearchResponse
4371
+ # Output only. Represents the relevance score based on similarity. Higher score
4372
+ # indicates higher chunk relevance. The score is in range [-1.0, 1.0]. Only
4373
+ # populated on SearchService.SearchResponse.
3336
4374
  # Corresponds to the JSON property `relevanceScore`
3337
4375
  # @return [Float]
3338
4376
  attr_accessor :relevance_score
@@ -3467,24 +4505,313 @@ module Google
3467
4505
  # @return [String]
3468
4506
  attr_accessor :instance_id
3469
4507
 
3470
- # Option for serverless export. Enabling this option will incur additional cost.
3471
- # More info can be found [here](https://cloud.google.com/sql/pricing#serverless).
3472
- # Corresponds to the JSON property `offload`
3473
- # @return [Boolean]
3474
- attr_accessor :offload
3475
- alias_method :offload?, :offload
4508
+ # Option for serverless export. Enabling this option will incur additional cost.
4509
+ # More info can be found [here](https://cloud.google.com/sql/pricing#serverless).
4510
+ # Corresponds to the JSON property `offload`
4511
+ # @return [Boolean]
4512
+ attr_accessor :offload
4513
+ alias_method :offload?, :offload
4514
+
4515
+ # The project ID that the Cloud SQL source is in with a length limit of 128
4516
+ # characters. If not specified, inherits the project ID from the parent request.
4517
+ # Corresponds to the JSON property `projectId`
4518
+ # @return [String]
4519
+ attr_accessor :project_id
4520
+
4521
+ # Required. The Cloud SQL table to copy the data from with a length limit of 256
4522
+ # characters.
4523
+ # Corresponds to the JSON property `tableId`
4524
+ # @return [String]
4525
+ attr_accessor :table_id
4526
+
4527
+ def initialize(**args)
4528
+ update!(**args)
4529
+ end
4530
+
4531
+ # Update properties of this object
4532
+ def update!(**args)
4533
+ @database_id = args[:database_id] if args.key?(:database_id)
4534
+ @gcs_staging_dir = args[:gcs_staging_dir] if args.key?(:gcs_staging_dir)
4535
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
4536
+ @offload = args[:offload] if args.key?(:offload)
4537
+ @project_id = args[:project_id] if args.key?(:project_id)
4538
+ @table_id = args[:table_id] if args.key?(:table_id)
4539
+ end
4540
+ end
4541
+
4542
+ # Response message for CompletionService.CompleteQuery method.
4543
+ class GoogleCloudDiscoveryengineV1alphaCompleteQueryResponse
4544
+ include Google::Apis::Core::Hashable
4545
+
4546
+ # Results of the matched query suggestions. The result list is ordered and the
4547
+ # first result is a top suggestion.
4548
+ # Corresponds to the JSON property `querySuggestions`
4549
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCompleteQueryResponseQuerySuggestion>]
4550
+ attr_accessor :query_suggestions
4551
+
4552
+ # True if the returned suggestions are all tail suggestions. For tail matching
4553
+ # to be triggered, include_tail_suggestions in the request must be true and
4554
+ # there must be no suggestions that match the full query.
4555
+ # Corresponds to the JSON property `tailMatchTriggered`
4556
+ # @return [Boolean]
4557
+ attr_accessor :tail_match_triggered
4558
+ alias_method :tail_match_triggered?, :tail_match_triggered
4559
+
4560
+ def initialize(**args)
4561
+ update!(**args)
4562
+ end
4563
+
4564
+ # Update properties of this object
4565
+ def update!(**args)
4566
+ @query_suggestions = args[:query_suggestions] if args.key?(:query_suggestions)
4567
+ @tail_match_triggered = args[:tail_match_triggered] if args.key?(:tail_match_triggered)
4568
+ end
4569
+ end
4570
+
4571
+ # Suggestions as search queries.
4572
+ class GoogleCloudDiscoveryengineV1alphaCompleteQueryResponseQuerySuggestion
4573
+ include Google::Apis::Core::Hashable
4574
+
4575
+ # The unique document field paths that serve as the source of this suggestion if
4576
+ # it was generated from completable fields. This field is only populated for the
4577
+ # document-completable model.
4578
+ # Corresponds to the JSON property `completableFieldPaths`
4579
+ # @return [Array<String>]
4580
+ attr_accessor :completable_field_paths
4581
+
4582
+ # The suggestion for the query.
4583
+ # Corresponds to the JSON property `suggestion`
4584
+ # @return [String]
4585
+ attr_accessor :suggestion
4586
+
4587
+ def initialize(**args)
4588
+ update!(**args)
4589
+ end
4590
+
4591
+ # Update properties of this object
4592
+ def update!(**args)
4593
+ @completable_field_paths = args[:completable_field_paths] if args.key?(:completable_field_paths)
4594
+ @suggestion = args[:suggestion] if args.key?(:suggestion)
4595
+ end
4596
+ end
4597
+
4598
+ # Detailed completion information including completion attribution token and
4599
+ # clicked completion info.
4600
+ class GoogleCloudDiscoveryengineV1alphaCompletionInfo
4601
+ include Google::Apis::Core::Hashable
4602
+
4603
+ # End user selected CompleteQueryResponse.QuerySuggestion.suggestion position,
4604
+ # starting from 0.
4605
+ # Corresponds to the JSON property `selectedPosition`
4606
+ # @return [Fixnum]
4607
+ attr_accessor :selected_position
4608
+
4609
+ # End user selected CompleteQueryResponse.QuerySuggestion.suggestion.
4610
+ # Corresponds to the JSON property `selectedSuggestion`
4611
+ # @return [String]
4612
+ attr_accessor :selected_suggestion
4613
+
4614
+ def initialize(**args)
4615
+ update!(**args)
4616
+ end
4617
+
4618
+ # Update properties of this object
4619
+ def update!(**args)
4620
+ @selected_position = args[:selected_position] if args.key?(:selected_position)
4621
+ @selected_suggestion = args[:selected_suggestion] if args.key?(:selected_suggestion)
4622
+ end
4623
+ end
4624
+
4625
+ # Defines circumstances to be checked before allowing a behavior
4626
+ class GoogleCloudDiscoveryengineV1alphaCondition
4627
+ include Google::Apis::Core::Hashable
4628
+
4629
+ # Range of time(s) specifying when condition is active. Maximum of 10 time
4630
+ # ranges.
4631
+ # Corresponds to the JSON property `activeTimeRange`
4632
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaConditionTimeRange>]
4633
+ attr_accessor :active_time_range
4634
+
4635
+ # Search only A list of terms to match the query on. Maximum of 10 query terms.
4636
+ # Corresponds to the JSON property `queryTerms`
4637
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaConditionQueryTerm>]
4638
+ attr_accessor :query_terms
4639
+
4640
+ def initialize(**args)
4641
+ update!(**args)
4642
+ end
4643
+
4644
+ # Update properties of this object
4645
+ def update!(**args)
4646
+ @active_time_range = args[:active_time_range] if args.key?(:active_time_range)
4647
+ @query_terms = args[:query_terms] if args.key?(:query_terms)
4648
+ end
4649
+ end
4650
+
4651
+ # Matcher for search request query
4652
+ class GoogleCloudDiscoveryengineV1alphaConditionQueryTerm
4653
+ include Google::Apis::Core::Hashable
4654
+
4655
+ # Whether the search query needs to exactly match the query term.
4656
+ # Corresponds to the JSON property `fullMatch`
4657
+ # @return [Boolean]
4658
+ attr_accessor :full_match
4659
+ alias_method :full_match?, :full_match
4660
+
4661
+ # The specific query value to match against Must be lowercase, must be UTF-8.
4662
+ # Can have at most 3 space separated terms if full_match is true. Cannot be an
4663
+ # empty string. Maximum length of 5000 characters.
4664
+ # Corresponds to the JSON property `value`
4665
+ # @return [String]
4666
+ attr_accessor :value
4667
+
4668
+ def initialize(**args)
4669
+ update!(**args)
4670
+ end
4671
+
4672
+ # Update properties of this object
4673
+ def update!(**args)
4674
+ @full_match = args[:full_match] if args.key?(:full_match)
4675
+ @value = args[:value] if args.key?(:value)
4676
+ end
4677
+ end
4678
+
4679
+ # Used for time-dependent conditions.
4680
+ class GoogleCloudDiscoveryengineV1alphaConditionTimeRange
4681
+ include Google::Apis::Core::Hashable
4682
+
4683
+ # End of time range. Range is inclusive. Must be in the future.
4684
+ # Corresponds to the JSON property `endTime`
4685
+ # @return [String]
4686
+ attr_accessor :end_time
4687
+
4688
+ # Start of time range. Range is inclusive.
4689
+ # Corresponds to the JSON property `startTime`
4690
+ # @return [String]
4691
+ attr_accessor :start_time
4692
+
4693
+ def initialize(**args)
4694
+ update!(**args)
4695
+ end
4696
+
4697
+ # Update properties of this object
4698
+ def update!(**args)
4699
+ @end_time = args[:end_time] if args.key?(:end_time)
4700
+ @start_time = args[:start_time] if args.key?(:start_time)
4701
+ end
4702
+ end
4703
+
4704
+ # Defines a conditioned behavior to employ during serving. Must be attached to a
4705
+ # ServingConfig to be considered at serving time. Permitted actions dependent on
4706
+ # `SolutionType`.
4707
+ class GoogleCloudDiscoveryengineV1alphaControl
4708
+ include Google::Apis::Core::Hashable
4709
+
4710
+ # Output only. List of all ServingConfig ids this control is attached to. May
4711
+ # take up to 10 minutes to update after changes.
4712
+ # Corresponds to the JSON property `associatedServingConfigIds`
4713
+ # @return [Array<String>]
4714
+ attr_accessor :associated_serving_config_ids
4715
+
4716
+ # Adjusts order of products in returned list.
4717
+ # Corresponds to the JSON property `boostAction`
4718
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaControlBoostAction]
4719
+ attr_accessor :boost_action
4720
+
4721
+ # Determines when the associated action will trigger. Omit to always apply the
4722
+ # action. Currently only a single condition may be specified. Otherwise an
4723
+ # INVALID ARGUMENT error is thrown.
4724
+ # Corresponds to the JSON property `conditions`
4725
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCondition>]
4726
+ attr_accessor :conditions
4727
+
4728
+ # Required. Human readable name. The identifier used in UI views. Must be UTF-8
4729
+ # encoded string. Length limit is 128 characters. Otherwise an INVALID ARGUMENT
4730
+ # error is thrown.
4731
+ # Corresponds to the JSON property `displayName`
4732
+ # @return [String]
4733
+ attr_accessor :display_name
4734
+
4735
+ # Specified which products may be included in results. Uses same filter as boost.
4736
+ # Corresponds to the JSON property `filterAction`
4737
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaControlFilterAction]
4738
+ attr_accessor :filter_action
4739
+
4740
+ # Immutable. Fully qualified name `projects/*/locations/global/dataStore/*/
4741
+ # controls/*`
4742
+ # Corresponds to the JSON property `name`
4743
+ # @return [String]
4744
+ attr_accessor :name
4745
+
4746
+ # Redirects a shopper to the provided URI.
4747
+ # Corresponds to the JSON property `redirectAction`
4748
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaControlRedirectAction]
4749
+ attr_accessor :redirect_action
4750
+
4751
+ # Required. Immutable. What solution the control belongs to. Must be compatible
4752
+ # with vertical of resource. Otherwise an INVALID ARGUMENT error is thrown.
4753
+ # Corresponds to the JSON property `solutionType`
4754
+ # @return [String]
4755
+ attr_accessor :solution_type
4756
+
4757
+ # Creates a set of terms that will act as synonyms of one another. Example: "
4758
+ # happy" will also be considered as "glad", "glad" will also be considered as "
4759
+ # happy".
4760
+ # Corresponds to the JSON property `synonymsAction`
4761
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaControlSynonymsAction]
4762
+ attr_accessor :synonyms_action
4763
+
4764
+ # Specifies the use case for the control. Affects what condition fields can be
4765
+ # set. Only applies to SOLUTION_TYPE_SEARCH. Currently only allow one use case
4766
+ # per control. Must be set when solution_type is SolutionType.
4767
+ # SOLUTION_TYPE_SEARCH.
4768
+ # Corresponds to the JSON property `useCases`
4769
+ # @return [Array<String>]
4770
+ attr_accessor :use_cases
4771
+
4772
+ def initialize(**args)
4773
+ update!(**args)
4774
+ end
4775
+
4776
+ # Update properties of this object
4777
+ def update!(**args)
4778
+ @associated_serving_config_ids = args[:associated_serving_config_ids] if args.key?(:associated_serving_config_ids)
4779
+ @boost_action = args[:boost_action] if args.key?(:boost_action)
4780
+ @conditions = args[:conditions] if args.key?(:conditions)
4781
+ @display_name = args[:display_name] if args.key?(:display_name)
4782
+ @filter_action = args[:filter_action] if args.key?(:filter_action)
4783
+ @name = args[:name] if args.key?(:name)
4784
+ @redirect_action = args[:redirect_action] if args.key?(:redirect_action)
4785
+ @solution_type = args[:solution_type] if args.key?(:solution_type)
4786
+ @synonyms_action = args[:synonyms_action] if args.key?(:synonyms_action)
4787
+ @use_cases = args[:use_cases] if args.key?(:use_cases)
4788
+ end
4789
+ end
4790
+
4791
+ # Adjusts order of products in returned list.
4792
+ class GoogleCloudDiscoveryengineV1alphaControlBoostAction
4793
+ include Google::Apis::Core::Hashable
4794
+
4795
+ # Required. Strength of the boost, which should be in [-1, 1]. Negative boost
4796
+ # means demotion. Default is 0.0 (No-op).
4797
+ # Corresponds to the JSON property `boost`
4798
+ # @return [Float]
4799
+ attr_accessor :boost
3476
4800
 
3477
- # The project ID that the Cloud SQL source is in with a length limit of 128
3478
- # characters. If not specified, inherits the project ID from the parent request.
3479
- # Corresponds to the JSON property `projectId`
4801
+ # Required. Specifies which data store's documents can be boosted by this
4802
+ # control. Full data store name e.g. projects/123/locations/global/collections/
4803
+ # default_collection/dataStores/default_data_store
4804
+ # Corresponds to the JSON property `dataStore`
3480
4805
  # @return [String]
3481
- attr_accessor :project_id
4806
+ attr_accessor :data_store
3482
4807
 
3483
- # Required. The Cloud SQL table to copy the data from with a length limit of 256
3484
- # characters.
3485
- # Corresponds to the JSON property `tableId`
4808
+ # Required. Specifies which products to apply the boost to. If no filter is
4809
+ # provided all products will be boosted (No-op). Syntax documentation: https://
4810
+ # cloud.google.com/retail/docs/filter-and-order Maximum length is 5000
4811
+ # characters. Otherwise an INVALID ARGUMENT error is thrown.
4812
+ # Corresponds to the JSON property `filter`
3486
4813
  # @return [String]
3487
- attr_accessor :table_id
4814
+ attr_accessor :filter
3488
4815
 
3489
4816
  def initialize(**args)
3490
4817
  update!(**args)
@@ -3492,32 +4819,29 @@ module Google
3492
4819
 
3493
4820
  # Update properties of this object
3494
4821
  def update!(**args)
3495
- @database_id = args[:database_id] if args.key?(:database_id)
3496
- @gcs_staging_dir = args[:gcs_staging_dir] if args.key?(:gcs_staging_dir)
3497
- @instance_id = args[:instance_id] if args.key?(:instance_id)
3498
- @offload = args[:offload] if args.key?(:offload)
3499
- @project_id = args[:project_id] if args.key?(:project_id)
3500
- @table_id = args[:table_id] if args.key?(:table_id)
4822
+ @boost = args[:boost] if args.key?(:boost)
4823
+ @data_store = args[:data_store] if args.key?(:data_store)
4824
+ @filter = args[:filter] if args.key?(:filter)
3501
4825
  end
3502
4826
  end
3503
4827
 
3504
- # Response message for CompletionService.CompleteQuery method.
3505
- class GoogleCloudDiscoveryengineV1alphaCompleteQueryResponse
4828
+ # Specified which products may be included in results. Uses same filter as boost.
4829
+ class GoogleCloudDiscoveryengineV1alphaControlFilterAction
3506
4830
  include Google::Apis::Core::Hashable
3507
4831
 
3508
- # Results of the matched query suggestions. The result list is ordered and the
3509
- # first result is a top suggestion.
3510
- # Corresponds to the JSON property `querySuggestions`
3511
- # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCompleteQueryResponseQuerySuggestion>]
3512
- attr_accessor :query_suggestions
4832
+ # Required. Specifies which data store's documents can be filtered by this
4833
+ # control. Full data store name e.g. projects/123/locations/global/collections/
4834
+ # default_collection/dataStores/default_data_store
4835
+ # Corresponds to the JSON property `dataStore`
4836
+ # @return [String]
4837
+ attr_accessor :data_store
3513
4838
 
3514
- # True if the returned suggestions are all tail suggestions. For tail matching
3515
- # to be triggered, include_tail_suggestions in the request must be true and
3516
- # there must be no suggestions that match the full query.
3517
- # Corresponds to the JSON property `tailMatchTriggered`
3518
- # @return [Boolean]
3519
- attr_accessor :tail_match_triggered
3520
- alias_method :tail_match_triggered?, :tail_match_triggered
4839
+ # Required. A filter to apply on the matching condition results. Required Syntax
4840
+ # documentation: https://cloud.google.com/retail/docs/filter-and-order Maximum
4841
+ # length is 5000 characters. Otherwise an INVALID ARGUMENT error is thrown.
4842
+ # Corresponds to the JSON property `filter`
4843
+ # @return [String]
4844
+ attr_accessor :filter
3521
4845
 
3522
4846
  def initialize(**args)
3523
4847
  update!(**args)
@@ -3525,26 +4849,21 @@ module Google
3525
4849
 
3526
4850
  # Update properties of this object
3527
4851
  def update!(**args)
3528
- @query_suggestions = args[:query_suggestions] if args.key?(:query_suggestions)
3529
- @tail_match_triggered = args[:tail_match_triggered] if args.key?(:tail_match_triggered)
4852
+ @data_store = args[:data_store] if args.key?(:data_store)
4853
+ @filter = args[:filter] if args.key?(:filter)
3530
4854
  end
3531
4855
  end
3532
4856
 
3533
- # Suggestions as search queries.
3534
- class GoogleCloudDiscoveryengineV1alphaCompleteQueryResponseQuerySuggestion
4857
+ # Redirects a shopper to the provided URI.
4858
+ class GoogleCloudDiscoveryengineV1alphaControlRedirectAction
3535
4859
  include Google::Apis::Core::Hashable
3536
4860
 
3537
- # The unique document field paths that serve as the source of this suggestion if
3538
- # it was generated from completable fields. This field is only populated for the
3539
- # document-completable model.
3540
- # Corresponds to the JSON property `completableFieldPaths`
3541
- # @return [Array<String>]
3542
- attr_accessor :completable_field_paths
3543
-
3544
- # The suggestion for the query.
3545
- # Corresponds to the JSON property `suggestion`
4861
+ # Required. The URI to which the shopper will be redirected. Required. URI must
4862
+ # have length equal or less than 2000 characters. Otherwise an INVALID ARGUMENT
4863
+ # error is thrown.
4864
+ # Corresponds to the JSON property `redirectUri`
3546
4865
  # @return [String]
3547
- attr_accessor :suggestion
4866
+ attr_accessor :redirect_uri
3548
4867
 
3549
4868
  def initialize(**args)
3550
4869
  update!(**args)
@@ -3552,26 +4871,21 @@ module Google
3552
4871
 
3553
4872
  # Update properties of this object
3554
4873
  def update!(**args)
3555
- @completable_field_paths = args[:completable_field_paths] if args.key?(:completable_field_paths)
3556
- @suggestion = args[:suggestion] if args.key?(:suggestion)
4874
+ @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
3557
4875
  end
3558
4876
  end
3559
4877
 
3560
- # Detailed completion information including completion attribution token and
3561
- # clicked completion info.
3562
- class GoogleCloudDiscoveryengineV1alphaCompletionInfo
4878
+ # Creates a set of terms that will act as synonyms of one another. Example: "
4879
+ # happy" will also be considered as "glad", "glad" will also be considered as "
4880
+ # happy".
4881
+ class GoogleCloudDiscoveryengineV1alphaControlSynonymsAction
3563
4882
  include Google::Apis::Core::Hashable
3564
4883
 
3565
- # End user selected CompleteQueryResponse.QuerySuggestion.suggestion position,
3566
- # starting from 0.
3567
- # Corresponds to the JSON property `selectedPosition`
3568
- # @return [Fixnum]
3569
- attr_accessor :selected_position
3570
-
3571
- # End user selected CompleteQueryResponse.QuerySuggestion.suggestion.
3572
- # Corresponds to the JSON property `selectedSuggestion`
3573
- # @return [String]
3574
- attr_accessor :selected_suggestion
4884
+ # Defines a set of synonyms. Can specify up to 100 synonyms. Must specify at
4885
+ # least 2 synonyms. Otherwise an INVALID ARGUMENT error is thrown.
4886
+ # Corresponds to the JSON property `synonyms`
4887
+ # @return [Array<String>]
4888
+ attr_accessor :synonyms
3575
4889
 
3576
4890
  def initialize(**args)
3577
4891
  update!(**args)
@@ -3579,8 +4893,7 @@ module Google
3579
4893
 
3580
4894
  # Update properties of this object
3581
4895
  def update!(**args)
3582
- @selected_position = args[:selected_position] if args.key?(:selected_position)
3583
- @selected_suggestion = args[:selected_suggestion] if args.key?(:selected_suggestion)
4896
+ @synonyms = args[:synonyms] if args.key?(:synonyms)
3584
4897
  end
3585
4898
  end
3586
4899
 
@@ -4024,7 +5337,7 @@ module Google
4024
5337
  # @return [String]
4025
5338
  attr_accessor :model_state
4026
5339
 
4027
- #
5340
+ # The version of the model.
4028
5341
  # Corresponds to the JSON property `modelVersion`
4029
5342
  # @return [Fixnum]
4030
5343
  attr_accessor :model_version
@@ -5026,8 +6339,8 @@ module Google
5026
6339
  class GoogleCloudDiscoveryengineV1alphaEngineCommonConfig
5027
6340
  include Google::Apis::Core::Hashable
5028
6341
 
5029
- # Immutable. The name of the company, business or entity that is associated with
5030
- # the engine. Setting this may help improve LLM related features.
6342
+ # The name of the company, business or entity that is associated with the engine.
6343
+ # Setting this may help improve LLM related features.
5031
6344
  # Corresponds to the JSON property `companyName`
5032
6345
  # @return [String]
5033
6346
  attr_accessor :company_name
@@ -5554,6 +6867,17 @@ module Google
5554
6867
  # @return [String]
5555
6868
  attr_accessor :retrievable_option
5556
6869
 
6870
+ # Field paths for indexing custom attribute from schema.org data. More details
6871
+ # of schema.org and its defined types can be found at [schema.org](https://
6872
+ # schema.org). It is only used on advanced site search schema. Currently only
6873
+ # support full path from root. The full path to a field is constructed by
6874
+ # concatenating field names, starting from `_root`, with a period `.` as the
6875
+ # delimiter. Examples: * Publish date of the root: _root.datePublished * Publish
6876
+ # date of the reviews: _root.review.datePublished
6877
+ # Corresponds to the JSON property `schemaOrgPaths`
6878
+ # @return [Array<String>]
6879
+ attr_accessor :schema_org_paths
6880
+
5557
6881
  # If searchable_option is SEARCHABLE_ENABLED, field values are searchable by
5558
6882
  # text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is
5559
6883
  # numerical, field values will not be searchable by text queries in
@@ -5583,6 +6907,7 @@ module Google
5583
6907
  @key_property_type = args[:key_property_type] if args.key?(:key_property_type)
5584
6908
  @recs_filterable_option = args[:recs_filterable_option] if args.key?(:recs_filterable_option)
5585
6909
  @retrievable_option = args[:retrievable_option] if args.key?(:retrievable_option)
6910
+ @schema_org_paths = args[:schema_org_paths] if args.key?(:schema_org_paths)
5586
6911
  @searchable_option = args[:searchable_option] if args.key?(:searchable_option)
5587
6912
  end
5588
6913
  end
@@ -5826,6 +7151,11 @@ module Google
5826
7151
  class GoogleCloudDiscoveryengineV1alphaImportDocumentsRequest
5827
7152
  include Google::Apis::Core::Hashable
5828
7153
 
7154
+ # AlloyDB source import data from.
7155
+ # Corresponds to the JSON property `alloyDbSource`
7156
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAlloyDbSource]
7157
+ attr_accessor :alloy_db_source
7158
+
5829
7159
  # Whether to automatically generate IDs for the documents if absent. If set to `
5830
7160
  # true`, Document.ids are automatically generated based on the hash of the
5831
7161
  # payload, where IDs may not be consistent during multiple imports. In which
@@ -5923,6 +7253,7 @@ module Google
5923
7253
 
5924
7254
  # Update properties of this object
5925
7255
  def update!(**args)
7256
+ @alloy_db_source = args[:alloy_db_source] if args.key?(:alloy_db_source)
5926
7257
  @auto_generate_ids = args[:auto_generate_ids] if args.key?(:auto_generate_ids)
5927
7258
  @bigquery_source = args[:bigquery_source] if args.key?(:bigquery_source)
5928
7259
  @bigtable_source = args[:bigtable_source] if args.key?(:bigtable_source)
@@ -6307,6 +7638,31 @@ module Google
6307
7638
  end
6308
7639
  end
6309
7640
 
7641
+ # Response for ListControls method.
7642
+ class GoogleCloudDiscoveryengineV1alphaListControlsResponse
7643
+ include Google::Apis::Core::Hashable
7644
+
7645
+ # All the Controls for a given data store.
7646
+ # Corresponds to the JSON property `controls`
7647
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaControl>]
7648
+ attr_accessor :controls
7649
+
7650
+ # Pagination token, if not returned indicates the last page.
7651
+ # Corresponds to the JSON property `nextPageToken`
7652
+ # @return [String]
7653
+ attr_accessor :next_page_token
7654
+
7655
+ def initialize(**args)
7656
+ update!(**args)
7657
+ end
7658
+
7659
+ # Update properties of this object
7660
+ def update!(**args)
7661
+ @controls = args[:controls] if args.key?(:controls)
7662
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
7663
+ end
7664
+ end
7665
+
6310
7666
  # Response for ListConversations method.
6311
7667
  class GoogleCloudDiscoveryengineV1alphaListConversationsResponse
6312
7668
  include Google::Apis::Core::Hashable
@@ -7223,6 +8579,21 @@ module Google
7223
8579
  # @return [Fixnum]
7224
8580
  attr_accessor :top_n
7225
8581
 
8582
+ # The user labels applied to a resource must meet the following requirements: *
8583
+ # Each resource can have multiple labels, up to a maximum of 64. * Each label
8584
+ # must be a key-value pair. * Keys have a minimum length of 1 character and a
8585
+ # maximum length of 63 characters and cannot be empty. Values can be empty and
8586
+ # have a maximum length of 63 characters. * Keys and values can contain only
8587
+ # lowercase letters, numeric characters, underscores, and dashes. All characters
8588
+ # must use UTF-8 encoding, and international characters are allowed. * The key
8589
+ # portion of a label must be unique. However, you can use the same key with
8590
+ # multiple resources. * Keys must start with a lowercase letter or international
8591
+ # character. See [Google Cloud Document](https://cloud.google.com/resource-
8592
+ # manager/docs/creating-managing-labels#requirements) for more details.
8593
+ # Corresponds to the JSON property `userLabels`
8594
+ # @return [Hash<String,String>]
8595
+ attr_accessor :user_labels
8596
+
7226
8597
  def initialize(**args)
7227
8598
  update!(**args)
7228
8599
  end
@@ -7234,6 +8605,7 @@ module Google
7234
8605
  @query = args[:query] if args.key?(:query)
7235
8606
  @records = args[:records] if args.key?(:records)
7236
8607
  @top_n = args[:top_n] if args.key?(:top_n)
8608
+ @user_labels = args[:user_labels] if args.key?(:user_labels)
7237
8609
  end
7238
8610
  end
7239
8611
 
@@ -7631,15 +9003,204 @@ module Google
7631
9003
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaReplyReference>]
7632
9004
  attr_accessor :references
7633
9005
 
7634
- # DEPRECATED: use `summary` instead. Text reply.
7635
- # Corresponds to the JSON property `reply`
9006
+ # DEPRECATED: use `summary` instead. Text reply.
9007
+ # Corresponds to the JSON property `reply`
9008
+ # @return [String]
9009
+ attr_accessor :reply
9010
+
9011
+ # Summary of the top N search results specified by the summary spec.
9012
+ # Corresponds to the JSON property `summary`
9013
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseSummary]
9014
+ attr_accessor :summary
9015
+
9016
+ def initialize(**args)
9017
+ update!(**args)
9018
+ end
9019
+
9020
+ # Update properties of this object
9021
+ def update!(**args)
9022
+ @references = args[:references] if args.key?(:references)
9023
+ @reply = args[:reply] if args.key?(:reply)
9024
+ @summary = args[:summary] if args.key?(:summary)
9025
+ end
9026
+ end
9027
+
9028
+ # Defines reference in reply.
9029
+ class GoogleCloudDiscoveryengineV1alphaReplyReference
9030
+ include Google::Apis::Core::Hashable
9031
+
9032
+ # Anchor text.
9033
+ # Corresponds to the JSON property `anchorText`
9034
+ # @return [String]
9035
+ attr_accessor :anchor_text
9036
+
9037
+ # Anchor text end index.
9038
+ # Corresponds to the JSON property `end`
9039
+ # @return [Fixnum]
9040
+ attr_accessor :end
9041
+
9042
+ # Anchor text start index.
9043
+ # Corresponds to the JSON property `start`
9044
+ # @return [Fixnum]
9045
+ attr_accessor :start
9046
+
9047
+ # URI link reference.
9048
+ # Corresponds to the JSON property `uri`
9049
+ # @return [String]
9050
+ attr_accessor :uri
9051
+
9052
+ def initialize(**args)
9053
+ update!(**args)
9054
+ end
9055
+
9056
+ # Update properties of this object
9057
+ def update!(**args)
9058
+ @anchor_text = args[:anchor_text] if args.key?(:anchor_text)
9059
+ @end = args[:end] if args.key?(:end)
9060
+ @start = args[:start] if args.key?(:start)
9061
+ @uri = args[:uri] if args.key?(:uri)
9062
+ end
9063
+ end
9064
+
9065
+ # Request for ReportConsentChange method.
9066
+ class GoogleCloudDiscoveryengineV1alphaReportConsentChangeRequest
9067
+ include Google::Apis::Core::Hashable
9068
+
9069
+ # Required. Whether customer decides to accept or decline service term. At this
9070
+ # moment, only accept action is supported.
9071
+ # Corresponds to the JSON property `consentChangeAction`
9072
+ # @return [String]
9073
+ attr_accessor :consent_change_action
9074
+
9075
+ # Required. The unique identifier of the terms of service to update. Available
9076
+ # term ids: * `GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/
9077
+ # retail/data-use-terms). When using this service term id, the acceptable
9078
+ # service_term_version to provide is `2022-11-23`.
9079
+ # Corresponds to the JSON property `serviceTermId`
9080
+ # @return [String]
9081
+ attr_accessor :service_term_id
9082
+
9083
+ # Required. The version string of the terms of service to update.
9084
+ # Corresponds to the JSON property `serviceTermVersion`
9085
+ # @return [String]
9086
+ attr_accessor :service_term_version
9087
+
9088
+ def initialize(**args)
9089
+ update!(**args)
9090
+ end
9091
+
9092
+ # Update properties of this object
9093
+ def update!(**args)
9094
+ @consent_change_action = args[:consent_change_action] if args.key?(:consent_change_action)
9095
+ @service_term_id = args[:service_term_id] if args.key?(:service_term_id)
9096
+ @service_term_version = args[:service_term_version] if args.key?(:service_term_version)
9097
+ end
9098
+ end
9099
+
9100
+ # A data requirement.
9101
+ class GoogleCloudDiscoveryengineV1alphaRequirement
9102
+ include Google::Apis::Core::Hashable
9103
+
9104
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
9105
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
9106
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
9107
+ # "Summary size limit" description: "Determines if a summary is less than 100
9108
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
9109
+ # Requestor is owner" description: "Determines if requestor is the document
9110
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
9111
+ # Logic): title: "Public documents" description: "Determine whether the document
9112
+ # should be publicly visible" expression: "document.type != 'private' &&
9113
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
9114
+ # string" description: "Create a notification string with a timestamp."
9115
+ # expression: "'New message received at ' + string(document.create_time)" The
9116
+ # exact variables and functions that may be referenced within an expression are
9117
+ # determined by the service that evaluates it. See the service documentation for
9118
+ # additional information.
9119
+ # Corresponds to the JSON property `condition`
9120
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleTypeExpr]
9121
+ attr_accessor :condition
9122
+
9123
+ # The description of the requirement.
9124
+ # Corresponds to the JSON property `description`
9125
+ # @return [String]
9126
+ attr_accessor :description
9127
+
9128
+ # The name of the requirement.
9129
+ # Corresponds to the JSON property `displayName`
9130
+ # @return [String]
9131
+ attr_accessor :display_name
9132
+
9133
+ # A list of the metric bindings to be used in `condition`.
9134
+ # Corresponds to the JSON property `metricBindings`
9135
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaRequirementMetricBinding>]
9136
+ attr_accessor :metric_bindings
9137
+
9138
+ # A list of threshold bindings to be used in `condition`.
9139
+ # Corresponds to the JSON property `thresholdBindings`
9140
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaRequirementThresholdBinding>]
9141
+ attr_accessor :threshold_bindings
9142
+
9143
+ # The requirement type, used as an identifier. Must be unique. The type should
9144
+ # prefix with service name to avoid possible collision. It's encoraged to use
9145
+ # natural hierarchical grouping for similar requirements. Examples: * `library.
9146
+ # googleapis.com/books/min_available_books` * `discoveryengine.googleapis.com/
9147
+ # media_rec/recommended_for_you/conversion_rate`
9148
+ # Corresponds to the JSON property `type`
9149
+ # @return [String]
9150
+ attr_accessor :type
9151
+
9152
+ # A list of the metric bindings to be used in `condition`.
9153
+ # Corresponds to the JSON property `violationSamplesBindings`
9154
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaRequirementViolationSamplesBinding>]
9155
+ attr_accessor :violation_samples_bindings
9156
+
9157
+ def initialize(**args)
9158
+ update!(**args)
9159
+ end
9160
+
9161
+ # Update properties of this object
9162
+ def update!(**args)
9163
+ @condition = args[:condition] if args.key?(:condition)
9164
+ @description = args[:description] if args.key?(:description)
9165
+ @display_name = args[:display_name] if args.key?(:display_name)
9166
+ @metric_bindings = args[:metric_bindings] if args.key?(:metric_bindings)
9167
+ @threshold_bindings = args[:threshold_bindings] if args.key?(:threshold_bindings)
9168
+ @type = args[:type] if args.key?(:type)
9169
+ @violation_samples_bindings = args[:violation_samples_bindings] if args.key?(:violation_samples_bindings)
9170
+ end
9171
+ end
9172
+
9173
+ # Specifies a metrics query and bind its result to a variable which will be used
9174
+ # in the `condition`.
9175
+ class GoogleCloudDiscoveryengineV1alphaRequirementMetricBinding
9176
+ include Google::Apis::Core::Hashable
9177
+
9178
+ # The category of the metric's target resource. Example: "Events"
9179
+ # Corresponds to the JSON property `category`
9180
+ # @return [String]
9181
+ attr_accessor :category
9182
+
9183
+ # Human readable description of the corresponding metric filter.
9184
+ # Corresponds to the JSON property `description`
9185
+ # @return [String]
9186
+ attr_accessor :description
9187
+
9188
+ # The filter string used for metrics query. Example: "metric.type = \"
9189
+ # discoveryengine.googleapis.com/events/day_count\" AND " "metric.conditions.
9190
+ # time_range = \"NINETY_DAYS\""
9191
+ # Corresponds to the JSON property `metricFilter`
7636
9192
  # @return [String]
7637
- attr_accessor :reply
9193
+ attr_accessor :metric_filter
7638
9194
 
7639
- # Summary of the top N search results specified by the summary spec.
7640
- # Corresponds to the JSON property `summary`
7641
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaSearchResponseSummary]
7642
- attr_accessor :summary
9195
+ # The resource being monitored for the metric.
9196
+ # Corresponds to the JSON property `resourceType`
9197
+ # @return [String]
9198
+ attr_accessor :resource_type
9199
+
9200
+ # The variable id to be referenced in `condition`.
9201
+ # Corresponds to the JSON property `variableId`
9202
+ # @return [String]
9203
+ attr_accessor :variable_id
7643
9204
 
7644
9205
  def initialize(**args)
7645
9206
  update!(**args)
@@ -7647,35 +9208,41 @@ module Google
7647
9208
 
7648
9209
  # Update properties of this object
7649
9210
  def update!(**args)
7650
- @references = args[:references] if args.key?(:references)
7651
- @reply = args[:reply] if args.key?(:reply)
7652
- @summary = args[:summary] if args.key?(:summary)
9211
+ @category = args[:category] if args.key?(:category)
9212
+ @description = args[:description] if args.key?(:description)
9213
+ @metric_filter = args[:metric_filter] if args.key?(:metric_filter)
9214
+ @resource_type = args[:resource_type] if args.key?(:resource_type)
9215
+ @variable_id = args[:variable_id] if args.key?(:variable_id)
7653
9216
  end
7654
9217
  end
7655
9218
 
7656
- # Defines reference in reply.
7657
- class GoogleCloudDiscoveryengineV1alphaReplyReference
9219
+ # Specifies a multi-level threshold to apply to apply to a `metric_bindings` in
9220
+ # the `condition` CEL expression.
9221
+ class GoogleCloudDiscoveryengineV1alphaRequirementThresholdBinding
7658
9222
  include Google::Apis::Core::Hashable
7659
9223
 
7660
- # Anchor text.
7661
- # Corresponds to the JSON property `anchorText`
7662
- # @return [String]
7663
- attr_accessor :anchor_text
7664
-
7665
- # Anchor text end index.
7666
- # Corresponds to the JSON property `end`
7667
- # @return [Fixnum]
7668
- attr_accessor :end
9224
+ # Threshold to trigger a blocking failure. If not met, the requirement will
9225
+ # evaluate as a `FAILURE`.
9226
+ # Corresponds to the JSON property `blockingThreshold`
9227
+ # @return [Float]
9228
+ attr_accessor :blocking_threshold
7669
9229
 
7670
- # Anchor text start index.
7671
- # Corresponds to the JSON property `start`
7672
- # @return [Fixnum]
7673
- attr_accessor :start
9230
+ # Human readable description of the corresponding threshold and sub-requirement.
9231
+ # Corresponds to the JSON property `description`
9232
+ # @return [String]
9233
+ attr_accessor :description
7674
9234
 
7675
- # URI link reference.
7676
- # Corresponds to the JSON property `uri`
9235
+ # The variable id to be referenced in `condition`. Must be unique across all `
9236
+ # metric_bindings` and `threshold_bindings`.
9237
+ # Corresponds to the JSON property `variableId`
7677
9238
  # @return [String]
7678
- attr_accessor :uri
9239
+ attr_accessor :variable_id
9240
+
9241
+ # Threshold to trigger a warning. If not met, the requirement will evaluate as a
9242
+ # `WARNING`.
9243
+ # Corresponds to the JSON property `warningThreshold`
9244
+ # @return [Float]
9245
+ attr_accessor :warning_threshold
7679
9246
 
7680
9247
  def initialize(**args)
7681
9248
  update!(**args)
@@ -7683,35 +9250,35 @@ module Google
7683
9250
 
7684
9251
  # Update properties of this object
7685
9252
  def update!(**args)
7686
- @anchor_text = args[:anchor_text] if args.key?(:anchor_text)
7687
- @end = args[:end] if args.key?(:end)
7688
- @start = args[:start] if args.key?(:start)
7689
- @uri = args[:uri] if args.key?(:uri)
9253
+ @blocking_threshold = args[:blocking_threshold] if args.key?(:blocking_threshold)
9254
+ @description = args[:description] if args.key?(:description)
9255
+ @variable_id = args[:variable_id] if args.key?(:variable_id)
9256
+ @warning_threshold = args[:warning_threshold] if args.key?(:warning_threshold)
7690
9257
  end
7691
9258
  end
7692
9259
 
7693
- # Request for ReportConsentChange method.
7694
- class GoogleCloudDiscoveryengineV1alphaReportConsentChangeRequest
9260
+ # Specifies a samples query and bind its result to a variable which will be used
9261
+ # in the `condition`.
9262
+ class GoogleCloudDiscoveryengineV1alphaRequirementViolationSamplesBinding
7695
9263
  include Google::Apis::Core::Hashable
7696
9264
 
7697
- # Required. Whether customer decides to accept or decline service term. At this
7698
- # moment, only accept action is supported.
7699
- # Corresponds to the JSON property `consentChangeAction`
9265
+ # Description of this sample binding. Used by the UI to render user friendly
9266
+ # descriptions for each requirement condition. Should be less than 128
9267
+ # characters long.
9268
+ # Corresponds to the JSON property `description`
7700
9269
  # @return [String]
7701
- attr_accessor :consent_change_action
9270
+ attr_accessor :description
7702
9271
 
7703
- # Required. The unique identifier of the terms of service to update. Available
7704
- # term ids: * `GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/
7705
- # retail/data-use-terms). When using this service term id, the acceptable
7706
- # service_term_version to provide is `2022-11-23`.
7707
- # Corresponds to the JSON property `serviceTermId`
9272
+ # The filter string used for samples query. Example: "sample.type = \"retail.
9273
+ # googleapis.com/user_event\" AND " "sample.labels.event_type = \"PURCHASE\" "
9274
+ # Corresponds to the JSON property `sampleFilter`
7708
9275
  # @return [String]
7709
- attr_accessor :service_term_id
9276
+ attr_accessor :sample_filter
7710
9277
 
7711
- # Required. The version string of the terms of service to update.
7712
- # Corresponds to the JSON property `serviceTermVersion`
9278
+ # The variable id to be referenced in `condition`.
9279
+ # Corresponds to the JSON property `variableId`
7713
9280
  # @return [String]
7714
- attr_accessor :service_term_version
9281
+ attr_accessor :variable_id
7715
9282
 
7716
9283
  def initialize(**args)
7717
9284
  update!(**args)
@@ -7719,9 +9286,9 @@ module Google
7719
9286
 
7720
9287
  # Update properties of this object
7721
9288
  def update!(**args)
7722
- @consent_change_action = args[:consent_change_action] if args.key?(:consent_change_action)
7723
- @service_term_id = args[:service_term_id] if args.key?(:service_term_id)
7724
- @service_term_version = args[:service_term_version] if args.key?(:service_term_version)
9289
+ @description = args[:description] if args.key?(:description)
9290
+ @sample_filter = args[:sample_filter] if args.key?(:sample_filter)
9291
+ @variable_id = args[:variable_id] if args.key?(:variable_id)
7725
9292
  end
7726
9293
  end
7727
9294
 
@@ -10317,6 +11884,15 @@ module Google
10317
11884
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCompletionInfo]
10318
11885
  attr_accessor :completion_info
10319
11886
 
11887
+ # The DataStore resource full name, of the form `projects/`project`/locations/`
11888
+ # location`/collections/`collection_id`/dataStores/`data_store_id``. Optional.
11889
+ # Only required for user events whose data store can't by determined by
11890
+ # UserEvent.engine or UserEvent.documents. If data store is set in the parent of
11891
+ # write/import/collect user event requests, this field can be omitted.
11892
+ # Corresponds to the JSON property `dataStore`
11893
+ # @return [String]
11894
+ attr_accessor :data_store
11895
+
10320
11896
  # Should set to true if the request is made directly from the end user, in which
10321
11897
  # case the UserEvent.user_info.user_agent can be populated from the HTTP request.
10322
11898
  # This flag should be set only if the API request is made directly from the end
@@ -10339,6 +11915,14 @@ module Google
10339
11915
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaDocumentInfo>]
10340
11916
  attr_accessor :documents
10341
11917
 
11918
+ # The Engine resource name, in the form of `projects/`project`/locations/`
11919
+ # location`/collections/`collection_id`/engines/`engine_id``. Optional. Only
11920
+ # required for Engine produced user events. For example, user events from
11921
+ # blended search.
11922
+ # Corresponds to the JSON property `engine`
11923
+ # @return [String]
11924
+ attr_accessor :engine
11925
+
10342
11926
  # Only required for UserEventService.ImportUserEvents method. Timestamp of when
10343
11927
  # the user event happened.
10344
11928
  # Corresponds to the JSON property `eventTime`
@@ -10446,8 +12030,10 @@ module Google
10446
12030
  @attributes = args[:attributes] if args.key?(:attributes)
10447
12031
  @attribution_token = args[:attribution_token] if args.key?(:attribution_token)
10448
12032
  @completion_info = args[:completion_info] if args.key?(:completion_info)
12033
+ @data_store = args[:data_store] if args.key?(:data_store)
10449
12034
  @direct_user_request = args[:direct_user_request] if args.key?(:direct_user_request)
10450
12035
  @documents = args[:documents] if args.key?(:documents)
12036
+ @engine = args[:engine] if args.key?(:engine)
10451
12037
  @event_time = args[:event_time] if args.key?(:event_time)
10452
12038
  @event_type = args[:event_type] if args.key?(:event_type)
10453
12039
  @filter = args[:filter] if args.key?(:filter)
@@ -10475,17 +12061,296 @@ module Google
10475
12061
  # CollectUserEvent or if UserEvent.direct_user_request is set.
10476
12062
  # Corresponds to the JSON property `userAgent`
10477
12063
  # @return [String]
10478
- attr_accessor :user_agent
12064
+ attr_accessor :user_agent
12065
+
12066
+ # Highly recommended for logged-in users. Unique identifier for logged-in user,
12067
+ # such as a user name. Don't set for anonymous users. Always use a hashed value
12068
+ # for this ID. Don't set the field to the same fixed ID for different users.
12069
+ # This mixes the event history of those users together, which results in
12070
+ # degraded model quality. The field must be a UTF-8 encoded string with a length
12071
+ # limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
12072
+ # Corresponds to the JSON property `userId`
12073
+ # @return [String]
12074
+ attr_accessor :user_id
12075
+
12076
+ def initialize(**args)
12077
+ update!(**args)
12078
+ end
12079
+
12080
+ # Update properties of this object
12081
+ def update!(**args)
12082
+ @user_agent = args[:user_agent] if args.key?(:user_agent)
12083
+ @user_id = args[:user_id] if args.key?(:user_id)
12084
+ end
12085
+ end
12086
+
12087
+ # Metadata related to the progress of the SiteSearchEngineService.
12088
+ # BatchCreateTargetSites operation. This will be returned by the google.
12089
+ # longrunning.Operation.metadata field.
12090
+ class GoogleCloudDiscoveryengineV1betaBatchCreateTargetSiteMetadata
12091
+ include Google::Apis::Core::Hashable
12092
+
12093
+ # Operation create time.
12094
+ # Corresponds to the JSON property `createTime`
12095
+ # @return [String]
12096
+ attr_accessor :create_time
12097
+
12098
+ # Operation last update time. If the operation is done, this is also the finish
12099
+ # time.
12100
+ # Corresponds to the JSON property `updateTime`
12101
+ # @return [String]
12102
+ attr_accessor :update_time
12103
+
12104
+ def initialize(**args)
12105
+ update!(**args)
12106
+ end
12107
+
12108
+ # Update properties of this object
12109
+ def update!(**args)
12110
+ @create_time = args[:create_time] if args.key?(:create_time)
12111
+ @update_time = args[:update_time] if args.key?(:update_time)
12112
+ end
12113
+ end
12114
+
12115
+ # Response message for SiteSearchEngineService.BatchCreateTargetSites method.
12116
+ class GoogleCloudDiscoveryengineV1betaBatchCreateTargetSitesResponse
12117
+ include Google::Apis::Core::Hashable
12118
+
12119
+ # TargetSites created.
12120
+ # Corresponds to the JSON property `targetSites`
12121
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaTargetSite>]
12122
+ attr_accessor :target_sites
12123
+
12124
+ def initialize(**args)
12125
+ update!(**args)
12126
+ end
12127
+
12128
+ # Update properties of this object
12129
+ def update!(**args)
12130
+ @target_sites = args[:target_sites] if args.key?(:target_sites)
12131
+ end
12132
+ end
12133
+
12134
+ # Defines circumstances to be checked before allowing a behavior
12135
+ class GoogleCloudDiscoveryengineV1betaCondition
12136
+ include Google::Apis::Core::Hashable
12137
+
12138
+ # Range of time(s) specifying when condition is active. Maximum of 10 time
12139
+ # ranges.
12140
+ # Corresponds to the JSON property `activeTimeRange`
12141
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaConditionTimeRange>]
12142
+ attr_accessor :active_time_range
12143
+
12144
+ # Search only A list of terms to match the query on. Maximum of 10 query terms.
12145
+ # Corresponds to the JSON property `queryTerms`
12146
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaConditionQueryTerm>]
12147
+ attr_accessor :query_terms
12148
+
12149
+ def initialize(**args)
12150
+ update!(**args)
12151
+ end
12152
+
12153
+ # Update properties of this object
12154
+ def update!(**args)
12155
+ @active_time_range = args[:active_time_range] if args.key?(:active_time_range)
12156
+ @query_terms = args[:query_terms] if args.key?(:query_terms)
12157
+ end
12158
+ end
12159
+
12160
+ # Matcher for search request query
12161
+ class GoogleCloudDiscoveryengineV1betaConditionQueryTerm
12162
+ include Google::Apis::Core::Hashable
12163
+
12164
+ # Whether the search query needs to exactly match the query term.
12165
+ # Corresponds to the JSON property `fullMatch`
12166
+ # @return [Boolean]
12167
+ attr_accessor :full_match
12168
+ alias_method :full_match?, :full_match
12169
+
12170
+ # The specific query value to match against Must be lowercase, must be UTF-8.
12171
+ # Can have at most 3 space separated terms if full_match is true. Cannot be an
12172
+ # empty string. Maximum length of 5000 characters.
12173
+ # Corresponds to the JSON property `value`
12174
+ # @return [String]
12175
+ attr_accessor :value
12176
+
12177
+ def initialize(**args)
12178
+ update!(**args)
12179
+ end
12180
+
12181
+ # Update properties of this object
12182
+ def update!(**args)
12183
+ @full_match = args[:full_match] if args.key?(:full_match)
12184
+ @value = args[:value] if args.key?(:value)
12185
+ end
12186
+ end
12187
+
12188
+ # Used for time-dependent conditions.
12189
+ class GoogleCloudDiscoveryengineV1betaConditionTimeRange
12190
+ include Google::Apis::Core::Hashable
12191
+
12192
+ # End of time range. Range is inclusive. Must be in the future.
12193
+ # Corresponds to the JSON property `endTime`
12194
+ # @return [String]
12195
+ attr_accessor :end_time
12196
+
12197
+ # Start of time range. Range is inclusive.
12198
+ # Corresponds to the JSON property `startTime`
12199
+ # @return [String]
12200
+ attr_accessor :start_time
12201
+
12202
+ def initialize(**args)
12203
+ update!(**args)
12204
+ end
12205
+
12206
+ # Update properties of this object
12207
+ def update!(**args)
12208
+ @end_time = args[:end_time] if args.key?(:end_time)
12209
+ @start_time = args[:start_time] if args.key?(:start_time)
12210
+ end
12211
+ end
12212
+
12213
+ # Defines a conditioned behavior to employ during serving. Must be attached to a
12214
+ # ServingConfig to be considered at serving time. Permitted actions dependent on
12215
+ # `SolutionType`.
12216
+ class GoogleCloudDiscoveryengineV1betaControl
12217
+ include Google::Apis::Core::Hashable
12218
+
12219
+ # Output only. List of all ServingConfig ids this control is attached to. May
12220
+ # take up to 10 minutes to update after changes.
12221
+ # Corresponds to the JSON property `associatedServingConfigIds`
12222
+ # @return [Array<String>]
12223
+ attr_accessor :associated_serving_config_ids
12224
+
12225
+ # Adjusts order of products in returned list.
12226
+ # Corresponds to the JSON property `boostAction`
12227
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaControlBoostAction]
12228
+ attr_accessor :boost_action
12229
+
12230
+ # Determines when the associated action will trigger. Omit to always apply the
12231
+ # action. Currently only a single condition may be specified. Otherwise an
12232
+ # INVALID ARGUMENT error is thrown.
12233
+ # Corresponds to the JSON property `conditions`
12234
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaCondition>]
12235
+ attr_accessor :conditions
12236
+
12237
+ # Required. Human readable name. The identifier used in UI views. Must be UTF-8
12238
+ # encoded string. Length limit is 128 characters. Otherwise an INVALID ARGUMENT
12239
+ # error is thrown.
12240
+ # Corresponds to the JSON property `displayName`
12241
+ # @return [String]
12242
+ attr_accessor :display_name
12243
+
12244
+ # Specified which products may be included in results. Uses same filter as boost.
12245
+ # Corresponds to the JSON property `filterAction`
12246
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaControlFilterAction]
12247
+ attr_accessor :filter_action
12248
+
12249
+ # Immutable. Fully qualified name `projects/*/locations/global/dataStore/*/
12250
+ # controls/*`
12251
+ # Corresponds to the JSON property `name`
12252
+ # @return [String]
12253
+ attr_accessor :name
12254
+
12255
+ # Redirects a shopper to the provided URI.
12256
+ # Corresponds to the JSON property `redirectAction`
12257
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaControlRedirectAction]
12258
+ attr_accessor :redirect_action
12259
+
12260
+ # Required. Immutable. What solution the control belongs to. Must be compatible
12261
+ # with vertical of resource. Otherwise an INVALID ARGUMENT error is thrown.
12262
+ # Corresponds to the JSON property `solutionType`
12263
+ # @return [String]
12264
+ attr_accessor :solution_type
12265
+
12266
+ # Creates a set of terms that will act as synonyms of one another. Example: "
12267
+ # happy" will also be considered as "glad", "glad" will also be considered as "
12268
+ # happy".
12269
+ # Corresponds to the JSON property `synonymsAction`
12270
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaControlSynonymsAction]
12271
+ attr_accessor :synonyms_action
12272
+
12273
+ # Specifies the use case for the control. Affects what condition fields can be
12274
+ # set. Only applies to SOLUTION_TYPE_SEARCH. Currently only allow one use case
12275
+ # per control. Must be set when solution_type is SolutionType.
12276
+ # SOLUTION_TYPE_SEARCH.
12277
+ # Corresponds to the JSON property `useCases`
12278
+ # @return [Array<String>]
12279
+ attr_accessor :use_cases
12280
+
12281
+ def initialize(**args)
12282
+ update!(**args)
12283
+ end
12284
+
12285
+ # Update properties of this object
12286
+ def update!(**args)
12287
+ @associated_serving_config_ids = args[:associated_serving_config_ids] if args.key?(:associated_serving_config_ids)
12288
+ @boost_action = args[:boost_action] if args.key?(:boost_action)
12289
+ @conditions = args[:conditions] if args.key?(:conditions)
12290
+ @display_name = args[:display_name] if args.key?(:display_name)
12291
+ @filter_action = args[:filter_action] if args.key?(:filter_action)
12292
+ @name = args[:name] if args.key?(:name)
12293
+ @redirect_action = args[:redirect_action] if args.key?(:redirect_action)
12294
+ @solution_type = args[:solution_type] if args.key?(:solution_type)
12295
+ @synonyms_action = args[:synonyms_action] if args.key?(:synonyms_action)
12296
+ @use_cases = args[:use_cases] if args.key?(:use_cases)
12297
+ end
12298
+ end
12299
+
12300
+ # Adjusts order of products in returned list.
12301
+ class GoogleCloudDiscoveryengineV1betaControlBoostAction
12302
+ include Google::Apis::Core::Hashable
12303
+
12304
+ # Required. Strength of the boost, which should be in [-1, 1]. Negative boost
12305
+ # means demotion. Default is 0.0 (No-op).
12306
+ # Corresponds to the JSON property `boost`
12307
+ # @return [Float]
12308
+ attr_accessor :boost
12309
+
12310
+ # Required. Specifies which data store's documents can be boosted by this
12311
+ # control. Full data store name e.g. projects/123/locations/global/collections/
12312
+ # default_collection/dataStores/default_data_store
12313
+ # Corresponds to the JSON property `dataStore`
12314
+ # @return [String]
12315
+ attr_accessor :data_store
12316
+
12317
+ # Required. Specifies which products to apply the boost to. If no filter is
12318
+ # provided all products will be boosted (No-op). Syntax documentation: https://
12319
+ # cloud.google.com/retail/docs/filter-and-order Maximum length is 5000
12320
+ # characters. Otherwise an INVALID ARGUMENT error is thrown.
12321
+ # Corresponds to the JSON property `filter`
12322
+ # @return [String]
12323
+ attr_accessor :filter
12324
+
12325
+ def initialize(**args)
12326
+ update!(**args)
12327
+ end
12328
+
12329
+ # Update properties of this object
12330
+ def update!(**args)
12331
+ @boost = args[:boost] if args.key?(:boost)
12332
+ @data_store = args[:data_store] if args.key?(:data_store)
12333
+ @filter = args[:filter] if args.key?(:filter)
12334
+ end
12335
+ end
12336
+
12337
+ # Specified which products may be included in results. Uses same filter as boost.
12338
+ class GoogleCloudDiscoveryengineV1betaControlFilterAction
12339
+ include Google::Apis::Core::Hashable
12340
+
12341
+ # Required. Specifies which data store's documents can be filtered by this
12342
+ # control. Full data store name e.g. projects/123/locations/global/collections/
12343
+ # default_collection/dataStores/default_data_store
12344
+ # Corresponds to the JSON property `dataStore`
12345
+ # @return [String]
12346
+ attr_accessor :data_store
10479
12347
 
10480
- # Highly recommended for logged-in users. Unique identifier for logged-in user,
10481
- # such as a user name. Don't set for anonymous users. Always use a hashed value
10482
- # for this ID. Don't set the field to the same fixed ID for different users.
10483
- # This mixes the event history of those users together, which results in
10484
- # degraded model quality. The field must be a UTF-8 encoded string with a length
10485
- # limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
10486
- # Corresponds to the JSON property `userId`
12348
+ # Required. A filter to apply on the matching condition results. Required Syntax
12349
+ # documentation: https://cloud.google.com/retail/docs/filter-and-order Maximum
12350
+ # length is 5000 characters. Otherwise an INVALID ARGUMENT error is thrown.
12351
+ # Corresponds to the JSON property `filter`
10487
12352
  # @return [String]
10488
- attr_accessor :user_id
12353
+ attr_accessor :filter
10489
12354
 
10490
12355
  def initialize(**args)
10491
12356
  update!(**args)
@@ -10493,27 +12358,21 @@ module Google
10493
12358
 
10494
12359
  # Update properties of this object
10495
12360
  def update!(**args)
10496
- @user_agent = args[:user_agent] if args.key?(:user_agent)
10497
- @user_id = args[:user_id] if args.key?(:user_id)
12361
+ @data_store = args[:data_store] if args.key?(:data_store)
12362
+ @filter = args[:filter] if args.key?(:filter)
10498
12363
  end
10499
12364
  end
10500
12365
 
10501
- # Metadata related to the progress of the SiteSearchEngineService.
10502
- # BatchCreateTargetSites operation. This will be returned by the google.
10503
- # longrunning.Operation.metadata field.
10504
- class GoogleCloudDiscoveryengineV1betaBatchCreateTargetSiteMetadata
12366
+ # Redirects a shopper to the provided URI.
12367
+ class GoogleCloudDiscoveryengineV1betaControlRedirectAction
10505
12368
  include Google::Apis::Core::Hashable
10506
12369
 
10507
- # Operation create time.
10508
- # Corresponds to the JSON property `createTime`
10509
- # @return [String]
10510
- attr_accessor :create_time
10511
-
10512
- # Operation last update time. If the operation is done, this is also the finish
10513
- # time.
10514
- # Corresponds to the JSON property `updateTime`
12370
+ # Required. The URI to which the shopper will be redirected. Required. URI must
12371
+ # have length equal or less than 2000 characters. Otherwise an INVALID ARGUMENT
12372
+ # error is thrown.
12373
+ # Corresponds to the JSON property `redirectUri`
10515
12374
  # @return [String]
10516
- attr_accessor :update_time
12375
+ attr_accessor :redirect_uri
10517
12376
 
10518
12377
  def initialize(**args)
10519
12378
  update!(**args)
@@ -10521,19 +12380,21 @@ module Google
10521
12380
 
10522
12381
  # Update properties of this object
10523
12382
  def update!(**args)
10524
- @create_time = args[:create_time] if args.key?(:create_time)
10525
- @update_time = args[:update_time] if args.key?(:update_time)
12383
+ @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
10526
12384
  end
10527
12385
  end
10528
12386
 
10529
- # Response message for SiteSearchEngineService.BatchCreateTargetSites method.
10530
- class GoogleCloudDiscoveryengineV1betaBatchCreateTargetSitesResponse
12387
+ # Creates a set of terms that will act as synonyms of one another. Example: "
12388
+ # happy" will also be considered as "glad", "glad" will also be considered as "
12389
+ # happy".
12390
+ class GoogleCloudDiscoveryengineV1betaControlSynonymsAction
10531
12391
  include Google::Apis::Core::Hashable
10532
12392
 
10533
- # TargetSites created.
10534
- # Corresponds to the JSON property `targetSites`
10535
- # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaTargetSite>]
10536
- attr_accessor :target_sites
12393
+ # Defines a set of synonyms. Can specify up to 100 synonyms. Must specify at
12394
+ # least 2 synonyms. Otherwise an INVALID ARGUMENT error is thrown.
12395
+ # Corresponds to the JSON property `synonyms`
12396
+ # @return [Array<String>]
12397
+ attr_accessor :synonyms
10537
12398
 
10538
12399
  def initialize(**args)
10539
12400
  update!(**args)
@@ -10541,7 +12402,7 @@ module Google
10541
12402
 
10542
12403
  # Update properties of this object
10543
12404
  def update!(**args)
10544
- @target_sites = args[:target_sites] if args.key?(:target_sites)
12405
+ @synonyms = args[:synonyms] if args.key?(:synonyms)
10545
12406
  end
10546
12407
  end
10547
12408
 
@@ -10673,7 +12534,7 @@ module Google
10673
12534
  # @return [String]
10674
12535
  attr_accessor :model_state
10675
12536
 
10676
- #
12537
+ # The version of the model.
10677
12538
  # Corresponds to the JSON property `modelVersion`
10678
12539
  # @return [Fixnum]
10679
12540
  attr_accessor :model_version
@@ -10940,6 +12801,11 @@ module Google
10940
12801
  class GoogleCloudDiscoveryengineV1betaDocumentProcessingConfig
10941
12802
  include Google::Apis::Core::Hashable
10942
12803
 
12804
+ # Configuration for chunking config.
12805
+ # Corresponds to the JSON property `chunkingConfig`
12806
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigChunkingConfig]
12807
+ attr_accessor :chunking_config
12808
+
10943
12809
  # Related configurations applied to a specific type of document parser.
10944
12810
  # Corresponds to the JSON property `defaultParsingConfig`
10945
12811
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfig]
@@ -10967,12 +12833,60 @@ module Google
10967
12833
 
10968
12834
  # Update properties of this object
10969
12835
  def update!(**args)
12836
+ @chunking_config = args[:chunking_config] if args.key?(:chunking_config)
10970
12837
  @default_parsing_config = args[:default_parsing_config] if args.key?(:default_parsing_config)
10971
12838
  @name = args[:name] if args.key?(:name)
10972
12839
  @parsing_config_overrides = args[:parsing_config_overrides] if args.key?(:parsing_config_overrides)
10973
12840
  end
10974
12841
  end
10975
12842
 
12843
+ # Configuration for chunking config.
12844
+ class GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigChunkingConfig
12845
+ include Google::Apis::Core::Hashable
12846
+
12847
+ # Configuration for the layout based chunking.
12848
+ # Corresponds to the JSON property `layoutBasedChunkingConfig`
12849
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigChunkingConfigLayoutBasedChunkingConfig]
12850
+ attr_accessor :layout_based_chunking_config
12851
+
12852
+ def initialize(**args)
12853
+ update!(**args)
12854
+ end
12855
+
12856
+ # Update properties of this object
12857
+ def update!(**args)
12858
+ @layout_based_chunking_config = args[:layout_based_chunking_config] if args.key?(:layout_based_chunking_config)
12859
+ end
12860
+ end
12861
+
12862
+ # Configuration for the layout based chunking.
12863
+ class GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigChunkingConfigLayoutBasedChunkingConfig
12864
+ include Google::Apis::Core::Hashable
12865
+
12866
+ # The token size limit for each chunk. Supported values: 100-500 (inclusive).
12867
+ # Default value: 500.
12868
+ # Corresponds to the JSON property `chunkSize`
12869
+ # @return [Fixnum]
12870
+ attr_accessor :chunk_size
12871
+
12872
+ # Whether to include appending different levels of headings to chunks from the
12873
+ # middle of the document to prevent context loss. Default value: False.
12874
+ # Corresponds to the JSON property `includeAncestorHeadings`
12875
+ # @return [Boolean]
12876
+ attr_accessor :include_ancestor_headings
12877
+ alias_method :include_ancestor_headings?, :include_ancestor_headings
12878
+
12879
+ def initialize(**args)
12880
+ update!(**args)
12881
+ end
12882
+
12883
+ # Update properties of this object
12884
+ def update!(**args)
12885
+ @chunk_size = args[:chunk_size] if args.key?(:chunk_size)
12886
+ @include_ancestor_headings = args[:include_ancestor_headings] if args.key?(:include_ancestor_headings)
12887
+ end
12888
+ end
12889
+
10976
12890
  # Related configurations applied to a specific type of document parser.
10977
12891
  class GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfig
10978
12892
  include Google::Apis::Core::Hashable
@@ -10982,6 +12896,11 @@ module Google
10982
12896
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfigDigitalParsingConfig]
10983
12897
  attr_accessor :digital_parsing_config
10984
12898
 
12899
+ # The layout parsing configurations for documents.
12900
+ # Corresponds to the JSON property `layoutParsingConfig`
12901
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfigLayoutParsingConfig]
12902
+ attr_accessor :layout_parsing_config
12903
+
10985
12904
  # The OCR parsing configurations for documents.
10986
12905
  # Corresponds to the JSON property `ocrParsingConfig`
10987
12906
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfigOcrParsingConfig]
@@ -10994,6 +12913,7 @@ module Google
10994
12913
  # Update properties of this object
10995
12914
  def update!(**args)
10996
12915
  @digital_parsing_config = args[:digital_parsing_config] if args.key?(:digital_parsing_config)
12916
+ @layout_parsing_config = args[:layout_parsing_config] if args.key?(:layout_parsing_config)
10997
12917
  @ocr_parsing_config = args[:ocr_parsing_config] if args.key?(:ocr_parsing_config)
10998
12918
  end
10999
12919
  end
@@ -11011,6 +12931,19 @@ module Google
11011
12931
  end
11012
12932
  end
11013
12933
 
12934
+ # The layout parsing configurations for documents.
12935
+ class GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfigLayoutParsingConfig
12936
+ include Google::Apis::Core::Hashable
12937
+
12938
+ def initialize(**args)
12939
+ update!(**args)
12940
+ end
12941
+
12942
+ # Update properties of this object
12943
+ def update!(**args)
12944
+ end
12945
+ end
12946
+
11014
12947
  # The OCR parsing configurations for documents.
11015
12948
  class GoogleCloudDiscoveryengineV1betaDocumentProcessingConfigParsingConfigOcrParsingConfig
11016
12949
  include Google::Apis::Core::Hashable
@@ -11278,8 +13211,8 @@ module Google
11278
13211
  class GoogleCloudDiscoveryengineV1betaEngineCommonConfig
11279
13212
  include Google::Apis::Core::Hashable
11280
13213
 
11281
- # Immutable. The name of the company, business or entity that is associated with
11282
- # the engine. Setting this may help improve LLM related features.
13214
+ # The name of the company, business or entity that is associated with the engine.
13215
+ # Setting this may help improve LLM related features.
11283
13216
  # Corresponds to the JSON property `companyName`
11284
13217
  # @return [String]
11285
13218
  attr_accessor :company_name
@@ -11570,6 +13503,108 @@ module Google
11570
13503
  end
11571
13504
  end
11572
13505
 
13506
+ # Metadata and configurations for a Google Cloud project in the service.
13507
+ class GoogleCloudDiscoveryengineV1betaProject
13508
+ include Google::Apis::Core::Hashable
13509
+
13510
+ # Output only. The timestamp when this project is created.
13511
+ # Corresponds to the JSON property `createTime`
13512
+ # @return [String]
13513
+ attr_accessor :create_time
13514
+
13515
+ # Output only. Full resource name of the project, for example `projects/`
13516
+ # project_number``. Note that when making requests, project number and project
13517
+ # id are both acceptable, but the server will always respond in project number.
13518
+ # Corresponds to the JSON property `name`
13519
+ # @return [String]
13520
+ attr_accessor :name
13521
+
13522
+ # Output only. The timestamp when this project is successfully provisioned.
13523
+ # Empty value means this project is still provisioning and is not ready for use.
13524
+ # Corresponds to the JSON property `provisionCompletionTime`
13525
+ # @return [String]
13526
+ attr_accessor :provision_completion_time
13527
+
13528
+ # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
13529
+ # Corresponds to the JSON property `serviceTermsMap`
13530
+ # @return [Hash<String,Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaProjectServiceTerms>]
13531
+ attr_accessor :service_terms_map
13532
+
13533
+ def initialize(**args)
13534
+ update!(**args)
13535
+ end
13536
+
13537
+ # Update properties of this object
13538
+ def update!(**args)
13539
+ @create_time = args[:create_time] if args.key?(:create_time)
13540
+ @name = args[:name] if args.key?(:name)
13541
+ @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
13542
+ @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
13543
+ end
13544
+ end
13545
+
13546
+ # Metadata about the terms of service.
13547
+ class GoogleCloudDiscoveryengineV1betaProjectServiceTerms
13548
+ include Google::Apis::Core::Hashable
13549
+
13550
+ # The last time when the project agreed to the terms of service.
13551
+ # Corresponds to the JSON property `acceptTime`
13552
+ # @return [String]
13553
+ attr_accessor :accept_time
13554
+
13555
+ # The last time when the project declined or revoked the agreement to terms of
13556
+ # service.
13557
+ # Corresponds to the JSON property `declineTime`
13558
+ # @return [String]
13559
+ attr_accessor :decline_time
13560
+
13561
+ # The unique identifier of this terms of service. Available terms: * `
13562
+ # GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-
13563
+ # use-terms). When using this as `id`, the acceptable version to provide is `
13564
+ # 2022-11-23`.
13565
+ # Corresponds to the JSON property `id`
13566
+ # @return [String]
13567
+ attr_accessor :id
13568
+
13569
+ # Whether the project has accepted/rejected the service terms or it is still
13570
+ # pending.
13571
+ # Corresponds to the JSON property `state`
13572
+ # @return [String]
13573
+ attr_accessor :state
13574
+
13575
+ # The version string of the terms of service. For acceptable values, see the
13576
+ # comments for id above.
13577
+ # Corresponds to the JSON property `version`
13578
+ # @return [String]
13579
+ attr_accessor :version
13580
+
13581
+ def initialize(**args)
13582
+ update!(**args)
13583
+ end
13584
+
13585
+ # Update properties of this object
13586
+ def update!(**args)
13587
+ @accept_time = args[:accept_time] if args.key?(:accept_time)
13588
+ @decline_time = args[:decline_time] if args.key?(:decline_time)
13589
+ @id = args[:id] if args.key?(:id)
13590
+ @state = args[:state] if args.key?(:state)
13591
+ @version = args[:version] if args.key?(:version)
13592
+ end
13593
+ end
13594
+
13595
+ # Metadata associated with a project provision operation.
13596
+ class GoogleCloudDiscoveryengineV1betaProvisionProjectMetadata
13597
+ include Google::Apis::Core::Hashable
13598
+
13599
+ def initialize(**args)
13600
+ update!(**args)
13601
+ end
13602
+
13603
+ # Update properties of this object
13604
+ def update!(**args)
13605
+ end
13606
+ end
13607
+
11573
13608
  # Metadata related to the progress of the PurgeDocuments operation. This will be
11574
13609
  # returned by the google.longrunning.Operation.metadata field.
11575
13610
  class GoogleCloudDiscoveryengineV1betaPurgeDocumentsMetadata
@@ -12142,6 +14177,61 @@ module Google
12142
14177
  end
12143
14178
  end
12144
14179
 
14180
+ # A single strongly-typed value.
14181
+ class GoogleMonitoringV3TypedValue
14182
+ include Google::Apis::Core::Hashable
14183
+
14184
+ # A Boolean value: `true` or `false`.
14185
+ # Corresponds to the JSON property `boolValue`
14186
+ # @return [Boolean]
14187
+ attr_accessor :bool_value
14188
+ alias_method :bool_value?, :bool_value
14189
+
14190
+ # `Distribution` contains summary statistics for a population of values. It
14191
+ # optionally contains a histogram representing the distribution of those values
14192
+ # across a set of buckets. The summary statistics are the count, mean, sum of
14193
+ # the squared deviation from the mean, the minimum, and the maximum of the set
14194
+ # of population of values. The histogram is based on a sequence of buckets and
14195
+ # gives a count of values that fall into each bucket. The boundaries of the
14196
+ # buckets are given either explicitly or by formulas for buckets of fixed or
14197
+ # exponentially increasing widths. Although it is not forbidden, it is generally
14198
+ # a bad idea to include non-finite values (infinities or NaNs) in the population
14199
+ # of values, as this will render the `mean` and `sum_of_squared_deviation`
14200
+ # fields meaningless.
14201
+ # Corresponds to the JSON property `distributionValue`
14202
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleApiDistribution]
14203
+ attr_accessor :distribution_value
14204
+
14205
+ # A 64-bit double-precision floating-point number. Its magnitude is
14206
+ # approximately ±10±300 and it has 16 significant digits of precision.
14207
+ # Corresponds to the JSON property `doubleValue`
14208
+ # @return [Float]
14209
+ attr_accessor :double_value
14210
+
14211
+ # A 64-bit integer. Its range is approximately ±9.2x1018.
14212
+ # Corresponds to the JSON property `int64Value`
14213
+ # @return [Fixnum]
14214
+ attr_accessor :int64_value
14215
+
14216
+ # A variable-length string value.
14217
+ # Corresponds to the JSON property `stringValue`
14218
+ # @return [String]
14219
+ attr_accessor :string_value
14220
+
14221
+ def initialize(**args)
14222
+ update!(**args)
14223
+ end
14224
+
14225
+ # Update properties of this object
14226
+ def update!(**args)
14227
+ @bool_value = args[:bool_value] if args.key?(:bool_value)
14228
+ @distribution_value = args[:distribution_value] if args.key?(:distribution_value)
14229
+ @double_value = args[:double_value] if args.key?(:double_value)
14230
+ @int64_value = args[:int64_value] if args.key?(:int64_value)
14231
+ @string_value = args[:string_value] if args.key?(:string_value)
14232
+ end
14233
+ end
14234
+
12145
14235
  # A generic empty message that you can re-use to avoid defining duplicated empty
12146
14236
  # messages in your APIs. A typical example is to use it as the request or the
12147
14237
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
@@ -12237,6 +14327,60 @@ module Google
12237
14327
  @year = args[:year] if args.key?(:year)
12238
14328
  end
12239
14329
  end
14330
+
14331
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
14332
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
14333
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
14334
+ # "Summary size limit" description: "Determines if a summary is less than 100
14335
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
14336
+ # Requestor is owner" description: "Determines if requestor is the document
14337
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
14338
+ # Logic): title: "Public documents" description: "Determine whether the document
14339
+ # should be publicly visible" expression: "document.type != 'private' &&
14340
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
14341
+ # string" description: "Create a notification string with a timestamp."
14342
+ # expression: "'New message received at ' + string(document.create_time)" The
14343
+ # exact variables and functions that may be referenced within an expression are
14344
+ # determined by the service that evaluates it. See the service documentation for
14345
+ # additional information.
14346
+ class GoogleTypeExpr
14347
+ include Google::Apis::Core::Hashable
14348
+
14349
+ # Optional. Description of the expression. This is a longer text which describes
14350
+ # the expression, e.g. when hovered over it in a UI.
14351
+ # Corresponds to the JSON property `description`
14352
+ # @return [String]
14353
+ attr_accessor :description
14354
+
14355
+ # Textual representation of an expression in Common Expression Language syntax.
14356
+ # Corresponds to the JSON property `expression`
14357
+ # @return [String]
14358
+ attr_accessor :expression
14359
+
14360
+ # Optional. String indicating the location of the expression for error reporting,
14361
+ # e.g. a file name and a position in the file.
14362
+ # Corresponds to the JSON property `location`
14363
+ # @return [String]
14364
+ attr_accessor :location
14365
+
14366
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
14367
+ # This can be used e.g. in UIs which allow to enter the expression.
14368
+ # Corresponds to the JSON property `title`
14369
+ # @return [String]
14370
+ attr_accessor :title
14371
+
14372
+ def initialize(**args)
14373
+ update!(**args)
14374
+ end
14375
+
14376
+ # Update properties of this object
14377
+ def update!(**args)
14378
+ @description = args[:description] if args.key?(:description)
14379
+ @expression = args[:expression] if args.key?(:expression)
14380
+ @location = args[:location] if args.key?(:location)
14381
+ @title = args[:title] if args.key?(:title)
14382
+ end
14383
+ end
12240
14384
  end
12241
14385
  end
12242
14386
  end