google-apis-discoveryengine_v1beta 0.45.0 → 0.46.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -323,6 +323,281 @@ module Google
323
323
  end
324
324
  end
325
325
 
326
+ # Defines circumstances to be checked before allowing a behavior
327
+ class GoogleCloudDiscoveryengineV1Condition
328
+ include Google::Apis::Core::Hashable
329
+
330
+ # Range of time(s) specifying when condition is active. Maximum of 10 time
331
+ # ranges.
332
+ # Corresponds to the JSON property `activeTimeRange`
333
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ConditionTimeRange>]
334
+ attr_accessor :active_time_range
335
+
336
+ # Search only A list of terms to match the query on. Maximum of 10 query terms.
337
+ # Corresponds to the JSON property `queryTerms`
338
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ConditionQueryTerm>]
339
+ attr_accessor :query_terms
340
+
341
+ def initialize(**args)
342
+ update!(**args)
343
+ end
344
+
345
+ # Update properties of this object
346
+ def update!(**args)
347
+ @active_time_range = args[:active_time_range] if args.key?(:active_time_range)
348
+ @query_terms = args[:query_terms] if args.key?(:query_terms)
349
+ end
350
+ end
351
+
352
+ # Matcher for search request query
353
+ class GoogleCloudDiscoveryengineV1ConditionQueryTerm
354
+ include Google::Apis::Core::Hashable
355
+
356
+ # Whether the search query needs to exactly match the query term.
357
+ # Corresponds to the JSON property `fullMatch`
358
+ # @return [Boolean]
359
+ attr_accessor :full_match
360
+ alias_method :full_match?, :full_match
361
+
362
+ # The specific query value to match against Must be lowercase, must be UTF-8.
363
+ # Can have at most 3 space separated terms if full_match is true. Cannot be an
364
+ # empty string. Maximum length of 5000 characters.
365
+ # Corresponds to the JSON property `value`
366
+ # @return [String]
367
+ attr_accessor :value
368
+
369
+ def initialize(**args)
370
+ update!(**args)
371
+ end
372
+
373
+ # Update properties of this object
374
+ def update!(**args)
375
+ @full_match = args[:full_match] if args.key?(:full_match)
376
+ @value = args[:value] if args.key?(:value)
377
+ end
378
+ end
379
+
380
+ # Used for time-dependent conditions.
381
+ class GoogleCloudDiscoveryengineV1ConditionTimeRange
382
+ include Google::Apis::Core::Hashable
383
+
384
+ # End of time range. Range is inclusive. Must be in the future.
385
+ # Corresponds to the JSON property `endTime`
386
+ # @return [String]
387
+ attr_accessor :end_time
388
+
389
+ # Start of time range. Range is inclusive.
390
+ # Corresponds to the JSON property `startTime`
391
+ # @return [String]
392
+ attr_accessor :start_time
393
+
394
+ def initialize(**args)
395
+ update!(**args)
396
+ end
397
+
398
+ # Update properties of this object
399
+ def update!(**args)
400
+ @end_time = args[:end_time] if args.key?(:end_time)
401
+ @start_time = args[:start_time] if args.key?(:start_time)
402
+ end
403
+ end
404
+
405
+ # Defines a conditioned behavior to employ during serving. Must be attached to a
406
+ # ServingConfig to be considered at serving time. Permitted actions dependent on
407
+ # `SolutionType`.
408
+ class GoogleCloudDiscoveryengineV1Control
409
+ include Google::Apis::Core::Hashable
410
+
411
+ # Output only. List of all ServingConfig ids this control is attached to. May
412
+ # take up to 10 minutes to update after changes.
413
+ # Corresponds to the JSON property `associatedServingConfigIds`
414
+ # @return [Array<String>]
415
+ attr_accessor :associated_serving_config_ids
416
+
417
+ # Adjusts order of products in returned list.
418
+ # Corresponds to the JSON property `boostAction`
419
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ControlBoostAction]
420
+ attr_accessor :boost_action
421
+
422
+ # Determines when the associated action will trigger. Omit to always apply the
423
+ # action. Currently only a single condition may be specified. Otherwise an
424
+ # INVALID ARGUMENT error is thrown.
425
+ # Corresponds to the JSON property `conditions`
426
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1Condition>]
427
+ attr_accessor :conditions
428
+
429
+ # Required. Human readable name. The identifier used in UI views. Must be UTF-8
430
+ # encoded string. Length limit is 128 characters. Otherwise an INVALID ARGUMENT
431
+ # error is thrown.
432
+ # Corresponds to the JSON property `displayName`
433
+ # @return [String]
434
+ attr_accessor :display_name
435
+
436
+ # Specified which products may be included in results. Uses same filter as boost.
437
+ # Corresponds to the JSON property `filterAction`
438
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ControlFilterAction]
439
+ attr_accessor :filter_action
440
+
441
+ # Immutable. Fully qualified name `projects/*/locations/global/dataStore/*/
442
+ # controls/*`
443
+ # Corresponds to the JSON property `name`
444
+ # @return [String]
445
+ attr_accessor :name
446
+
447
+ # Redirects a shopper to the provided URI.
448
+ # Corresponds to the JSON property `redirectAction`
449
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ControlRedirectAction]
450
+ attr_accessor :redirect_action
451
+
452
+ # Required. Immutable. What solution the control belongs to. Must be compatible
453
+ # with vertical of resource. Otherwise an INVALID ARGUMENT error is thrown.
454
+ # Corresponds to the JSON property `solutionType`
455
+ # @return [String]
456
+ attr_accessor :solution_type
457
+
458
+ # Creates a set of terms that will act as synonyms of one another. Example: "
459
+ # happy" will also be considered as "glad", "glad" will also be considered as "
460
+ # happy".
461
+ # Corresponds to the JSON property `synonymsAction`
462
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ControlSynonymsAction]
463
+ attr_accessor :synonyms_action
464
+
465
+ # Specifies the use case for the control. Affects what condition fields can be
466
+ # set. Only applies to SOLUTION_TYPE_SEARCH. Currently only allow one use case
467
+ # per control. Must be set when solution_type is SolutionType.
468
+ # SOLUTION_TYPE_SEARCH.
469
+ # Corresponds to the JSON property `useCases`
470
+ # @return [Array<String>]
471
+ attr_accessor :use_cases
472
+
473
+ def initialize(**args)
474
+ update!(**args)
475
+ end
476
+
477
+ # Update properties of this object
478
+ def update!(**args)
479
+ @associated_serving_config_ids = args[:associated_serving_config_ids] if args.key?(:associated_serving_config_ids)
480
+ @boost_action = args[:boost_action] if args.key?(:boost_action)
481
+ @conditions = args[:conditions] if args.key?(:conditions)
482
+ @display_name = args[:display_name] if args.key?(:display_name)
483
+ @filter_action = args[:filter_action] if args.key?(:filter_action)
484
+ @name = args[:name] if args.key?(:name)
485
+ @redirect_action = args[:redirect_action] if args.key?(:redirect_action)
486
+ @solution_type = args[:solution_type] if args.key?(:solution_type)
487
+ @synonyms_action = args[:synonyms_action] if args.key?(:synonyms_action)
488
+ @use_cases = args[:use_cases] if args.key?(:use_cases)
489
+ end
490
+ end
491
+
492
+ # Adjusts order of products in returned list.
493
+ class GoogleCloudDiscoveryengineV1ControlBoostAction
494
+ include Google::Apis::Core::Hashable
495
+
496
+ # Required. Strength of the boost, which should be in [-1, 1]. Negative boost
497
+ # means demotion. Default is 0.0 (No-op).
498
+ # Corresponds to the JSON property `boost`
499
+ # @return [Float]
500
+ attr_accessor :boost
501
+
502
+ # Required. Specifies which data store's documents can be boosted by this
503
+ # control. Full data store name e.g. projects/123/locations/global/collections/
504
+ # default_collection/dataStores/default_data_store
505
+ # Corresponds to the JSON property `dataStore`
506
+ # @return [String]
507
+ attr_accessor :data_store
508
+
509
+ # Required. Specifies which products to apply the boost to. If no filter is
510
+ # provided all products will be boosted (No-op). Syntax documentation: https://
511
+ # cloud.google.com/retail/docs/filter-and-order Maximum length is 5000
512
+ # characters. Otherwise an INVALID ARGUMENT error is thrown.
513
+ # Corresponds to the JSON property `filter`
514
+ # @return [String]
515
+ attr_accessor :filter
516
+
517
+ def initialize(**args)
518
+ update!(**args)
519
+ end
520
+
521
+ # Update properties of this object
522
+ def update!(**args)
523
+ @boost = args[:boost] if args.key?(:boost)
524
+ @data_store = args[:data_store] if args.key?(:data_store)
525
+ @filter = args[:filter] if args.key?(:filter)
526
+ end
527
+ end
528
+
529
+ # Specified which products may be included in results. Uses same filter as boost.
530
+ class GoogleCloudDiscoveryengineV1ControlFilterAction
531
+ include Google::Apis::Core::Hashable
532
+
533
+ # Required. Specifies which data store's documents can be filtered by this
534
+ # control. Full data store name e.g. projects/123/locations/global/collections/
535
+ # default_collection/dataStores/default_data_store
536
+ # Corresponds to the JSON property `dataStore`
537
+ # @return [String]
538
+ attr_accessor :data_store
539
+
540
+ # Required. A filter to apply on the matching condition results. Required Syntax
541
+ # documentation: https://cloud.google.com/retail/docs/filter-and-order Maximum
542
+ # length is 5000 characters. Otherwise an INVALID ARGUMENT error is thrown.
543
+ # Corresponds to the JSON property `filter`
544
+ # @return [String]
545
+ attr_accessor :filter
546
+
547
+ def initialize(**args)
548
+ update!(**args)
549
+ end
550
+
551
+ # Update properties of this object
552
+ def update!(**args)
553
+ @data_store = args[:data_store] if args.key?(:data_store)
554
+ @filter = args[:filter] if args.key?(:filter)
555
+ end
556
+ end
557
+
558
+ # Redirects a shopper to the provided URI.
559
+ class GoogleCloudDiscoveryengineV1ControlRedirectAction
560
+ include Google::Apis::Core::Hashable
561
+
562
+ # Required. The URI to which the shopper will be redirected. Required. URI must
563
+ # have length equal or less than 2000 characters. Otherwise an INVALID ARGUMENT
564
+ # error is thrown.
565
+ # Corresponds to the JSON property `redirectUri`
566
+ # @return [String]
567
+ attr_accessor :redirect_uri
568
+
569
+ def initialize(**args)
570
+ update!(**args)
571
+ end
572
+
573
+ # Update properties of this object
574
+ def update!(**args)
575
+ @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
576
+ end
577
+ end
578
+
579
+ # Creates a set of terms that will act as synonyms of one another. Example: "
580
+ # happy" will also be considered as "glad", "glad" will also be considered as "
581
+ # happy".
582
+ class GoogleCloudDiscoveryengineV1ControlSynonymsAction
583
+ include Google::Apis::Core::Hashable
584
+
585
+ # Defines a set of synonyms. Can specify up to 100 synonyms. Must specify at
586
+ # least 2 synonyms. Otherwise an INVALID ARGUMENT error is thrown.
587
+ # Corresponds to the JSON property `synonyms`
588
+ # @return [Array<String>]
589
+ attr_accessor :synonyms
590
+
591
+ def initialize(**args)
592
+ update!(**args)
593
+ end
594
+
595
+ # Update properties of this object
596
+ def update!(**args)
597
+ @synonyms = args[:synonyms] if args.key?(:synonyms)
598
+ end
599
+ end
600
+
326
601
  # Metadata related to the progress of the DataStoreService.CreateDataStore
