google-apis-discoveryengine_v1beta 0.82.0 → 0.84.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1459,6 +1459,56 @@ module Google
1459
1459
  end
1460
1460
  end
1461
1461
 
1462
+ # Informations to support actions on the connector.
1463
+ class GoogleCloudDiscoveryengineV1ActionConfig
1464
+ include Google::Apis::Core::Hashable
1465
+
1466
+ # Optional. Action parameters in structured json format.
1467
+ # Corresponds to the JSON property `actionParams`
1468
+ # @return [Hash<String,Object>]
1469
+ attr_accessor :action_params
1470
+
1471
+ # Output only. The connector contains the necessary parameters and is configured
1472
+ # to support actions.
1473
+ # Corresponds to the JSON property `isActionConfigured`
1474
+ # @return [Boolean]
1475
+ attr_accessor :is_action_configured
1476
+ alias_method :is_action_configured?, :is_action_configured
1477
+
1478
+ # Optional. Action parameters in json string format.
1479
+ # Corresponds to the JSON property `jsonActionParams`
1480
+ # @return [String]
1481
+ attr_accessor :json_action_params
1482
+
1483
+ # Optional. The Service Directory resource name (projects/*/locations/*/
1484
+ # namespaces/*/services/*) representing a VPC network endpoint used to connect
1485
+ # to the data source's `instance_uri`, defined in DataConnector.params. Required
1486
+ # when VPC Service Controls are enabled.
1487
+ # Corresponds to the JSON property `serviceName`
1488
+ # @return [String]
1489
+ attr_accessor :service_name
1490
+
1491
+ # Optional. Whether to use static secrets for the connector. If true, the
1492
+ # secrets provided in the action_params will be ignored.
1493
+ # Corresponds to the JSON property `useStaticSecrets`
1494
+ # @return [Boolean]
1495
+ attr_accessor :use_static_secrets
1496
+ alias_method :use_static_secrets?, :use_static_secrets
1497
+
1498
+ def initialize(**args)
1499
+ update!(**args)
1500
+ end
1501
+
1502
+ # Update properties of this object
1503
+ def update!(**args)
1504
+ @action_params = args[:action_params] if args.key?(:action_params)
1505
+ @is_action_configured = args[:is_action_configured] if args.key?(:is_action_configured)
1506
+ @json_action_params = args[:json_action_params] if args.key?(:json_action_params)
1507
+ @service_name = args[:service_name] if args.key?(:service_name)
1508
+ @use_static_secrets = args[:use_static_secrets] if args.key?(:use_static_secrets)
1509
+ end
1510
+ end
1511
+
1462
1512
  # Configuration data for advance site search.
1463
1513
  class GoogleCloudDiscoveryengineV1AdvancedSiteSearchConfig
1464
1514
  include Google::Apis::Core::Hashable
@@ -1486,6 +1536,56 @@ module Google
1486
1536
  end
1487
1537
  end
1488
1538
 
1539
+ # The connector level alert config.
1540
+ class GoogleCloudDiscoveryengineV1AlertPolicyConfig
1541
+ include Google::Apis::Core::Hashable
1542
+
1543
+ # Optional. The enrollment states of each alert.
1544
+ # Corresponds to the JSON property `alertEnrollments`
1545
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1AlertPolicyConfigAlertEnrollment>]
1546
+ attr_accessor :alert_enrollments
1547
+
1548
+ # Immutable. The fully qualified resource name of the AlertPolicy.
1549
+ # Corresponds to the JSON property `alertPolicyName`
1550
+ # @return [String]
1551
+ attr_accessor :alert_policy_name
1552
+
1553
+ def initialize(**args)
1554
+ update!(**args)
1555
+ end
1556
+
1557
+ # Update properties of this object
1558
+ def update!(**args)
1559
+ @alert_enrollments = args[:alert_enrollments] if args.key?(:alert_enrollments)
1560
+ @alert_policy_name = args[:alert_policy_name] if args.key?(:alert_policy_name)
1561
+ end
1562
+ end
1563
+
1564
+ # The alert enrollment status.
1565
+ class GoogleCloudDiscoveryengineV1AlertPolicyConfigAlertEnrollment
1566
+ include Google::Apis::Core::Hashable
1567
+
1568
+ # Immutable. The id of an alert.
1569
+ # Corresponds to the JSON property `alertId`
1570
+ # @return [String]
1571
+ attr_accessor :alert_id
1572
+
1573
+ # Required. The enrollment status of a customer.
1574
+ # Corresponds to the JSON property `enrollState`
1575
+ # @return [String]
1576
+ attr_accessor :enroll_state
1577
+
1578
+ def initialize(**args)
1579
+ update!(**args)
1580
+ end
1581
+
1582
+ # Update properties of this object
1583
+ def update!(**args)
1584
+ @alert_id = args[:alert_id] if args.key?(:alert_id)
1585
+ @enroll_state = args[:enroll_state] if args.key?(:enroll_state)
1586
+ end
1587
+ end
1588
+
1489
1589
  # The specification for answer generation.
1490
1590
  class GoogleCloudDiscoveryengineV1AnswerGenerationSpec
1491
1591
  include Google::Apis::Core::Hashable
@@ -1812,6 +1912,31 @@ module Google
1812
1912
  end
1813
1913
  end
1814
1914
 
1915
+ # The configuration for the BAP connector.
1916
+ class GoogleCloudDiscoveryengineV1BapConfig
1917
+ include Google::Apis::Core::Hashable
1918
+
1919
+ # Optional. The actions enabled on the associated BAP connection.
1920
+ # Corresponds to the JSON property `enabledActions`
1921
+ # @return [Array<String>]
1922
+ attr_accessor :enabled_actions
1923
+
1924
+ # Required. The supported connector modes for the associated BAP connection.
1925
+ # Corresponds to the JSON property `supportedConnectorModes`
1926
+ # @return [Array<String>]
1927
+ attr_accessor :supported_connector_modes
1928
+
1929
+ def initialize(**args)
1930
+ update!(**args)
1931
+ end
1932
+
1933
+ # Update properties of this object
1934
+ def update!(**args)
1935
+ @enabled_actions = args[:enabled_actions] if args.key?(:enabled_actions)
1936
+ @supported_connector_modes = args[:supported_connector_modes] if args.key?(:supported_connector_modes)
1937
+ end
1938
+ end
1939
+
1815
1940
  # Metadata related to the progress of the SiteSearchEngineService.
1816
1941
  # BatchCreateTargetSites operation. This will be returned by the google.
1817
1942
  # longrunning.Operation.metadata field.
@@ -1990,6 +2115,42 @@ module Google
1990
2115
  end
1991
2116
  end
1992
2117
 
2118
+ # Collection is a container for configuring resources and access to a set of
2119
+ # DataStores.
2120
+ class GoogleCloudDiscoveryengineV1Collection
2121
+ include Google::Apis::Core::Hashable
2122
+
2123
+ # Output only. Timestamp the Collection was created at.
2124
+ # Corresponds to the JSON property `createTime`
2125
+ # @return [String]
2126
+ attr_accessor :create_time
2127
+
2128
+ # Required. The Collection display name. This field must be a UTF-8 encoded
2129
+ # string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT
2130
+ # error is returned.
2131
+ # Corresponds to the JSON property `displayName`
2132
+ # @return [String]
2133
+ attr_accessor :display_name
2134
+
2135
+ # Immutable. The full resource name of the Collection. Format: `projects/`
2136
+ # project`/locations/`location`/collections/`collection_id``. This field must be
2137
+ # a UTF-8 encoded string with a length limit of 1024 characters.
2138
+ # Corresponds to the JSON property `name`
2139
+ # @return [String]
2140
+ attr_accessor :name
2141
+
2142
+ def initialize(**args)
2143
+ update!(**args)
2144
+ end
2145
+
2146
+ # Update properties of this object
2147
+ def update!(**args)
2148
+ @create_time = args[:create_time] if args.key?(:create_time)
2149
+ @display_name = args[:display_name] if args.key?(:display_name)
2150
+ @name = args[:name] if args.key?(:name)
2151
+ end
2152
+ end
2153
+
1993
2154
  # Defines circumstances to be checked before allowing a behavior
1994
2155
  class GoogleCloudDiscoveryengineV1Condition
1995
2156
  include Google::Apis::Core::Hashable
@@ -2499,7 +2660,484 @@ module Google
2499
2660
  # time.
2500
2661
  # Corresponds to the JSON property `updateTime`
2501
2662
  # @return [String]