327
602
  # operation. This will be returned by the google.longrunning.Operation.metadata
328
603
  # field.
@@ -1004,8 +1279,8 @@ module Google
1004
1279
  class GoogleCloudDiscoveryengineV1EngineCommonConfig
1005
1280
  include Google::Apis::Core::Hashable
1006
1281
 
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.
1282
+ # The name of the company, business or entity that is associated with the engine.
1283
+ # Setting this may help improve LLM related features.
1009
1284
  # Corresponds to the JSON property `companyName`
1010
1285
  # @return [String]
1011
1286
  attr_accessor :company_name
@@ -1277,6 +1552,108 @@ module Google
1277
1552
  end
1278
1553
  end
1279
1554
 
1555
+ # Metadata and configurations for a Google Cloud project in the service.
1556
+ class GoogleCloudDiscoveryengineV1Project
1557
+ include Google::Apis::Core::Hashable
1558
+
1559
+ # Output only. The timestamp when this project is created.
1560
+ # Corresponds to the JSON property `createTime`
1561
+ # @return [String]
1562
+ attr_accessor :create_time
1563
+
1564
+ # Output only. Full resource name of the project, for example `projects/`
1565
+ # project_number``. Note that when making requests, project number and project
1566
+ # id are both acceptable, but the server will always respond in project number.
1567
+ # Corresponds to the JSON property `name`
1568
+ # @return [String]
1569
+ attr_accessor :name
1570
+
1571
+ # Output only. The timestamp when this project is successfully provisioned.
1572
+ # Empty value means this project is still provisioning and is not ready for use.
1573
+ # Corresponds to the JSON property `provisionCompletionTime`
1574
+ # @return [String]
1575
+ attr_accessor :provision_completion_time
1576
+
1577
+ # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
1578
+ # Corresponds to the JSON property `serviceTermsMap`
1579
+ # @return [Hash<String,Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectServiceTerms>]
1580
+ attr_accessor :service_terms_map
1581
+
1582
+ def initialize(**args)
1583
+ update!(**args)
1584
+ end
1585
+
1586
+ # Update properties of this object
1587
+ def update!(**args)
1588
+ @create_time = args[:create_time] if args.key?(:create_time)
1589
+ @name = args[:name] if args.key?(:name)
1590
+ @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
1591
+ @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
1592
+ end
1593
+ end
1594
+
1595
+ # Metadata about the terms of service.
1596
+ class GoogleCloudDiscoveryengineV1ProjectServiceTerms
1597
+ include Google::Apis::Core::Hashable
1598
+
1599
+ # The last time when the project agreed to the terms of service.
1600
+ # Corresponds to the JSON property `acceptTime`
1601
+ # @return [String]
1602
+ attr_accessor :accept_time
1603
+
1604
+ # The last time when the project declined or revoked the agreement to terms of
1605
+ # service.
1606
+ # Corresponds to the JSON property `declineTime`
1607
+ # @return [String]
1608
+ attr_accessor :decline_time
1609
+
1610
+ # The unique identifier of this terms of service. Available terms: * `
1611
+ # GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-
1612
+ # use-terms). When using this as `id`, the acceptable version to provide is `
1613
+ # 2022-11-23`.
1614
+ # Corresponds to the JSON property `id`
1615
+ # @return [String]
1616
+ attr_accessor :id
1617
+
1618
+ # Whether the project has accepted/rejected the service terms or it is still
1619
+ # pending.
1620
+ # Corresponds to the JSON property `state`
1621
+ # @return [String]
1622
+ attr_accessor :state
1623
+
1624
+ # The version string of the terms of service. For acceptable values, see the
1625
+ # comments for id above.
1626
+ # Corresponds to the JSON property `version`
1627
+ # @return [String]
1628
+ attr_accessor :version
1629
+
1630
+ def initialize(**args)
1631
+ update!(**args)
1632
+ end
1633
+
1634
+ # Update properties of this object
1635
+ def update!(**args)
1636
+ @accept_time = args[:accept_time] if args.key?(:accept_time)
1637
+ @decline_time = args[:decline_time] if args.key?(:decline_time)
1638
+ @id = args[:id] if args.key?(:id)
1639
+ @state = args[:state] if args.key?(:state)
1640
+ @version = args[:version] if args.key?(:version)
1641
+ end
1642
+ end
1643
+
1644
+ # Metadata associated with a project provision operation.
1645
+ class GoogleCloudDiscoveryengineV1ProvisionProjectMetadata
1646
+ include Google::Apis::Core::Hashable
1647
+
1648
+ def initialize(**args)
1649
+ update!(**args)
1650
+ end
1651
+
1652
+ # Update properties of this object
1653
+ def update!(**args)
1654
+ end
1655
+ end
1656
+
1280
1657
  # Metadata related to the progress of the PurgeDocuments operation. This will be
1281
1658
  # returned by the google.longrunning.Operation.metadata field.
1282
1659
  class GoogleCloudDiscoveryengineV1PurgeDocumentsMetadata
@@ -1918,6 +2295,12 @@ module Google
1918
2295
  # @return [String]
1919
2296
  attr_accessor :page_identifier
1920
2297
 
2298
+ # The structured JSON metadata for the document. It is populated from the struct
2299
+ # data from the Chunk in search result.
2300
+ # Corresponds to the JSON property `structData`
2301
+ # @return [Hash<String,Object>]
2302
+ attr_accessor :struct_data
2303
+
1921
2304
  # Title.
1922
2305
  # Corresponds to the JSON property `title`
1923
2306
  # @return [String]
@@ -1936,6 +2319,7 @@ module Google
1936
2319
  def update!(**args)
1937
2320
  @document = args[:document] if args.key?(:document)
1938
2321
  @page_identifier = args[:page_identifier] if args.key?(:page_identifier)
2322
+ @struct_data = args[:struct_data] if args.key?(:struct_data)
1939
2323
  @title = args[:title] if args.key?(:title)
1940
2324
  @uri = args[:uri] if args.key?(:uri)
1941
2325
  end
@@ -1955,6 +2339,12 @@ module Google
1955
2339
  # @return [String]
1956
2340
  attr_accessor :document
1957
2341
 
2342
+ # The structured JSON metadata for the document. It is populated from the struct
2343
+ # data from the Chunk in search result.
2344
+ # Corresponds to the JSON property `structData`
2345
+ # @return [Hash<String,Object>]
2346
+ attr_accessor :struct_data
2347
+
1958
2348
  # Title.
1959
2349
  # Corresponds to the JSON property `title`
1960
2350
  # @return [String]
@@ -1973,6 +2363,7 @@ module Google
1973
2363
  def update!(**args)
1974
2364
  @chunk_contents = args[:chunk_contents] if args.key?(:chunk_contents)
1975
2365
  @document = args[:document] if args.key?(:document)
2366
+ @struct_data = args[:struct_data] if args.key?(:struct_data)
1976
2367
  @title = args[:title] if args.key?(:title)
1977
2368
  @uri = args[:uri] if args.key?(:uri)
1978
2369
  end
@@ -2192,7 +2583,285 @@ module Google
2192
2583
  # The query to search.
2193
2584
  # Corresponds to the JSON property `query`
2194
2585
  # @return [String]