2502
- attr_accessor :update_time
2663
+ attr_accessor :update_time
2664
+
2665
+ def initialize(**args)
2666
+ update!(**args)
2667
+ end
2668
+
2669
+ # Update properties of this object
2670
+ def update!(**args)
2671
+ @create_time = args[:create_time] if args.key?(:create_time)
2672
+ @update_time = args[:update_time] if args.key?(:update_time)
2673
+ end
2674
+ end
2675
+
2676
+ # Metadata related to the progress of the SiteSearchEngineService.
2677
+ # CreateTargetSite operation. This will be returned by the google.longrunning.
2678
+ # Operation.metadata field.
2679
+ class GoogleCloudDiscoveryengineV1CreateTargetSiteMetadata
2680
+ include Google::Apis::Core::Hashable
2681
+
2682
+ # Operation create time.
2683
+ # Corresponds to the JSON property `createTime`
2684
+ # @return [String]
2685
+ attr_accessor :create_time
2686
+
2687
+ # Operation last update time. If the operation is done, this is also the finish
2688
+ # time.
2689
+ # Corresponds to the JSON property `updateTime`
2690
+ # @return [String]
2691
+ attr_accessor :update_time
2692
+
2693
+ def initialize(**args)
2694
+ update!(**args)
2695
+ end
2696
+
2697
+ # Update properties of this object
2698
+ def update!(**args)
2699
+ @create_time = args[:create_time] if args.key?(:create_time)
2700
+ @update_time = args[:update_time] if args.key?(:update_time)
2701
+ end
2702
+ end
2703
+
2704
+ # Manages the connection to external data sources for all data stores grouped
2705
+ # under a Collection. It's a singleton resource of Collection. The
2706
+ # initialization is only supported through DataConnectorService.
2707
+ # SetUpDataConnector method, which will create a new Collection and initialize
2708
+ # its DataConnector.
2709
+ class GoogleCloudDiscoveryengineV1DataConnector
2710
+ include Google::Apis::Core::Hashable
2711
+
2712
+ # Optional. Whether the connector will be created with an ACL config. Currently
2713
+ # this field only affects Cloud Storage and BigQuery connectors.
2714
+ # Corresponds to the JSON property `aclEnabled`
2715
+ # @return [Boolean]
2716
+ attr_accessor :acl_enabled
2717
+ alias_method :acl_enabled?, :acl_enabled
2718
+
2719
+ # Informations to support actions on the connector.
2720
+ # Corresponds to the JSON property `actionConfig`
2721
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ActionConfig]
2722
+ attr_accessor :action_config
2723
+
2724
+ # Output only. State of the action connector. This reflects whether the action
2725
+ # connector is initializing, active or has encountered errors.
2726
+ # Corresponds to the JSON property `actionState`
2727
+ # @return [String]
2728
+ attr_accessor :action_state
2729
+
2730
+ # Optional. The connector level alert config.
2731
+ # Corresponds to the JSON property `alertPolicyConfigs`
2732
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1AlertPolicyConfig>]
2733
+ attr_accessor :alert_policy_configs
2734
+
2735
+ # Optional. Indicates whether the connector is disabled for auto run. It can be
2736
+ # used to pause periodical and real time sync. Update: with the introduction of
2737
+ # incremental_sync_disabled, auto_run_disabled is used to pause/disable only
2738
+ # full syncs
2739
+ # Corresponds to the JSON property `autoRunDisabled`
2740
+ # @return [Boolean]
2741
+ attr_accessor :auto_run_disabled
2742
+ alias_method :auto_run_disabled?, :auto_run_disabled
2743
+
2744
+ # The configuration for the BAP connector.
2745
+ # Corresponds to the JSON property `bapConfig`
2746
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1BapConfig]
2747
+ attr_accessor :bap_config
2748
+
2749
+ # Output only. User actions that must be completed before the connector can
2750
+ # start syncing data.
2751
+ # Corresponds to the JSON property `blockingReasons`
2752
+ # @return [Array<String>]
2753
+ attr_accessor :blocking_reasons
2754
+
2755
+ # Optional. The modes enabled for this connector. Default state is
2756
+ # CONNECTOR_MODE_UNSPECIFIED.
2757
+ # Corresponds to the JSON property `connectorModes`
2758
+ # @return [Array<String>]
2759
+ attr_accessor :connector_modes
2760
+
2761
+ # Output only. The type of connector. Each source can only map to one type. For
2762
+ # example, salesforce, confluence and jira have THIRD_PARTY connector type. It
2763
+ # is not mutable once set by system.
2764
+ # Corresponds to the JSON property `connectorType`
2765
+ # @return [String]
2766
+ attr_accessor :connector_type
2767
+
2768
+ # Optional. Whether the END USER AUTHENTICATION connector is created in SaaS.
2769
+ # Corresponds to the JSON property `createEuaSaas`
2770
+ # @return [Boolean]
2771
+ attr_accessor :create_eua_saas
2772
+ alias_method :create_eua_saas?, :create_eua_saas
2773
+
2774
+ # Output only. Timestamp the DataConnector was created at.
2775
+ # Corresponds to the JSON property `createTime`
2776
+ # @return [String]
2777
+ attr_accessor :create_time
2778
+
2779
+ # Required. The name of the data source. Supported values: `salesforce`, `jira`,
2780
+ # `confluence`, `bigquery`.
2781
+ # Corresponds to the JSON property `dataSource`
2782
+ # @return [String]
2783
+ attr_accessor :data_source
2784
+
2785
+ # Optional. Any target destinations used to connect to third-party services.
2786
+ # Corresponds to the JSON property `destinationConfigs`
2787
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DestinationConfig>]
2788
+ attr_accessor :destination_configs
2789
+
2790
+ # Any params and credentials used specifically for EUA connectors.
2791
+ # Corresponds to the JSON property `endUserConfig`
2792
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DataConnectorEndUserConfig]
2793
+ attr_accessor :end_user_config
2794
+
2795
+ # List of entities from the connected data source to ingest.
2796
+ # Corresponds to the JSON property `entities`
2797
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DataConnectorSourceEntity>]
2798
+ attr_accessor :entities
2799
+
2800
+ # Output only. The errors from initialization or from the latest connector run.
2801
+ # Corresponds to the JSON property `errors`
2802
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleRpcStatus>]
2803
+ attr_accessor :errors
2804
+
2805
+ # Any params and credentials used specifically for hybrid connectors supporting
2806
+ # FEDERATED mode.
2807
+ # Corresponds to the JSON property `federatedConfig`
2808
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DataConnectorFederatedConfig]
2809
+ attr_accessor :federated_config
2810
+
2811
+ # Optional. If the connector is a hybrid connector, determines whether ingestion
2812
+ # is enabled and appropriate resources are provisioned during connector creation.
2813
+ # If the connector is not a hybrid connector, this field is ignored.
2814
+ # Corresponds to the JSON property `hybridIngestionDisabled`
2815
+ # @return [Boolean]
2816
+ attr_accessor :hybrid_ingestion_disabled
2817
+ alias_method :hybrid_ingestion_disabled?, :hybrid_ingestion_disabled
2818
+
2819
+ # The refresh interval to sync the Access Control List information for the
2820
+ # documents ingested by this connector. If not set, the access control list will
2821
+ # be refreshed at the default interval of 30 minutes. The identity refresh
2822
+ # interval can be at least 30 minutes and at most 7 days.
2823
+ # Corresponds to the JSON property `identityRefreshInterval`
2824
+ # @return [String]
2825
+ attr_accessor :identity_refresh_interval
2826
+
2827
+ # The configuration for the identity data synchronization runs.
2828
+ # Corresponds to the JSON property `identityScheduleConfig`
2829
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1IdentityScheduleConfig]
2830
+ attr_accessor :identity_schedule_config
2831
+
2832
+ # Optional. The refresh interval specifically for incremental data syncs. If
2833
+ # unset, incremental syncs will use the default from env, set to 3hrs. The
2834
+ # minimum is 30 minutes and maximum is 7 days. Applicable to only 3P connectors.
2835
+ # When the refresh interval is set to the same value as the incremental refresh
2836
+ # interval, incremental sync will be disabled.
2837
+ # Corresponds to the JSON property `incrementalRefreshInterval`
2838
+ # @return [String]
2839
+ attr_accessor :incremental_refresh_interval
2840
+
2841
+ # Optional. Indicates whether incremental syncs are paused for this connector.
2842
+ # This is independent of auto_run_disabled. Applicable to only 3P connectors.
2843
+ # When the refresh interval is set to the same value as the incremental refresh
2844
+ # interval, incremental sync will be disabled, i.e. set to true.
2845
+ # Corresponds to the JSON property `incrementalSyncDisabled`
2846
+ # @return [Boolean]
2847
+ attr_accessor :incremental_sync_disabled
2848
+ alias_method :incremental_sync_disabled?, :incremental_sync_disabled
2849
+
2850
+ # Required data connector parameters in json string format.
2851
+ # Corresponds to the JSON property `jsonParams`
2852
+ # @return [String]
2853
+ attr_accessor :json_params
2854
+
2855
+ # Input only. The KMS key to be used to protect the DataStores managed by this
2856
+ # connector. Must be set for requests that need to comply with CMEK Org Policy
2857
+ # protections. If this field is set and processed successfully, the DataStores
2858
+ # created by this connector will be protected by the KMS key.
2859
+ # Corresponds to the JSON property `kmsKeyName`
2860
+ # @return [String]
2861
+ attr_accessor :kms_key_name
2862
+
2863
+ # Output only. For periodic connectors only, the last time a data sync was
2864
+ # completed.
2865
+ # Corresponds to the JSON property `lastSyncTime`
2866
+ # @return [String]
2867
+ attr_accessor :last_sync_time
2868
+
2869
+ # Output only. The most recent timestamp when this DataConnector was paused,
2870
+ # affecting all functionalities such as data synchronization. Pausing a
2871
+ # connector has the following effects: - All functionalities, including data
2872
+ # synchronization, are halted. - Any ongoing data synchronization job will be
2873
+ # canceled. - No future data synchronization runs will be scheduled nor can be
2874
+ # triggered.
2875
+ # Corresponds to the JSON property `latestPauseTime`
2876
+ # @return [String]
2877
+ attr_accessor :latest_pause_time
2878
+
2879
+ # Output only. The full resource name of the Data Connector. Format: `projects/*/
2880
+ # locations/*/collections/*/dataConnector`.
2881
+ # Corresponds to the JSON property `name`
2882
+ # @return [String]
2883
+ attr_accessor :name
2884
+
2885
+ # Represents civil time (or occasionally physical time). This type can represent
2886
+ # a civil time in one of a few possible ways: * When utc_offset is set and
2887
+ # time_zone is unset: a civil time on a calendar day with a particular offset
2888
+ # from UTC. * When time_zone is set and utc_offset is unset: a civil time on a
2889
+ # calendar day in a particular time zone. * When neither time_zone nor
2890
+ # utc_offset is set: a civil time on a calendar day in local time. The date is
2891
+ # relative to the Proleptic Gregorian Calendar. If year, month, or day are 0,
2892
+ # the DateTime is considered not to have a specific year, month, or day
2893
+ # respectively. This type may also be used to represent a physical time if all
2894
+ # the date and time fields are set and either case of the `time_offset` oneof is
2895
+ # set. Consider using `Timestamp` message for physical time instead. If your use
2896
+ # case also would like to store the user's timezone, that can be done in another
2897
+ # field. This type is more flexible than some applications may want. Make sure
2898
+ # to document and validate your application's limitations.
2899
+ # Corresponds to the JSON property `nextSyncTime`
2900
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleTypeDateTime]
2901
+ attr_accessor :next_sync_time
2902
+
2903
+ # Required data connector parameters in structured json format.
2904
+ # Corresponds to the JSON property `params`
2905
+ # @return [Hash<String,Object>]
2906
+ attr_accessor :params
2907
+
2908
+ # Output only. The tenant project ID associated with private connectivity
2909
+ # connectors. This project must be allowlisted by in order for the connector to
2910
+ # function.
2911
+ # Corresponds to the JSON property `privateConnectivityProjectId`
2912
+ # @return [String]
2913
+ attr_accessor :private_connectivity_project_id
2914
+
2915
+ # Output only. real-time sync state
2916
+ # Corresponds to the JSON property `realtimeState`
2917
+ # @return [String]
2918
+ attr_accessor :realtime_state
2919
+
2920
+ # The configuration for realtime sync to store additional params for realtime
2921
+ # sync.
2922
+ # Corresponds to the JSON property `realtimeSyncConfig`
2923
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DataConnectorRealtimeSyncConfig]
2924
+ attr_accessor :realtime_sync_config
2925
+
2926
+ # Required. The refresh interval for data sync. If duration is set to 0, the
2927
+ # data will be synced in real time. The streaming feature is not supported yet.
2928
+ # The minimum is 30 minutes and maximum is 7 days. When the refresh interval is
2929
+ # set to the same value as the incremental refresh interval, incremental sync
2930
+ # will be disabled.
2931
+ # Corresponds to the JSON property `refreshInterval`
2932
+ # @return [String]
2933
+ attr_accessor :refresh_interval
2934
+
2935
+ # Optional. Specifies keys to be removed from the 'params' field. This is only
2936
+ # active when 'params' is included in the 'update_mask' in an
2937
+ # UpdateDataConnectorRequest. Deletion takes precedence if a key is both in '
2938
+ # remove_param_keys' and present in the 'params' field of the request.
2939
+ # Corresponds to the JSON property `removeParamKeys`
2940
+ # @return [Array<String>]
2941
+ attr_accessor :remove_param_keys
2942
+
2943
+ # Output only. State of the connector.
2944
+ # Corresponds to the JSON property `state`
2945
+ # @return [String]
2946
+ attr_accessor :state
2947
+
2948
+ # Output only. The static IP addresses used by this connector.
2949
+ # Corresponds to the JSON property `staticIpAddresses`
2950
+ # @return [Array<String>]
2951
+ attr_accessor :static_ip_addresses
2952
+
2953
+ # Optional. Whether customer has enabled static IP addresses for this connector.
2954
+ # Corresponds to the JSON property `staticIpEnabled`
2955
+ # @return [Boolean]
2956
+ attr_accessor :static_ip_enabled
2957
+ alias_method :static_ip_enabled?, :static_ip_enabled
2958
+
2959
+ # The data synchronization mode supported by the data connector.
2960
+ # Corresponds to the JSON property `syncMode`
2961
+ # @return [String]
2962
+ attr_accessor :sync_mode
2963
+
2964
+ # Output only. Timestamp the DataConnector was last updated.
2965
+ # Corresponds to the JSON property `updateTime`
2966
+ # @return [String]
2967
+ attr_accessor :update_time
2968
+
2969
+ def initialize(**args)
2970
+ update!(**args)
2971
+ end
2972
+
2973
+ # Update properties of this object
2974
+ def update!(**args)
2975
+ @acl_enabled = args[:acl_enabled] if args.key?(:acl_enabled)
2976
+ @action_config = args[:action_config] if args.key?(:action_config)
2977
+ @action_state = args[:action_state] if args.key?(:action_state)
2978
+ @alert_policy_configs = args[:alert_policy_configs] if args.key?(:alert_policy_configs)
2979
+ @auto_run_disabled = args[:auto_run_disabled] if args.key?(:auto_run_disabled)
2980
+ @bap_config = args[:bap_config] if args.key?(:bap_config)
2981
+ @blocking_reasons = args[:blocking_reasons] if args.key?(:blocking_reasons)
2982
+ @connector_modes = args[:connector_modes] if args.key?(:connector_modes)
2983
+ @connector_type = args[:connector_type] if args.key?(:connector_type)
2984
+ @create_eua_saas = args[:create_eua_saas] if args.key?(:create_eua_saas)
2985
+ @create_time = args[:create_time] if args.key?(:create_time)
2986
+ @data_source = args[:data_source] if args.key?(:data_source)
2987
+ @destination_configs = args[:destination_configs] if args.key?(:destination_configs)
2988
+ @end_user_config = args[:end_user_config] if args.key?(:end_user_config)
2989
+ @entities = args[:entities] if args.key?(:entities)
2990
+ @errors = args[:errors] if args.key?(:errors)
2991
+ @federated_config = args[:federated_config] if args.key?(:federated_config)
2992
+ @hybrid_ingestion_disabled = args[:hybrid_ingestion_disabled] if args.key?(:hybrid_ingestion_disabled)
2993
+ @identity_refresh_interval = args[:identity_refresh_interval] if args.key?(:identity_refresh_interval)
2994
+ @identity_schedule_config = args[:identity_schedule_config] if args.key?(:identity_schedule_config)
2995
+ @incremental_refresh_interval = args[:incremental_refresh_interval] if args.key?(:incremental_refresh_interval)
2996
+ @incremental_sync_disabled = args[:incremental_sync_disabled] if args.key?(:incremental_sync_disabled)
2997
+ @json_params = args[:json_params] if args.key?(:json_params)
2998
+ @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
2999
+ @last_sync_time = args[:last_sync_time] if args.key?(:last_sync_time)
3000
+ @latest_pause_time = args[:latest_pause_time] if args.key?(:latest_pause_time)
3001
+ @name = args[:name] if args.key?(:name)
3002
+ @next_sync_time = args[:next_sync_time] if args.key?(:next_sync_time)
3003
+ @params = args[:params] if args.key?(:params)
3004
+ @private_connectivity_project_id = args[:private_connectivity_project_id] if args.key?(:private_connectivity_project_id)
3005
+ @realtime_state = args[:realtime_state] if args.key?(:realtime_state)
3006
+ @realtime_sync_config = args[:realtime_sync_config] if args.key?(:realtime_sync_config)
3007
+ @refresh_interval = args[:refresh_interval] if args.key?(:refresh_interval)
3008
+ @remove_param_keys = args[:remove_param_keys] if args.key?(:remove_param_keys)
3009
+ @state = args[:state] if args.key?(:state)
3010
+ @static_ip_addresses = args[:static_ip_addresses] if args.key?(:static_ip_addresses)
3011
+ @static_ip_enabled = args[:static_ip_enabled] if args.key?(:static_ip_enabled)
3012
+ @sync_mode = args[:sync_mode] if args.key?(:sync_mode)
3013
+ @update_time = args[:update_time] if args.key?(:update_time)
3014
+ end
3015
+ end
3016
+
3017
+ # Any params and credentials used specifically for EUA connectors.
3018
+ class GoogleCloudDiscoveryengineV1DataConnectorEndUserConfig
3019
+ include Google::Apis::Core::Hashable
3020
+
3021
+ # Optional. Any additional parameters needed for EUA.
3022
+ # Corresponds to the JSON property `additionalParams`
3023
+ # @return [Hash<String,Object>]
3024
+ attr_accessor :additional_params
3025
+
3026
+ # Optional. Any authentication parameters specific to EUA connectors.
3027
+ # Corresponds to the JSON property `authParams`
3028
+ # @return [Hash<String,Object>]
3029
+ attr_accessor :auth_params
3030
+
3031
+ # Optional. Any authentication parameters specific to EUA connectors in json
3032
+ # string format.
3033
+ # Corresponds to the JSON property `jsonAuthParams`
3034
+ # @return [String]
3035
+ attr_accessor :json_auth_params
3036
+
3037
+ # Tenant information for a connector source. This includes some of the same
3038
+ # information stored in the Credential message, but is limited to only what is
3039
+ # needed to provide a list of accessible tenants to the user.
3040
+ # Corresponds to the JSON property `tenant`
3041
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1Tenant]
3042
+ attr_accessor :tenant
3043
+
3044
+ def initialize(**args)
3045
+ update!(**args)
3046
+ end
3047
+
3048
+ # Update properties of this object
3049
+ def update!(**args)
3050
+ @additional_params = args[:additional_params] if args.key?(:additional_params)
3051
+ @auth_params = args[:auth_params] if args.key?(:auth_params)
3052
+ @json_auth_params = args[:json_auth_params] if args.key?(:json_auth_params)
3053
+ @tenant = args[:tenant] if args.key?(:tenant)
3054
+ end
3055
+ end
3056
+
3057
+ # Any params and credentials used specifically for hybrid connectors supporting
3058
+ # FEDERATED mode.
3059
+ class GoogleCloudDiscoveryengineV1DataConnectorFederatedConfig
3060
+ include Google::Apis::Core::Hashable
3061
+
3062
+ # Optional. Any additional parameters needed for FEDERATED.
3063
+ # Corresponds to the JSON property `additionalParams`
3064
+ # @return [Hash<String,Object>]
3065
+ attr_accessor :additional_params
3066
+
3067
+ # Optional. Any authentication parameters specific to FEDERATED connectors.
3068
+ # Corresponds to the JSON property `authParams`
3069
+ # @return [Hash<String,Object>]
3070
+ attr_accessor :auth_params
3071
+
3072
+ # Optional. Any authentication parameters specific to FEDERATED connectors in
3073
+ # json string format.
3074
+ # Corresponds to the JSON property `jsonAuthParams`
3075
+ # @return [String]
3076
+ attr_accessor :json_auth_params
3077
+
3078
+ def initialize(**args)
3079
+ update!(**args)
3080
+ end
3081
+
3082
+ # Update properties of this object
3083
+ def update!(**args)
3084
+ @additional_params = args[:additional_params] if args.key?(:additional_params)
3085
+ @auth_params = args[:auth_params] if args.key?(:auth_params)
3086
+ @json_auth_params = args[:json_auth_params] if args.key?(:json_auth_params)
3087
+ end
3088
+ end
3089
+
3090
+ # The configuration for realtime sync to store additional params for realtime
3091
+ # sync.
3092
+ class GoogleCloudDiscoveryengineV1DataConnectorRealtimeSyncConfig
3093
+ include Google::Apis::Core::Hashable
3094
+
3095
+ # Optional. The ID of the Secret Manager secret used for webhook secret.
3096
+ # Corresponds to the JSON property `realtimeSyncSecret`
3097
+ # @return [String]
3098
+ attr_accessor :realtime_sync_secret
3099
+
3100
+ # Streaming error details.
3101
+ # Corresponds to the JSON property `streamingError`
3102
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DataConnectorRealtimeSyncConfigStreamingError]
3103
+ attr_accessor :streaming_error
3104
+
3105
+ # Optional. Webhook url for the connector to specify additional params for
3106
+ # realtime sync.
3107
+ # Corresponds to the JSON property `webhookUri`
3108
+ # @return [String]
3109
+ attr_accessor :webhook_uri
3110
+
3111
+ def initialize(**args)
3112
+ update!(**args)
3113
+ end
3114
+
3115
+ # Update properties of this object
3116
+ def update!(**args)
3117
+ @realtime_sync_secret = args[:realtime_sync_secret] if args.key?(:realtime_sync_secret)
3118
+ @streaming_error = args[:streaming_error] if args.key?(:streaming_error)
3119
+ @webhook_uri = args[:webhook_uri] if args.key?(:webhook_uri)
3120
+ end
3121
+ end
3122
+
3123
+ # Streaming error details.
3124
+ class GoogleCloudDiscoveryengineV1DataConnectorRealtimeSyncConfigStreamingError
3125
+ include Google::Apis::Core::Hashable
3126
+
3127
+ # The `Status` type defines a logical error model that is suitable for different
3128
+ # programming environments, including REST APIs and RPC APIs. It is used by [
3129
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
3130
+ # data: error code, error message, and error details. You can find out more
3131
+ # about this error model and how to work with it in the [API Design Guide](https:
3132
+ # //cloud.google.com/apis/design/errors).
3133
+ # Corresponds to the JSON property `error`
3134
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleRpcStatus]
3135
+ attr_accessor :error
3136
+
3137
+ # Optional. Streaming error.
3138
+ # Corresponds to the JSON property `streamingErrorReason`
3139
+ # @return [String]
3140
+ attr_accessor :streaming_error_reason
2503
3141
 
2504
3142
  def initialize(**args)
2505
3143
  update!(**args)
@@ -2507,27 +3145,62 @@ module Google
2507
3145
 
2508
3146
  # Update properties of this object
2509
3147
  def update!(**args)
2510
- @create_time = args[:create_time] if args.key?(:create_time)
2511
- @update_time = args[:update_time] if args.key?(:update_time)
3148
+ @error = args[:error] if args.key?(:error)
3149
+ @streaming_error_reason = args[:streaming_error_reason] if args.key?(:streaming_error_reason)
2512
3150
  end
2513
3151
  end
2514
3152
 
2515
- # Metadata related to the progress of the SiteSearchEngineService.
2516
- # CreateTargetSite operation. This will be returned by the google.longrunning.
2517
- # Operation.metadata field.
2518
- class GoogleCloudDiscoveryengineV1CreateTargetSiteMetadata
3153
+ # Represents an entity in the data source. For example, the `Account` object in
3154
+ # Salesforce.
3155
+ class GoogleCloudDiscoveryengineV1DataConnectorSourceEntity
2519
3156
  include Google::Apis::Core::Hashable
2520
3157
 
2521
- # Operation create time.
2522
- # Corresponds to the JSON property `createTime`
3158
+ # Output only. The full resource name of the associated data store for the
3159
+ # source entity. Format: `projects/*/locations/*/collections/*/dataStores/*`.
3160
+ # When the connector is initialized by the DataConnectorService.
3161
+ # SetUpDataConnector method, a DataStore is automatically created for each
3162
+ # source entity.
3163
+ # Corresponds to the JSON property `dataStore`
2523
3164
  # @return [String]
2524
- attr_accessor :create_time
3165
+ attr_accessor :data_store
2525
3166
 
2526
- # Operation last update time. If the operation is done, this is also the finish
2527
- # time.
2528
- # Corresponds to the JSON property `updateTime`
3167
+ # The name of the entity. Supported values by data source: * Salesforce: `Lead`,
3168
+ # `Opportunity`, `Contact`, `Account`, `Case`, `Contract`, `Campaign` * Jira: `
3169
+ # Issue` * Confluence: `Content`, `Space`
3170
+ # Corresponds to the JSON property `entityName`
2529
3171
  # @return [String]
2530
- attr_accessor :update_time
3172
+ attr_accessor :entity_name
3173
+
3174
+ # Config to data store for `HEALTHCARE_FHIR` vertical.
3175
+ # Corresponds to the JSON property `healthcareFhirConfig`
3176
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1HealthcareFhirConfig]
3177
+ attr_accessor :healthcare_fhir_config
3178
+
3179
+ # The parameters for the entity to facilitate data ingestion in json string
3180
+ # format.
3181
+ # Corresponds to the JSON property `jsonParams`
3182
+ # @return [String]
3183
+ attr_accessor :json_params
3184
+
3185
+ # Attributes for indexing. Key: Field name. Value: The key property to map a
3186
+ # field to, such as `title`, and `description`. Supported key properties: * `
3187
+ # title`: The title for data record. This would be displayed on search results. *
3188
+ # `description`: The description for data record. This would be displayed on
3189
+ # search results.
3190
+ # Corresponds to the JSON property `keyPropertyMappings`
3191
+ # @return [Hash<String,String>]
3192
+ attr_accessor :key_property_mappings
3193
+
3194
+ # The parameters for the entity to facilitate data ingestion in structured json
3195
+ # format.
3196
+ # Corresponds to the JSON property `params`
3197
+ # @return [Hash<String,Object>]
3198
+ attr_accessor :params
3199
+
3200
+ # Defines the structure and layout of a type of document data.
3201
+ # Corresponds to the JSON property `startingSchema`
3202
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1Schema]
3203
+ attr_accessor :starting_schema
2531
3204
 
2532
3205
  def initialize(**args)
2533
3206
  update!(**args)
@@ -2535,8 +3208,13 @@ module Google
2535
3208
 
2536
3209
  # Update properties of this object
2537
3210
  def update!(**args)
2538
- @create_time = args[:create_time] if args.key?(:create_time)
2539
- @update_time = args[:update_time] if args.key?(:update_time)
3211
+ @data_store = args[:data_store] if args.key?(:data_store)
3212
+ @entity_name = args[:entity_name] if args.key?(:entity_name)
3213
+ @healthcare_fhir_config = args[:healthcare_fhir_config] if args.key?(:healthcare_fhir_config)
3214
+ @json_params = args[:json_params] if args.key?(:json_params)
3215
+ @key_property_mappings = args[:key_property_mappings] if args.key?(:key_property_mappings)
3216
+ @params = args[:params] if args.key?(:params)
3217
+ @starting_schema = args[:starting_schema] if args.key?(:starting_schema)
2540
3218
  end
2541
3219
  end
2542
3220
 
@@ -2570,6 +3248,12 @@ module Google
2570
3248
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1CmekConfig]
2571
3249
  attr_accessor :cmek_config
2572
3250
 