2195
- attr_accessor :query
2586
+ attr_accessor :query
2587
+
2588
+ def initialize(**args)
2589
+ update!(**args)
2590
+ end
2591
+
2592
+ # Update properties of this object
2593
+ def update!(**args)
2594
+ @query = args[:query] if args.key?(:query)
2595
+ end
2596
+ end
2597
+
2598
+ # Metadata related to the progress of the SiteSearchEngineService.
2599
+ # BatchCreateTargetSites operation. This will be returned by the google.
2600
+ # longrunning.Operation.metadata field.
2601
+ class GoogleCloudDiscoveryengineV1alphaBatchCreateTargetSiteMetadata
2602
+ include Google::Apis::Core::Hashable
2603
+
2604
+ # Operation create time.
2605
+ # Corresponds to the JSON property `createTime`
2606
+ # @return [String]
2607
+ attr_accessor :create_time
2608
+
2609
+ # Operation last update time. If the operation is done, this is also the finish
2610
+ # time.
2611
+ # Corresponds to the JSON property `updateTime`
2612
+ # @return [String]
2613
+ attr_accessor :update_time
2614
+
2615
+ def initialize(**args)
2616
+ update!(**args)
2617
+ end
2618
+
2619
+ # Update properties of this object
2620
+ def update!(**args)
2621
+ @create_time = args[:create_time] if args.key?(:create_time)
2622
+ @update_time = args[:update_time] if args.key?(:update_time)
2623
+ end
2624
+ end
2625
+
2626
+ # Response message for SiteSearchEngineService.BatchCreateTargetSites method.
2627
+ class GoogleCloudDiscoveryengineV1alphaBatchCreateTargetSitesResponse
2628
+ include Google::Apis::Core::Hashable
2629
+
2630
+ # TargetSites created.
2631
+ # Corresponds to the JSON property `targetSites`
2632
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaTargetSite>]
2633
+ attr_accessor :target_sites
2634
+
2635
+ def initialize(**args)
2636
+ update!(**args)
2637
+ end
2638
+
2639
+ # Update properties of this object
2640
+ def update!(**args)
2641
+ @target_sites = args[:target_sites] if args.key?(:target_sites)
2642
+ end
2643
+ end
2644
+
2645
+ # Defines circumstances to be checked before allowing a behavior
2646
+ class GoogleCloudDiscoveryengineV1alphaCondition
2647
+ include Google::Apis::Core::Hashable
2648
+
2649
+ # Range of time(s) specifying when condition is active. Maximum of 10 time
2650
+ # ranges.
2651
+ # Corresponds to the JSON property `activeTimeRange`
2652
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaConditionTimeRange>]
2653
+ attr_accessor :active_time_range
2654
+
2655
+ # Search only A list of terms to match the query on. Maximum of 10 query terms.
2656
+ # Corresponds to the JSON property `queryTerms`
2657
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaConditionQueryTerm>]
2658
+ attr_accessor :query_terms
2659
+
2660
+ def initialize(**args)
2661
+ update!(**args)
2662
+ end
2663
+
2664
+ # Update properties of this object
2665
+ def update!(**args)
2666
+ @active_time_range = args[:active_time_range] if args.key?(:active_time_range)
2667
+ @query_terms = args[:query_terms] if args.key?(:query_terms)
2668
+ end
2669
+ end
2670
+
2671
+ # Matcher for search request query
2672
+ class GoogleCloudDiscoveryengineV1alphaConditionQueryTerm
2673
+ include Google::Apis::Core::Hashable
2674
+
2675
+ # Whether the search query needs to exactly match the query term.
2676
+ # Corresponds to the JSON property `fullMatch`
2677
+ # @return [Boolean]
2678
+ attr_accessor :full_match
2679
+ alias_method :full_match?, :full_match
2680
+
2681
+ # The specific query value to match against Must be lowercase, must be UTF-8.
2682
+ # Can have at most 3 space separated terms if full_match is true. Cannot be an
2683
+ # empty string. Maximum length of 5000 characters.
2684
+ # Corresponds to the JSON property `value`
2685
+ # @return [String]
2686
+ attr_accessor :value
2687
+
2688
+ def initialize(**args)
2689
+ update!(**args)
2690
+ end
2691
+
2692
+ # Update properties of this object
2693
+ def update!(**args)
2694
+ @full_match = args[:full_match] if args.key?(:full_match)
2695
+ @value = args[:value] if args.key?(:value)
2696
+ end
2697
+ end
2698
+
2699
+ # Used for time-dependent conditions.
2700
+ class GoogleCloudDiscoveryengineV1alphaConditionTimeRange
2701
+ include Google::Apis::Core::Hashable
2702
+
2703
+ # End of time range. Range is inclusive. Must be in the future.
2704
+ # Corresponds to the JSON property `endTime`
2705
+ # @return [String]
2706
+ attr_accessor :end_time
2707
+
2708
+ # Start of time range. Range is inclusive.
2709
+ # Corresponds to the JSON property `startTime`
2710
+ # @return [String]
2711
+ attr_accessor :start_time
2712
+
2713
+ def initialize(**args)
2714
+ update!(**args)
2715
+ end
2716
+
2717
+ # Update properties of this object
2718
+ def update!(**args)
2719
+ @end_time = args[:end_time] if args.key?(:end_time)
2720
+ @start_time = args[:start_time] if args.key?(:start_time)
2721
+ end
2722
+ end
2723
+
2724
+ # Defines a conditioned behavior to employ during serving. Must be attached to a
2725
+ # ServingConfig to be considered at serving time. Permitted actions dependent on
2726
+ # `SolutionType`.
2727
+ class GoogleCloudDiscoveryengineV1alphaControl
2728
+ include Google::Apis::Core::Hashable
2729
+
2730
+ # Output only. List of all ServingConfig ids this control is attached to. May
2731
+ # take up to 10 minutes to update after changes.
2732
+ # Corresponds to the JSON property `associatedServingConfigIds`
2733
+ # @return [Array<String>]
2734
+ attr_accessor :associated_serving_config_ids
2735
+
2736
+ # Adjusts order of products in returned list.
2737
+ # Corresponds to the JSON property `boostAction`
2738
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaControlBoostAction]
2739
+ attr_accessor :boost_action
2740
+
2741
+ # Determines when the associated action will trigger. Omit to always apply the
2742
+ # action. Currently only a single condition may be specified. Otherwise an
2743
+ # INVALID ARGUMENT error is thrown.
2744
+ # Corresponds to the JSON property `conditions`
2745
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaCondition>]
2746
+ attr_accessor :conditions
2747
+
2748
+ # Required. Human readable name. The identifier used in UI views. Must be UTF-8
2749
+ # encoded string. Length limit is 128 characters. Otherwise an INVALID ARGUMENT
2750
+ # error is thrown.
2751
+ # Corresponds to the JSON property `displayName`
2752
+ # @return [String]
2753
+ attr_accessor :display_name
2754
+
2755
+ # Specified which products may be included in results. Uses same filter as boost.
2756
+ # Corresponds to the JSON property `filterAction`
2757
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaControlFilterAction]
2758
+ attr_accessor :filter_action
2759
+
2760
+ # Immutable. Fully qualified name `projects/*/locations/global/dataStore/*/
2761
+ # controls/*`
2762
+ # Corresponds to the JSON property `name`
2763
+ # @return [String]
2764
+ attr_accessor :name
2765
+
2766
+ # Redirects a shopper to the provided URI.
2767
+ # Corresponds to the JSON property `redirectAction`
2768
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaControlRedirectAction]
2769
+ attr_accessor :redirect_action
2770
+
2771
+ # Required. Immutable. What solution the control belongs to. Must be compatible
2772
+ # with vertical of resource. Otherwise an INVALID ARGUMENT error is thrown.
2773
+ # Corresponds to the JSON property `solutionType`
2774
+ # @return [String]
2775
+ attr_accessor :solution_type
2776
+
2777
+ # Creates a set of terms that will act as synonyms of one another. Example: "
2778
+ # happy" will also be considered as "glad", "glad" will also be considered as "
2779
+ # happy".
2780
+ # Corresponds to the JSON property `synonymsAction`
2781
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaControlSynonymsAction]
2782
+ attr_accessor :synonyms_action
2783
+
2784
+ # Specifies the use case for the control. Affects what condition fields can be
2785
+ # set. Only applies to SOLUTION_TYPE_SEARCH. Currently only allow one use case
2786
+ # per control. Must be set when solution_type is SolutionType.
2787
+ # SOLUTION_TYPE_SEARCH.
2788
+ # Corresponds to the JSON property `useCases`
2789
+ # @return [Array<String>]
2790
+ attr_accessor :use_cases
2791
+
2792
+ def initialize(**args)
2793
+ update!(**args)
2794
+ end
2795
+
2796
+ # Update properties of this object
2797
+ def update!(**args)
2798
+ @associated_serving_config_ids = args[:associated_serving_config_ids] if args.key?(:associated_serving_config_ids)
2799
+ @boost_action = args[:boost_action] if args.key?(:boost_action)
2800
+ @conditions = args[:conditions] if args.key?(:conditions)
2801
+ @display_name = args[:display_name] if args.key?(:display_name)
2802
+ @filter_action = args[:filter_action] if args.key?(:filter_action)
2803
+ @name = args[:name] if args.key?(:name)
2804
+ @redirect_action = args[:redirect_action] if args.key?(:redirect_action)
2805
+ @solution_type = args[:solution_type] if args.key?(:solution_type)
2806
+ @synonyms_action = args[:synonyms_action] if args.key?(:synonyms_action)
2807
+ @use_cases = args[:use_cases] if args.key?(:use_cases)
2808
+ end
2809
+ end
2810
+
2811
+ # Adjusts order of products in returned list.
2812
+ class GoogleCloudDiscoveryengineV1alphaControlBoostAction
2813
+ include Google::Apis::Core::Hashable
2814
+
2815
+ # Required. Strength of the boost, which should be in [-1, 1]. Negative boost
2816
+ # means demotion. Default is 0.0 (No-op).
2817
+ # Corresponds to the JSON property `boost`
2818
+ # @return [Float]
2819
+ attr_accessor :boost
2820
+
2821
+ # Required. Specifies which data store's documents can be boosted by this
2822
+ # control. Full data store name e.g. projects/123/locations/global/collections/
2823
+ # default_collection/dataStores/default_data_store
2824
+ # Corresponds to the JSON property `dataStore`
2825
+ # @return [String]
2826
+ attr_accessor :data_store
2827
+
2828
+ # Required. Specifies which products to apply the boost to. If no filter is
2829
+ # provided all products will be boosted (No-op). Syntax documentation: https://
2830
+ # cloud.google.com/retail/docs/filter-and-order Maximum length is 5000
2831
+ # characters. Otherwise an INVALID ARGUMENT error is thrown.
2832
+ # Corresponds to the JSON property `filter`
2833
+ # @return [String]
2834
+ attr_accessor :filter
2835
+
2836
+ def initialize(**args)
2837
+ update!(**args)
2838
+ end
2839
+
2840
+ # Update properties of this object
2841
+ def update!(**args)
2842
+ @boost = args[:boost] if args.key?(:boost)
2843
+ @data_store = args[:data_store] if args.key?(:data_store)
2844
+ @filter = args[:filter] if args.key?(:filter)
2845
+ end
2846
+ end
2847
+
2848
+ # Specified which products may be included in results. Uses same filter as boost.
2849
+ class GoogleCloudDiscoveryengineV1alphaControlFilterAction
2850
+ include Google::Apis::Core::Hashable
2851
+
2852
+ # Required. Specifies which data store's documents can be filtered by this
2853
+ # control. Full data store name e.g. projects/123/locations/global/collections/
2854
+ # default_collection/dataStores/default_data_store
2855
+ # Corresponds to the JSON property `dataStore`
2856
+ # @return [String]
2857
+ attr_accessor :data_store
2858
+
2859
+ # Required. A filter to apply on the matching condition results. Required Syntax
2860
+ # documentation: https://cloud.google.com/retail/docs/filter-and-order Maximum
2861
+ # length is 5000 characters. Otherwise an INVALID ARGUMENT error is thrown.
2862
+ # Corresponds to the JSON property `filter`
2863
+ # @return [String]
2864
+ attr_accessor :filter
2196
2865
 