3251
+ # Optional. Configuration for configurable billing approach. See go/vais-
3252
+ # repricing-billing-dd for more details, only apply to non-Spark UCS Search.
3253
+ # Corresponds to the JSON property `configurableBillingApproach`
3254
+ # @return [String]
3255
+ attr_accessor :configurable_billing_approach
3256
+
2573
3257
  # Immutable. The content config of the data store. If this field is unset, the
2574
3258
  # server behavior defaults to ContentConfig.NO_CONTENT.
2575
3259
  # Corresponds to the JSON property `contentConfig`
@@ -2673,6 +3357,7 @@ module Google
2673
3357
  @advanced_site_search_config = args[:advanced_site_search_config] if args.key?(:advanced_site_search_config)
2674
3358
  @billing_estimation = args[:billing_estimation] if args.key?(:billing_estimation)
2675
3359
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
3360
+ @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
2676
3361
  @content_config = args[:content_config] if args.key?(:content_config)
2677
3362
  @create_time = args[:create_time] if args.key?(:create_time)
2678
3363
  @default_schema_id = args[:default_schema_id] if args.key?(:default_schema_id)
@@ -2789,6 +3474,34 @@ module Google
2789
3474
  end
2790
3475
  end
2791
3476
 
3477
+ # Metadata related to the progress of the CollectionService.UpdateCollection
3478
+ # operation. This will be returned by the google.longrunning.Operation.metadata
3479
+ # field.
3480
+ class GoogleCloudDiscoveryengineV1DeleteCollectionMetadata
3481
+ include Google::Apis::Core::Hashable
3482
+
3483
+ # Operation create time.
3484
+ # Corresponds to the JSON property `createTime`
3485
+ # @return [String]
3486
+ attr_accessor :create_time
3487
+
3488
+ # Operation last update time. If the operation is done, this is also the finish
3489
+ # time.
3490
+ # Corresponds to the JSON property `updateTime`
3491
+ # @return [String]
3492
+ attr_accessor :update_time
3493
+
3494
+ def initialize(**args)
3495
+ update!(**args)
3496
+ end
3497
+
3498
+ # Update properties of this object
3499
+ def update!(**args)
3500
+ @create_time = args[:create_time] if args.key?(:create_time)
3501
+ @update_time = args[:update_time] if args.key?(:update_time)
3502
+ end
3503
+ end
3504
+
2792
3505
  # Metadata related to the progress of the DataStoreService.DeleteDataStore
2793
3506
  # operation. This will be returned by the google.longrunning.Operation.metadata
2794
3507
  # field.
@@ -2954,6 +3667,69 @@ module Google
2954
3667
  end
2955
3668
  end
2956
3669
 
3670
+ # Defines target endpoints used to connect to third-party sources.
3671
+ class GoogleCloudDiscoveryengineV1DestinationConfig
3672
+ include Google::Apis::Core::Hashable
3673
+
3674
+ # Optional. The destinations for the corresponding key.
3675
+ # Corresponds to the JSON property `destinations`
3676
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DestinationConfigDestination>]
3677
+ attr_accessor :destinations
3678
+
3679
+ # Additional parameters for this destination config in json string format.
3680
+ # Corresponds to the JSON property `jsonParams`
3681
+ # @return [String]
3682
+ attr_accessor :json_params
3683
+
3684
+ # Optional. Unique destination identifier that is supported by the connector.
3685
+ # Corresponds to the JSON property `key`
3686
+ # @return [String]
3687
+ attr_accessor :key
3688
+
3689
+ # Optional. Additional parameters for this destination config in structured json
3690
+ # format.
3691
+ # Corresponds to the JSON property `params`
3692
+ # @return [Hash<String,Object>]
3693
+ attr_accessor :params
3694
+
3695
+ def initialize(**args)
3696
+ update!(**args)
3697
+ end
3698
+
3699
+ # Update properties of this object
3700
+ def update!(**args)
3701
+ @destinations = args[:destinations] if args.key?(:destinations)
3702
+ @json_params = args[:json_params] if args.key?(:json_params)
3703
+ @key = args[:key] if args.key?(:key)
3704
+ @params = args[:params] if args.key?(:params)
3705
+ end
3706
+ end
3707
+
3708
+ # Defines a target endpoint
3709
+ class GoogleCloudDiscoveryengineV1DestinationConfigDestination
3710
+ include Google::Apis::Core::Hashable
3711
+
3712
+ # Publicly routable host.
3713
+ # Corresponds to the JSON property `host`
3714
+ # @return [String]
3715
+ attr_accessor :host
3716
+
3717
+ # Optional. Target port number accepted by the destination.
3718
+ # Corresponds to the JSON property `port`
3719
+ # @return [Fixnum]
3720
+ attr_accessor :port
3721
+
3722
+ def initialize(**args)
3723
+ update!(**args)
3724
+ end
3725
+
3726
+ # Update properties of this object
3727
+ def update!(**args)
3728
+ @host = args[:host] if args.key?(:host)
3729
+ @port = args[:port] if args.key?(:port)
3730
+ end
3731
+ end
3732
+
2957
3733
  # Metadata related to the progress of the SiteSearchEngineService.
2958
3734
  # DisableAdvancedSiteSearch operation. This will be returned by the google.
2959
3735
  # longrunning.Operation.metadata field.
@@ -3293,6 +4069,12 @@ module Google
3293
4069
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1EngineCommonConfig]
3294
4070
  attr_accessor :common_config
3295
4071
 
4072
+ # Optional. Configuration for configurable billing approach. See go/vais-
4073
+ # repricing-billing-dd for more details.
4074
+ # Corresponds to the JSON property `configurableBillingApproach`
4075
+ # @return [String]
4076
+ attr_accessor :configurable_billing_approach
4077
+
3296
4078
  # Output only. Timestamp the Recommendation Engine was created at.
3297
4079
  # Corresponds to the JSON property `createTime`
3298
4080
  # @return [String]
@@ -3325,7 +4107,8 @@ module Google
3325
4107
  # settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-
3326
4108
  # gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-
3327
4109
  # org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `
3328
- # personalization-memory` - Enables personalization based on user preferences.
4110
+ # personalization-memory` * `disable-image-generation` * `disable-video-
4111
+ # generation` * `disable-onedrive-upload`
3329
4112
  # Corresponds to the JSON property `features`
3330
4113
  # @return [Hash<String,String>]
3331
4114
  attr_accessor :features
@@ -3376,6 +4159,7 @@ module Google
3376
4159
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
3377
4160
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
3378
4161
  @common_config = args[:common_config] if args.key?(:common_config)
4162
+ @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
3379
4163
  @create_time = args[:create_time] if args.key?(:create_time)
3380
4164
  @data_store_ids = args[:data_store_ids] if args.key?(:data_store_ids)
3381
4165
  @disable_analytics = args[:disable_analytics] if args.key?(:disable_analytics)
@@ -3766,6 +4550,47 @@ module Google
3766
4550
  end
3767
4551
  end
3768
4552
 
4553
+ # The configuration for the identity data synchronization runs.
4554
+ class GoogleCloudDiscoveryengineV1IdentityScheduleConfig
4555
+ include Google::Apis::Core::Hashable
4556
+
4557
+ # Represents civil time (or occasionally physical time). This type can represent
4558
+ # a civil time in one of a few possible ways: * When utc_offset is set and
4559
+ # time_zone is unset: a civil time on a calendar day with a particular offset
4560
+ # from UTC. * When time_zone is set and utc_offset is unset: a civil time on a
4561
+ # calendar day in a particular time zone. * When neither time_zone nor
4562
+ # utc_offset is set: a civil time on a calendar day in local time. The date is
4563
+ # relative to the Proleptic Gregorian Calendar. If year, month, or day are 0,
4564
+ # the DateTime is considered not to have a specific year, month, or day
4565
+ # respectively. This type may also be used to represent a physical time if all
4566
+ # the date and time fields are set and either case of the `time_offset` oneof is
4567
+ # set. Consider using `Timestamp` message for physical time instead. If your use
4568
+ # case also would like to store the user's timezone, that can be done in another
4569
+ # field. This type is more flexible than some applications may want. Make sure
4570
+ # to document and validate your application's limitations.
4571
+ # Corresponds to the JSON property `nextSyncTime`
4572
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleTypeDateTime]
4573
+ attr_accessor :next_sync_time
4574
+
4575
+ # Optional. The refresh interval to sync the Access Control List information for
4576
+ # the documents ingested by this connector. If not set, the access control list
4577
+ # will be refreshed at the default interval of 30 minutes. The identity refresh
4578
+ # interval can be at least 30 minutes and at most 7 days.
4579
+ # Corresponds to the JSON property `refreshInterval`
4580
+ # @return [String]
4581
+ attr_accessor :refresh_interval
4582
+
4583
+ def initialize(**args)
4584
+ update!(**args)
4585
+ end
4586
+
4587
+ # Update properties of this object
4588
+ def update!(**args)
4589
+ @next_sync_time = args[:next_sync_time] if args.key?(:next_sync_time)
4590
+ @refresh_interval = args[:refresh_interval] if args.key?(:refresh_interval)
4591
+ end
4592
+ end
4593
+
3769
4594
  # Identity Provider Config.
3770
4595
  class GoogleCloudDiscoveryengineV1IdpConfig
3771
4596
  include Google::Apis::Core::Hashable
@@ -4129,28 +4954,107 @@ module Google
4129
4954
  class GoogleCloudDiscoveryengineV1Project
4130
4955
  include Google::Apis::Core::Hashable
4131
4956
 
4132
- # Output only. The timestamp when this project is created.
4133
- # Corresponds to the JSON property `createTime`
4134
- # @return [String]
4135
- attr_accessor :create_time
4957
+ # Output only. The timestamp when this project is created.
4958
+ # Corresponds to the JSON property `createTime`
4959
+ # @return [String]
4960
+ attr_accessor :create_time
4961
+
4962
+ # Customer provided configurations.
4963
+ # Corresponds to the JSON property `customerProvidedConfig`
4964
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectCustomerProvidedConfig]
4965
+ attr_accessor :customer_provided_config
4966
+
4967
+ # Output only. Full resource name of the project, for example `projects/`project`
4968
+ # `. Note that when making requests, project number and project id are both
4969
+ # acceptable, but the server will always respond in project number.
4970
+ # Corresponds to the JSON property `name`
4971
+ # @return [String]
4972
+ attr_accessor :name
4973
+
4974
+ # Output only. The timestamp when this project is successfully provisioned.
4975
+ # Empty value means this project is still provisioning and is not ready for use.
4976
+ # Corresponds to the JSON property `provisionCompletionTime`
4977
+ # @return [String]
4978
+ attr_accessor :provision_completion_time
4979
+
4980
+ # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
4981
+ # Corresponds to the JSON property `serviceTermsMap`
4982
+ # @return [Hash<String,Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectServiceTerms>]
4983
+ attr_accessor :service_terms_map
4984
+
4985
+ def initialize(**args)
4986
+ update!(**args)
4987
+ end
4988
+
4989
+ # Update properties of this object
4990
+ def update!(**args)
4991
+ @create_time = args[:create_time] if args.key?(:create_time)
4992
+ @customer_provided_config = args[:customer_provided_config] if args.key?(:customer_provided_config)
4993
+ @name = args[:name] if args.key?(:name)
4994
+ @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
4995
+ @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
4996
+ end
4997
+ end
4998
+
4999
+ # Customer provided configurations.
5000
+ class GoogleCloudDiscoveryengineV1ProjectCustomerProvidedConfig
5001
+ include Google::Apis::Core::Hashable
5002
+
5003
+ # Configuration for NotebookLM.
5004
+ # Corresponds to the JSON property `notebooklmConfig`
5005
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectCustomerProvidedConfigNotebooklmConfig]
5006
+ attr_accessor :notebooklm_config
5007
+
5008
+ def initialize(**args)
5009
+ update!(**args)
5010
+ end
5011
+
5012
+ # Update properties of this object
5013
+ def update!(**args)
5014
+ @notebooklm_config = args[:notebooklm_config] if args.key?(:notebooklm_config)
5015
+ end
5016
+ end
5017
+
5018
+ # Configuration for NotebookLM.
5019
+ class GoogleCloudDiscoveryengineV1ProjectCustomerProvidedConfigNotebooklmConfig
5020
+ include Google::Apis::Core::Hashable
5021
+
5022
+ # Configuration for customer defined Model Armor templates to be used for
5023
+ # sanitizing user prompts and LLM responses.
5024
+ # Corresponds to the JSON property `modelArmorConfig`
5025
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectCustomerProvidedConfigNotebooklmConfigModelArmorConfig]
5026
+ attr_accessor :model_armor_config
5027
+
5028
+ def initialize(**args)
5029
+ update!(**args)
5030
+ end
5031
+
5032
+ # Update properties of this object
5033
+ def update!(**args)
5034
+ @model_armor_config = args[:model_armor_config] if args.key?(:model_armor_config)
5035
+ end
5036
+ end
5037
+
5038
+ # Configuration for customer defined Model Armor templates to be used for
5039
+ # sanitizing user prompts and LLM responses.
5040
+ class GoogleCloudDiscoveryengineV1ProjectCustomerProvidedConfigNotebooklmConfigModelArmorConfig
5041
+ include Google::Apis::Core::Hashable
4136
5042
 
4137
- # Output only. Full resource name of the project, for example `projects/`project`
4138
- # `. Note that when making requests, project number and project id are both
4139
- # acceptable, but the server will always respond in project number.
4140
- # Corresponds to the JSON property `name`
5043
+ # Optional. The resource name of the Model Armor Template for sanitizing LLM
5044
+ # responses. Format: projects/`project`/locations/`location`/templates/`
5045
+ # template_id` If not specified, no sanitization will be applied to the LLM
5046
+ # response.
5047
+ # Corresponds to the JSON property `responseTemplate`
4141
5048
  # @return [String]
4142
- attr_accessor :name
5049
+ attr_accessor :response_template
4143
5050
 
4144
- # Output only. The timestamp when this project is successfully provisioned.
4145
- # Empty value means this project is still provisioning and is not ready for use.
4146
- # Corresponds to the JSON property `provisionCompletionTime`
5051
+ # Optional. The resource name of the Model Armor Template for sanitizing user
5052
+ # prompts. Format: projects/`project`/locations/`location`/templates/`
5053
+ # template_id` If not specified, no sanitization will be applied to the user
5054
+ # prompt.
5055
+ # Corresponds to the JSON property `userPromptTemplate`
4147
5056
  # @return [String]
4148
- attr_accessor :provision_completion_time
4149
-
4150
- # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
4151
- # Corresponds to the JSON property `serviceTermsMap`
4152
- # @return [Hash<String,Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectServiceTerms>]
4153
- attr_accessor :service_terms_map
5057
+ attr_accessor :user_prompt_template
4154
5058
 
4155
5059
  def initialize(**args)
4156
5060
  update!(**args)
@@ -4158,10 +5062,8 @@ module Google
4158
5062
 
4159
5063
  # Update properties of this object
4160
5064
  def update!(**args)
4161
- @create_time = args[:create_time] if args.key?(:create_time)
4162
- @name = args[:name] if args.key?(:name)
4163
- @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
4164
- @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
5065
+ @response_template = args[:response_template] if args.key?(:response_template)
5066
+ @user_prompt_template = args[:user_prompt_template] if args.key?(:user_prompt_template)
4165
5067
  end
4166
5068
  end
4167
5069
 
@@ -5105,6 +6007,19 @@ module Google
5105
6007
  end
5106
6008
  end
5107
6009
 
6010
+ # Metadata for DataConnectorService.SetUpDataConnector method.
6011
+ class GoogleCloudDiscoveryengineV1SetUpDataConnectorMetadata
6012
+ include Google::Apis::Core::Hashable
6013
+
6014
+ def initialize(**args)
6015
+ update!(**args)
6016
+ end
6017
+
6018
+ # Update properties of this object
6019
+ def update!(**args)
6020
+ end
6021
+ end
6022
+
5108
6023
  # Metadata for single-regional CMEKs.
5109
6024
  class GoogleCloudDiscoveryengineV1SingleRegionKey
5110
6025
  include Google::Apis::Core::Hashable
@@ -5307,6 +6222,42 @@ module Google
5307
6222
  end
5308
6223
  end
5309
6224
 
6225
+ # Tenant information for a connector source. This includes some of the same
6226
+ # information stored in the Credential message, but is limited to only what is
6227
+ # needed to provide a list of accessible tenants to the user.
6228
+ class GoogleCloudDiscoveryengineV1Tenant
6229
+ include Google::Apis::Core::Hashable
6230
+
6231
+ # Optional display name for the tenant, e.g. "My Slack Team".
6232
+ # Corresponds to the JSON property `displayName`
6233
+ # @return [String]
6234
+ attr_accessor :display_name
6235
+
6236
+ # The tenant's instance ID. Examples: Jira ("8594f221-9797-5f78-1fa4-
6237
+ # 485e198d7cd0"), Slack ("T123456").
6238
+ # Corresponds to the JSON property `id`
6239
+ # @return [String]
6240
+ attr_accessor :id
6241
+
6242
+ # The URI of the tenant, if applicable. For example, the URI of a Jira instance
6243
+ # is https://my-jira-instance.atlassian.net, and a Slack tenant does not have a
6244
+ # URI.
6245
+ # Corresponds to the JSON property `uri`
6246
+ # @return [String]
6247
+ attr_accessor :uri
6248
+
6249
+ def initialize(**args)
6250
+ update!(**args)
6251
+ end
6252
+
6253
+ # Update properties of this object
6254
+ def update!(**args)
6255
+ @display_name = args[:display_name] if args.key?(:display_name)
6256
+ @id = args[:id] if args.key?(:id)
6257
+ @uri = args[:uri] if args.key?(:uri)
6258
+ end
6259
+ end
6260
+
5310
6261
  # Metadata related to the progress of the TrainCustomModel operation. This is
5311
6262
  # returned by the google.longrunning.Operation.metadata field.
5312
6263
  class GoogleCloudDiscoveryengineV1TrainCustomModelMetadata
@@ -5600,12 +6551,7 @@ module Google
5600
6551
  class GoogleCloudDiscoveryengineV1alphaActionConfig
5601
6552
  include Google::Apis::Core::Hashable
5602
6553
 
5603
- # Required. Params needed to support actions in the format of (Key, Value) pairs.
5604
- # Required parameters for sources that support OAUTH, i.e. `gmail`, `
5605
- # google_calendar`, `jira`, `workday`, `salesforce`, `confluence`: * Key: `
5606
- # client_id` * Value: type STRING. The client ID for the service provider to
5607
- # identify your application. * Key: `client_secret` * Value:type STRING. The
5608
- # client secret generated by the application's authorization server.
6554
+ # Optional. Action parameters in structured json format.
5609
6555
  # Corresponds to the JSON property `actionParams`
5610
6556
  # @return [Hash<String,Object>]
5611
6557
  attr_accessor :action_params
@@ -5617,6 +6563,11 @@ module Google
5617
6563
  attr_accessor :is_action_configured
5618
6564
  alias_method :is_action_configured?, :is_action_configured
5619
6565
 
6566
+ # Optional. Action parameters in json string format.
6567
+ # Corresponds to the JSON property `jsonActionParams`
6568
+ # @return [String]
6569
+ attr_accessor :json_action_params
6570
+
5620
6571
  # Optional. The Service Directory resource name (projects/*/locations/*/
5621
6572
  # namespaces/*/services/*) representing a VPC network endpoint used to connect
5622
6573
  # to the data source's `instance_uri`, defined in DataConnector.params. Required
@@ -5640,6 +6591,7 @@ module Google
5640
6591
  def update!(**args)
5641
6592
  @action_params = args[:action_params] if args.key?(:action_params)
5642
6593
  @is_action_configured = args[:is_action_configured] if args.key?(:is_action_configured)
6594
+ @json_action_params = args[:json_action_params] if args.key?(:json_action_params)
5643
6595
  @service_name = args[:service_name] if args.key?(:service_name)
5644
6596
  @use_static_secrets = args[:use_static_secrets] if args.key?(:use_static_secrets)
5645
6597
  end
@@ -6485,6 +7437,11 @@ module Google
6485
7437
  class GoogleCloudDiscoveryengineV1alphaBapConfig
6486
7438
  include Google::Apis::Core::Hashable
6487
7439
 
7440
+ # Optional. The actions enabled on the associated BAP connection.
7441
+ # Corresponds to the JSON property `enabledActions`
7442
+ # @return [Array<String>]
7443
+ attr_accessor :enabled_actions
7444
+
6488
7445
  # Required. The supported connector modes for the associated BAP connection.
6489
7446
  # Corresponds to the JSON property `supportedConnectorModes`
6490
7447
  # @return [Array<String>]
@@ -6496,6 +7453,7 @@ module Google
6496
7453
 
6497
7454
  # Update properties of this object
6498
7455
  def update!(**args)
7456
+ @enabled_actions = args[:enabled_actions] if args.key?(:enabled_actions)
6499
7457
  @supported_connector_modes = args[:supported_connector_modes] if args.key?(:supported_connector_modes)
6500
7458
  end
6501
7459
  end
@@ -7677,6 +8635,11 @@ module Google
7677
8635
  attr_accessor :incremental_sync_disabled
7678
8636
  alias_method :incremental_sync_disabled?, :incremental_sync_disabled
7679
8637
 
8638
+ # Required data connector parameters in json string format.
8639
+ # Corresponds to the JSON property `jsonParams`
8640
+ # @return [String]
8641
+ attr_accessor :json_params
8642
+
7680
8643
  # Input only. The KMS key to be used to protect the DataStores managed by this
7681
8644
  # connector. Must be set for requests that need to comply with CMEK Org Policy
7682
8645
  # protections. If this field is set and processed successfully, the DataStores
@@ -7725,27 +8688,7 @@ module Google
7725
8688
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleTypeDateTime]
7726
8689
  attr_accessor :next_sync_time
7727
8690
 
7728
- # Required. Params needed to access the source in the format of (Key, Value)
7729
- # pairs. Required parameters for all data sources: * Key: `instance_uri` * Value:
7730
- # type STRING. The uri to access the data source. Required parameters for
7731
- # sources that support OAUTH, i.e. `salesforce`: * Key: `client_id` * Value:
7732
- # type STRING. The client ID for the third party service provider to identify
7733
- # your application. * Key: `client_secret` * Value:type STRING. The client
7734
- # secret generated by the third party authorization server. * Key: `access_token`
7735
- # * Value: type STRING. OAuth token for UCS to access to the protected resource.
7736
- # * Key: `refresh_token` * Value: type STRING. OAuth refresh token for UCS to
7737
- # obtain a new access token without user interaction. Required parameters for
7738
- # sources that support basic API token auth, i.e. `jira`, `confluence`: * Key: `
7739
- # user_account` * Value: type STRING. The username or email with the source. *
7740
- # Key: `api_token` * Value: type STRING. The API token generated for the source
7741
- # account, that is used for authenticating anywhere where you would have used a
7742
- # password. Example: ```json ` "instance_uri": "https://xxx.atlassian.net", "
7743
- # user_account": "xxxx.xxx@xxx.com", "api_token": "test-token" ` ``` Optional
7744
- # parameter to specify the authorization type to use for multiple authorization
7745
- # types support: * Key: `auth_type` * Value: type STRING. The authorization type
7746
- # for the data source. Supported values: `BASIC_AUTH`, `OAUTH`, `
7747
- # OAUTH_ACCESS_TOKEN`, `OAUTH_TWO_LEGGED`, `OAUTH_JWT_BEARER`, `
7748
- # OAUTH_PASSWORD_GRANT`, `JWT`, `API_TOKEN`, `FEDERATED_CREDENTIAL`.
8691
+ # Required data connector parameters in structured json format.
7749
8692
  # Corresponds to the JSON property `params`
7750
8693
  # @return [Hash<String,Object>]
7751
8694
  attr_accessor :params
@@ -7839,6 +8782,7 @@ module Google
7839
8782
  @identity_schedule_config = args[:identity_schedule_config] if args.key?(:identity_schedule_config)
7840
8783
  @incremental_refresh_interval = args[:incremental_refresh_interval] if args.key?(:incremental_refresh_interval)
7841
8784
  @incremental_sync_disabled = args[:incremental_sync_disabled] if args.key?(:incremental_sync_disabled)
8785
+ @json_params = args[:json_params] if args.key?(:json_params)
7842
8786
  @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
7843
8787
  @last_sync_time = args[:last_sync_time] if args.key?(:last_sync_time)
7844
8788
  @latest_pause_time = args[:latest_pause_time] if args.key?(:latest_pause_time)
@@ -7872,6 +8816,12 @@ module Google
7872
8816
  # @return [Hash<String,Object>]
7873
8817
  attr_accessor :auth_params
7874
8818
 