2197
2866
  def initialize(**args)
2198
2867
  update!(**args)
@@ -2200,26 +2869,21 @@ module Google
2200
2869
 
2201
2870
  # Update properties of this object
2202
2871
  def update!(**args)
2203
- @query = args[:query] if args.key?(:query)
2872
+ @data_store = args[:data_store] if args.key?(:data_store)
2873
+ @filter = args[:filter] if args.key?(:filter)
2204
2874
  end
2205
2875
  end
2206
2876
 
2207
- # Metadata related to the progress of the SiteSearchEngineService.
2208
- # BatchCreateTargetSites operation. This will be returned by the google.
2209
- # longrunning.Operation.metadata field.
2210
- class GoogleCloudDiscoveryengineV1alphaBatchCreateTargetSiteMetadata
2877
+ # Redirects a shopper to the provided URI.
2878
+ class GoogleCloudDiscoveryengineV1alphaControlRedirectAction
2211
2879
  include Google::Apis::Core::Hashable
2212
2880
 
2213
- # Operation create time.
2214
- # Corresponds to the JSON property `createTime`
2215
- # @return [String]
2216
- attr_accessor :create_time
2217
-
2218
- # Operation last update time. If the operation is done, this is also the finish
2219
- # time.
2220
- # Corresponds to the JSON property `updateTime`
2881
+ # Required. The URI to which the shopper will be redirected. Required. URI must
2882
+ # have length equal or less than 2000 characters. Otherwise an INVALID ARGUMENT
2883
+ # error is thrown.
2884
+ # Corresponds to the JSON property `redirectUri`
2221
2885
  # @return [String]
2222
- attr_accessor :update_time
2886
+ attr_accessor :redirect_uri
2223
2887
 
2224
2888
  def initialize(**args)
2225
2889
  update!(**args)
@@ -2227,19 +2891,21 @@ module Google
2227
2891
 
2228
2892
  # Update properties of this object
2229
2893
  def update!(**args)
2230
- @create_time = args[:create_time] if args.key?(:create_time)
2231
- @update_time = args[:update_time] if args.key?(:update_time)
2894
+ @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
2232
2895
  end
2233
2896
  end
2234
2897
 
2235
- # Response message for SiteSearchEngineService.BatchCreateTargetSites method.
2236
- class GoogleCloudDiscoveryengineV1alphaBatchCreateTargetSitesResponse
2898
+ # Creates a set of terms that will act as synonyms of one another. Example: "
2899
+ # happy" will also be considered as "glad", "glad" will also be considered as "
2900
+ # happy".
2901
+ class GoogleCloudDiscoveryengineV1alphaControlSynonymsAction
2237
2902
  include Google::Apis::Core::Hashable
2238
2903
 
2239
- # TargetSites created.
2240
- # Corresponds to the JSON property `targetSites`
2241
- # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaTargetSite>]
2242
- attr_accessor :target_sites
2904
+ # Defines a set of synonyms. Can specify up to 100 synonyms. Must specify at
2905
+ # least 2 synonyms. Otherwise an INVALID ARGUMENT error is thrown.
2906
+ # Corresponds to the JSON property `synonyms`
2907
+ # @return [Array<String>]
2908
+ attr_accessor :synonyms
2243
2909
 
2244
2910
  def initialize(**args)
2245
2911
  update!(**args)
@@ -2247,7 +2913,7 @@ module Google
2247
2913
 
2248
2914
  # Update properties of this object
2249
2915
  def update!(**args)
2250
- @target_sites = args[:target_sites] if args.key?(:target_sites)
2916
+ @synonyms = args[:synonyms] if args.key?(:synonyms)
2251
2917
  end
2252
2918
  end
2253
2919
 
@@ -2379,7 +3045,7 @@ module Google
2379
3045
  # @return [String]
2380
3046
  attr_accessor :model_state
2381
3047
 
2382
- #
3048
+ # The version of the model.
2383
3049
  # Corresponds to the JSON property `modelVersion`
2384
3050
  # @return [Fixnum]
2385
3051
  attr_accessor :model_version
@@ -3092,8 +3758,8 @@ module Google
3092
3758
  class GoogleCloudDiscoveryengineV1alphaEngineCommonConfig
3093
3759
  include Google::Apis::Core::Hashable
3094
3760
 
3095
- # Immutable. The name of the company, business or entity that is associated with
3096
- # the engine. Setting this may help improve LLM related features.
3761
+ # The name of the company, business or entity that is associated with the engine.
3762
+ # Setting this may help improve LLM related features.
3097
3763
  # Corresponds to the JSON property `companyName`
3098
3764
  # @return [String]
3099
3765
  attr_accessor :company_name
@@ -3411,6 +4077,17 @@ module Google
3411
4077
  # @return [String]
3412
4078
  attr_accessor :retrievable_option
3413
4079
 
4080
+ # Field paths for indexing custom attribute from schema.org data. More details
4081
+ # of schema.org and its defined types can be found at [schema.org](https://
4082
+ # schema.org). It is only used on advanced site search schema. Currently only
4083
+ # support full path from root. The full path to a field is constructed by
4084
+ # concatenating field names, starting from `_root`, with a period `.` as the
4085
+ # delimiter. Examples: * Publish date of the root: _root.datePublished * Publish
4086
+ # date of the reviews: _root.review.datePublished
4087
+ # Corresponds to the JSON property `schemaOrgPaths`
4088
+ # @return [Array<String>]
4089
+ attr_accessor :schema_org_paths
4090
+
3414
4091
  # If searchable_option is SEARCHABLE_ENABLED, field values are searchable by
3415
4092
  # text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is
3416
4093
  # numerical, field values will not be searchable by text queries in
@@ -3440,6 +4117,7 @@ module Google
3440
4117
  @key_property_type = args[:key_property_type] if args.key?(:key_property_type)
3441
4118
  @recs_filterable_option = args[:recs_filterable_option] if args.key?(:recs_filterable_option)
3442
4119
  @retrievable_option = args[:retrievable_option] if args.key?(:retrievable_option)
4120
+ @schema_org_paths = args[:schema_org_paths] if args.key?(:schema_org_paths)
3443
4121
  @searchable_option = args[:searchable_option] if args.key?(:searchable_option)
3444
4122
  end
3445
4123
  end
@@ -4849,6 +5527,15 @@ module Google
4849
5527
  attr_accessor :ignore_adversarial_query
4850
5528
  alias_method :ignore_adversarial_query?, :ignore_adversarial_query
4851
5529
 
5530
+ # Specifies whether to filter out queries that have low relevance. If this field
5531
+ # is set to `false`, all search results are used regardless of relevance to
5532
+ # generate answers. If set to `true` or unset, the behavior will be determined
5533
+ # automatically by the service.
5534
+ # Corresponds to the JSON property `ignoreLowRelevantContent`
5535
+ # @return [Boolean]
5536
+ attr_accessor :ignore_low_relevant_content
5537
+ alias_method :ignore_low_relevant_content?, :ignore_low_relevant_content
5538
+
4852
5539
  # Specifies whether to filter out queries that are not answer-seeking. The
4853
5540
  # default value is `false`. Google employs search-query classification to detect
4854
5541
  # answer-seeking queries. No answer is returned if the search query is
@@ -4885,6 +5572,7 @@ module Google
4885
5572
  def update!(**args)