8819
+ # Optional. Any authentication parameters specific to EUA connectors in json
8820
+ # string format.
8821
+ # Corresponds to the JSON property `jsonAuthParams`
8822
+ # @return [String]
8823
+ attr_accessor :json_auth_params
8824
+
7875
8825
  # Tenant information for a connector source. This includes some of the same
7876
8826
  # information stored in the Credential message, but is limited to only what is
7877
8827
  # needed to provide a list of accessible tenants to the user.
@@ -7887,6 +8837,7 @@ module Google
7887
8837
  def update!(**args)
7888
8838
  @additional_params = args[:additional_params] if args.key?(:additional_params)
7889
8839
  @auth_params = args[:auth_params] if args.key?(:auth_params)
8840
+ @json_auth_params = args[:json_auth_params] if args.key?(:json_auth_params)
7890
8841
  @tenant = args[:tenant] if args.key?(:tenant)
7891
8842
  end
7892
8843
  end
@@ -7901,11 +8852,17 @@ module Google
7901
8852
  # @return [Hash<String,Object>]
7902
8853
  attr_accessor :additional_params
7903
8854
 
7904
- # Optional. Any authentication parameters specific to FEDERATED.
8855
+ # Optional. Any authentication parameters specific to FEDERATED connectors.
7905
8856
  # Corresponds to the JSON property `authParams`
7906
8857
  # @return [Hash<String,Object>]
7907
8858
  attr_accessor :auth_params
7908
8859
 
8860
+ # Optional. Any authentication parameters specific to FEDERATED connectors in
8861
+ # json string format.
8862
+ # Corresponds to the JSON property `jsonAuthParams`
8863
+ # @return [String]
8864
+ attr_accessor :json_auth_params
8865
+
7909
8866
  def initialize(**args)
7910
8867
  update!(**args)
7911
8868
  end
@@ -7914,6 +8871,7 @@ module Google
7914
8871
  def update!(**args)
7915
8872
  @additional_params = args[:additional_params] if args.key?(:additional_params)
7916
8873
  @auth_params = args[:auth_params] if args.key?(:auth_params)
8874
+ @json_auth_params = args[:json_auth_params] if args.key?(:json_auth_params)
7917
8875
  end
7918
8876
  end
7919
8877
 
@@ -8006,6 +8964,12 @@ module Google
8006
8964
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaHealthcareFhirConfig]
8007
8965
  attr_accessor :healthcare_fhir_config
8008
8966
 
8967
+ # The parameters for the entity to facilitate data ingestion in json string
8968
+ # format.
8969
+ # Corresponds to the JSON property `jsonParams`
8970
+ # @return [String]
8971
+ attr_accessor :json_params
8972
+
8009
8973
  # Attributes for indexing. Key: Field name. Value: The key property to map a
8010
8974
  # field to, such as `title`, and `description`. Supported key properties: * `
8011
8975
  # title`: The title for data record. This would be displayed on search results. *
@@ -8015,9 +8979,8 @@ module Google
8015
8979
  # @return [Hash<String,String>]
8016
8980
  attr_accessor :key_property_mappings
8017
8981
 
8018
- # The parameters for the entity to facilitate data ingestion. E.g. for BigQuery
8019
- # connectors: * Key: `document_id_column` * Value: type STRING. The value of the
8020
- # column ID.
8982
+ # The parameters for the entity to facilitate data ingestion in structured json
8983
+ # format.
8021
8984
  # Corresponds to the JSON property `params`
8022
8985
  # @return [Hash<String,Object>]
8023
8986
  attr_accessor :params
@@ -8036,6 +8999,7 @@ module Google
8036
8999
  @data_store = args[:data_store] if args.key?(:data_store)
8037
9000
  @entity_name = args[:entity_name] if args.key?(:entity_name)
8038
9001
  @healthcare_fhir_config = args[:healthcare_fhir_config] if args.key?(:healthcare_fhir_config)
9002
+ @json_params = args[:json_params] if args.key?(:json_params)
8039
9003
  @key_property_mappings = args[:key_property_mappings] if args.key?(:key_property_mappings)
8040
9004
  @params = args[:params] if args.key?(:params)
8041
9005
  @starting_schema = args[:starting_schema] if args.key?(:starting_schema)
@@ -8072,6 +9036,12 @@ module Google
8072
9036
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaCmekConfig]
8073
9037
  attr_accessor :cmek_config
8074
9038
 
9039
+ # Optional. Configuration for configurable billing approach. See go/vais-
9040
+ # repricing-billing-dd for more details, only apply to non-Spark UCS Search.
9041
+ # Corresponds to the JSON property `configurableBillingApproach`
9042
+ # @return [String]
9043
+ attr_accessor :configurable_billing_approach
9044
+
8075
9045
  # Immutable. The content config of the data store. If this field is unset, the
8076
9046
  # server behavior defaults to ContentConfig.NO_CONTENT.
8077
9047
  # Corresponds to the JSON property `contentConfig`
@@ -8190,6 +9160,7 @@ module Google
8190
9160
  @advanced_site_search_config = args[:advanced_site_search_config] if args.key?(:advanced_site_search_config)
8191
9161
  @billing_estimation = args[:billing_estimation] if args.key?(:billing_estimation)
8192
9162
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
9163
+ @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
8193
9164
  @content_config = args[:content_config] if args.key?(:content_config)
8194
9165
  @create_time = args[:create_time] if args.key?(:create_time)
8195
9166
  @default_schema_id = args[:default_schema_id] if args.key?(:default_schema_id)
@@ -8571,12 +9542,18 @@ module Google
8571
9542
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaDestinationConfigDestination>]
8572
9543
  attr_accessor :destinations
8573
9544
 
9545
+ # Additional parameters for this destination config in json string format.
9546
+ # Corresponds to the JSON property `jsonParams`
9547
+ # @return [String]
9548
+ attr_accessor :json_params
9549
+
8574
9550
  # Optional. Unique destination identifier that is supported by the connector.
8575
9551
  # Corresponds to the JSON property `key`
8576
9552
  # @return [String]
8577
9553
  attr_accessor :key
8578
9554
 
8579
- # Optional. Additional parameters for this destination config.
9555
+ # Optional. Additional parameters for this destination config in structured json
9556
+ # format.
8580
9557
  # Corresponds to the JSON property `params`
8581
9558
  # @return [Hash<String,Object>]
8582
9559
  attr_accessor :params
@@ -8588,6 +9565,7 @@ module Google
8588
9565
  # Update properties of this object
8589
9566
  def update!(**args)
8590
9567
  @destinations = args[:destinations] if args.key?(:destinations)
9568
+ @json_params = args[:json_params] if args.key?(:json_params)
8591
9569
  @key = args[:key] if args.key?(:key)
8592
9570
  @params = args[:params] if args.key?(:params)
8593
9571
  end
@@ -8957,6 +9935,12 @@ module Google
8957
9935
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaEngineCommonConfig]
8958
9936
  attr_accessor :common_config
8959
9937
 
9938
+ # Optional. Configuration for configurable billing approach. See go/vais-
9939
+ # repricing-billing-dd for more details.
9940
+ # Corresponds to the JSON property `configurableBillingApproach`
9941
+ # @return [String]
9942
+ attr_accessor :configurable_billing_approach
9943
+
8960
9944
  # Output only. Timestamp the Recommendation Engine was created at.
8961
9945
  # Corresponds to the JSON property `createTime`
8962
9946
  # @return [String]
@@ -8989,7 +9973,8 @@ module Google
8989
9973
  # settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-
8990
9974
  # gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-
8991
9975
  # org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `
8992
- # personalization-memory` - Enables personalization based on user preferences.
9976
+ # personalization-memory` * `disable-image-generation` * `disable-video-
9977
+ # generation` * `disable-onedrive-upload`
8993
9978
  # Corresponds to the JSON property `features`
8994
9979
  # @return [Hash<String,String>]
8995
9980
  attr_accessor :features
@@ -9050,6 +10035,7 @@ module Google
9050
10035
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
9051
10036
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
9052
10037
  @common_config = args[:common_config] if args.key?(:common_config)
10038
+ @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
9053
10039
  @create_time = args[:create_time] if args.key?(:create_time)
9054
10040
  @data_store_ids = args[:data_store_ids] if args.key?(:data_store_ids)
9055
10041
  @disable_analytics = args[:disable_analytics] if args.key?(:disable_analytics)
@@ -10647,6 +11633,11 @@ module Google
10647
11633
  # @return [String]
10648
11634
  attr_accessor :create_time
10649
11635
 
11636
+ # Customer provided configurations.
11637
+ # Corresponds to the JSON property `customerProvidedConfig`
11638
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaProjectCustomerProvidedConfig]
11639
+ attr_accessor :customer_provided_config
11640
+
10650
11641
  # Output only. Full resource name of the project, for example `projects/`project`
10651
11642
  # `. Note that when making requests, project number and project id are both
10652
11643
  # acceptable, but the server will always respond in project number.
@@ -10672,12 +11663,84 @@ module Google
10672
11663
  # Update properties of this object
10673
11664
  def update!(**args)
10674
11665
  @create_time = args[:create_time] if args.key?(:create_time)
11666
+ @customer_provided_config = args[:customer_provided_config] if args.key?(:customer_provided_config)
10675
11667
  @name = args[:name] if args.key?(:name)
10676
11668
  @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
10677
11669
  @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
10678
11670
  end
10679
11671
  end
10680
11672
 
11673
+ # Customer provided configurations.
11674
+ class GoogleCloudDiscoveryengineV1alphaProjectCustomerProvidedConfig
11675
+ include Google::Apis::Core::Hashable
11676
+
11677
+ # Configuration for NotebookLM.
11678
+ # Corresponds to the JSON property `notebooklmConfig`
11679
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaProjectCustomerProvidedConfigNotebooklmConfig]
11680
+ attr_accessor :notebooklm_config
11681
+
11682
+ def initialize(**args)
11683
+ update!(**args)
11684
+ end
11685
+
11686
+ # Update properties of this object
11687
+ def update!(**args)
11688
+ @notebooklm_config = args[:notebooklm_config] if args.key?(:notebooklm_config)
11689
+ end
11690
+ end
11691
+
11692
+ # Configuration for NotebookLM.
11693
+ class GoogleCloudDiscoveryengineV1alphaProjectCustomerProvidedConfigNotebooklmConfig
11694
+ include Google::Apis::Core::Hashable
11695
+
11696
+ # Configuration for customer defined Model Armor templates to be used for
11697
+ # sanitizing user prompts and LLM responses.
11698
+ # Corresponds to the JSON property `modelArmorConfig`
11699
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaProjectCustomerProvidedConfigNotebooklmConfigModelArmorConfig]
11700
+ attr_accessor :model_armor_config
11701
+
11702
+ def initialize(**args)
11703
+ update!(**args)
11704
+ end
11705
+
11706
+ # Update properties of this object
11707
+ def update!(**args)
11708
+ @model_armor_config = args[:model_armor_config] if args.key?(:model_armor_config)
11709
+ end
11710
+ end
11711
+
11712
+ # Configuration for customer defined Model Armor templates to be used for
11713
+ # sanitizing user prompts and LLM responses.
11714
+ class GoogleCloudDiscoveryengineV1alphaProjectCustomerProvidedConfigNotebooklmConfigModelArmorConfig
11715
+ include Google::Apis::Core::Hashable
11716
+
11717
+ # Optional. The resource name of the Model Armor Template for sanitizing LLM
11718
+ # responses. Format: projects/`project`/locations/`location`/templates/`
11719
+ # template_id` If not specified, no sanitization will be applied to the LLM
11720
+ # response.
11721
+ # Corresponds to the JSON property `responseTemplate`
11722
+ # @return [String]
11723
+ attr_accessor :response_template
11724
+
11725
+ # Optional. The resource name of the Model Armor Template for sanitizing user
11726
+ # prompts. Format: projects/`project`/locations/`location`/templates/`
11727
+ # template_id` If not specified, no sanitization will be applied to the user
11728
+ # prompt.
11729
+ # Corresponds to the JSON property `userPromptTemplate`
11730
+ # @return [String]
11731
+ attr_accessor :user_prompt_template
11732
+
11733
+ def initialize(**args)
11734
+ update!(**args)
11735
+ end
11736
+
11737
+ # Update properties of this object
11738
+ def update!(**args)
11739
+ @response_template = args[:response_template] if args.key?(:response_template)
11740
+ @user_prompt_template = args[:user_prompt_template] if args.key?(:user_prompt_template)
11741
+ end
11742
+ end
11743
+
10681
11744
  # Metadata about the terms of service.
10682
11745
  class GoogleCloudDiscoveryengineV1alphaProjectServiceTerms
10683
11746
  include Google::Apis::Core::Hashable
@@ -11559,7 +12622,8 @@ module Google
11559
12622
  # A 0-indexed integer that specifies the current offset (that is, starting
11560
12623
  # result location, amongst the Documents deemed by the API as relevant) in
11561
12624
  # search results. This field is only considered if page_token is unset. If this
11562
- # field is negative, an `INVALID_ARGUMENT` is returned.
12625
+ # field is negative, an `INVALID_ARGUMENT` is returned. A large offset may be
12626
+ # capped to a reasonable threshold.
11563
12627
  # Corresponds to the JSON property `offset`
11564
12628
  # @return [Fixnum]
11565
12629
  attr_accessor :offset
@@ -11712,6 +12776,13 @@ module Google
11712
12776
  attr_accessor :safe_search
11713
12777
  alias_method :safe_search?, :safe_search
11714
12778
 
12779
+ # SearchAddonSpec is used to disable add-ons for search as per new repricing
12780
+ # model. By default if the SearchAddonSpec is not specified, we consider that
12781
+ # the customer wants to enable them wherever applicable.
12782
+ # Corresponds to the JSON property `searchAddonSpec`
12783
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaSearchRequestSearchAddonSpec]
12784
+ attr_accessor :search_addon_spec
12785
+
11715
12786
  # Specification for search as you type in search requests.
11716
12787
  # Corresponds to the JSON property `searchAsYouTypeSpec`
11717
12788
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaSearchRequestSearchAsYouTypeSpec]
@@ -11831,6 +12902,7 @@ module Google
11831
12902
  @relevance_score_spec = args[:relevance_score_spec] if args.key?(:relevance_score_spec)
11832
12903
  @relevance_threshold = args[:relevance_threshold] if args.key?(:relevance_threshold)
11833
12904
  @safe_search = args[:safe_search] if args.key?(:safe_search)
12905
+ @search_addon_spec = args[:search_addon_spec] if args.key?(:search_addon_spec)
11834
12906
  @search_as_you_type_spec = args[:search_as_you_type_spec] if args.key?(:search_as_you_type_spec)
11835
12907
  @serving_config = args[:serving_config] if args.key?(:serving_config)
11836
12908
  @session = args[:session] if args.key?(:session)
@@ -12643,6 +13715,17 @@ module Google
12643
13715
  class GoogleCloudDiscoveryengineV1alphaSearchRequestNaturalLanguageQueryUnderstandingSpec
12644
13716
  include Google::Apis::Core::Hashable
12645
13717
 
13718
+ # Optional. Allowlist of fields that can be used for natural language filter
13719
+ # extraction. By default, if this is unspecified, all indexable fields are
13720
+ # eligible for natural language filter extraction (but are not guaranteed to be
13721
+ # used). If any fields are specified in allowed_field_names, only the fields
13722
+ # that are both marked as indexable in the schema and specified in the allowlist
13723
+ # will be eligible for natural language filter extraction. Note: for multi-
13724
+ # datastore search, this is not yet supported, and will be ignored.
13725
+ # Corresponds to the JSON property `allowedFieldNames`
13726
+ # @return [Array<String>]
13727
+ attr_accessor :allowed_field_names
13728
+
12646
13729
  # Optional. Controls behavior of how extracted filters are applied to the search.
12647
13730
  # The default behavior depends on the request. For single datastore structured
12648
13731
  # search, the default is `HARD_FILTER`. For multi-datastore search, the default
@@ -12675,6 +13758,7 @@ module Google
12675
13758
 
12676
13759
  # Update properties of this object
12677
13760
  def update!(**args)
13761
+ @allowed_field_names = args[:allowed_field_names] if args.key?(:allowed_field_names)
12678
13762
  @extracted_filter_behavior = args[:extracted_filter_behavior] if args.key?(:extracted_filter_behavior)
12679
13763
  @filter_extraction_condition = args[:filter_extraction_condition] if args.key?(:filter_extraction_condition)
12680
13764
  @geo_search_query_detection_field_names = args[:geo_search_query_detection_field_names] if args.key?(:geo_search_query_detection_field_names)
@@ -12750,6 +13834,45 @@ module Google
12750
13834
  end
12751
13835
  end
12752
13836
 
13837
+ # SearchAddonSpec is used to disable add-ons for search as per new repricing
13838
+ # model. By default if the SearchAddonSpec is not specified, we consider that
13839
+ # the customer wants to enable them wherever applicable.
13840
+ class GoogleCloudDiscoveryengineV1alphaSearchRequestSearchAddonSpec
13841
+ include Google::Apis::Core::Hashable
13842
+
13843
+ # Optional. If true, generative answer add-on is disabled. Generative answer add-
13844
+ # on includes natural language to filters and simple answers.
13845
+ # Corresponds to the JSON property `disableGenerativeAnswerAddOn`
13846
+ # @return [Boolean]
13847
+ attr_accessor :disable_generative_answer_add_on
13848
+ alias_method :disable_generative_answer_add_on?, :disable_generative_answer_add_on
13849
+
13850
+ # Optional. If true, disables event re-ranking and personalization to optimize
13851
+ # KPIs & personalize results.
13852
+ # Corresponds to the JSON property `disableKpiPersonalizationAddOn`
13853
+ # @return [Boolean]
13854
+ attr_accessor :disable_kpi_personalization_add_on
13855
+ alias_method :disable_kpi_personalization_add_on?, :disable_kpi_personalization_add_on
13856
+
13857
+ # Optional. If true, semantic add-on is disabled. Semantic add-on includes
13858
+ # embeddings and jetstream.
13859
+ # Corresponds to the JSON property `disableSemanticAddOn`
13860
+ # @return [Boolean]
13861
+ attr_accessor :disable_semantic_add_on
13862
+ alias_method :disable_semantic_add_on?, :disable_semantic_add_on
13863
+
13864
+ def initialize(**args)
13865
+ update!(**args)
13866
+ end
13867
+
13868
+ # Update properties of this object
13869
+ def update!(**args)
13870
+ @disable_generative_answer_add_on = args[:disable_generative_answer_add_on] if args.key?(:disable_generative_answer_add_on)
13871
+ @disable_kpi_personalization_add_on = args[:disable_kpi_personalization_add_on] if args.key?(:disable_kpi_personalization_add_on)
13872
+ @disable_semantic_add_on = args[:disable_semantic_add_on] if args.key?(:disable_semantic_add_on)
13873
+ end
13874
+ end
13875
+
12753
13876
  # Specification for search as you type in search requests.
12754
13877
  class GoogleCloudDiscoveryengineV1alphaSearchRequestSearchAsYouTypeSpec
12755
13878
  include Google::Apis::Core::Hashable
@@ -16603,6 +17726,12 @@ module Google
16603
17726
  # @return [String]
16604
17727
  attr_accessor :domain
16605
17728
 
17729
+ # The mime type of the document. https://www.iana.org/assignments/media-types/
17730
+ # media-types.xhtml.
17731
+ # Corresponds to the JSON property `mimeType`
17732
+ # @return [String]
17733
+ attr_accessor :mime_type
17734
+
16606
17735
  # Page identifier.
16607
17736
  # Corresponds to the JSON property `pageIdentifier`
16608
17737
  # @return [String]
@@ -16627,6 +17756,7 @@ module Google
16627
17756
  def update!(**args)
16628
17757
  @document = args[:document] if args.key?(:document)
16629
17758
  @domain = args[:domain] if args.key?(:domain)
17759
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
16630
17760
  @page_identifier = args[:page_identifier] if args.key?(:page_identifier)
16631
17761
  @title = args[:title] if args.key?(:title)
16632
17762
  @uri = args[:uri] if args.key?(:uri)
@@ -18919,6 +20049,12 @@ module Google
18919
20049
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaCmekConfig]
18920
20050
  attr_accessor :cmek_config
18921
20051
 
20052
+ # Optional. Configuration for configurable billing approach. See go/vais-
20053
+ # repricing-billing-dd for more details, only apply to non-Spark UCS Search.
20054
+ # Corresponds to the JSON property `configurableBillingApproach`
20055
+ # @return [String]
20056
+ attr_accessor :configurable_billing_approach
20057
+
18922
20058
  # Immutable. The content config of the data store. If this field is unset, the
18923
20059
  # server behavior defaults to ContentConfig.NO_CONTENT.
18924
20060
  # Corresponds to the JSON property `contentConfig`
@@ -19032,6 +20168,7 @@ module Google
19032
20168
  @advanced_site_search_config = args[:advanced_site_search_config] if args.key?(:advanced_site_search_config)
19033
20169
  @billing_estimation = args[:billing_estimation] if args.key?(:billing_estimation)
19034
20170
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
20171
+ @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
19035
20172
  @content_config = args[:content_config] if args.key?(:content_config)
19036
20173
  @create_time = args[:create_time] if args.key?(:create_time)
19037
20174
  @default_schema_id = args[:default_schema_id] if args.key?(:default_schema_id)
@@ -20022,6 +21159,12 @@ module Google
20022
21159
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaEngineCommonConfig]
20023
21160
  attr_accessor :common_config
20024
21161
 
21162
+ # Optional. Configuration for configurable billing approach. See go/vais-
21163
+ # repricing-billing-dd for more details.
21164
+ # Corresponds to the JSON property `configurableBillingApproach`
21165
+ # @return [String]
21166
+ attr_accessor :configurable_billing_approach
21167
+
20025
21168
  # Output only. Timestamp the Recommendation Engine was created at.
20026
21169
  # Corresponds to the JSON property `createTime`
20027
21170
  # @return [String]
@@ -20054,7 +21197,8 @@ module Google
20054
21197
  # settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-
20055
21198
  # gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-
20056
21199
  # org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `
20057
- # personalization-memory` - Enables personalization based on user preferences.
21200
+ # personalization-memory` * `disable-image-generation` * `disable-video-
21201
+ # generation` * `disable-onedrive-upload`
20058
21202
  # Corresponds to the JSON property `features`
20059
21203
  # @return [Hash<String,String>]
20060
21204
  attr_accessor :features
@@ -20105,6 +21249,7 @@ module Google
20105
21249
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
20106
21250
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
20107
21251
  @common_config = args[:common_config] if args.key?(:common_config)
21252
+ @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
20108
21253
  @create_time = args[:create_time] if args.key?(:create_time)
20109
21254
  @data_store_ids = args[:data_store_ids] if args.key?(:data_store_ids)
20110
21255
  @disable_analytics = args[:disable_analytics] if args.key?(:disable_analytics)
@@ -22676,6 +23821,11 @@ module Google
22676
23821
  # @return [String]
22677
23822
  attr_accessor :create_time
22678
23823
 
23824
+ # Customer provided configurations.
23825
+ # Corresponds to the JSON property `customerProvidedConfig`
23826
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaProjectCustomerProvidedConfig]
23827
+ attr_accessor :customer_provided_config
23828
+
22679
23829
  # Output only. Full resource name of the project, for example `projects/`project`
22680
23830
  # `. Note that when making requests, project number and project id are both
22681
23831
  # acceptable, but the server will always respond in project number.
@@ -22701,12 +23851,84 @@ module Google
22701
23851
  # Update properties of this object
22702
23852
  def update!(**args)
22703
23853
  @create_time = args[:create_time] if args.key?(:create_time)
23854
+ @customer_provided_config = args[:customer_provided_config] if args.key?(:customer_provided_config)
22704
23855
  @name = args[:name] if args.key?(:name)
22705
23856
  @provision_completion_time = args[:provision_completion_time] if args.key?(:provision_completion_time)
22706
23857
  @service_terms_map = args[:service_terms_map] if args.key?(:service_terms_map)
22707
23858
  end
22708
23859
  end
22709
23860
 