4886
5573
  @answer_language_code = args[:answer_language_code] if args.key?(:answer_language_code)
4887
5574
  @ignore_adversarial_query = args[:ignore_adversarial_query] if args.key?(:ignore_adversarial_query)
5575
+ @ignore_low_relevant_content = args[:ignore_low_relevant_content] if args.key?(:ignore_low_relevant_content)
4888
5576
  @ignore_non_answer_seeking_query = args[:ignore_non_answer_seeking_query] if args.key?(:ignore_non_answer_seeking_query)
4889
5577
  @include_citations = args[:include_citations] if args.key?(:include_citations)
4890
5578
  @model_spec = args[:model_spec] if args.key?(:model_spec)
@@ -5076,6 +5764,14 @@ module Google
5076
5764
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaSearchRequestBoostSpec]
5077
5765
  attr_accessor :boost_spec
5078
5766
 
5767
+ # Specs defining dataStores to filter on in a search call and configurations for
5768
+ # those dataStores. This is only considered for engines with multiple dataStores
5769
+ # use case. For single dataStore within an engine, they should use the specs at
5770
+ # the top level.
5771
+ # Corresponds to the JSON property `dataStoreSpecs`
5772
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaSearchRequestDataStoreSpec>]
5773
+ attr_accessor :data_store_specs
5774
+
5079
5775
  # The filter syntax consists of an expression language for constructing a
5080
5776
  # predicate from one or more fields of the documents being filtered. Filter
5081
5777
  # expression is case-sensitive. This will be used to filter search results which
@@ -5113,6 +5809,7 @@ module Google
5113
5809
  # Update properties of this object
5114
5810
  def update!(**args)
5115
5811
  @boost_spec = args[:boost_spec] if args.key?(:boost_spec)
5812
+ @data_store_specs = args[:data_store_specs] if args.key?(:data_store_specs)
5116
5813
  @filter = args[:filter] if args.key?(:filter)
5117
5814
  @max_return_results = args[:max_return_results] if args.key?(:max_return_results)
5118
5815
  @order_by = args[:order_by] if args.key?(:order_by)
@@ -5466,6 +6163,12 @@ module Google
5466
6163
  # @return [String]
5467
6164
  attr_accessor :page_identifier
5468
6165
 
6166
+ # The structured JSON metadata for the document. It is populated from the struct
6167
+ # data from the Chunk in search result.
6168
+ # Corresponds to the JSON property `structData`
6169
+ # @return [Hash<String,Object>]
6170
+ attr_accessor :struct_data
6171
+
5469
6172
  # Title.
5470
6173
  # Corresponds to the JSON property `title`
5471
6174
  # @return [String]
@@ -5484,6 +6187,7 @@ module Google
5484
6187
  def update!(**args)
5485
6188
  @document = args[:document] if args.key?(:document)
5486
6189
  @page_identifier = args[:page_identifier] if args.key?(:page_identifier)
6190
+ @struct_data = args[:struct_data] if args.key?(:struct_data)
5487
6191
  @title = args[:title] if args.key?(:title)
5488
6192
  @uri = args[:uri] if args.key?(:uri)
5489
6193
  end
@@ -5503,6 +6207,12 @@ module Google
5503
6207
  # @return [String]
5504
6208
  attr_accessor :document
5505
6209
 
6210
+ # The structured JSON metadata for the document. It is populated from the struct
6211
+ # data from the Chunk in search result.
6212
+ # Corresponds to the JSON property `structData`
6213
+ # @return [Hash<String,Object>]
6214
+ attr_accessor :struct_data
6215
+
5506
6216
  # Title.
5507
6217
  # Corresponds to the JSON property `title`
5508
6218
  # @return [String]
@@ -5521,6 +6231,7 @@ module Google
5521
6231
  def update!(**args)
5522
6232
  @chunk_contents = args[:chunk_contents] if args.key?(:chunk_contents)
5523
6233
  @document = args[:document] if args.key?(:document)
6234
+ @struct_data = args[:struct_data] if args.key?(:struct_data)
5524
6235
  @title = args[:title] if args.key?(:title)
5525
6236
  @uri = args[:uri] if args.key?(:uri)
5526
6237
  end
@@ -6236,30 +6947,319 @@ module Google
6236
6947
  # @return [String]
6237
6948
  attr_accessor :gcs_staging_dir
6238
6949
 
6239
- # Required. The Cloud SQL instance to copy the data from with a length limit of
6240
- # 256 characters.
6241
- # Corresponds to the JSON property `instanceId`
6242
- # @return [String]
6243
- attr_accessor :instance_id
6950
+ # Required. The Cloud SQL instance to copy the data from with a length limit of
6951
+ # 256 characters.
6952
+ # Corresponds to the JSON property `instanceId`
6953
+ # @return [String]
6954
+ attr_accessor :instance_id
6955
+
6956
+ # Option for serverless export. Enabling this option will incur additional cost.
6957
+ # More info can be found [here](https://cloud.google.com/sql/pricing#serverless).
6958
+ # Corresponds to the JSON property `offload`
6959
+ # @return [Boolean]
6960
+ attr_accessor :offload
6961
+ alias_method :offload?, :offload
6962
+
6963
+ # The project ID that the Cloud SQL source is in with a length limit of 128
6964
+ # characters. If not specified, inherits the project ID from the parent request.
6965
+ # Corresponds to the JSON property `projectId`
6966
+ # @return [String]
6967
+ attr_accessor :project_id
6968
+
6969
+ # Required. The Cloud SQL table to copy the data from with a length limit of 256
6970
+ # characters.
6971
+ # Corresponds to the JSON property `tableId`
6972
+ # @return [String]
6973
+ attr_accessor :table_id
6974
+
6975
+ def initialize(**args)
6976
+ update!(**args)
6977
+ end
6978
+
6979
+ # Update properties of this object
6980
+ def update!(**args)
6981
+ @database_id = args[:database_id] if args.key?(:database_id)
6982
+ @gcs_staging_dir = args[:gcs_staging_dir] if args.key?(:gcs_staging_dir)
6983
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
6984
+ @offload = args[:offload] if args.key?(:offload)
6985
+ @project_id = args[:project_id] if args.key?(:project_id)
6986
+ @table_id = args[:table_id] if args.key?(:table_id)
6987
+ end
6988
+ end
6989
+
6990
+ # Response message for CompletionService.CompleteQuery method.
6991
+ class GoogleCloudDiscoveryengineV1betaCompleteQueryResponse
6992
+ include Google::Apis::Core::Hashable
6993
+
6994
+ # Results of the matched query suggestions. The result list is ordered and the
6995
+ # first result is a top suggestion.
6996
+ # Corresponds to the JSON property `querySuggestions`
6997
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaCompleteQueryResponseQuerySuggestion>]
6998
+ attr_accessor :query_suggestions
6999
+
7000
+ # True if the returned suggestions are all tail suggestions. For tail matching
7001
+ # to be triggered, include_tail_suggestions in the request must be true and
7002
+ # there must be no suggestions that match the full query.
7003
+ # Corresponds to the JSON property `tailMatchTriggered`
7004
+ # @return [Boolean]
7005
+ attr_accessor :tail_match_triggered
7006
+ alias_method :tail_match_triggered?, :tail_match_triggered
7007
+
7008
+ def initialize(**args)
7009
+ update!(**args)
7010
+ end
7011
+
7012
+ # Update properties of this object
7013
+ def update!(**args)
7014
+ @query_suggestions = args[:query_suggestions] if args.key?(:query_suggestions)
7015
+ @tail_match_triggered = args[:tail_match_triggered] if args.key?(:tail_match_triggered)
7016
+ end
7017
+ end
7018
+
7019
+ # Suggestions as search queries.
7020
+ class GoogleCloudDiscoveryengineV1betaCompleteQueryResponseQuerySuggestion
7021
+ include Google::Apis::Core::Hashable
7022
+
7023
+ # The unique document field paths that serve as the source of this suggestion if
7024
+ # it was generated from completable fields. This field is only populated for the
7025
+ # document-completable model.
7026
+ # Corresponds to the JSON property `completableFieldPaths`
7027
+ # @return [Array<String>]
7028
+ attr_accessor :completable_field_paths
7029
+
7030
+ # The suggestion for the query.
7031
+ # Corresponds to the JSON property `suggestion`
7032
+ # @return [String]
7033
+ attr_accessor :suggestion
7034
+
7035
+ def initialize(**args)
7036
+ update!(**args)
7037
+ end
7038
+
7039
+ # Update properties of this object
7040
+ def update!(**args)
7041
+ @completable_field_paths = args[:completable_field_paths] if args.key?(:completable_field_paths)
7042
+ @suggestion = args[:suggestion] if args.key?(:suggestion)
7043
+ end
7044
+ end
7045
+
7046
+ # Detailed completion information including completion attribution token and
7047
+ # clicked completion info.
7048
+ class GoogleCloudDiscoveryengineV1betaCompletionInfo
7049
+ include Google::Apis::Core::Hashable
7050
+
7051
+ # End user selected CompleteQueryResponse.QuerySuggestion.suggestion position,
7052
+ # starting from 0.
7053
+ # Corresponds to the JSON property `selectedPosition`
7054
+ # @return [Fixnum]
7055
+ attr_accessor :selected_position
7056
+
7057
+ # End user selected CompleteQueryResponse.QuerySuggestion.suggestion.
7058
+ # Corresponds to the JSON property `selectedSuggestion`
7059
+ # @return [String]
7060
+ attr_accessor :selected_suggestion
7061
+
7062
+ def initialize(**args)
7063
+ update!(**args)
7064
+ end
7065
+
7066
+ # Update properties of this object
7067
+ def update!(**args)
7068
+ @selected_position = args[:selected_position] if args.key?(:selected_position)
7069
+ @selected_suggestion = args[:selected_suggestion] if args.key?(:selected_suggestion)
7070
+ end
7071
+ end
7072
+
7073
+ # Defines circumstances to be checked before allowing a behavior
7074
+ class GoogleCloudDiscoveryengineV1betaCondition
7075
+ include Google::Apis::Core::Hashable
7076
+
7077
+ # Range of time(s) specifying when condition is active. Maximum of 10 time
7078
+ # ranges.
7079
+ # Corresponds to the JSON property `activeTimeRange`
7080
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaConditionTimeRange>]
7081
+ attr_accessor :active_time_range
7082
+
7083
+ # Search only A list of terms to match the query on. Maximum of 10 query terms.
7084
+ # Corresponds to the JSON property `queryTerms`
7085
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaConditionQueryTerm>]
7086
+ attr_accessor :query_terms
7087
+
7088
+ def initialize(**args)
7089
+ update!(**args)
7090
+ end
7091
+
7092
+ # Update properties of this object
7093
+ def update!(**args)
7094
+ @active_time_range = args[:active_time_range] if args.key?(:active_time_range)
7095
+ @query_terms = args[:query_terms] if args.key?(:query_terms)
7096
+ end
7097
+ end
7098
+
7099
+ # Matcher for search request query
7100
+ class GoogleCloudDiscoveryengineV1betaConditionQueryTerm
7101
+ include Google::Apis::Core::Hashable
7102
+
7103
+ # Whether the search query needs to exactly match the query term.
7104
+ # Corresponds to the JSON property `fullMatch`
7105
+ # @return [Boolean]
7106
+ attr_accessor :full_match
7107
+ alias_method :full_match?, :full_match
7108
+
7109
+ # The specific query value to match against Must be lowercase, must be UTF-8.
7110
+ # Can have at most 3 space separated terms if full_match is true. Cannot be an
7111
+ # empty string. Maximum length of 5000 characters.
7112
+ # Corresponds to the JSON property `value`
7113
+ # @return [String]
7114
+ attr_accessor :value
7115
+
7116
+ def initialize(**args)
7117
+ update!(**args)
7118
+ end
7119
+
7120
+ # Update properties of this object
7121
+ def update!(**args)
7122
+ @full_match = args[:full_match] if args.key?(:full_match)
7123
+ @value = args[:value] if args.key?(:value)
7124
+ end
7125
+ end
7126
+
7127
+ # Used for time-dependent conditions.
7128
+ class GoogleCloudDiscoveryengineV1betaConditionTimeRange
7129
+ include Google::Apis::Core::Hashable
7130
+
7131
+ # End of time range. Range is inclusive. Must be in the future.
7132
+ # Corresponds to the JSON property `endTime`
7133
+ # @return [String]
7134
+ attr_accessor :end_time
7135
+
7136
+ # Start of time range. Range is inclusive.
7137
+ # Corresponds to the JSON property `startTime`
7138
+ # @return [String]
7139
+ attr_accessor :start_time
7140
+
7141
+ def initialize(**args)
7142
+ update!(**args)
7143
+ end
7144
+
7145
+ # Update properties of this object
7146
+ def update!(**args)
7147
+ @end_time = args[:end_time] if args.key?(:end_time)
7148
+ @start_time = args[:start_time] if args.key?(:start_time)
7149
+ end
7150
+ end
7151
+
7152
+ # Defines a conditioned behavior to employ during serving. Must be attached to a
7153
+ # ServingConfig to be considered at serving time. Permitted actions dependent on
7154
+ # `SolutionType`.
7155
+ class GoogleCloudDiscoveryengineV1betaControl
7156
+ include Google::Apis::Core::Hashable
7157
+
7158
+ # Output only. List of all ServingConfig ids this control is attached to. May
7159
+ # take up to 10 minutes to update after changes.
7160
+ # Corresponds to the JSON property `associatedServingConfigIds`
7161
+ # @return [Array<String>]
7162
+ attr_accessor :associated_serving_config_ids
7163
+
7164
+ # Adjusts order of products in returned list.
7165
+ # Corresponds to the JSON property `boostAction`
7166
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaControlBoostAction]
7167
+ attr_accessor :boost_action
7168
+
7169
+ # Determines when the associated action will trigger. Omit to always apply the
7170
+ # action. Currently only a single condition may be specified. Otherwise an
7171
+ # INVALID ARGUMENT error is thrown.
7172
+ # Corresponds to the JSON property `conditions`
7173
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaCondition>]
7174
+ attr_accessor :conditions
7175
+
7176
+ # Required. Human readable name. The identifier used in UI views. Must be UTF-8
7177
+ # encoded string. Length limit is 128 characters. Otherwise an INVALID ARGUMENT
7178
+ # error is thrown.
7179
+ # Corresponds to the JSON property `displayName`
7180
+ # @return [String]
7181
+ attr_accessor :display_name
7182
+
7183
+ # Specified which products may be included in results. Uses same filter as boost.
7184
+ # Corresponds to the JSON property `filterAction`
7185
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaControlFilterAction]
7186
+ attr_accessor :filter_action
7187
+
7188
+ # Immutable. Fully qualified name `projects/*/locations/global/dataStore/*/
7189
+ # controls/*`
7190
+ # Corresponds to the JSON property `name`
7191
+ # @return [String]
7192
+ attr_accessor :name
7193
+
7194
+ # Redirects a shopper to the provided URI.
7195
+ # Corresponds to the JSON property `redirectAction`
7196
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaControlRedirectAction]
7197
+ attr_accessor :redirect_action
7198
+
7199
+ # Required. Immutable. What solution the control belongs to. Must be compatible
7200
+ # with vertical of resource. Otherwise an INVALID ARGUMENT error is thrown.
7201
+ # Corresponds to the JSON property `solutionType`
7202
+ # @return [String]
7203
+ attr_accessor :solution_type
7204
+
7205
+ # Creates a set of terms that will act as synonyms of one another. Example: "
7206
+ # happy" will also be considered as "glad", "glad" will also be considered as "
7207
+ # happy".
7208
+ # Corresponds to the JSON property `synonymsAction`
7209
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaControlSynonymsAction]
7210
+ attr_accessor :synonyms_action
7211
+
7212
+ # Specifies the use case for the control. Affects what condition fields can be
7213
+ # set. Only applies to SOLUTION_TYPE_SEARCH. Currently only allow one use case
7214
+ # per control. Must be set when solution_type is SolutionType.
7215
+ # SOLUTION_TYPE_SEARCH.
7216
+ # Corresponds to the JSON property `useCases`
7217
+ # @return [Array<String>]
7218
+ attr_accessor :use_cases
7219
+
7220
+ def initialize(**args)
7221
+ update!(**args)
7222
+ end
7223
+
7224
+ # Update properties of this object
7225
+ def update!(**args)
7226
+ @associated_serving_config_ids = args[:associated_serving_config_ids] if args.key?(:associated_serving_config_ids)
7227
+ @boost_action = args[:boost_action] if args.key?(:boost_action)
7228
+ @conditions = args[:conditions] if args.key?(:conditions)
7229
+ @display_name = args[:display_name] if args.key?(:display_name)
7230
+ @filter_action = args[:filter_action] if args.key?(:filter_action)
7231
+ @name = args[:name] if args.key?(:name)
7232
+ @redirect_action = args[:redirect_action] if args.key?(:redirect_action)
7233
+ @solution_type = args[:solution_type] if args.key?(:solution_type)
7234
+ @synonyms_action = args[:synonyms_action] if args.key?(:synonyms_action)
7235
+ @use_cases = args[:use_cases] if args.key?(:use_cases)
7236
+ end
7237
+ end
7238
+
7239
+ # Adjusts order of products in returned list.
7240
+ class GoogleCloudDiscoveryengineV1betaControlBoostAction
7241
+ include Google::Apis::Core::Hashable
6244
7242
 
6245
- # Option for serverless export. Enabling this option will incur additional cost.
6246
- # More info can be found [here](https://cloud.google.com/sql/pricing#serverless).
6247
- # Corresponds to the JSON property `offload`
6248
- # @return [Boolean]
6249
- attr_accessor :offload
6250
- alias_method :offload?, :offload
7243
+ # Required. Strength of the boost, which should be in [-1, 1]. Negative boost
7244
+ # means demotion. Default is 0.0 (No-op).
7245
+ # Corresponds to the JSON property `boost`
7246
+ # @return [Float]
7247
+ attr_accessor :boost
6251
7248
 
6252
- # The project ID that the Cloud SQL source is in with a length limit of 128
6253
- # characters. If not specified, inherits the project ID from the parent request.
6254
- # Corresponds to the JSON property `projectId`
7249
+ # Required. Specifies which data store's documents can be boosted by this
7250
+ # control. Full data store name e.g. projects/123/locations/global/collections/
7251
+ # default_collection/dataStores/default_data_store
7252
+ # Corresponds to the JSON property `dataStore`
6255
7253
  # @return [String]
6256
- attr_accessor :project_id
7254
+ attr_accessor :data_store
6257
7255
 
6258
- # Required. The Cloud SQL table to copy the data from with a length limit of 256
6259
- # characters.
6260
- # Corresponds to the JSON property `tableId`
7256
+ # Required. Specifies which products to apply the boost to. If no filter is
7257
+ # provided all products will be boosted (No-op). Syntax documentation: https://
7258
+ # cloud.google.com/retail/docs/filter-and-order Maximum length is 5000
7259
+ # characters. Otherwise an INVALID ARGUMENT error is thrown.
7260
+ # Corresponds to the JSON property `filter`
6261
7261
  # @return [String]