23861
+ # Customer provided configurations.
23862
+ class GoogleCloudDiscoveryengineV1betaProjectCustomerProvidedConfig
23863
+ include Google::Apis::Core::Hashable
23864
+
23865
+ # Configuration for NotebookLM.
23866
+ # Corresponds to the JSON property `notebooklmConfig`
23867
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaProjectCustomerProvidedConfigNotebooklmConfig]
23868
+ attr_accessor :notebooklm_config
23869
+
23870
+ def initialize(**args)
23871
+ update!(**args)
23872
+ end
23873
+
23874
+ # Update properties of this object
23875
+ def update!(**args)
23876
+ @notebooklm_config = args[:notebooklm_config] if args.key?(:notebooklm_config)
23877
+ end
23878
+ end
23879
+
23880
+ # Configuration for NotebookLM.
23881
+ class GoogleCloudDiscoveryengineV1betaProjectCustomerProvidedConfigNotebooklmConfig
23882
+ include Google::Apis::Core::Hashable
23883
+
23884
+ # Configuration for customer defined Model Armor templates to be used for
23885
+ # sanitizing user prompts and LLM responses.
23886
+ # Corresponds to the JSON property `modelArmorConfig`
23887
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaProjectCustomerProvidedConfigNotebooklmConfigModelArmorConfig]
23888
+ attr_accessor :model_armor_config
23889
+
23890
+ def initialize(**args)
23891
+ update!(**args)
23892
+ end
23893
+
23894
+ # Update properties of this object
23895
+ def update!(**args)
23896
+ @model_armor_config = args[:model_armor_config] if args.key?(:model_armor_config)
23897
+ end
23898
+ end
23899
+
23900
+ # Configuration for customer defined Model Armor templates to be used for
23901
+ # sanitizing user prompts and LLM responses.
23902
+ class GoogleCloudDiscoveryengineV1betaProjectCustomerProvidedConfigNotebooklmConfigModelArmorConfig
23903
+ include Google::Apis::Core::Hashable
23904
+
23905
+ # Optional. The resource name of the Model Armor Template for sanitizing LLM
23906
+ # responses. Format: projects/`project`/locations/`location`/templates/`
23907
+ # template_id` If not specified, no sanitization will be applied to the LLM
23908
+ # response.
23909
+ # Corresponds to the JSON property `responseTemplate`
23910
+ # @return [String]
23911
+ attr_accessor :response_template
23912
+
23913
+ # Optional. The resource name of the Model Armor Template for sanitizing user
23914
+ # prompts. Format: projects/`project`/locations/`location`/templates/`
23915
+ # template_id` If not specified, no sanitization will be applied to the user
23916
+ # prompt.
23917
+ # Corresponds to the JSON property `userPromptTemplate`
23918
+ # @return [String]
23919
+ attr_accessor :user_prompt_template
23920
+
23921
+ def initialize(**args)
23922
+ update!(**args)
23923
+ end
23924
+
23925
+ # Update properties of this object
23926
+ def update!(**args)
23927
+ @response_template = args[:response_template] if args.key?(:response_template)
23928
+ @user_prompt_template = args[:user_prompt_template] if args.key?(:user_prompt_template)
23929
+ end
23930
+ end
23931
+
22710
23932
  # Metadata about the terms of service.
22711
23933
  class GoogleCloudDiscoveryengineV1betaProjectServiceTerms
22712
23934
  include Google::Apis::Core::Hashable
@@ -22816,6 +24038,13 @@ module Google
22816
24038
  attr_accessor :accept_biz_qos
22817
24039
  alias_method :accept_biz_qos?, :accept_biz_qos
22818
24040
 
24041
+ # Optional. Indicates if the current request is for Biz edition (= true) or not (
24042
+ # = false).
24043
+ # Corresponds to the JSON property `isBiz`
24044
+ # @return [Boolean]
24045
+ attr_accessor :is_biz
24046
+ alias_method :is_biz?, :is_biz
24047
+
22819
24048
  def initialize(**args)
22820
24049
  update!(**args)
22821
24050
  end
@@ -22823,6 +24052,7 @@ module Google
22823
24052
  # Update properties of this object
22824
24053
  def update!(**args)
22825
24054
  @accept_biz_qos = args[:accept_biz_qos] if args.key?(:accept_biz_qos)
24055
+ @is_biz = args[:is_biz] if args.key?(:is_biz)
22826
24056
  end
22827
24057
  end
22828
24058
 
@@ -24242,7 +25472,8 @@ module Google
24242
25472
  # A 0-indexed integer that specifies the current offset (that is, starting
24243
25473
  # result location, amongst the Documents deemed by the API as relevant) in
24244
25474
  # search results. This field is only considered if page_token is unset. If this
24245
- # field is negative, an `INVALID_ARGUMENT` is returned.
25475
+ # field is negative, an `INVALID_ARGUMENT` is returned. A large offset may be
25476
+ # capped to a reasonable threshold.
24246
25477
  # Corresponds to the JSON property `offset`
24247
25478
  # @return [Fixnum]
24248
25479
  attr_accessor :offset
@@ -24395,6 +25626,13 @@ module Google
24395
25626
  attr_accessor :safe_search
24396
25627
  alias_method :safe_search?, :safe_search
24397
25628
 
25629
+ # SearchAddonSpec is used to disable add-ons for search as per new repricing
25630
+ # model. By default if the SearchAddonSpec is not specified, we consider that
25631
+ # the customer wants to enable them wherever applicable.
25632
+ # Corresponds to the JSON property `searchAddonSpec`
25633
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaSearchRequestSearchAddonSpec]
25634
+ attr_accessor :search_addon_spec
25635
+
24398
25636
  # Specification for search as you type in search requests.
24399
25637
  # Corresponds to the JSON property `searchAsYouTypeSpec`
24400
25638
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaSearchRequestSearchAsYouTypeSpec]
@@ -24504,6 +25742,7 @@ module Google
24504
25742
  @relevance_score_spec = args[:relevance_score_spec] if args.key?(:relevance_score_spec)
24505
25743
  @relevance_threshold = args[:relevance_threshold] if args.key?(:relevance_threshold)
24506
25744
  @safe_search = args[:safe_search] if args.key?(:safe_search)
25745
+ @search_addon_spec = args[:search_addon_spec] if args.key?(:search_addon_spec)
24507
25746
  @search_as_you_type_spec = args[:search_as_you_type_spec] if args.key?(:search_as_you_type_spec)
24508
25747
  @serving_config = args[:serving_config] if args.key?(:serving_config)
24509
25748
  @session = args[:session] if args.key?(:session)
@@ -25315,6 +26554,17 @@ module Google
25315
26554
  class GoogleCloudDiscoveryengineV1betaSearchRequestNaturalLanguageQueryUnderstandingSpec
25316
26555
  include Google::Apis::Core::Hashable
25317
26556
 
26557
+ # Optional. Allowlist of fields that can be used for natural language filter
26558
+ # extraction. By default, if this is unspecified, all indexable fields are
26559
+ # eligible for natural language filter extraction (but are not guaranteed to be
26560
+ # used). If any fields are specified in allowed_field_names, only the fields
26561
+ # that are both marked as indexable in the schema and specified in the allowlist
26562
+ # will be eligible for natural language filter extraction. Note: for multi-
26563
+ # datastore search, this is not yet supported, and will be ignored.
26564
+ # Corresponds to the JSON property `allowedFieldNames`
26565
+ # @return [Array<String>]
26566
+ attr_accessor :allowed_field_names
26567
+
25318
26568
  # Optional. Controls behavior of how extracted filters are applied to the search.
25319
26569
  # The default behavior depends on the request. For single datastore structured
25320
26570
  # search, the default is `HARD_FILTER`. For multi-datastore search, the default
@@ -25347,6 +26597,7 @@ module Google
25347
26597
 
25348
26598
  # Update properties of this object
25349
26599
  def update!(**args)
26600
+ @allowed_field_names = args[:allowed_field_names] if args.key?(:allowed_field_names)
25350
26601
  @extracted_filter_behavior = args[:extracted_filter_behavior] if args.key?(:extracted_filter_behavior)
25351
26602
  @filter_extraction_condition = args[:filter_extraction_condition] if args.key?(:filter_extraction_condition)
25352
26603
  @geo_search_query_detection_field_names = args[:geo_search_query_detection_field_names] if args.key?(:geo_search_query_detection_field_names)
@@ -25422,6 +26673,45 @@ module Google
25422
26673
  end
25423
26674
  end
25424
26675
 
26676
+ # SearchAddonSpec is used to disable add-ons for search as per new repricing
26677
+ # model. By default if the SearchAddonSpec is not specified, we consider that
26678
+ # the customer wants to enable them wherever applicable.
26679
+ class GoogleCloudDiscoveryengineV1betaSearchRequestSearchAddonSpec
26680
+ include Google::Apis::Core::Hashable
26681
+
26682
+ # Optional. If true, generative answer add-on is disabled. Generative answer add-
26683
+ # on includes natural language to filters and simple answers.
26684
+ # Corresponds to the JSON property `disableGenerativeAnswerAddOn`
26685
+ # @return [Boolean]
26686
+ attr_accessor :disable_generative_answer_add_on
26687
+ alias_method :disable_generative_answer_add_on?, :disable_generative_answer_add_on
26688
+
26689
+ # Optional. If true, disables event re-ranking and personalization to optimize
26690
+ # KPIs & personalize results.
26691
+ # Corresponds to the JSON property `disableKpiPersonalizationAddOn`
26692
+ # @return [Boolean]
26693
+ attr_accessor :disable_kpi_personalization_add_on
26694
+ alias_method :disable_kpi_personalization_add_on?, :disable_kpi_personalization_add_on
26695
+
26696
+ # Optional. If true, semantic add-on is disabled. Semantic add-on includes
26697
+ # embeddings and jetstream.
26698
+ # Corresponds to the JSON property `disableSemanticAddOn`
26699
+ # @return [Boolean]
26700
+ attr_accessor :disable_semantic_add_on
26701
+ alias_method :disable_semantic_add_on?, :disable_semantic_add_on
26702
+
26703
+ def initialize(**args)
26704
+ update!(**args)
26705
+ end
26706
+
26707
+ # Update properties of this object
26708
+ def update!(**args)
26709
+ @disable_generative_answer_add_on = args[:disable_generative_answer_add_on] if args.key?(:disable_generative_answer_add_on)
26710
+ @disable_kpi_personalization_add_on = args[:disable_kpi_personalization_add_on] if args.key?(:disable_kpi_personalization_add_on)
26711
+ @disable_semantic_add_on = args[:disable_semantic_add_on] if args.key?(:disable_semantic_add_on)
26712
+ end
26713
+ end
26714
+
25425
26715
  # Specification for search as you type in search requests.
25426
26716
  class GoogleCloudDiscoveryengineV1betaSearchRequestSearchAsYouTypeSpec
25427
26717
  include Google::Apis::Core::Hashable
@@ -28032,12 +29322,11 @@ module Google
28032
29322
  # Search for Documents. * `view-item`: Detailed page view of a Document. * `view-
28033
29323
  # item-list`: View of a panel or ordered list of Documents. * `view-home-page`:
28034
29324
  # View of the home page. * `view-category-page`: View of a category page, e.g.
28035
- # Home > Men > Jeans * `add-feedback`: Add a user feedback. Retail-related
28036
- # values: * `add-to-cart`: Add an item(s) to cart, e.g. in Retail online
28037
- # shopping * `purchase`: Purchase an item(s) Media-related values: * `media-play`
28038
- # : Start/resume watching a video, playing a song, etc. * `media-complete`:
28039
- # Finished or stopped midway through a video, song, etc. Custom conversion value:
28040
- # * `conversion`: Customer defined conversion event.
29325
+ # Home > Men > Jeans Retail-related values: * `add-to-cart`: Add an item(s) to
29326
+ # cart, e.g. in Retail online shopping * `purchase`: Purchase an item(s) Media-
29327
+ # related values: * `media-play`: Start/resume watching a video, playing a song,
29328
+ # etc. * `media-complete`: Finished or stopped midway through a video, song, etc.
29329
+ # Custom conversion value: * `conversion`: Customer defined conversion event.
28041
29330
  # Corresponds to the JSON property `eventType`
28042
29331
  # @return [String]
28043
29332
  attr_accessor :event_type
@@ -28330,6 +29619,13 @@ module Google
28330
29619
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleLongrunningOperation>]
28331
29620
  attr_accessor :operations
28332
29621
 
29622
+ # Unordered list. Unreachable resources. Populated when the request sets `
29623
+ # ListOperationsRequest.return_partial_success` and reads across collections e.g.
29624
+ # when attempting to list all resources across all supported locations.
29625
+ # Corresponds to the JSON property `unreachable`
29626
+ # @return [Array<String>]
29627
+ attr_accessor :unreachable
29628
+
28333
29629
  def initialize(**args)
28334
29630
  update!(**args)
28335
29631
  end
@@ -28338,6 +29634,7 @@ module Google
28338
29634
  def update!(**args)
28339
29635
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
28340
29636
  @operations = args[:operations] if args.key?(:operations)
29637
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
28341
29638
  end
28342
29639
  end
28343
29640