6262
- attr_accessor :table_id
7262
+ attr_accessor :filter
6263
7263
 
6264
7264
  def initialize(**args)
6265
7265
  update!(**args)
@@ -6267,32 +7267,29 @@ module Google
6267
7267
 
6268
7268
  # Update properties of this object
6269
7269
  def update!(**args)
6270
- @database_id = args[:database_id] if args.key?(:database_id)
6271
- @gcs_staging_dir = args[:gcs_staging_dir] if args.key?(:gcs_staging_dir)
6272
- @instance_id = args[:instance_id] if args.key?(:instance_id)
6273
- @offload = args[:offload] if args.key?(:offload)
6274
- @project_id = args[:project_id] if args.key?(:project_id)
6275
- @table_id = args[:table_id] if args.key?(:table_id)
7270
+ @boost = args[:boost] if args.key?(:boost)
7271
+ @data_store = args[:data_store] if args.key?(:data_store)
7272
+ @filter = args[:filter] if args.key?(:filter)
6276
7273
  end
6277
7274
  end
6278
7275
 
6279
- # Response message for CompletionService.CompleteQuery method.
6280
- class GoogleCloudDiscoveryengineV1betaCompleteQueryResponse
7276
+ # Specified which products may be included in results. Uses same filter as boost.
7277
+ class GoogleCloudDiscoveryengineV1betaControlFilterAction
6281
7278
  include Google::Apis::Core::Hashable
6282
7279
 
6283
- # Results of the matched query suggestions. The result list is ordered and the
6284
- # first result is a top suggestion.
6285
- # Corresponds to the JSON property `querySuggestions`
6286
- # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaCompleteQueryResponseQuerySuggestion>]
6287
- attr_accessor :query_suggestions
7280
+ # Required. Specifies which data store's documents can be filtered by this
7281
+ # control. Full data store name e.g. projects/123/locations/global/collections/
7282
+ # default_collection/dataStores/default_data_store
7283
+ # Corresponds to the JSON property `dataStore`
7284
+ # @return [String]
7285
+ attr_accessor :data_store
6288
7286
 
6289
- # True if the returned suggestions are all tail suggestions. For tail matching
6290
- # to be triggered, include_tail_suggestions in the request must be true and
6291
- # there must be no suggestions that match the full query.
6292
- # Corresponds to the JSON property `tailMatchTriggered`
6293
- # @return [Boolean]
6294
- attr_accessor :tail_match_triggered
6295
- alias_method :tail_match_triggered?, :tail_match_triggered
7287
+ # Required. A filter to apply on the matching condition results. Required Syntax
7288
+ # documentation: https://cloud.google.com/retail/docs/filter-and-order Maximum
7289
+ # length is 5000 characters. Otherwise an INVALID ARGUMENT error is thrown.
7290
+ # Corresponds to the JSON property `filter`
7291
+ # @return [String]
7292
+ attr_accessor :filter
6296
7293
 
6297
7294
  def initialize(**args)
6298
7295
  update!(**args)
@@ -6300,26 +7297,21 @@ module Google
6300
7297
 
6301
7298
  # Update properties of this object
6302
7299
  def update!(**args)
6303
- @query_suggestions = args[:query_suggestions] if args.key?(:query_suggestions)
6304
- @tail_match_triggered = args[:tail_match_triggered] if args.key?(:tail_match_triggered)
7300
+ @data_store = args[:data_store] if args.key?(:data_store)
7301
+ @filter = args[:filter] if args.key?(:filter)
6305
7302
  end
6306
7303
  end
6307
7304
 
6308
- # Suggestions as search queries.
6309
- class GoogleCloudDiscoveryengineV1betaCompleteQueryResponseQuerySuggestion
7305
+ # Redirects a shopper to the provided URI.
7306
+ class GoogleCloudDiscoveryengineV1betaControlRedirectAction
6310
7307
  include Google::Apis::Core::Hashable
6311
7308
 
6312
- # The unique document field paths that serve as the source of this suggestion if
6313
- # it was generated from completable fields. This field is only populated for the
6314
- # document-completable model.
6315
- # Corresponds to the JSON property `completableFieldPaths`
6316
- # @return [Array<String>]
6317
- attr_accessor :completable_field_paths
6318
-
6319
- # The suggestion for the query.
6320
- # Corresponds to the JSON property `suggestion`
7309
+ # Required. The URI to which the shopper will be redirected. Required. URI must
7310
+ # have length equal or less than 2000 characters. Otherwise an INVALID ARGUMENT
7311
+ # error is thrown.
7312
+ # Corresponds to the JSON property `redirectUri`
6321
7313
  # @return [String]
6322
- attr_accessor :suggestion
7314
+ attr_accessor :redirect_uri
6323
7315
 
6324
7316
  def initialize(**args)
6325
7317
  update!(**args)
@@ -6327,26 +7319,21 @@ module Google
6327
7319
 
6328
7320
  # Update properties of this object
6329
7321
  def update!(**args)
6330
- @completable_field_paths = args[:completable_field_paths] if args.key?(:completable_field_paths)
6331
- @suggestion = args[:suggestion] if args.key?(:suggestion)
7322
+ @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri)
6332
7323
  end
6333
7324
  end
6334
7325
 
6335
- # Detailed completion information including completion attribution token and
6336
- # clicked completion info.
6337
- class GoogleCloudDiscoveryengineV1betaCompletionInfo
7326
+ # Creates a set of terms that will act as synonyms of one another. Example: "
7327
+ # happy" will also be considered as "glad", "glad" will also be considered as "
7328
+ # happy".
7329
+ class GoogleCloudDiscoveryengineV1betaControlSynonymsAction
6338
7330
  include Google::Apis::Core::Hashable
6339
7331
 
6340
- # End user selected CompleteQueryResponse.QuerySuggestion.suggestion position,
6341
- # starting from 0.
6342
- # Corresponds to the JSON property `selectedPosition`
6343
- # @return [Fixnum]
6344
- attr_accessor :selected_position
6345
-
6346
- # End user selected CompleteQueryResponse.QuerySuggestion.suggestion.
6347
- # Corresponds to the JSON property `selectedSuggestion`
6348
- # @return [String]
6349
- attr_accessor :selected_suggestion
7332
+ # Defines a set of synonyms. Can specify up to 100 synonyms. Must specify at
7333
+ # least 2 synonyms. Otherwise an INVALID ARGUMENT error is thrown.
7334
+ # Corresponds to the JSON property `synonyms`
7335
+ # @return [Array<String>]
7336
+ attr_accessor :synonyms
6350
7337
 
6351
7338
  def initialize(**args)
6352
7339
  update!(**args)
@@ -6354,8 +7341,7 @@ module Google
6354
7341
 
6355
7342
  # Update properties of this object
6356
7343
  def update!(**args)
6357
- @selected_position = args[:selected_position] if args.key?(:selected_position)
6358
- @selected_suggestion = args[:selected_suggestion] if args.key?(:selected_suggestion)
7344
+ @synonyms = args[:synonyms] if args.key?(:synonyms)
6359
7345
  end
6360
7346
  end
6361
7347
 
@@ -6779,7 +7765,7 @@ module Google
6779
7765
  # @return [String]
6780
7766
  attr_accessor :model_state
6781
7767
 
6782
- #
7768
+ # The version of the model.
6783
7769
  # Corresponds to the JSON property `modelVersion`
6784
7770
  # @return [Fixnum]
6785
7771
  attr_accessor :model_version
@@ -7621,8 +8607,8 @@ module Google
7621
8607
  class GoogleCloudDiscoveryengineV1betaEngineCommonConfig
7622
8608
  include Google::Apis::Core::Hashable
7623
8609
 
7624
- # Immutable. The name of the company, business or entity that is associated with
7625
- # the engine. Setting this may help improve LLM related features.
8610
+ # The name of the company, business or entity that is associated with the engine.
8611
+ # Setting this may help improve LLM related features.
7626
8612
  # Corresponds to the JSON property `companyName`
7627
8613
  # @return [String]
7628
8614
  attr_accessor :company_name
@@ -8381,6 +9367,31 @@ module Google
8381
9367
  end
8382
9368
  end
8383
9369
 
9370
+ # Response for ListControls method.
9371
+ class GoogleCloudDiscoveryengineV1betaListControlsResponse
9372
+ include Google::Apis::Core::Hashable
9373
+
9374
+ # All the Controls for a given data store.
9375
+ # Corresponds to the JSON property `controls`
9376
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaControl>]
9377
+ attr_accessor :controls
9378
+
9379
+ # Pagination token, if not returned indicates the last page.
9380
+ # Corresponds to the JSON property `nextPageToken`
9381
+ # @return [String]
9382
+ attr_accessor :next_page_token
9383
+
9384
+ def initialize(**args)
9385
+ update!(**args)
9386
+ end
9387
+
9388
+ # Update properties of this object
9389
+ def update!(**args)
9390
+ @controls = args[:controls] if args.key?(:controls)
9391
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
9392
+ end
9393
+ end
9394
+
8384
9395
  # Response for ListConversations method.
8385
9396
  class GoogleCloudDiscoveryengineV1betaListConversationsResponse
8386
9397
  include Google::Apis::Core::Hashable
@@ -8748,6 +9759,138 @@ module Google
8748
9759
  end
8749
9760
  end
8750
9761
 
9762
+ # Metadata and configurations for a Google Cloud project in the service.
9763
+ class GoogleCloudDiscoveryengineV1betaProject
9764
+ include Google::Apis::Core::Hashable
9765
+
9766
+ # Output only. The timestamp when this project is created.
9767
+ # Corresponds to the JSON property `createTime`
9768
+ # @return [String]
9769
+ attr_accessor :create_time
9770
+
9771
+ # Output only. Full resource name of the project, for example `projects/`
9772
+ # project_number``. Note that when making requests, project number and project
9773
+ # id are both acceptable, but the server will always respond in project number.
9774
+ # Corresponds to the JSON property `name`
9775
+ # @return [String]
9776
+ attr_accessor :name
9777
+
9778
+ # Output only. The timestamp when this project is successfully provisioned.
9779
+ # Empty value means this project is still provisioning and is not ready for use.
9780
+ # Corresponds to the JSON property `provisionCompletionTime`
9781
+ # @return [String]
9782
+ attr_accessor :provision_completion_time
9783
+
9784
+ # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
9785
+ # Corresponds to the JSON property `serviceTermsMap`
9786
+ # @return [Hash<String,Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaProjectServiceTerms>]
9787
+ attr_accessor :service_terms_map
9788
+
9789
+ def initialize(**args)
9790
+ update!(**args)
9791
+ end
9792
+
9793
+ # Update properties of this object
9794
+ def update!(**args)
9795
+ @create_time = args[:create_time] if args.key?(:create_time)
9796
+ @name = args[:name] if args.key?(:name)
9797
+ @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
9798
+ @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
9799
+ end
9800
+ end
9801
+
9802
+ # Metadata about the terms of service.
9803
+ class GoogleCloudDiscoveryengineV1betaProjectServiceTerms
9804
+ include Google::Apis::Core::Hashable
9805
+
9806
+ # The last time when the project agreed to the terms of service.
9807
+ # Corresponds to the JSON property `acceptTime`
9808
+ # @return [String]
9809
+ attr_accessor :accept_time
9810
+
9811
+ # The last time when the project declined or revoked the agreement to terms of
9812
+ # service.
9813
+ # Corresponds to the JSON property `declineTime`
9814
+ # @return [String]
9815
+ attr_accessor :decline_time
9816
+
9817
+ # The unique identifier of this terms of service. Available terms: * `
9818
+ # GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-
9819
+ # use-terms). When using this as `id`, the acceptable version to provide is `
9820
+ # 2022-11-23`.
9821
+ # Corresponds to the JSON property `id`
9822
+ # @return [String]
9823
+ attr_accessor :id
9824
+
9825
+ # Whether the project has accepted/rejected the service terms or it is still
9826
+ # pending.
9827
+ # Corresponds to the JSON property `state`
9828
+ # @return [String]
9829
+ attr_accessor :state
9830
+
9831
+ # The version string of the terms of service. For acceptable values, see the
9832
+ # comments for id above.
9833
+ # Corresponds to the JSON property `version`
9834
+ # @return [String]
9835
+ attr_accessor :version
9836
+
9837
+ def initialize(**args)
9838
+ update!(**args)
9839
+ end
9840
+
9841
+ # Update properties of this object
9842
+ def update!(**args)
9843
+ @accept_time = args[:accept_time] if args.key?(:accept_time)
9844
+ @decline_time = args[:decline_time] if args.key?(:decline_time)
9845
+ @id = args[:id] if args.key?(:id)
9846
+ @state = args[:state] if args.key?(:state)
9847
+ @version = args[:version] if args.key?(:version)
9848
+ end
9849
+ end
9850
+
9851
+ # Metadata associated with a project provision operation.
9852
+ class GoogleCloudDiscoveryengineV1betaProvisionProjectMetadata
9853
+ include Google::Apis::Core::Hashable
9854
+
9855
+ def initialize(**args)
9856
+ update!(**args)
9857
+ end
9858
+
9859
+ # Update properties of this object
9860
+ def update!(**args)
9861
+ end
9862
+ end
9863
+
9864
+ # Request for ProjectService.ProvisionProject method.
9865
+ class GoogleCloudDiscoveryengineV1betaProvisionProjectRequest
9866
+ include Google::Apis::Core::Hashable
9867
+
9868
+ # Required. Set to `true` to specify that caller has read and would like to give
9869
+ # consent to the [Terms for data use](https://cloud.google.com/retail/data-use-
9870
+ # terms).
9871
+ # Corresponds to the JSON property `acceptDataUseTerms`
9872
+ # @return [Boolean]
9873
+ attr_accessor :accept_data_use_terms
9874
+ alias_method :accept_data_use_terms?, :accept_data_use_terms
9875
+
9876
+ # Required. The version of the [Terms for data use](https://cloud.google.com/
9877
+ # retail/data-use-terms) that caller has read and would like to give consent to.
9878
+ # Acceptable version is `2022-11-23`, and this may change over time.
9879
+ # Corresponds to the JSON property `dataUseTermsVersion`
9880
+ # @return [String]
9881
+ attr_accessor :data_use_terms_version
9882
+
9883
+ def initialize(**args)
9884
+ update!(**args)
9885
+ end
9886
+
9887
+ # Update properties of this object
9888
+ def update!(**args)
9889
+ @accept_data_use_terms = args[:accept_data_use_terms] if args.key?(:accept_data_use_terms)
9890
+ @data_use_terms_version = args[:data_use_terms_version] if args.key?(:data_use_terms_version)
9891
+ end
9892
+ end
9893
+
8751
9894
  # Metadata related to the progress of the PurgeDocuments operation. This will be
8752
9895
  # returned by the google.longrunning.Operation.metadata field.
8753
9896
  class GoogleCloudDiscoveryengineV1betaPurgeDocumentsMetadata
@@ -8974,6 +10117,21 @@ module Google
8974
10117
  # @return [Fixnum]
8975
10118
  attr_accessor :top_n
8976
10119
 
10120
+ # The user labels applied to a resource must meet the following requirements: *
10121
+ # Each resource can have multiple labels, up to a maximum of 64. * Each label
10122
+ # must be a key-value pair. * Keys have a minimum length of 1 character and a
10123
+ # maximum length of 63 characters and cannot be empty. Values can be empty and
10124
+ # have a maximum length of 63 characters. * Keys and values can contain only
10125
+ # lowercase letters, numeric characters, underscores, and dashes. All characters
10126
+ # must use UTF-8 encoding, and international characters are allowed. * The key
10127
+ # portion of a label must be unique. However, you can use the same key with
10128
+ # multiple resources. * Keys must start with a lowercase letter or international
10129
+ # character. See [Google Cloud Document](https://cloud.google.com/resource-
10130
+ # manager/docs/creating-managing-labels#requirements) for more details.
10131
+ # Corresponds to the JSON property `userLabels`
10132
+ # @return [Hash<String,String>]
10133
+ attr_accessor :user_labels
10134
+
8977
10135
  def initialize(**args)
8978
10136
  update!(**args)
8979
10137
  end
@@ -8985,6 +10143,7 @@ module Google
8985
10143
  @query = args[:query] if args.key?(:query)
8986
10144
  @records = args[:records] if args.key?(:records)
8987
10145
  @top_n = args[:top_n] if args.key?(:top_n)
10146
+ @user_labels = args[:user_labels] if args.key?(:user_labels)
8988
10147
  end
8989
10148
  end
8990
10149
 
@@ -11819,6 +12978,15 @@ module Google
11819
12978
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaCompletionInfo]
11820
12979
  attr_accessor :completion_info
11821
12980
 
12981
+ # The DataStore resource full name, of the form `projects/`project`/locations/`
12982
+ # location`/collections/`collection_id`/dataStores/`data_store_id``. Optional.
12983
+ # Only required for user events whose data store can't by determined by
12984
+ # UserEvent.engine or UserEvent.documents. If data store is set in the parent of
12985
+ # write/import/collect user event requests, this field can be omitted.
12986
+ # Corresponds to the JSON property `dataStore`
12987
+ # @return [String]
12988
+ attr_accessor :data_store
12989
+
11822
12990
  # Should set to true if the request is made directly from the end user, in which
11823
12991
  # case the UserEvent.user_info.user_agent can be populated from the HTTP request.
11824
12992
  # This flag should be set only if the API request is made directly from the end
@@ -11841,6 +13009,14 @@ module Google
11841
13009
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaDocumentInfo>]
11842
13010
  attr_accessor :documents
11843
13011
 
13012
+ # The Engine resource name, in the form of `projects/`project`/locations/`
13013
+ # location`/collections/`collection_id`/engines/`engine_id``. Optional. Only
13014
+ # required for Engine produced user events. For example, user events from
13015
+ # blended search.
13016
+ # Corresponds to the JSON property `engine`
13017
+ # @return [String]
13018
+ attr_accessor :engine
13019
+
11844
13020
  # Only required for UserEventService.ImportUserEvents method. Timestamp of when
11845
13021
  # the user event happened.
11846
13022
  # Corresponds to the JSON property `eventTime`
@@ -11948,8 +13124,10 @@ module Google
11948
13124
  @attributes = args[:attributes] if args.key?(:attributes)
11949
13125
  @attribution_token = args[:attribution_token] if args.key?(:attribution_token)
11950
13126
  @completion_info = args[:completion_info] if args.key?(:completion_info)
13127
+ @data_store = args[:data_store] if args.key?(:data_store)
11951
13128
  @direct_user_request = args[:direct_user_request] if args.key?(:direct_user_request)
11952
13129
  @documents = args[:documents] if args.key?(:documents)
13130
+ @engine = args[:engine] if args.key?(:engine)
11953
13131
  @event_time = args[:event_time] if args.key?(:event_time)
11954
13132
  @event_type = args[:event_type] if args.key?(:event_type)
11955
13133
  @filter = args[:filter] if args.key?(:filter)