google-apis-discoveryengine_v1beta 0.103.0 → 0.105.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.
@@ -795,6 +795,12 @@ module Google
795
795
  # @return [Hash<String,Object>]
796
796
  attr_accessor :action_params
797
797
 
798
+ # Optional. Whether to create a BAP connection for the connector.
799
+ # Corresponds to the JSON property `createBapConnection`
800
+ # @return [Boolean]
801
+ attr_accessor :create_bap_connection
802
+ alias_method :create_bap_connection?, :create_bap_connection
803
+
798
804
  # Output only. The connector contains the necessary parameters and is configured
799
805
  # to support actions.
800
806
  # Corresponds to the JSON property `isActionConfigured`
@@ -835,6 +841,7 @@ module Google
835
841
  # Update properties of this object
836
842
  def update!(**args)
837
843
  @action_params = args[:action_params] if args.key?(:action_params)
844
+ @create_bap_connection = args[:create_bap_connection] if args.key?(:create_bap_connection)
838
845
  @is_action_configured = args[:is_action_configured] if args.key?(:is_action_configured)
839
846
  @json_action_params = args[:json_action_params] if args.key?(:json_action_params)
840
847
  @service_name = args[:service_name] if args.key?(:service_name)
@@ -1065,6 +1072,11 @@ module Google
1065
1072
  class GoogleCloudDiscoveryengineV1Assistant
1066
1073
  include Google::Apis::Core::Hashable
1067
1074
 
1075
+ # Output only. Represents the time when this Assistant was created.
1076
+ # Corresponds to the JSON property `createTime`
1077
+ # @return [String]
1078
+ attr_accessor :create_time
1079
+
1068
1080
  # Customer-defined policy for the assistant.
1069
1081
  # Corresponds to the JSON property `customerPolicy`
1070
1082
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1AssistantCustomerPolicy]
@@ -1120,6 +1132,11 @@ module Google
1120
1132
  # @return [String]
1121
1133
  attr_accessor :name
1122
1134
 
1135
+ # Output only. Represents the time when this Assistant was most recently updated.
1136
+ # Corresponds to the JSON property `updateTime`
1137
+ # @return [String]
1138
+ attr_accessor :update_time
1139
+
1123
1140
  # Optional. The type of web grounding to use.
1124
1141
  # Corresponds to the JSON property `webGroundingType`
1125
1142
  # @return [String]
@@ -1131,6 +1148,7 @@ module Google
1131
1148
 
1132
1149
  # Update properties of this object
1133
1150
  def update!(**args)
1151
+ @create_time = args[:create_time] if args.key?(:create_time)
1134
1152
  @customer_policy = args[:customer_policy] if args.key?(:customer_policy)
1135
1153
  @default_web_grounding_toggle_off = args[:default_web_grounding_toggle_off] if args.key?(:default_web_grounding_toggle_off)
1136
1154
  @description = args[:description] if args.key?(:description)
@@ -1138,6 +1156,7 @@ module Google
1138
1156
  @enabled_tools = args[:enabled_tools] if args.key?(:enabled_tools)
1139
1157
  @generation_config = args[:generation_config] if args.key?(:generation_config)
1140
1158
  @name = args[:name] if args.key?(:name)
1159
+ @update_time = args[:update_time] if args.key?(:update_time)
1141
1160
  @web_grounding_type = args[:web_grounding_type] if args.key?(:web_grounding_type)
1142
1161
  end
1143
1162
  end
@@ -1360,6 +1379,18 @@ module Google
1360
1379
  # @return [Array<String>]
1361
1380
  attr_accessor :supported_connector_modes
1362
1381
 
1382
+ # Customer-facing view of the admin-curated toolspec for a BAP connection. Holds
1383
+ # the (simplified) per-tool definitions surfaced to and editable by the admin in
1384
+ # the Discovery Engine UI. Mirrors the shape of the backend `google.cloud.
1385
+ # connectorexecution.v1.ToolspecOverride` message, but is intentionally kept as
1386
+ # a separate public type so the Discovery Engine API surface can evolve
1387
+ # independently of the fed-API surface (AIP-215). Handlers convert between the
1388
+ # two via helpers in //cloud/ml/discoveryengine/external_service/v1main/
1389
+ # data_connector_service/lib:bap_custom_tool_util.
1390
+ # Corresponds to the JSON property `toolspecOverride`
1391
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1BapConfigToolspecOverride]
1392
+ attr_accessor :toolspec_override
1393
+
1363
1394
  def initialize(**args)
1364
1395
  update!(**args)
1365
1396
  end
@@ -1368,6 +1399,45 @@ module Google
1368
1399
  def update!(**args)
1369
1400
  @enabled_actions = args[:enabled_actions] if args.key?(:enabled_actions)
1370
1401
  @supported_connector_modes = args[:supported_connector_modes] if args.key?(:supported_connector_modes)
1402
+ @toolspec_override = args[:toolspec_override] if args.key?(:toolspec_override)
1403
+ end
1404
+ end
1405
+
1406
+ # Customer-facing view of the admin-curated toolspec for a BAP connection. Holds
1407
+ # the (simplified) per-tool definitions surfaced to and editable by the admin in
1408
+ # the Discovery Engine UI. Mirrors the shape of the backend `google.cloud.
1409
+ # connectorexecution.v1.ToolspecOverride` message, but is intentionally kept as
1410
+ # a separate public type so the Discovery Engine API surface can evolve
1411
+ # independently of the fed-API surface (AIP-215). Handlers convert between the
1412
+ # two via helpers in //cloud/ml/discoveryengine/external_service/v1main/
1413
+ # data_connector_service/lib:bap_custom_tool_util.
1414
+ class GoogleCloudDiscoveryengineV1BapConfigToolspecOverride
1415
+ include Google::Apis::Core::Hashable
1416
+
1417
+ # Required. Base toolspec version against which `tools` were authored. On Update,
1418
+ # MUST match the server's current stable toolspec version for the connection;
1419
+ # mismatch is rejected with a user-facing error directing the admin to re-
1420
+ # download the latest tools first.
1421
+ # Corresponds to the JSON property `baseVersion`
1422
+ # @return [String]
1423
+ attr_accessor :base_version
1424
+
1425
+ # Required. Tool definitions (one Struct per tool) that the admin has customised
1426
+ # on top of the base toolspec returned by the fed API. REQUIRED because it is
1427
+ # the only user-editable field in the modify API; the request must carry at
1428
+ # least one tool.
1429
+ # Corresponds to the JSON property `tools`
1430
+ # @return [Array<Hash<String,Object>>]
1431
+ attr_accessor :tools
1432
+
1433
+ def initialize(**args)
1434
+ update!(**args)
1435
+ end
1436
+
1437
+ # Update properties of this object
1438
+ def update!(**args)
1439
+ @base_version = args[:base_version] if args.key?(:base_version)
1440
+ @tools = args[:tools] if args.key?(:tools)
1371
1441
  end
1372
1442
  end
1373
1443
 
@@ -1483,6 +1553,25 @@ module Google
1483
1553
  end
1484
1554
  end
1485
1555
 
1556
+ # The configuration for the CLI execution based connectors.
1557
+ class GoogleCloudDiscoveryengineV1CliConfig
1558
+ include Google::Apis::Core::Hashable
1559
+
1560
+ # Optional. The actions enabled on the associated CLI connection.
1561
+ # Corresponds to the JSON property `enabledActions`
1562
+ # @return [Array<String>]
1563
+ attr_accessor :enabled_actions
1564
+
1565
+ def initialize(**args)
1566
+ update!(**args)
1567
+ end
1568
+
1569
+ # Update properties of this object
1570
+ def update!(**args)
1571
+ @enabled_actions = args[:enabled_actions] if args.key?(:enabled_actions)
1572
+ end
1573
+ end
1574
+
1486
1575
  # Configurations used to enable CMEK data encryption with Cloud KMS keys.
1487
1576
  class GoogleCloudDiscoveryengineV1CmekConfig
1488
1577
  include Google::Apis::Core::Hashable
@@ -2186,12 +2275,23 @@ module Google
2186
2275
  # @return [Array<String>]
2187
2276
  attr_accessor :blocking_reasons
2188
2277
 
2278
+ # The configuration for the CLI execution based connectors.
2279
+ # Corresponds to the JSON property `cliConfig`
2280
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1CliConfig]
2281
+ attr_accessor :cli_config
2282
+
2189
2283
  # Optional. The modes enabled for this connector. Default state is
2190
2284
  # CONNECTOR_MODE_UNSPECIFIED.
2191
2285
  # Corresponds to the JSON property `connectorModes`
2192
2286
  # @return [Array<String>]
2193
2287
  attr_accessor :connector_modes
2194
2288
 
2289
+ # Optional. If set, this value instead of `data_source` is used to fetch the
2290
+ # corresponding connector source.
2291
+ # Corresponds to the JSON property `connectorSourceId`
2292
+ # @return [String]
2293
+ attr_accessor :connector_source_id
2294
+
2195
2295
  # Output only. The type of connector. Each source can only map to one type. For
2196
2296
  # example, salesforce, confluence and jira have THIRD_PARTY connector type. It
2197
2297
  # is not mutable once set by system.
@@ -2232,11 +2332,14 @@ module Google
2232
2332
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DestinationConfig>]
2233
2333
  attr_accessor :destination_configs
2234
2334
 
2335
+ # Output only. The dynamic tools fetched for this connector.
2336
+ # Corresponds to the JSON property `dynamicTools`
2337
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1DynamicTool>]
2338
+ attr_accessor :dynamic_tools
2339
+
2235
2340
  # Output only. The list of FQDNs of the data connector can egress to. This
2236
2341
  # includes both FQDN derived from the customer provided instance URL and default
2237
- # per connector type FQDNs. Note: This field is derived from both the
2238
- # DataConnector.params, and connector source spec. It should only be used for
2239
- # CAIS and Org Policy evaluation purposes.
2342
+ # per connector type FQDNs.
2240
2343
  # Corresponds to the JSON property `egressFqdns`
2241
2344
  # @return [Array<String>]
2242
2345
  attr_accessor :egress_fqdns
@@ -2330,7 +2433,7 @@ module Google
2330
2433
  # @return [String]
2331
2434
  attr_accessor :latest_pause_time
2332
2435
 
2333
- # Output only. The full resource name of the Data Connector. Format: `projects/*/
2436
+ # Identifier. The full resource name of the Data Connector. Format: `projects/*/
2334
2437
  # locations/*/collections/*/dataConnector`.
2335
2438
  # Corresponds to the JSON property `name`
2336
2439
  # @return [String]
@@ -2420,8 +2523,7 @@ module Google
2420
2523
  # @return [String]
2421
2524
  attr_accessor :update_time
2422
2525
 
2423
- # Output only. Whether the connector is created with VPC-SC enabled. This is
2424
- # only used for CuOP evaluation purpose.
2526
+ # Output only. Whether the connector is created with VPC-SC enabled.
2425
2527
  # Corresponds to the JSON property `vpcscEnabled`
2426
2528
  # @return [Boolean]
2427
2529
  attr_accessor :vpcsc_enabled
@@ -2440,12 +2542,15 @@ module Google
2440
2542
  @auto_run_disabled = args[:auto_run_disabled] if args.key?(:auto_run_disabled)
2441
2543
  @bap_config = args[:bap_config] if args.key?(:bap_config)
2442
2544
  @blocking_reasons = args[:blocking_reasons] if args.key?(:blocking_reasons)
2545
+ @cli_config = args[:cli_config] if args.key?(:cli_config)
2443
2546
  @connector_modes = args[:connector_modes] if args.key?(:connector_modes)
2547
+ @connector_source_id = args[:connector_source_id] if args.key?(:connector_source_id)
2444
2548
  @connector_type = args[:connector_type] if args.key?(:connector_type)
2445
2549
  @create_eua_saas = args[:create_eua_saas] if args.key?(:create_eua_saas)
2446
2550
  @create_time = args[:create_time] if args.key?(:create_time)
2447
2551
  @data_source = args[:data_source] if args.key?(:data_source)
2448
2552
  @destination_configs = args[:destination_configs] if args.key?(:destination_configs)
2553
+ @dynamic_tools = args[:dynamic_tools] if args.key?(:dynamic_tools)
2449
2554
  @egress_fqdns = args[:egress_fqdns] if args.key?(:egress_fqdns)
2450
2555
  @end_user_config = args[:end_user_config] if args.key?(:end_user_config)
2451
2556
  @entities = args[:entities] if args.key?(:entities)
@@ -3672,6 +3777,44 @@ module Google
3672
3777
  end
3673
3778
  end
3674
3779
 
3780
+ # Configuration for dynamic tools.
3781
+ class GoogleCloudDiscoveryengineV1DynamicTool
3782
+ include Google::Apis::Core::Hashable
3783
+
3784
+ # Optional. The description of the tool.
3785
+ # Corresponds to the JSON property `description`
3786
+ # @return [String]
3787
+ attr_accessor :description
3788
+
3789
+ # Optional. The display name of the tool.
3790
+ # Corresponds to the JSON property `displayName`
3791
+ # @return [String]
3792
+ attr_accessor :display_name
3793
+
3794
+ # Optional. Whether the tool is enabled.
3795
+ # Corresponds to the JSON property `enabled`
3796
+ # @return [Boolean]
3797
+ attr_accessor :enabled
3798
+ alias_method :enabled?, :enabled
3799
+
3800
+ # Required. The name of the tool.
3801
+ # Corresponds to the JSON property `name`
3802
+ # @return [String]
3803
+ attr_accessor :name
3804
+
3805
+ def initialize(**args)
3806
+ update!(**args)
3807
+ end
3808
+
3809
+ # Update properties of this object
3810
+ def update!(**args)
3811
+ @description = args[:description] if args.key?(:description)
3812
+ @display_name = args[:display_name] if args.key?(:display_name)
3813
+ @enabled = args[:enabled] if args.key?(:enabled)
3814
+ @name = args[:name] if args.key?(:name)
3815
+ end
3816
+ end
3817
+
3675
3818
  # Metadata related to the progress of the SiteSearchEngineService.
3676
3819
  # EnableAdvancedSiteSearch operation. This will be returned by the google.
3677
3820
  # longrunning.Operation.metadata field.
@@ -3731,6 +3874,13 @@ module Google
3731
3874
  # @return [String]
3732
3875
  attr_accessor :app_type
3733
3876
 
3877
+ # Optional. The Agent registry containing the agents, MCP servers and tools
3878
+ # associated with this engine. Field is required if the engine has an Agent
3879
+ # Gateway setting.
3880
+ # Corresponds to the JSON property `associatedAgentRegistry`
3881
+ # @return [String]
3882
+ attr_accessor :associated_agent_registry
3883
+
3734
3884
  # Configurations for a Chat Engine.
3735
3885
  # Corresponds to the JSON property `chatEngineConfig`
3736
3886
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1EngineChatEngineConfig]
@@ -3796,10 +3946,13 @@ module Google
3796
3946
  # settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-
3797
3947
  # gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-
3798
3948
  # org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `
3799
- # personalization-memory` * `personalization-suggested-highlights` * `disable-
3800
- # agent-sharing` * `disable-image-generation` * `disable-video-generation` * `
3801
- # disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-
3802
- # upload` * `disable-welcome-emails`
3949
+ # personalization-memory` * `personalization-suggested-highlights` * `mobile-app-
3950
+ # access` * `disable-agent-sharing` * `disable-image-generation` * `disable-
3951
+ # video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `
3952
+ # disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `
3953
+ # canvas-workspace` * `disable-skills` * `enable-end-user-sharing-with-groups` *
3954
+ # `single-agent-orchestration` * `multi-agent-orchestration` * `cross-product-
3955
+ # intelligence` * `deep-research`
3803
3956
  # Corresponds to the JSON property `features`
3804
3957
  # @return [Hash<String,String>]
3805
3958
  attr_accessor :features
@@ -3879,6 +4032,7 @@ module Google
3879
4032
  def update!(**args)
3880
4033
  @agent_gateway_setting = args[:agent_gateway_setting] if args.key?(:agent_gateway_setting)
3881
4034
  @app_type = args[:app_type] if args.key?(:app_type)
4035
+ @associated_agent_registry = args[:associated_agent_registry] if args.key?(:associated_agent_registry)
3882
4036
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
3883
4037
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
3884
4038
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
@@ -4733,8 +4887,8 @@ module Google
4733
4887
  # @return [Fixnum]
4734
4888
  attr_accessor :success_count
4735
4889
 
4736
- # Operation last update time. If the operation is done, this is also the finish
4737
- # time.
4890
+ # Output only. Operation last update time. If the operation is done, this is
4891
+ # also the finish time.
4738
4892
  # Corresponds to the JSON property `updateTime`
4739
4893
  # @return [String]
4740
4894
  attr_accessor :update_time
@@ -4965,7 +5119,9 @@ module Google
4965
5119
  # and reflect the thresholds actively being used for billing purposes at the
4966
5120
  # time of the GetProject call. This includes the start_time of the subscription
4967
5121
  # and may differ from the values in `customer_provided_config` due to billing
4968
- # rules (e.g., scale-downs taking effect only at the start of a new month).
5122
+ # rules (e.g., scale-downs taking effect only at the start of a new month). We
5123
+ # also include the update type to indicate the type of update performed on the
5124
+ # configurable billing configuration in the UpdateProject operation.
4969
5125
  # Corresponds to the JSON property `configurableBillingStatus`
4970
5126
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus]
4971
5127
  attr_accessor :configurable_billing_status
@@ -5018,10 +5174,17 @@ module Google
5018
5174
  # and reflect the thresholds actively being used for billing purposes at the
5019
5175
  # time of the GetProject call. This includes the start_time of the subscription
5020
5176
  # and may differ from the values in `customer_provided_config` due to billing
5021
- # rules (e.g., scale-downs taking effect only at the start of a new month).
5177
+ # rules (e.g., scale-downs taking effect only at the start of a new month). We
5178
+ # also include the update type to indicate the type of update performed on the
5179
+ # configurable billing configuration in the UpdateProject operation.
5022
5180
  class GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus
5023
5181
  include Google::Apis::Core::Hashable
5024
5182
 
5183
+ # Output only. Per-model Agent Search TPM subscription status.
5184
+ # Corresponds to the JSON property `agentSearchTokenSubscriptionStatuses`
5185
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatusAgentSearchTokenSubscriptionStatus>]
5186
+ attr_accessor :agent_search_token_subscription_statuses
5187
+
5025
5188
  # Optional. The currently effective Indexing Core threshold. This is the
5026
5189
  # threshold against which Indexing Core usage is compared for overage
5027
5190
  # calculations.
@@ -5063,18 +5226,114 @@ module Google
5063
5226
  # @return [String]
5064
5227
  attr_accessor :terminate_time
5065
5228
 
5229
+ # Output only. The type of update performed in this operation. This field is
5230
+ # populated in the response of UpdateProject.
5231
+ # Corresponds to the JSON property `updateType`
5232
+ # @return [String]
5233
+ attr_accessor :update_type
5234
+
5066
5235
  def initialize(**args)
5067
5236
  update!(**args)
5068
5237
  end
5069
5238
 
5070
5239
  # Update properties of this object
5071
5240
  def update!(**args)
5241
+ @agent_search_token_subscription_statuses = args[:agent_search_token_subscription_statuses] if args.key?(:agent_search_token_subscription_statuses)
5072
5242
  @effective_indexing_core_threshold = args[:effective_indexing_core_threshold] if args.key?(:effective_indexing_core_threshold)
5073
5243
  @effective_search_qpm_threshold = args[:effective_search_qpm_threshold] if args.key?(:effective_search_qpm_threshold)
5074
5244
  @indexing_core_threshold_next_update_time = args[:indexing_core_threshold_next_update_time] if args.key?(:indexing_core_threshold_next_update_time)
5075
5245
  @search_qpm_threshold_next_update_time = args[:search_qpm_threshold_next_update_time] if args.key?(:search_qpm_threshold_next_update_time)
5076
5246
  @start_time = args[:start_time] if args.key?(:start_time)
5077
5247
  @terminate_time = args[:terminate_time] if args.key?(:terminate_time)
5248
+ @update_type = args[:update_type] if args.key?(:update_type)
5249
+ end
5250
+ end
5251
+
5252
+ # Per-model Agent Search TPM subscription status. One entry per active `
5253
+ # core_subscription.agent_search_token_subscriptions[*]` entry in the customer-
5254
+ # provided config; populated by UpdateProject and GetProject. The lifecycle
5255
+ # scalars on this message (`start_time`, `terminate_time`, `update_type`, `
5256
+ # tpm_threshold_next_update_time`) are per (project, model_version) — siblings
5257
+ # of the whole-relationship `start_time` / `terminate_time` / `update_type` on
5258
+ # the enclosing ConfigurableBillingStatus, but scoped to this specific Agent
5259
+ # Search TPM subscription instead of to the overall customer-configurable-
5260
+ # pricing relationship. This per-instance granularity is intentional: the
5261
+ # underlying SubV3 storage is per-(project, model_version), so each model has
5262
+ # its own activation, termination, and deferred-update clock; surfacing that on
5263
+ # the response gives customers the granularity they need to manage per-model
5264
+ # commitments independently. QPM / IndexingCore differ — their storage is one
5265
+ # row per (project, location), so their lifecycle is represented only by the
5266
+ # whole- relationship scalars on ConfigurableBillingStatus.
5267
+ class GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatusAgentSearchTokenSubscriptionStatus
5268
+ include Google::Apis::Core::Hashable
5269
+
5270
+ # Output only. The currently effective TPM threshold. Reflects scale-up
5271
+ # immediately and scale-down at the next billing cycle, matching `
5272
+ # effective_search_qpm_threshold` semantics.
5273
+ # Corresponds to the JSON property `effectiveTpmThreshold`
5274
+ # @return [Fixnum]
5275
+ attr_accessor :effective_tpm_threshold
5276
+
5277
+ # Output only. The Gemini model version this status corresponds to. Matches
5278
+ # CoreSubscription.AgentSearchTokenSubscription.model_version (a stable Gemini
5279
+ # model version from the Gemini Enterprise Agent Platform model-versions
5280
+ # registry; see https://docs.cloud.google.com/gemini-enterprise-agent-platform/
5281
+ # models/model-versions#gemini-models).
5282
+ # Corresponds to the JSON property `modelVersion`
5283
+ # @return [String]
5284
+ attr_accessor :model_version
5285
+
5286
+ # Output only. When this (project, model_version) Agent Search TPM subscription
5287
+ # was first activated. Set once on first activation of this model version and
5288
+ # never moved by subsequent threshold updates; on termination + re-activation a
5289
+ # new value is recorded. Does NOT move the whole-relationship `start_time` on
5290
+ # the enclosing ConfigurableBillingStatus, which continues to represent the
5291
+ # first activation of the overall customer-configurable-pricing relationship.
5292
+ # Corresponds to the JSON property `startTime`
5293
+ # @return [String]
5294
+ attr_accessor :start_time
5295
+
5296
+ # Output only. If set, the scheduled effective time at which this (project,
5297
+ # model_version) Agent Search TPM subscription will terminate. Populated when
5298
+ # the customer removes this entry from `core_subscription.
5299
+ # agent_search_token_subscriptions[*]`. Does NOT move the whole-relationship `
5300
+ # terminate_time` on the enclosing ConfigurableBillingStatus, which is populated
5301
+ # only when the entire customer-configurable-pricing relationship is being torn
5302
+ # down.
5303
+ # Corresponds to the JSON property `terminateTime`
5304
+ # @return [String]
5305
+ attr_accessor :terminate_time
5306
+
5307
+ # Output only. The earliest next update time for the TPM subscription threshold
5308
+ # for this (project, model_version). Populated only after a successful update.
5309
+ # Corresponds to the JSON property `tpmThresholdNextUpdateTime`
5310
+ # @return [String]
5311
+ attr_accessor :tpm_threshold_next_update_time
5312
+
5313
+ # Output only. The type of the most recent update to this (project,
5314
+ # model_version) subscription, as performed by the most recent UpdateProject
5315
+ # call. `UPDATE_TYPE_UNSPECIFIED` indicates this model_version was not touched
5316
+ # by the most recent UpdateProject (its `effective_tpm_threshold` reflects an
5317
+ # earlier update). The whole-relationship `update_type` on the enclosing
5318
+ # ConfigurableBillingStatus continues to summarize the direction of the most
5319
+ # recent update across all surfaces in the project (QPM, IndexingCore, and Agent
5320
+ # Search TPM together).
5321
+ # Corresponds to the JSON property `updateType`
5322
+ # @return [String]
5323
+ attr_accessor :update_type
5324
+
5325
+ def initialize(**args)
5326
+ update!(**args)
5327
+ end
5328
+
5329
+ # Update properties of this object
5330
+ def update!(**args)
5331
+ @effective_tpm_threshold = args[:effective_tpm_threshold] if args.key?(:effective_tpm_threshold)
5332
+ @model_version = args[:model_version] if args.key?(:model_version)
5333
+ @start_time = args[:start_time] if args.key?(:start_time)
5334
+ @terminate_time = args[:terminate_time] if args.key?(:terminate_time)
5335
+ @tpm_threshold_next_update_time = args[:tpm_threshold_next_update_time] if args.key?(:tpm_threshold_next_update_time)
5336
+ @update_type = args[:update_type] if args.key?(:update_type)
5078
5337
  end
5079
5338
  end
5080
5339
 
@@ -6681,7 +6940,9 @@ module Google
6681
6940
  class GoogleCloudDiscoveryengineV1WorkspaceConfig
6682
6941
  include Google::Apis::Core::Hashable
6683
6942
 
6684
- # Obfuscated Dasher customer ID.
6943
+ # Output only. Obfuscated Dasher customer ID. Derived by the server from the
6944
+ # project's GCP organization at data store creation time; any value supplied in
6945
+ # the request payload is ignored.
6685
6946
  # Corresponds to the JSON property `dasherCustomerId`
6686
6947
  # @return [String]
6687
6948
  attr_accessor :dasher_customer_id
@@ -6754,6 +7015,12 @@ module Google
6754
7015
  # @return [Hash<String,Object>]
6755
7016
  attr_accessor :action_params
6756
7017
 
7018
+ # Optional. Whether to create a BAP connection for the connector.
7019
+ # Corresponds to the JSON property `createBapConnection`
7020
+ # @return [Boolean]
7021
+ attr_accessor :create_bap_connection
7022
+ alias_method :create_bap_connection?, :create_bap_connection
7023
+
6757
7024
  # Output only. The connector contains the necessary parameters and is configured
6758
7025
  # to support actions.
6759
7026
  # Corresponds to the JSON property `isActionConfigured`
@@ -6794,6 +7061,7 @@ module Google
6794
7061
  # Update properties of this object
6795
7062
  def update!(**args)
6796
7063
  @action_params = args[:action_params] if args.key?(:action_params)
7064
+ @create_bap_connection = args[:create_bap_connection] if args.key?(:create_bap_connection)
6797
7065
  @is_action_configured = args[:is_action_configured] if args.key?(:is_action_configured)
6798
7066
  @json_action_params = args[:json_action_params] if args.key?(:json_action_params)
6799
7067
  @service_name = args[:service_name] if args.key?(:service_name)
@@ -7072,7 +7340,7 @@ module Google
7072
7340
  # @return [String]
7073
7341
  attr_accessor :answer_text
7074
7342
 
7075
- # List of blob attachments in the answer.
7343
+ # Output only. List of blob attachments in the answer.
7076
7344
  # Corresponds to the JSON property `blobAttachments`
7077
7345
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaAnswerBlobAttachment>]
7078
7346
  attr_accessor :blob_attachments
@@ -7372,11 +7640,6 @@ module Google
7372
7640
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaAnswerReferenceChunkInfo]
7373
7641
  attr_accessor :chunk_info
7374
7642
 
7375
- # Output only. The search queries that produced this reference.
7376
- # Corresponds to the JSON property `queries`
7377
- # @return [Array<String>]
7378
- attr_accessor :queries
7379
-
7380
7643
  # Structured search information.
7381
7644
  # Corresponds to the JSON property `structuredDocumentInfo`
7382
7645
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaAnswerReferenceStructuredDocumentInfo]
@@ -7394,7 +7657,6 @@ module Google
7394
7657
  # Update properties of this object
7395
7658
  def update!(**args)
7396
7659
  @chunk_info = args[:chunk_info] if args.key?(:chunk_info)
7397
- @queries = args[:queries] if args.key?(:queries)
7398
7660
  @structured_document_info = args[:structured_document_info] if args.key?(:structured_document_info)
7399
7661
  @unstructured_document_info = args[:unstructured_document_info] if args.key?(:unstructured_document_info)
7400
7662
  end
@@ -7976,6 +8238,11 @@ module Google
7976
8238
  class GoogleCloudDiscoveryengineV1alphaAssistAnswerReply
7977
8239
  include Google::Apis::Core::Hashable
7978
8240
 
8241
+ # The time when the reply was created.
8242
+ # Corresponds to the JSON property `createTime`
8243
+ # @return [String]
8244
+ attr_accessor :create_time
8245
+
7979
8246
  # A piece of content and possibly its grounding information. Not all content
7980
8247
  # needs grounding. Phrases like "Of course, I will gladly search it for you." do
7981
8248
  # not need grounding.
@@ -7998,6 +8265,7 @@ module Google
7998
8265
 
7999
8266
  # Update properties of this object
8000
8267
  def update!(**args)
8268
+ @create_time = args[:create_time] if args.key?(:create_time)
8001
8269
  @grounded_content = args[:grounded_content] if args.key?(:grounded_content)
8002
8270
  @reply_id = args[:reply_id] if args.key?(:reply_id)
8003
8271
  end
@@ -8202,6 +8470,11 @@ module Google
8202
8470
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataSegment>]
8203
8471
  attr_accessor :segments
8204
8472
 
8473
+ # Grounding information for parts of the visual content.
8474
+ # Corresponds to the JSON property `visualSegments`
8475
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment>]
8476
+ attr_accessor :visual_segments
8477
+
8205
8478
  def initialize(**args)
8206
8479
  update!(**args)
8207
8480
  end
@@ -8210,6 +8483,7 @@ module Google
8210
8483
  def update!(**args)
8211
8484
  @references = args[:references] if args.key?(:references)
8212
8485
  @segments = args[:segments] if args.key?(:segments)
8486
+ @visual_segments = args[:visual_segments] if args.key?(:visual_segments)
8213
8487
  end
8214
8488
  end
8215
8489
 
@@ -8217,6 +8491,11 @@ module Google
8217
8491
  class GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataReference
8218
8492
  include Google::Apis::Core::Hashable
8219
8493
 
8494
+ # Chunk of code snippet from the referenced document.
8495
+ # Corresponds to the JSON property `codeSnippet`
8496
+ # @return [String]
8497
+ attr_accessor :code_snippet
8498
+
8220
8499
  # Referenced text content.
8221
8500
  # Corresponds to the JSON property `content`
8222
8501
  # @return [String]
@@ -8233,6 +8512,7 @@ module Google
8233
8512
 
8234
8513
  # Update properties of this object
8235
8514
  def update!(**args)
8515
+ @code_snippet = args[:code_snippet] if args.key?(:code_snippet)
8236
8516
  @content = args[:content] if args.key?(:content)
8237
8517
  @document_metadata = args[:document_metadata] if args.key?(:document_metadata)
8238
8518
  end
@@ -8254,6 +8534,11 @@ module Google
8254
8534
  # @return [String]
8255
8535
  attr_accessor :domain
8256
8536
 
8537
+ #
8538
+ # Corresponds to the JSON property `language`
8539
+ # @return [String]
8540
+ attr_accessor :language
8541
+
8257
8542
  # The mime type of the document. https://www.iana.org/assignments/media-types/
8258
8543
  # media-types.xhtml.
8259
8544
  # Corresponds to the JSON property `mimeType`
@@ -8284,6 +8569,7 @@ module Google
8284
8569
  def update!(**args)
8285
8570
  @document = args[:document] if args.key?(:document)
8286
8571
  @domain = args[:domain] if args.key?(:domain)
8572
+ @language = args[:language] if args.key?(:language)
8287
8573
  @mime_type = args[:mime_type] if args.key?(:mime_type)
8288
8574
  @page_identifier = args[:page_identifier] if args.key?(:page_identifier)
8289
8575
  @title = args[:title] if args.key?(:title)
@@ -8336,6 +8622,33 @@ module Google
8336
8622
  end
8337
8623
  end
8338
8624
 
8625
+ # Grounding information for a visual segment.
8626
+ class GoogleCloudDiscoveryengineV1alphaAssistantGroundedContentTextGroundingMetadataVisualSegment
8627
+ include Google::Apis::Core::Hashable
8628
+
8629
+ # The content id of the visual segment. In order to display the citation of the
8630
+ # visual element, this content_id needs to match with the `grounded_content.
8631
+ # content_metadata.content_id` field.
8632
+ # Corresponds to the JSON property `contentId`
8633
+ # @return [String]
8634
+ attr_accessor :content_id
8635
+
8636
+ # References for the visual segment.
8637
+ # Corresponds to the JSON property `referenceIndices`
8638
+ # @return [Array<Fixnum>]
8639
+ attr_accessor :reference_indices
8640
+
8641
+ def initialize(**args)
8642
+ update!(**args)
8643
+ end
8644
+
8645
+ # Update properties of this object
8646
+ def update!(**args)
8647
+ @content_id = args[:content_id] if args.key?(:content_id)
8648
+ @reference_indices = args[:reference_indices] if args.key?(:reference_indices)
8649
+ end
8650
+ end
8651
+
8339
8652
  # The configuration for the BAP connector.
8340
8653
  class GoogleCloudDiscoveryengineV1alphaBapConfig
8341
8654
  include Google::Apis::Core::Hashable
@@ -8350,6 +8663,18 @@ module Google
8350
8663
  # @return [Array<String>]
8351
8664
  attr_accessor :supported_connector_modes
8352
8665
 
8666
+ # Customer-facing view of the admin-curated toolspec for a BAP connection. Holds
8667
+ # the (simplified) per-tool definitions surfaced to and editable by the admin in
8668
+ # the Discovery Engine UI. Mirrors the shape of the backend `google.cloud.
8669
+ # connectorexecution.v1.ToolspecOverride` message, but is intentionally kept as
8670
+ # a separate public type so the Discovery Engine API surface can evolve
8671
+ # independently of the fed-API surface (AIP-215). Handlers convert between the
8672
+ # two via helpers in //cloud/ml/discoveryengine/external_service/v1main/
8673
+ # data_connector_service/lib:bap_custom_tool_util.
8674
+ # Corresponds to the JSON property `toolspecOverride`
8675
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaBapConfigToolspecOverride]
8676
+ attr_accessor :toolspec_override
8677
+
8353
8678
  def initialize(**args)
8354
8679
  update!(**args)
8355
8680
  end
@@ -8358,6 +8683,45 @@ module Google
8358
8683
  def update!(**args)
8359
8684
  @enabled_actions = args[:enabled_actions] if args.key?(:enabled_actions)
8360
8685
  @supported_connector_modes = args[:supported_connector_modes] if args.key?(:supported_connector_modes)
8686
+ @toolspec_override = args[:toolspec_override] if args.key?(:toolspec_override)
8687
+ end
8688
+ end
8689
+
8690
+ # Customer-facing view of the admin-curated toolspec for a BAP connection. Holds
8691
+ # the (simplified) per-tool definitions surfaced to and editable by the admin in
8692
+ # the Discovery Engine UI. Mirrors the shape of the backend `google.cloud.
8693
+ # connectorexecution.v1.ToolspecOverride` message, but is intentionally kept as
8694
+ # a separate public type so the Discovery Engine API surface can evolve
8695
+ # independently of the fed-API surface (AIP-215). Handlers convert between the
8696
+ # two via helpers in //cloud/ml/discoveryengine/external_service/v1main/
8697
+ # data_connector_service/lib:bap_custom_tool_util.
8698
+ class GoogleCloudDiscoveryengineV1alphaBapConfigToolspecOverride
8699
+ include Google::Apis::Core::Hashable
8700
+
8701
+ # Required. Base toolspec version against which `tools` were authored. On Update,
8702
+ # MUST match the server's current stable toolspec version for the connection;
8703
+ # mismatch is rejected with a user-facing error directing the admin to re-
8704
+ # download the latest tools first.
8705
+ # Corresponds to the JSON property `baseVersion`
8706
+ # @return [String]
8707
+ attr_accessor :base_version
8708
+
8709
+ # Required. Tool definitions (one Struct per tool) that the admin has customised
8710
+ # on top of the base toolspec returned by the fed API. REQUIRED because it is
8711
+ # the only user-editable field in the modify API; the request must carry at
8712
+ # least one tool.
8713
+ # Corresponds to the JSON property `tools`
8714
+ # @return [Array<Hash<String,Object>>]
8715
+ attr_accessor :tools
8716
+
8717
+ def initialize(**args)
8718
+ update!(**args)
8719
+ end
8720
+
8721
+ # Update properties of this object
8722
+ def update!(**args)
8723
+ @base_version = args[:base_version] if args.key?(:base_version)
8724
+ @tools = args[:tools] if args.key?(:tools)
8361
8725
  end
8362
8726
  end
8363
8727
 
@@ -8548,6 +8912,25 @@ module Google
8548
8912
  end
8549
8913
  end
8550
8914
 
8915
+ # The configuration for the CLI execution based connectors.
8916
+ class GoogleCloudDiscoveryengineV1alphaCliConfig
8917
+ include Google::Apis::Core::Hashable
8918
+
8919
+ # Optional. The actions enabled on the associated CLI connection.
8920
+ # Corresponds to the JSON property `enabledActions`
8921
+ # @return [Array<String>]
8922
+ attr_accessor :enabled_actions
8923
+
8924
+ def initialize(**args)
8925
+ update!(**args)
8926
+ end
8927
+
8928
+ # Update properties of this object
8929
+ def update!(**args)
8930
+ @enabled_actions = args[:enabled_actions] if args.key?(:enabled_actions)
8931
+ end
8932
+ end
8933
+
8551
8934
  # Configurations used to enable CMEK data encryption with Cloud KMS keys.
8552
8935
  class GoogleCloudDiscoveryengineV1alphaCmekConfig
8553
8936
  include Google::Apis::Core::Hashable
@@ -9539,12 +9922,23 @@ module Google
9539
9922
  # @return [Array<String>]
9540
9923
  attr_accessor :blocking_reasons
9541
9924
 
9925
+ # The configuration for the CLI execution based connectors.
9926
+ # Corresponds to the JSON property `cliConfig`
9927
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaCliConfig]
9928
+ attr_accessor :cli_config
9929
+
9542
9930
  # Optional. The modes enabled for this connector. Default state is
9543
9931
  # CONNECTOR_MODE_UNSPECIFIED.
9544
9932
  # Corresponds to the JSON property `connectorModes`
9545
9933
  # @return [Array<String>]
9546
9934
  attr_accessor :connector_modes
9547
9935
 
9936
+ # Optional. If set, this value instead of `data_source` is used to fetch the
9937
+ # corresponding connector source.
9938
+ # Corresponds to the JSON property `connectorSourceId`
9939
+ # @return [String]
9940
+ attr_accessor :connector_source_id
9941
+
9548
9942
  # Output only. The type of connector. Each source can only map to one type. For
9549
9943
  # example, salesforce, confluence and jira have THIRD_PARTY connector type. It
9550
9944
  # is not mutable once set by system.
@@ -9590,11 +9984,14 @@ module Google
9590
9984
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaDestinationConfig>]
9591
9985
  attr_accessor :destination_configs
9592
9986
 
9987
+ # Output only. The dynamic tools fetched for this connector.
9988
+ # Corresponds to the JSON property `dynamicTools`
9989
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaDynamicTool>]
9990
+ attr_accessor :dynamic_tools
9991
+
9593
9992
  # Output only. The list of FQDNs of the data connector can egress to. This
9594
9993
  # includes both FQDN derived from the customer provided instance URL and default
9595
- # per connector type FQDNs. Note: This field is derived from both the
9596
- # DataConnector.params, and connector source spec. It should only be used for
9597
- # CAIS and Org Policy evaluation purposes.
9994
+ # per connector type FQDNs.
9598
9995
  # Corresponds to the JSON property `egressFqdns`
9599
9996
  # @return [Array<String>]
9600
9997
  attr_accessor :egress_fqdns
@@ -9688,7 +10085,7 @@ module Google
9688
10085
  # @return [String]
9689
10086
  attr_accessor :latest_pause_time
9690
10087
 
9691
- # Output only. The full resource name of the Data Connector. Format: `projects/*/
10088
+ # Identifier. The full resource name of the Data Connector. Format: `projects/*/
9692
10089
  # locations/*/collections/*/dataConnector`.
9693
10090
  # Corresponds to the JSON property `name`
9694
10091
  # @return [String]
@@ -9778,8 +10175,7 @@ module Google
9778
10175
  # @return [String]
9779
10176
  attr_accessor :update_time
9780
10177
 
9781
- # Output only. Whether the connector is created with VPC-SC enabled. This is
9782
- # only used for CuOP evaluation purpose.
10178
+ # Output only. Whether the connector is created with VPC-SC enabled.
9783
10179
  # Corresponds to the JSON property `vpcscEnabled`
9784
10180
  # @return [Boolean]
9785
10181
  attr_accessor :vpcsc_enabled
@@ -9798,13 +10194,16 @@ module Google
9798
10194
  @auto_run_disabled = args[:auto_run_disabled] if args.key?(:auto_run_disabled)
9799
10195
  @bap_config = args[:bap_config] if args.key?(:bap_config)
9800
10196
  @blocking_reasons = args[:blocking_reasons] if args.key?(:blocking_reasons)
10197
+ @cli_config = args[:cli_config] if args.key?(:cli_config)
9801
10198
  @connector_modes = args[:connector_modes] if args.key?(:connector_modes)
10199
+ @connector_source_id = args[:connector_source_id] if args.key?(:connector_source_id)
9802
10200
  @connector_type = args[:connector_type] if args.key?(:connector_type)
9803
10201
  @create_eua_saas = args[:create_eua_saas] if args.key?(:create_eua_saas)
9804
10202
  @create_time = args[:create_time] if args.key?(:create_time)
9805
10203
  @data_protection_policy = args[:data_protection_policy] if args.key?(:data_protection_policy)
9806
10204
  @data_source = args[:data_source] if args.key?(:data_source)
9807
10205
  @destination_configs = args[:destination_configs] if args.key?(:destination_configs)
10206
+ @dynamic_tools = args[:dynamic_tools] if args.key?(:dynamic_tools)
9808
10207
  @egress_fqdns = args[:egress_fqdns] if args.key?(:egress_fqdns)
9809
10208
  @end_user_config = args[:end_user_config] if args.key?(:end_user_config)
9810
10209
  @entities = args[:entities] if args.key?(:entities)
@@ -10132,6 +10531,11 @@ module Google
10132
10531
  # @return [String]
10133
10532
  attr_accessor :create_time
10134
10533
 
10534
+ # Contains the data protection policy config for a DataStore or a connector.
10535
+ # Corresponds to the JSON property `dataProtectionPolicy`
10536
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaDataProtectionPolicy]
10537
+ attr_accessor :data_protection_policy
10538
+
10135
10539
  # Output only. The id of the default Schema associated to this data store.
10136
10540
  # Corresponds to the JSON property `defaultSchemaId`
10137
10541
  # @return [String]
@@ -10248,6 +10652,7 @@ module Google
10248
10652
  @configurable_billing_approach_update_time = args[:configurable_billing_approach_update_time] if args.key?(:configurable_billing_approach_update_time)
10249
10653
  @content_config = args[:content_config] if args.key?(:content_config)
10250
10654
  @create_time = args[:create_time] if args.key?(:create_time)
10655
+ @data_protection_policy = args[:data_protection_policy] if args.key?(:data_protection_policy)
10251
10656
  @default_schema_id = args[:default_schema_id] if args.key?(:default_schema_id)
10252
10657
  @display_name = args[:display_name] if args.key?(:display_name)
10253
10658
  @document_processing_config = args[:document_processing_config] if args.key?(:document_processing_config)
@@ -11225,6 +11630,44 @@ module Google
11225
11630
  end
11226
11631
  end
11227
11632
 
11633
+ # Configuration for dynamic tools.
11634
+ class GoogleCloudDiscoveryengineV1alphaDynamicTool
11635
+ include Google::Apis::Core::Hashable
11636
+
11637
+ # Optional. The description of the tool.
11638
+ # Corresponds to the JSON property `description`
11639
+ # @return [String]
11640
+ attr_accessor :description
11641
+
11642
+ # Optional. The display name of the tool.
11643
+ # Corresponds to the JSON property `displayName`
11644
+ # @return [String]
11645
+ attr_accessor :display_name
11646
+
11647
+ # Optional. Whether the tool is enabled.
11648
+ # Corresponds to the JSON property `enabled`
11649
+ # @return [Boolean]
11650
+ attr_accessor :enabled
11651
+ alias_method :enabled?, :enabled
11652
+
11653
+ # Required. The name of the tool.
11654
+ # Corresponds to the JSON property `name`
11655
+ # @return [String]
11656
+ attr_accessor :name
11657
+
11658
+ def initialize(**args)
11659
+ update!(**args)
11660
+ end
11661
+
11662
+ # Update properties of this object
11663
+ def update!(**args)
11664
+ @description = args[:description] if args.key?(:description)
11665
+ @display_name = args[:display_name] if args.key?(:display_name)
11666
+ @enabled = args[:enabled] if args.key?(:enabled)
11667
+ @name = args[:name] if args.key?(:name)
11668
+ end
11669
+ end
11670
+
11228
11671
  # Metadata related to the progress of the SiteSearchEngineService.
11229
11672
  # EnableAdvancedSiteSearch operation. This will be returned by the google.
11230
11673
  # longrunning.Operation.metadata field.
@@ -11284,6 +11727,13 @@ module Google
11284
11727
  # @return [String]
11285
11728
  attr_accessor :app_type
11286
11729
 
11730
+ # Optional. The Agent registry containing the agents, MCP servers and tools
11731
+ # associated with this engine. Field is required if the engine has an Agent
11732
+ # Gateway setting.
11733
+ # Corresponds to the JSON property `associatedAgentRegistry`
11734
+ # @return [String]
11735
+ attr_accessor :associated_agent_registry
11736
+
11287
11737
  # Configurations for a Chat Engine.
11288
11738
  # Corresponds to the JSON property `chatEngineConfig`
11289
11739
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaEngineChatEngineConfig]
@@ -11349,10 +11799,13 @@ module Google
11349
11799
  # settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-
11350
11800
  # gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-
11351
11801
  # org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `
11352
- # personalization-memory` * `personalization-suggested-highlights` * `disable-
11353
- # agent-sharing` * `disable-image-generation` * `disable-video-generation` * `
11354
- # disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-
11355
- # upload` * `disable-welcome-emails`
11802
+ # personalization-memory` * `personalization-suggested-highlights` * `mobile-app-
11803
+ # access` * `disable-agent-sharing` * `disable-image-generation` * `disable-
11804
+ # video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `
11805
+ # disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `
11806
+ # canvas-workspace` * `disable-skills` * `enable-end-user-sharing-with-groups` *
11807
+ # `single-agent-orchestration` * `multi-agent-orchestration` * `cross-product-
11808
+ # intelligence` * `deep-research`
11356
11809
  # Corresponds to the JSON property `features`
11357
11810
  # @return [Hash<String,String>]
11358
11811
  attr_accessor :features
@@ -11442,6 +11895,7 @@ module Google
11442
11895
  def update!(**args)
11443
11896
  @agent_gateway_setting = args[:agent_gateway_setting] if args.key?(:agent_gateway_setting)
11444
11897
  @app_type = args[:app_type] if args.key?(:app_type)
11898
+ @associated_agent_registry = args[:associated_agent_registry] if args.key?(:associated_agent_registry)
11445
11899
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
11446
11900
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
11447
11901
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
@@ -12270,6 +12724,8 @@ module Google
12270
12724
  # SEARCHABLE_ENABLED`. If `searchable_option` is `SEARCHABLE_DISABLED`, this
12271
12725
  # field is ignored. If `searchable_option` is `SEARCHABLE_ENABLED` and this is `
12272
12726
  # SEARCHABLE_FIELD_IMPORTANCE_UNSPECIFIED`, it behaves as `DEFAULT_IMPORTANCE`.
12727
+ # For more information, see [Weight searchable fields](https://cloud.google.com/
12728
+ # generative-ai-app-builder/docs/configure-field-settings#weight-search).
12273
12729
  # Corresponds to the JSON property `searchableFieldImportance`
12274
12730
  # @return [String]
12275
12731
  attr_accessor :searchable_field_importance
@@ -12848,8 +13304,8 @@ module Google
12848
13304
  # @return [Fixnum]
12849
13305
  attr_accessor :success_count
12850
13306
 
12851
- # Operation last update time. If the operation is done, this is also the finish
12852
- # time.
13307
+ # Output only. Operation last update time. If the operation is done, this is
13308
+ # also the finish time.
12853
13309
  # Corresponds to the JSON property `updateTime`
12854
13310
  # @return [String]
12855
13311
  attr_accessor :update_time
@@ -13125,9 +13581,9 @@ module Google
13125
13581
 
13126
13582
  # A comma-separated list of fields to order by, sorted in ascending order. Use "
13127
13583
  # desc" after a field name for descending. Supported fields: * `update_time` * `
13128
- # create_time` * `session_name` * `is_pinned` Example: * `update_time desc` * `
13129
- # create_time` * `is_pinned desc,update_time desc`: list sessions by is_pinned
13130
- # first, then by update_time.
13584
+ # create_time` * `session_name` * `is_pinned` * `display_name` Example: * `
13585
+ # update_time desc` * `create_time` * `is_pinned desc,update_time desc`: list
13586
+ # sessions by is_pinned first, then by update_time.
13131
13587
  # Corresponds to the JSON property `orderBy`
13132
13588
  # @return [String]
13133
13589
  attr_accessor :order_by
@@ -13363,7 +13819,9 @@ module Google
13363
13819
  # and reflect the thresholds actively being used for billing purposes at the
13364
13820
  # time of the GetProject call. This includes the start_time of the subscription
13365
13821
  # and may differ from the values in `customer_provided_config` due to billing
13366
- # rules (e.g., scale-downs taking effect only at the start of a new month).
13822
+ # rules (e.g., scale-downs taking effect only at the start of a new month). We
13823
+ # also include the update type to indicate the type of update performed on the
13824
+ # configurable billing configuration in the UpdateProject operation.
13367
13825
  # Corresponds to the JSON property `configurableBillingStatus`
13368
13826
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus]
13369
13827
  attr_accessor :configurable_billing_status
@@ -13416,10 +13874,17 @@ module Google
13416
13874
  # and reflect the thresholds actively being used for billing purposes at the
13417
13875
  # time of the GetProject call. This includes the start_time of the subscription
13418
13876
  # and may differ from the values in `customer_provided_config` due to billing
13419
- # rules (e.g., scale-downs taking effect only at the start of a new month).
13877
+ # rules (e.g., scale-downs taking effect only at the start of a new month). We
13878
+ # also include the update type to indicate the type of update performed on the
13879
+ # configurable billing configuration in the UpdateProject operation.
13420
13880
  class GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus
13421
13881
  include Google::Apis::Core::Hashable
13422
13882
 
13883
+ # Output only. Per-model Agent Search TPM subscription status.
13884
+ # Corresponds to the JSON property `agentSearchTokenSubscriptionStatuses`
13885
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatusAgentSearchTokenSubscriptionStatus>]
13886
+ attr_accessor :agent_search_token_subscription_statuses
13887
+
13423
13888
  # Optional. The currently effective Indexing Core threshold. This is the
13424
13889
  # threshold against which Indexing Core usage is compared for overage
13425
13890
  # calculations.
@@ -13461,18 +13926,114 @@ module Google
13461
13926
  # @return [String]
13462
13927
  attr_accessor :terminate_time
13463
13928
 
13929
+ # Output only. The type of update performed in this operation. This field is
13930
+ # populated in the response of UpdateProject.
13931
+ # Corresponds to the JSON property `updateType`
13932
+ # @return [String]
13933
+ attr_accessor :update_type
13934
+
13464
13935
  def initialize(**args)
13465
13936
  update!(**args)
13466
13937
  end
13467
13938
 
13468
13939
  # Update properties of this object
13469
13940
  def update!(**args)
13941
+ @agent_search_token_subscription_statuses = args[:agent_search_token_subscription_statuses] if args.key?(:agent_search_token_subscription_statuses)
13470
13942
  @effective_indexing_core_threshold = args[:effective_indexing_core_threshold] if args.key?(:effective_indexing_core_threshold)
13471
13943
  @effective_search_qpm_threshold = args[:effective_search_qpm_threshold] if args.key?(:effective_search_qpm_threshold)
13472
13944
  @indexing_core_threshold_next_update_time = args[:indexing_core_threshold_next_update_time] if args.key?(:indexing_core_threshold_next_update_time)
13473
13945
  @search_qpm_threshold_next_update_time = args[:search_qpm_threshold_next_update_time] if args.key?(:search_qpm_threshold_next_update_time)
13474
13946
  @start_time = args[:start_time] if args.key?(:start_time)
13475
13947
  @terminate_time = args[:terminate_time] if args.key?(:terminate_time)
13948
+ @update_type = args[:update_type] if args.key?(:update_type)
13949
+ end
13950
+ end
13951
+
13952
+ # Per-model Agent Search TPM subscription status. One entry per active `
13953
+ # core_subscription.agent_search_token_subscriptions[*]` entry in the customer-
13954
+ # provided config; populated by UpdateProject and GetProject. The lifecycle
13955
+ # scalars on this message (`start_time`, `terminate_time`, `update_type`, `
13956
+ # tpm_threshold_next_update_time`) are per (project, model_version) — siblings
13957
+ # of the whole-relationship `start_time` / `terminate_time` / `update_type` on
13958
+ # the enclosing ConfigurableBillingStatus, but scoped to this specific Agent
13959
+ # Search TPM subscription instead of to the overall customer-configurable-
13960
+ # pricing relationship. This per-instance granularity is intentional: the
13961
+ # underlying SubV3 storage is per-(project, model_version), so each model has
13962
+ # its own activation, termination, and deferred-update clock; surfacing that on
13963
+ # the response gives customers the granularity they need to manage per-model
13964
+ # commitments independently. QPM / IndexingCore differ — their storage is one
13965
+ # row per (project, location), so their lifecycle is represented only by the
13966
+ # whole- relationship scalars on ConfigurableBillingStatus.
13967
+ class GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatusAgentSearchTokenSubscriptionStatus
13968
+ include Google::Apis::Core::Hashable
13969
+
13970
+ # Output only. The currently effective TPM threshold. Reflects scale-up
13971
+ # immediately and scale-down at the next billing cycle, matching `
13972
+ # effective_search_qpm_threshold` semantics.
13973
+ # Corresponds to the JSON property `effectiveTpmThreshold`
13974
+ # @return [Fixnum]
13975
+ attr_accessor :effective_tpm_threshold
13976
+
13977
+ # Output only. The Gemini model version this status corresponds to. Matches
13978
+ # CoreSubscription.AgentSearchTokenSubscription.model_version (a stable Gemini
13979
+ # model version from the Gemini Enterprise Agent Platform model-versions
13980
+ # registry; see https://docs.cloud.google.com/gemini-enterprise-agent-platform/
13981
+ # models/model-versions#gemini-models).
13982
+ # Corresponds to the JSON property `modelVersion`
13983
+ # @return [String]
13984
+ attr_accessor :model_version
13985
+
13986
+ # Output only. When this (project, model_version) Agent Search TPM subscription
13987
+ # was first activated. Set once on first activation of this model version and
13988
+ # never moved by subsequent threshold updates; on termination + re-activation a
13989
+ # new value is recorded. Does NOT move the whole-relationship `start_time` on
13990
+ # the enclosing ConfigurableBillingStatus, which continues to represent the
13991
+ # first activation of the overall customer-configurable-pricing relationship.
13992
+ # Corresponds to the JSON property `startTime`
13993
+ # @return [String]
13994
+ attr_accessor :start_time
13995
+
13996
+ # Output only. If set, the scheduled effective time at which this (project,
13997
+ # model_version) Agent Search TPM subscription will terminate. Populated when
13998
+ # the customer removes this entry from `core_subscription.
13999
+ # agent_search_token_subscriptions[*]`. Does NOT move the whole-relationship `
14000
+ # terminate_time` on the enclosing ConfigurableBillingStatus, which is populated
14001
+ # only when the entire customer-configurable-pricing relationship is being torn
14002
+ # down.
14003
+ # Corresponds to the JSON property `terminateTime`
14004
+ # @return [String]
14005
+ attr_accessor :terminate_time
14006
+
14007
+ # Output only. The earliest next update time for the TPM subscription threshold
14008
+ # for this (project, model_version). Populated only after a successful update.
14009
+ # Corresponds to the JSON property `tpmThresholdNextUpdateTime`
14010
+ # @return [String]
14011
+ attr_accessor :tpm_threshold_next_update_time
14012
+
14013
+ # Output only. The type of the most recent update to this (project,
14014
+ # model_version) subscription, as performed by the most recent UpdateProject
14015
+ # call. `UPDATE_TYPE_UNSPECIFIED` indicates this model_version was not touched
14016
+ # by the most recent UpdateProject (its `effective_tpm_threshold` reflects an
14017
+ # earlier update). The whole-relationship `update_type` on the enclosing
14018
+ # ConfigurableBillingStatus continues to summarize the direction of the most
14019
+ # recent update across all surfaces in the project (QPM, IndexingCore, and Agent
14020
+ # Search TPM together).
14021
+ # Corresponds to the JSON property `updateType`
14022
+ # @return [String]
14023
+ attr_accessor :update_type
14024
+
14025
+ def initialize(**args)
14026
+ update!(**args)
14027
+ end
14028
+
14029
+ # Update properties of this object
14030
+ def update!(**args)
14031
+ @effective_tpm_threshold = args[:effective_tpm_threshold] if args.key?(:effective_tpm_threshold)
14032
+ @model_version = args[:model_version] if args.key?(:model_version)
14033
+ @start_time = args[:start_time] if args.key?(:start_time)
14034
+ @terminate_time = args[:terminate_time] if args.key?(:terminate_time)
14035
+ @tpm_threshold_next_update_time = args[:tpm_threshold_next_update_time] if args.key?(:tpm_threshold_next_update_time)
14036
+ @update_type = args[:update_type] if args.key?(:update_type)
13476
14037
  end
13477
14038
  end
13478
14039
 
@@ -13992,6 +14553,11 @@ module Google
13992
14553
  class GoogleCloudDiscoveryengineV1alphaQuery
13993
14554
  include Google::Apis::Core::Hashable
13994
14555
 
14556
+ # Output only. The time at which the server accepted this query.
14557
+ # Corresponds to the JSON property `createTime`
14558
+ # @return [String]
14559
+ attr_accessor :create_time
14560
+
13995
14561
  # Query content parts.
13996
14562
  # Corresponds to the JSON property `parts`
13997
14563
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaQueryPart>]
@@ -14013,6 +14579,7 @@ module Google
14013
14579
 
14014
14580
  # Update properties of this object
14015
14581
  def update!(**args)
14582
+ @create_time = args[:create_time] if args.key?(:create_time)
14016
14583
  @parts = args[:parts] if args.key?(:parts)
14017
14584
  @query_id = args[:query_id] if args.key?(:query_id)
14018
14585
  @text = args[:text] if args.key?(:text)
@@ -14738,6 +15305,11 @@ module Google
14738
15305
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaCustomFineTuningSpec]
14739
15306
  attr_accessor :custom_fine_tuning_spec
14740
15307
 
15308
+ # Configuration parameters for the Custom Ranking feature.
15309
+ # Corresponds to the JSON property `customRankingParams`
15310
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams]
15311
+ attr_accessor :custom_ranking_params
15312
+
14741
15313
  # Specifications that define the specific DataStores to be searched, along with
14742
15314
  # configurations for those data stores. This is only considered for Engines with
14743
15315
  # multiple data stores. For engines with a single data store, the specs directly
@@ -14757,6 +15329,14 @@ module Google
14757
15329
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaSearchRequestEmbeddingSpec]
14758
15330
  attr_accessor :embedding_spec
14759
15331
 
15332
+ # Optional. The entity for customers that may run multiple different entities,
15333
+ # domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "
15334
+ # google.com", "youtube.com", etc. If this is set, it should be exactly matched
15335
+ # with UserEvent.entity to get search results boosted by entity.
15336
+ # Corresponds to the JSON property `entity`
15337
+ # @return [String]
15338
+ attr_accessor :entity
15339
+
14760
15340
  # Facet specifications for faceted search. If empty, no facets are returned. A
14761
15341
  # maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is
14762
15342
  # returned.
@@ -14940,7 +15520,14 @@ module Google
14940
15520
  # since the document was last updated, a floating-point number (e.g., 0.25 means
14941
15521
  # 15 minutes). * `topicality_rank`: topicality adjustment as a rank. Uses
14942
15522
  # proprietary Google model to determine the keyword-based overlap between the
14943
- # query and the document. * `base_rank`: the default rank of the result
15523
+ # query and the document. * `base_rank`: the default rank of the result * `
15524
+ # media_actor_match`: whether the media actor matches the query * `
15525
+ # media_director_match`: whether the media director matches the query * `
15526
+ # media_genre_match`: whether the media genre matches the query * `
15527
+ # media_language_match`: whether the media language matches the query * `
15528
+ # media_title_match`: whether the media title matches the query * `
15529
+ # media_prefix_similarity_rank`: prefix similarity rank for media results * `
15530
+ # media_semantic_similarity_rank`: semantic similarity rank for media results
14944
15531
  # Corresponds to the JSON property `rankingExpression`
14945
15532
  # @return [String]
14946
15533
  attr_accessor :ranking_expression
@@ -15083,9 +15670,11 @@ module Google
15083
15670
  @content_search_spec = args[:content_search_spec] if args.key?(:content_search_spec)
15084
15671
  @crowding_specs = args[:crowding_specs] if args.key?(:crowding_specs)
15085
15672
  @custom_fine_tuning_spec = args[:custom_fine_tuning_spec] if args.key?(:custom_fine_tuning_spec)
15673
+ @custom_ranking_params = args[:custom_ranking_params] if args.key?(:custom_ranking_params)
15086
15674
  @data_store_specs = args[:data_store_specs] if args.key?(:data_store_specs)
15087
15675
  @display_spec = args[:display_spec] if args.key?(:display_spec)
15088
15676
  @embedding_spec = args[:embedding_spec] if args.key?(:embedding_spec)
15677
+ @entity = args[:entity] if args.key?(:entity)
15089
15678
  @facet_specs = args[:facet_specs] if args.key?(:facet_specs)
15090
15679
  @filter = args[:filter] if args.key?(:filter)
15091
15680
  @image_query = args[:image_query] if args.key?(:image_query)
@@ -15676,6 +16265,27 @@ module Google
15676
16265
  end
15677
16266
  end
15678
16267
 
16268
+ # Configuration parameters for the Custom Ranking feature.
16269
+ class GoogleCloudDiscoveryengineV1alphaSearchRequestCustomRankingParams
16270
+ include Google::Apis::Core::Hashable
16271
+
16272
+ # Optional. A list of ranking expressions (see `ranking_expression` for the
16273
+ # syntax documentation) to evaluate. The evaluation results will be returned in `
16274
+ # SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.
16275
+ # Corresponds to the JSON property `expressionsToPrecompute`
16276
+ # @return [Array<String>]
16277
+ attr_accessor :expressions_to_precompute
16278
+
16279
+ def initialize(**args)
16280
+ update!(**args)
16281
+ end
16282
+
16283
+ # Update properties of this object
16284
+ def update!(**args)
16285
+ @expressions_to_precompute = args[:expressions_to_precompute] if args.key?(:expressions_to_precompute)
16286
+ end
16287
+ end
16288
+
15679
16289
  # A struct to define data stores to filter on in a search call and
15680
16290
  # configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error
15681
16291
  # is returned.
@@ -16000,9 +16610,7 @@ module Google
16000
16610
 
16001
16611
  # Field names used for location-based filtering, where geolocation filters are
16002
16612
  # detected in natural language search queries. Only valid when the
16003
- # FilterExtractionCondition is set to `ENABLED`. If this field is set, it
16004
- # overrides the field names set in ServingConfig.
16005
- # geo_search_query_detection_field_names.
16613
+ # FilterExtractionCondition is set to `ENABLED`.
16006
16614
  # Corresponds to the JSON property `geoSearchQueryDetectionFieldNames`
16007
16615
  # @return [Array<String>]
16008
16616
  attr_accessor :geo_search_query_detection_field_names
@@ -16291,6 +16899,13 @@ module Google
16291
16899
  # @return [String]
16292
16900
  attr_accessor :name
16293
16901
 
16902
+ # Output only. Full resource name of an in-progress AsyncAssist operation for
16903
+ # this session, e.g. `projects/*/locations/*/collections/*/engines/*/sessions/*/
16904
+ # operations/*`. Set when the operation starts and cleared when it finishes.
16905
+ # Corresponds to the JSON property `pendingAsyncAssistOperationId`
16906
+ # @return [String]
16907
+ attr_accessor :pending_async_assist_operation_id
16908
+
16294
16909
  # Output only. The time the session started.
16295
16910
  # Corresponds to the JSON property `startTime`
16296
16911
  # @return [String]
@@ -16322,6 +16937,7 @@ module Google
16322
16937
  @is_pinned = args[:is_pinned] if args.key?(:is_pinned)
16323
16938
  @labels = args[:labels] if args.key?(:labels)
16324
16939
  @name = args[:name] if args.key?(:name)
16940
+ @pending_async_assist_operation_id = args[:pending_async_assist_operation_id] if args.key?(:pending_async_assist_operation_id)
16325
16941
  @start_time = args[:start_time] if args.key?(:start_time)
16326
16942
  @state = args[:state] if args.key?(:state)
16327
16943
  @turns = args[:turns] if args.key?(:turns)
@@ -16349,6 +16965,12 @@ module Google
16349
16965
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaAssistAnswer]
16350
16966
  attr_accessor :detailed_assist_answer
16351
16967
 
16968
+ # Optional. Indicates whether this turn is a live turn.
16969
+ # Corresponds to the JSON property `live`
16970
+ # @return [Boolean]
16971
+ attr_accessor :live
16972
+ alias_method :live?, :live
16973
+
16352
16974
  # Defines a user inputed query.
16353
16975
  # Corresponds to the JSON property `query`
16354
16976
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaQuery]
@@ -16370,6 +16992,7 @@ module Google
16370
16992
  @answer = args[:answer] if args.key?(:answer)
16371
16993
  @detailed_answer = args[:detailed_answer] if args.key?(:detailed_answer)
16372
16994
  @detailed_assist_answer = args[:detailed_assist_answer] if args.key?(:detailed_assist_answer)
16995
+ @live = args[:live] if args.key?(:live)
16373
16996
  @query = args[:query] if args.key?(:query)
16374
16997
  @query_config = args[:query_config] if args.key?(:query_config)
16375
16998
  end
@@ -16978,6 +17601,12 @@ module Google
16978
17601
  class GoogleCloudDiscoveryengineV1alphaUserInfo
16979
17602
  include Google::Apis::Core::Hashable
16980
17603
 
17604
+ # Precise location info with multiple representation options. Currently only
17605
+ # latitude and longitude point is supported.
17606
+ # Corresponds to the JSON property `preciseLocation`
17607
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation]
17608
+ attr_accessor :precise_location
17609
+
16981
17610
  # Optional. IANA time zone, e.g. Europe/Budapest.
16982
17611
  # Corresponds to the JSON property `timeZone`
16983
17612
  # @return [String]
@@ -17011,12 +17640,43 @@ module Google
17011
17640
 
17012
17641
  # Update properties of this object
17013
17642
  def update!(**args)
17643
+ @precise_location = args[:precise_location] if args.key?(:precise_location)
17014
17644
  @time_zone = args[:time_zone] if args.key?(:time_zone)
17015
17645
  @user_agent = args[:user_agent] if args.key?(:user_agent)
17016
17646
  @user_id = args[:user_id] if args.key?(:user_id)
17017
17647
  end
17018
17648
  end
17019
17649
 
17650
+ # Precise location info with multiple representation options. Currently only
17651
+ # latitude and longitude point is supported.
17652
+ class GoogleCloudDiscoveryengineV1alphaUserInfoPreciseLocation
17653
+ include Google::Apis::Core::Hashable
17654
+
17655
+ # Optional. Location represented by a natural language address. Will later be
17656
+ # geocoded and converted to either a point or a polygon.
17657
+ # Corresponds to the JSON property `address`
17658
+ # @return [String]
17659
+ attr_accessor :address
17660
+
17661
+ # An object that represents a latitude/longitude pair. This is expressed as a
17662
+ # pair of doubles to represent degrees latitude and degrees longitude. Unless
17663
+ # specified otherwise, this object must conform to the WGS84 standard. Values
17664
+ # must be within normalized ranges.
17665
+ # Corresponds to the JSON property `point`
17666
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleTypeLatLng]
17667
+ attr_accessor :point
17668
+
17669
+ def initialize(**args)
17670
+ update!(**args)
17671
+ end
17672
+
17673
+ # Update properties of this object
17674
+ def update!(**args)
17675
+ @address = args[:address] if args.key?(:address)
17676
+ @point = args[:point] if args.key?(:point)
17677
+ end
17678
+ end
17679
+
17020
17680
  # User License information assigned by the admin.
17021
17681
  class GoogleCloudDiscoveryengineV1alphaUserLicense
17022
17682
  include Google::Apis::Core::Hashable
@@ -17084,7 +17744,9 @@ module Google
17084
17744
  class GoogleCloudDiscoveryengineV1alphaWorkspaceConfig
17085
17745
  include Google::Apis::Core::Hashable
17086
17746
 
17087
- # Obfuscated Dasher customer ID.
17747
+ # Output only. Obfuscated Dasher customer ID. Derived by the server from the
17748
+ # project's GCP organization at data store creation time; any value supplied in
17749
+ # the request payload is ignored.
17088
17750
  # Corresponds to the JSON property `dasherCustomerId`
17089
17751
  # @return [String]
17090
17752
  attr_accessor :dasher_customer_id
@@ -17694,7 +18356,7 @@ module Google
17694
18356
  # @return [String]
17695
18357
  attr_accessor :answer_text
17696
18358
 
17697
- # List of blob attachments in the answer.
18359
+ # Output only. List of blob attachments in the answer.
17698
18360
  # Corresponds to the JSON property `blobAttachments`
17699
18361
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaAnswerBlobAttachment>]
17700
18362
  attr_accessor :blob_attachments
@@ -19000,11 +19662,6 @@ module Google
19000
19662
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaAnswerReferenceChunkInfo]
19001
19663
  attr_accessor :chunk_info
19002
19664
 
19003
- # Output only. The search queries that produced this reference.
19004
- # Corresponds to the JSON property `queries`
19005
- # @return [Array<String>]
19006
- attr_accessor :queries
19007
-
19008
19665
  # Structured search information.
19009
19666
  # Corresponds to the JSON property `structuredDocumentInfo`
19010
19667
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaAnswerReferenceStructuredDocumentInfo]
@@ -19022,7 +19679,6 @@ module Google
19022
19679
  # Update properties of this object
19023
19680
  def update!(**args)
19024
19681
  @chunk_info = args[:chunk_info] if args.key?(:chunk_info)
19025
- @queries = args[:queries] if args.key?(:queries)
19026
19682
  @structured_document_info = args[:structured_document_info] if args.key?(:structured_document_info)
19027
19683
  @unstructured_document_info = args[:unstructured_document_info] if args.key?(:unstructured_document_info)
19028
19684
  end
@@ -19604,6 +20260,11 @@ module Google
19604
20260
  class GoogleCloudDiscoveryengineV1betaAssistAnswerReply
19605
20261
  include Google::Apis::Core::Hashable
19606
20262
 
20263
+ # The time when the reply was created.
20264
+ # Corresponds to the JSON property `createTime`
20265
+ # @return [String]
20266
+ attr_accessor :create_time
20267
+
19607
20268
  # A piece of content and possibly its grounding information. Not all content
19608
20269
  # needs grounding. Phrases like "Of course, I will gladly search it for you." do
19609
20270
  # not need grounding.
@@ -19617,6 +20278,7 @@ module Google
19617
20278
 
19618
20279
  # Update properties of this object
19619
20280
  def update!(**args)
20281
+ @create_time = args[:create_time] if args.key?(:create_time)
19620
20282
  @grounded_content = args[:grounded_content] if args.key?(:grounded_content)
19621
20283
  end
19622
20284
  end
@@ -19652,6 +20314,11 @@ module Google
19652
20314
  class GoogleCloudDiscoveryengineV1betaAssistant
19653
20315
  include Google::Apis::Core::Hashable
19654
20316
 
20317
+ # Output only. Represents the time when this Assistant was created.
20318
+ # Corresponds to the JSON property `createTime`
20319
+ # @return [String]
20320
+ attr_accessor :create_time
20321
+
19655
20322
  # Customer-defined policy for the assistant.
19656
20323
  # Corresponds to the JSON property `customerPolicy`
19657
20324
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaAssistantCustomerPolicy]
@@ -19707,6 +20374,11 @@ module Google
19707
20374
  # @return [String]
19708
20375
  attr_accessor :name
19709
20376
 
20377
+ # Output only. Represents the time when this Assistant was most recently updated.
20378
+ # Corresponds to the JSON property `updateTime`
20379
+ # @return [String]
20380
+ attr_accessor :update_time
20381
+
19710
20382
  # Optional. The type of web grounding to use.
19711
20383
  # Corresponds to the JSON property `webGroundingType`
19712
20384
  # @return [String]
@@ -19718,6 +20390,7 @@ module Google
19718
20390
 
19719
20391
  # Update properties of this object
19720
20392
  def update!(**args)
20393
+ @create_time = args[:create_time] if args.key?(:create_time)
19721
20394
  @customer_policy = args[:customer_policy] if args.key?(:customer_policy)
19722
20395
  @default_web_grounding_toggle_off = args[:default_web_grounding_toggle_off] if args.key?(:default_web_grounding_toggle_off)
19723
20396
  @description = args[:description] if args.key?(:description)
@@ -19725,6 +20398,7 @@ module Google
19725
20398
  @enabled_tools = args[:enabled_tools] if args.key?(:enabled_tools)
19726
20399
  @generation_config = args[:generation_config] if args.key?(:generation_config)
19727
20400
  @name = args[:name] if args.key?(:name)
20401
+ @update_time = args[:update_time] if args.key?(:update_time)
19728
20402
  @web_grounding_type = args[:web_grounding_type] if args.key?(:web_grounding_type)
19729
20403
  end
19730
20404
  end
@@ -20086,6 +20760,11 @@ module Google
20086
20760
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataSegment>]
20087
20761
  attr_accessor :segments
20088
20762
 
20763
+ # Grounding information for parts of the visual content.
20764
+ # Corresponds to the JSON property `visualSegments`
20765
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataVisualSegment>]
20766
+ attr_accessor :visual_segments
20767
+
20089
20768
  def initialize(**args)
20090
20769
  update!(**args)
20091
20770
  end
@@ -20094,6 +20773,7 @@ module Google
20094
20773
  def update!(**args)
20095
20774
  @references = args[:references] if args.key?(:references)
20096
20775
  @segments = args[:segments] if args.key?(:segments)
20776
+ @visual_segments = args[:visual_segments] if args.key?(:visual_segments)
20097
20777
  end
20098
20778
  end
20099
20779
 
@@ -20101,6 +20781,11 @@ module Google
20101
20781
  class GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataReference
20102
20782
  include Google::Apis::Core::Hashable
20103
20783
 
20784
+ # Chunk of code snippet from the referenced document.
20785
+ # Corresponds to the JSON property `codeSnippet`
20786
+ # @return [String]
20787
+ attr_accessor :code_snippet
20788
+
20104
20789
  # Referenced text content.
20105
20790
  # Corresponds to the JSON property `content`
20106
20791
  # @return [String]
@@ -20117,6 +20802,7 @@ module Google
20117
20802
 
20118
20803
  # Update properties of this object
20119
20804
  def update!(**args)
20805
+ @code_snippet = args[:code_snippet] if args.key?(:code_snippet)
20120
20806
  @content = args[:content] if args.key?(:content)
20121
20807
  @document_metadata = args[:document_metadata] if args.key?(:document_metadata)
20122
20808
  end
@@ -20138,6 +20824,11 @@ module Google
20138
20824
  # @return [String]
20139
20825
  attr_accessor :domain
20140
20826
 
20827
+ #
20828
+ # Corresponds to the JSON property `language`
20829
+ # @return [String]
20830
+ attr_accessor :language
20831
+
20141
20832
  # The mime type of the document. https://www.iana.org/assignments/media-types/
20142
20833
  # media-types.xhtml.
20143
20834
  # Corresponds to the JSON property `mimeType`
@@ -20168,6 +20859,7 @@ module Google
20168
20859
  def update!(**args)
20169
20860
  @document = args[:document] if args.key?(:document)
20170
20861
  @domain = args[:domain] if args.key?(:domain)
20862
+ @language = args[:language] if args.key?(:language)
20171
20863
  @mime_type = args[:mime_type] if args.key?(:mime_type)
20172
20864
  @page_identifier = args[:page_identifier] if args.key?(:page_identifier)
20173
20865
  @title = args[:title] if args.key?(:title)
@@ -20220,6 +20912,33 @@ module Google
20220
20912
  end
20221
20913
  end
20222
20914
 
20915
+ # Grounding information for a visual segment.
20916
+ class GoogleCloudDiscoveryengineV1betaAssistantGroundedContentTextGroundingMetadataVisualSegment
20917
+ include Google::Apis::Core::Hashable
20918
+
20919
+ # The content id of the visual segment. In order to display the citation of the
20920
+ # visual element, this content_id needs to match with the `grounded_content.
20921
+ # content_metadata.content_id` field.
20922
+ # Corresponds to the JSON property `contentId`
20923
+ # @return [String]
20924
+ attr_accessor :content_id
20925
+
20926
+ # References for the visual segment.
20927
+ # Corresponds to the JSON property `referenceIndices`
20928
+ # @return [Array<Fixnum>]
20929
+ attr_accessor :reference_indices
20930
+
20931
+ def initialize(**args)
20932
+ update!(**args)
20933
+ end
20934
+
20935
+ # Update properties of this object
20936
+ def update!(**args)
20937
+ @content_id = args[:content_id] if args.key?(:content_id)
20938
+ @reference_indices = args[:reference_indices] if args.key?(:reference_indices)
20939
+ end
20940
+ end
20941
+
20223
20942
  # Information to identify a tool.
20224
20943
  class GoogleCloudDiscoveryengineV1betaAssistantToolInfo
20225
20944
  include Google::Apis::Core::Hashable
@@ -23199,6 +23918,64 @@ module Google
23199
23918
  end
23200
23919
  end
23201
23920
 
23921
+ # Request message for LicenseConfigService.DistributeLicenseConfig method.
23922
+ class GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigRequest
23923
+ include Google::Apis::Core::Hashable
23924
+
23925
+ # Optional. Distribute seats to this license config instead of creating a new
23926
+ # one. If not specified, a new license config will be created from the billing
23927
+ # account license config.
23928
+ # Corresponds to the JSON property `licenseConfigId`
23929
+ # @return [String]
23930
+ attr_accessor :license_config_id
23931
+
23932
+ # Required. The number of licenses to distribute.
23933
+ # Corresponds to the JSON property `licenseCount`
23934
+ # @return [Fixnum]
23935
+ attr_accessor :license_count
23936
+
23937
+ # Required. The target GCP project region to distribute the license config to.
23938
+ # Corresponds to the JSON property `location`
23939
+ # @return [String]
23940
+ attr_accessor :location
23941
+
23942
+ # Required. The target GCP project number to distribute the license config to.
23943
+ # Corresponds to the JSON property `projectNumber`
23944
+ # @return [Fixnum]
23945
+ attr_accessor :project_number
23946
+
23947
+ def initialize(**args)
23948
+ update!(**args)
23949
+ end
23950
+
23951
+ # Update properties of this object
23952
+ def update!(**args)
23953
+ @license_config_id = args[:license_config_id] if args.key?(:license_config_id)
23954
+ @license_count = args[:license_count] if args.key?(:license_count)
23955
+ @location = args[:location] if args.key?(:location)
23956
+ @project_number = args[:project_number] if args.key?(:project_number)
23957
+ end
23958
+ end
23959
+
23960
+ # Response message for LicenseConfigService.DistributeLicenseConfig method.
23961
+ class GoogleCloudDiscoveryengineV1betaDistributeLicenseConfigResponse
23962
+ include Google::Apis::Core::Hashable
23963
+
23964
+ # Information about users' licenses.
23965
+ # Corresponds to the JSON property `licenseConfig`
23966
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaLicenseConfig]
23967
+ attr_accessor :license_config
23968
+
23969
+ def initialize(**args)
23970
+ update!(**args)
23971
+ end
23972
+
23973
+ # Update properties of this object
23974
+ def update!(**args)
23975
+ @license_config = args[:license_config] if args.key?(:license_config)
23976
+ end
23977
+ end
23978
+
23202
23979
  # Document captures all raw metadata information of items to be recommended or
23203
23980
  # searched.
23204
23981
  class GoogleCloudDiscoveryengineV1betaDocument
@@ -23232,9 +24009,11 @@ module Google
23232
24009
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaDocumentIndexStatus]
23233
24010
  attr_accessor :index_status
23234
24011
 
23235
- # Output only. The last time the document was indexed. If this field is set, the
23236
- # document could be returned in search results. This field is OUTPUT_ONLY. If
23237
- # this field is not populated, it means the document has never been indexed.
24012
+ # Output only. The time when the document was last indexed. If this field is
24013
+ # populated, it means the document has been indexed. While documents typically
24014
+ # become searchable within seconds of indexing, it can sometimes take up to a
24015
+ # few hours. If this field is not populated, it means the document has never
24016
+ # been indexed.
23238
24017
  # Corresponds to the JSON property `indexTime`
23239
24018
  # @return [String]
23240
24019
  attr_accessor :index_time
@@ -23404,7 +24183,8 @@ module Google
23404
24183
  attr_accessor :error_samples
23405
24184
 
23406
24185
  # The time when the document was indexed. If this field is populated, it means
23407
- # the document has been indexed.
24186
+ # the document has been indexed. While documents typically become searchable
24187
+ # within seconds of indexing, it can sometimes take up to a few hours.
23408
24188
  # Corresponds to the JSON property `indexTime`
23409
24189
  # @return [String]
23410
24190
  attr_accessor :index_time
@@ -23839,6 +24619,13 @@ module Google
23839
24619
  # @return [String]
23840
24620
  attr_accessor :app_type
23841
24621
 
24622
+ # Optional. The Agent registry containing the agents, MCP servers and tools
24623
+ # associated with this engine. Field is required if the engine has an Agent
24624
+ # Gateway setting.
24625
+ # Corresponds to the JSON property `associatedAgentRegistry`
24626
+ # @return [String]
24627
+ attr_accessor :associated_agent_registry
24628
+
23842
24629
  # Configurations for a Chat Engine.
23843
24630
  # Corresponds to the JSON property `chatEngineConfig`
23844
24631
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaEngineChatEngineConfig]
@@ -23904,10 +24691,13 @@ module Google
23904
24691
  # settings are ignored. * `agent-gallery` * `no-code-agent-builder` * `prompt-
23905
24692
  # gallery` * `model-selector` * `notebook-lm` * `people-search` * `people-search-
23906
24693
  # org-chart` * `bi-directional-audio` * `feedback` * `session-sharing` * `
23907
- # personalization-memory` * `personalization-suggested-highlights` * `disable-
23908
- # agent-sharing` * `disable-image-generation` * `disable-video-generation` * `
23909
- # disable-onedrive-upload` * `disable-talk-to-content` * `disable-google-drive-
23910
- # upload` * `disable-welcome-emails`
24694
+ # personalization-memory` * `personalization-suggested-highlights` * `mobile-app-
24695
+ # access` * `disable-agent-sharing` * `disable-image-generation` * `disable-
24696
+ # video-generation` * `disable-onedrive-upload` * `disable-talk-to-content` * `
24697
+ # disable-google-drive-upload` * `disable-welcome-emails` * `disable-canvas` * `
24698
+ # canvas-workspace` * `disable-skills` * `enable-end-user-sharing-with-groups` *
24699
+ # `single-agent-orchestration` * `multi-agent-orchestration` * `cross-product-
24700
+ # intelligence` * `deep-research`
23911
24701
  # Corresponds to the JSON property `features`
23912
24702
  # @return [Hash<String,String>]
23913
24703
  attr_accessor :features
@@ -23987,6 +24777,7 @@ module Google
23987
24777
  def update!(**args)
23988
24778
  @agent_gateway_setting = args[:agent_gateway_setting] if args.key?(:agent_gateway_setting)
23989
24779
  @app_type = args[:app_type] if args.key?(:app_type)
24780
+ @associated_agent_registry = args[:associated_agent_registry] if args.key?(:associated_agent_registry)
23990
24781
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
23991
24782
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
23992
24783
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
@@ -24597,6 +25388,115 @@ module Google
24597
25388
  end
24598
25389
  end
24599
25390
 
25391
+ # Information about the user feedback. This information will be used for logging
25392
+ # and metrics purpose.
25393
+ class GoogleCloudDiscoveryengineV1betaFeedback
25394
+ include Google::Apis::Core::Hashable
25395
+
25396
+ # Optional. The additional user comment of the feedback if user gives a thumb
25397
+ # down.
25398
+ # Corresponds to the JSON property `comment`
25399
+ # @return [String]
25400
+ attr_accessor :comment
25401
+
25402
+ # Optional. The version of the component that this report is being sent from.
25403
+ # Corresponds to the JSON property `componentVersion`
25404
+ # @return [String]
25405
+ attr_accessor :component_version
25406
+
25407
+ # The conversation information such as the question index and session name.
25408
+ # Corresponds to the JSON property `conversationInfo`
25409
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaFeedbackConversationInfo]
25410
+ attr_accessor :conversation_info
25411
+
25412
+ # Optional. Whether the customer accepted data use terms.
25413
+ # Corresponds to the JSON property `dataTermsAccepted`
25414
+ # @return [Boolean]
25415
+ attr_accessor :data_terms_accepted
25416
+ alias_method :data_terms_accepted?, :data_terms_accepted
25417
+
25418
+ # Optional. The UI component the user feedback comes from, which could be
25419
+ # GOOGLE_CONSOLE, GOOGLE_WIDGET, GOOGLE_WEBAPP.
25420
+ # Corresponds to the JSON property `feedbackSource`
25421
+ # @return [String]
25422
+ attr_accessor :feedback_source
25423
+
25424
+ # Required. Indicate whether the user gives a positive or negative feedback. If
25425
+ # the user gives a negative feedback, there might be more feedback details.
25426
+ # Corresponds to the JSON property `feedbackType`
25427
+ # @return [String]
25428
+ attr_accessor :feedback_type
25429
+
25430
+ # The version of the LLM model that was used to generate the response.
25431
+ # Corresponds to the JSON property `llmModelVersion`
25432
+ # @return [String]
25433
+ attr_accessor :llm_model_version
25434
+
25435
+ # Optional. The reason if user gives a thumb down.
25436
+ # Corresponds to the JSON property `reasons`
25437
+ # @return [Array<String>]
25438
+ attr_accessor :reasons
25439
+
25440
+ def initialize(**args)
25441
+ update!(**args)
25442
+ end
25443
+
25444
+ # Update properties of this object
25445
+ def update!(**args)
25446
+ @comment = args[:comment] if args.key?(:comment)
25447
+ @component_version = args[:component_version] if args.key?(:component_version)
25448
+ @conversation_info = args[:conversation_info] if args.key?(:conversation_info)
25449
+ @data_terms_accepted = args[:data_terms_accepted] if args.key?(:data_terms_accepted)
25450
+ @feedback_source = args[:feedback_source] if args.key?(:feedback_source)
25451
+ @feedback_type = args[:feedback_type] if args.key?(:feedback_type)
25452
+ @llm_model_version = args[:llm_model_version] if args.key?(:llm_model_version)
25453
+ @reasons = args[:reasons] if args.key?(:reasons)
25454
+ end
25455
+ end
25456
+
25457
+ # The conversation information such as the question index and session name.
25458
+ class GoogleCloudDiscoveryengineV1betaFeedbackConversationInfo
25459
+ include Google::Apis::Core::Hashable
25460
+
25461
+ # Optional. The token which could be used to fetch the answer log.
25462
+ # Corresponds to the JSON property `answerQueryToken`
25463
+ # @return [String]
25464
+ attr_accessor :answer_query_token
25465
+
25466
+ # Optional. The token which could be used to fetch the assistant log.
25467
+ # Corresponds to the JSON property `assistToken`
25468
+ # @return [String]
25469
+ attr_accessor :assist_token
25470
+
25471
+ # Defines a user inputed query.
25472
+ # Corresponds to the JSON property `query`
25473
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaQuery]
25474
+ attr_accessor :query
25475
+
25476
+ # The index of the user input within the conversation messages.
25477
+ # Corresponds to the JSON property `questionIndex`
25478
+ # @return [Fixnum]
25479
+ attr_accessor :question_index
25480
+
25481
+ # Name of the newly generated or continued session.
25482
+ # Corresponds to the JSON property `session`
25483
+ # @return [String]
25484
+ attr_accessor :session
25485
+
25486
+ def initialize(**args)
25487
+ update!(**args)
25488
+ end
25489
+
25490
+ # Update properties of this object
25491
+ def update!(**args)
25492
+ @answer_query_token = args[:answer_query_token] if args.key?(:answer_query_token)
25493
+ @assist_token = args[:assist_token] if args.key?(:assist_token)
25494
+ @query = args[:query] if args.key?(:query)
25495
+ @question_index = args[:question_index] if args.key?(:question_index)
25496
+ @session = args[:session] if args.key?(:session)
25497
+ end
25498
+ end
25499
+
24600
25500
  # Response message for SiteSearchEngineService.FetchDomainVerificationStatus
24601
25501
  # method.
24602
25502
  class GoogleCloudDiscoveryengineV1betaFetchDomainVerificationStatusResponse
@@ -25703,8 +26603,8 @@ module Google
25703
26603
  # @return [Fixnum]
25704
26604
  attr_accessor :success_count
25705
26605
 
25706
- # Operation last update time. If the operation is done, this is also the finish
25707
- # time.
26606
+ # Output only. Operation last update time. If the operation is done, this is
26607
+ # also the finish time.
25708
26608
  # Corresponds to the JSON property `updateTime`
25709
26609
  # @return [String]
25710
26610
  attr_accessor :update_time
@@ -26357,6 +27257,31 @@ module Google
26357
27257
  end
26358
27258
  end
26359
27259
 
27260
+ # Response message for LicenseConfigService.ListLicenseConfigs method.
27261
+ class GoogleCloudDiscoveryengineV1betaListLicenseConfigsResponse
27262
+ include Google::Apis::Core::Hashable
27263
+
27264
+ # All the customer's LicenseConfigs.
27265
+ # Corresponds to the JSON property `licenseConfigs`
27266
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaLicenseConfig>]
27267
+ attr_accessor :license_configs
27268
+
27269
+ # Not supported.
27270
+ # Corresponds to the JSON property `nextPageToken`
27271
+ # @return [String]
27272
+ attr_accessor :next_page_token
27273
+
27274
+ def initialize(**args)
27275
+ update!(**args)
27276
+ end
27277
+
27278
+ # Update properties of this object
27279
+ def update!(**args)
27280
+ @license_configs = args[:license_configs] if args.key?(:license_configs)
27281
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
27282
+ end
27283
+ end
27284
+
26360
27285
  # Response message for UserLicenseService.ListLicenseConfigsUsageStats method.
26361
27286
  class GoogleCloudDiscoveryengineV1betaListLicenseConfigsUsageStatsResponse
26362
27287
  include Google::Apis::Core::Hashable
@@ -26901,7 +27826,9 @@ module Google
26901
27826
  # and reflect the thresholds actively being used for billing purposes at the
26902
27827
  # time of the GetProject call. This includes the start_time of the subscription
26903
27828
  # and may differ from the values in `customer_provided_config` due to billing
26904
- # rules (e.g., scale-downs taking effect only at the start of a new month).
27829
+ # rules (e.g., scale-downs taking effect only at the start of a new month). We
27830
+ # also include the update type to indicate the type of update performed on the
27831
+ # configurable billing configuration in the UpdateProject operation.
26905
27832
  # Corresponds to the JSON property `configurableBillingStatus`
26906
27833
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus]
26907
27834
  attr_accessor :configurable_billing_status
@@ -26954,10 +27881,17 @@ module Google
26954
27881
  # and reflect the thresholds actively being used for billing purposes at the
26955
27882
  # time of the GetProject call. This includes the start_time of the subscription
26956
27883
  # and may differ from the values in `customer_provided_config` due to billing
26957
- # rules (e.g., scale-downs taking effect only at the start of a new month).
27884
+ # rules (e.g., scale-downs taking effect only at the start of a new month). We
27885
+ # also include the update type to indicate the type of update performed on the
27886
+ # configurable billing configuration in the UpdateProject operation.
26958
27887
  class GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus
26959
27888
  include Google::Apis::Core::Hashable
26960
27889
 
27890
+ # Output only. Per-model Agent Search TPM subscription status.
27891
+ # Corresponds to the JSON property `agentSearchTokenSubscriptionStatuses`
27892
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatusAgentSearchTokenSubscriptionStatus>]
27893
+ attr_accessor :agent_search_token_subscription_statuses
27894
+
26961
27895
  # Optional. The currently effective Indexing Core threshold. This is the
26962
27896
  # threshold against which Indexing Core usage is compared for overage
26963
27897
  # calculations.
@@ -26999,18 +27933,114 @@ module Google
26999
27933
  # @return [String]
27000
27934
  attr_accessor :terminate_time
27001
27935
 
27936
+ # Output only. The type of update performed in this operation. This field is
27937
+ # populated in the response of UpdateProject.
27938
+ # Corresponds to the JSON property `updateType`
27939
+ # @return [String]
27940
+ attr_accessor :update_type
27941
+
27002
27942
  def initialize(**args)
27003
27943
  update!(**args)
27004
27944
  end
27005
27945
 
27006
27946
  # Update properties of this object
27007
27947
  def update!(**args)
27948
+ @agent_search_token_subscription_statuses = args[:agent_search_token_subscription_statuses] if args.key?(:agent_search_token_subscription_statuses)
27008
27949
  @effective_indexing_core_threshold = args[:effective_indexing_core_threshold] if args.key?(:effective_indexing_core_threshold)
27009
27950
  @effective_search_qpm_threshold = args[:effective_search_qpm_threshold] if args.key?(:effective_search_qpm_threshold)
27010
27951
  @indexing_core_threshold_next_update_time = args[:indexing_core_threshold_next_update_time] if args.key?(:indexing_core_threshold_next_update_time)
27011
27952
  @search_qpm_threshold_next_update_time = args[:search_qpm_threshold_next_update_time] if args.key?(:search_qpm_threshold_next_update_time)
27012
27953
  @start_time = args[:start_time] if args.key?(:start_time)
27013
27954
  @terminate_time = args[:terminate_time] if args.key?(:terminate_time)
27955
+ @update_type = args[:update_type] if args.key?(:update_type)
27956
+ end
27957
+ end
27958
+
27959
+ # Per-model Agent Search TPM subscription status. One entry per active `
27960
+ # core_subscription.agent_search_token_subscriptions[*]` entry in the customer-
27961
+ # provided config; populated by UpdateProject and GetProject. The lifecycle
27962
+ # scalars on this message (`start_time`, `terminate_time`, `update_type`, `
27963
+ # tpm_threshold_next_update_time`) are per (project, model_version) — siblings
27964
+ # of the whole-relationship `start_time` / `terminate_time` / `update_type` on
27965
+ # the enclosing ConfigurableBillingStatus, but scoped to this specific Agent
27966
+ # Search TPM subscription instead of to the overall customer-configurable-
27967
+ # pricing relationship. This per-instance granularity is intentional: the
27968
+ # underlying SubV3 storage is per-(project, model_version), so each model has
27969
+ # its own activation, termination, and deferred-update clock; surfacing that on
27970
+ # the response gives customers the granularity they need to manage per-model
27971
+ # commitments independently. QPM / IndexingCore differ — their storage is one
27972
+ # row per (project, location), so their lifecycle is represented only by the
27973
+ # whole- relationship scalars on ConfigurableBillingStatus.
27974
+ class GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatusAgentSearchTokenSubscriptionStatus
27975
+ include Google::Apis::Core::Hashable
27976
+
27977
+ # Output only. The currently effective TPM threshold. Reflects scale-up
27978
+ # immediately and scale-down at the next billing cycle, matching `
27979
+ # effective_search_qpm_threshold` semantics.
27980
+ # Corresponds to the JSON property `effectiveTpmThreshold`
27981
+ # @return [Fixnum]
27982
+ attr_accessor :effective_tpm_threshold
27983
+
27984
+ # Output only. The Gemini model version this status corresponds to. Matches
27985
+ # CoreSubscription.AgentSearchTokenSubscription.model_version (a stable Gemini
27986
+ # model version from the Gemini Enterprise Agent Platform model-versions
27987
+ # registry; see https://docs.cloud.google.com/gemini-enterprise-agent-platform/
27988
+ # models/model-versions#gemini-models).
27989
+ # Corresponds to the JSON property `modelVersion`
27990
+ # @return [String]
27991
+ attr_accessor :model_version
27992
+
27993
+ # Output only. When this (project, model_version) Agent Search TPM subscription
27994
+ # was first activated. Set once on first activation of this model version and
27995
+ # never moved by subsequent threshold updates; on termination + re-activation a
27996
+ # new value is recorded. Does NOT move the whole-relationship `start_time` on
27997
+ # the enclosing ConfigurableBillingStatus, which continues to represent the
27998
+ # first activation of the overall customer-configurable-pricing relationship.
27999
+ # Corresponds to the JSON property `startTime`
28000
+ # @return [String]
28001
+ attr_accessor :start_time
28002
+
28003
+ # Output only. If set, the scheduled effective time at which this (project,
28004
+ # model_version) Agent Search TPM subscription will terminate. Populated when
28005
+ # the customer removes this entry from `core_subscription.
28006
+ # agent_search_token_subscriptions[*]`. Does NOT move the whole-relationship `
28007
+ # terminate_time` on the enclosing ConfigurableBillingStatus, which is populated
28008
+ # only when the entire customer-configurable-pricing relationship is being torn
28009
+ # down.
28010
+ # Corresponds to the JSON property `terminateTime`
28011
+ # @return [String]
28012
+ attr_accessor :terminate_time
28013
+
28014
+ # Output only. The earliest next update time for the TPM subscription threshold
28015
+ # for this (project, model_version). Populated only after a successful update.
28016
+ # Corresponds to the JSON property `tpmThresholdNextUpdateTime`
28017
+ # @return [String]
28018
+ attr_accessor :tpm_threshold_next_update_time
28019
+
28020
+ # Output only. The type of the most recent update to this (project,
28021
+ # model_version) subscription, as performed by the most recent UpdateProject
28022
+ # call. `UPDATE_TYPE_UNSPECIFIED` indicates this model_version was not touched
28023
+ # by the most recent UpdateProject (its `effective_tpm_threshold` reflects an
28024
+ # earlier update). The whole-relationship `update_type` on the enclosing
28025
+ # ConfigurableBillingStatus continues to summarize the direction of the most
28026
+ # recent update across all surfaces in the project (QPM, IndexingCore, and Agent
28027
+ # Search TPM together).
28028
+ # Corresponds to the JSON property `updateType`
28029
+ # @return [String]
28030
+ attr_accessor :update_type
28031
+
28032
+ def initialize(**args)
28033
+ update!(**args)
28034
+ end
28035
+
28036
+ # Update properties of this object
28037
+ def update!(**args)
28038
+ @effective_tpm_threshold = args[:effective_tpm_threshold] if args.key?(:effective_tpm_threshold)
28039
+ @model_version = args[:model_version] if args.key?(:model_version)
28040
+ @start_time = args[:start_time] if args.key?(:start_time)
28041
+ @terminate_time = args[:terminate_time] if args.key?(:terminate_time)
28042
+ @tpm_threshold_next_update_time = args[:tpm_threshold_next_update_time] if args.key?(:tpm_threshold_next_update_time)
28043
+ @update_type = args[:update_type] if args.key?(:update_type)
27014
28044
  end
27015
28045
  end
27016
28046
 
@@ -27822,8 +28852,8 @@ module Google
27822
28852
  attr_accessor :id
27823
28853
 
27824
28854
  # The score of this record based on the given query and selected model. The
27825
- # score will be rounded to 2 decimal places. If the score is close to 0, it will
27826
- # be rounded to 0.0001 to avoid returning unset.
28855
+ # score will be rounded to 4 decimal places. If the score is close to 0, it will
28856
+ # be rounded to 0.00001 to avoid returning unset.
27827
28857
  # Corresponds to the JSON property `score`
27828
28858
  # @return [Float]
27829
28859
  attr_accessor :score
@@ -28272,6 +29302,60 @@ module Google
28272
29302
  end
28273
29303
  end
28274
29304
 
29305
+ # Request message for LicenseConfigService.RetractLicenseConfig method.
29306
+ class GoogleCloudDiscoveryengineV1betaRetractLicenseConfigRequest
29307
+ include Google::Apis::Core::Hashable
29308
+
29309
+ # Optional. If set to true, retract the entire license config. Otherwise,
29310
+ # retract the specified license count.
29311
+ # Corresponds to the JSON property `fullRetract`
29312
+ # @return [Boolean]
29313
+ attr_accessor :full_retract
29314
+ alias_method :full_retract?, :full_retract
29315
+
29316
+ # Required. Full resource name of LicenseConfig. Format: `projects/`project`/
29317
+ # locations/`location`/licenseConfigs/`license_config_id``.
29318
+ # Corresponds to the JSON property `licenseConfig`
29319
+ # @return [String]
29320
+ attr_accessor :license_config
29321
+
29322
+ # Optional. The number of licenses to retract. Only used when full_retract is
29323
+ # false.
29324
+ # Corresponds to the JSON property `licenseCount`
29325
+ # @return [Fixnum]
29326
+ attr_accessor :license_count
29327
+
29328
+ def initialize(**args)
29329
+ update!(**args)
29330
+ end
29331
+
29332
+ # Update properties of this object
29333
+ def update!(**args)
29334
+ @full_retract = args[:full_retract] if args.key?(:full_retract)
29335
+ @license_config = args[:license_config] if args.key?(:license_config)
29336
+ @license_count = args[:license_count] if args.key?(:license_count)
29337
+ end
29338
+ end
29339
+
29340
+ # Response message for LicenseConfigService.RetractLicenseConfig method.
29341
+ class GoogleCloudDiscoveryengineV1betaRetractLicenseConfigResponse
29342
+ include Google::Apis::Core::Hashable
29343
+
29344
+ # Information about users' licenses.
29345
+ # Corresponds to the JSON property `licenseConfig`
29346
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaLicenseConfig]
29347
+ attr_accessor :license_config
29348
+
29349
+ def initialize(**args)
29350
+ update!(**args)
29351
+ end
29352
+
29353
+ # Update properties of this object
29354
+ def update!(**args)
29355
+ @license_config = args[:license_config] if args.key?(:license_config)
29356
+ end
29357
+ end
29358
+
28275
29359
  # Safety rating corresponding to the generated content.
28276
29360
  class GoogleCloudDiscoveryengineV1betaSafetyRating
28277
29361
  include Google::Apis::Core::Hashable
@@ -28637,6 +29721,11 @@ module Google
28637
29721
  # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaSearchRequestCrowdingSpec>]
28638
29722
  attr_accessor :crowding_specs
28639
29723
 
29724
+ # Configuration parameters for the Custom Ranking feature.
29725
+ # Corresponds to the JSON property `customRankingParams`
29726
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams]
29727
+ attr_accessor :custom_ranking_params
29728
+
28640
29729
  # Specifications that define the specific DataStores to be searched, along with
28641
29730
  # configurations for those data stores. This is only considered for Engines with
28642
29731
  # multiple data stores. For engines with a single data store, the specs directly
@@ -28656,6 +29745,14 @@ module Google
28656
29745
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaSearchRequestEmbeddingSpec]
28657
29746
  attr_accessor :embedding_spec
28658
29747
 
29748
+ # Optional. The entity for customers that may run multiple different entities,
29749
+ # domains, sites or regions, for example, "Google US", "Google Ads", "Waymo", "
29750
+ # google.com", "youtube.com", etc. If this is set, it should be exactly matched
29751
+ # with UserEvent.entity to get search results boosted by entity.
29752
+ # Corresponds to the JSON property `entity`
29753
+ # @return [String]
29754
+ attr_accessor :entity
29755
+
28659
29756
  # Facet specifications for faceted search. If empty, no facets are returned. A
28660
29757
  # maximum of 100 values are allowed. Otherwise, an `INVALID_ARGUMENT` error is
28661
29758
  # returned.
@@ -28839,7 +29936,14 @@ module Google
28839
29936
  # since the document was last updated, a floating-point number (e.g., 0.25 means
28840
29937
  # 15 minutes). * `topicality_rank`: topicality adjustment as a rank. Uses
28841
29938
  # proprietary Google model to determine the keyword-based overlap between the
28842
- # query and the document. * `base_rank`: the default rank of the result
29939
+ # query and the document. * `base_rank`: the default rank of the result * `
29940
+ # media_actor_match`: whether the media actor matches the query * `
29941
+ # media_director_match`: whether the media director matches the query * `
29942
+ # media_genre_match`: whether the media genre matches the query * `
29943
+ # media_language_match`: whether the media language matches the query * `
29944
+ # media_title_match`: whether the media title matches the query * `
29945
+ # media_prefix_similarity_rank`: prefix similarity rank for media results * `
29946
+ # media_semantic_similarity_rank`: semantic similarity rank for media results
28843
29947
  # Corresponds to the JSON property `rankingExpression`
28844
29948
  # @return [String]
28845
29949
  attr_accessor :ranking_expression
@@ -28972,9 +30076,11 @@ module Google
28972
30076
  @canonical_filter = args[:canonical_filter] if args.key?(:canonical_filter)
28973
30077
  @content_search_spec = args[:content_search_spec] if args.key?(:content_search_spec)
28974
30078
  @crowding_specs = args[:crowding_specs] if args.key?(:crowding_specs)
30079
+ @custom_ranking_params = args[:custom_ranking_params] if args.key?(:custom_ranking_params)
28975
30080
  @data_store_specs = args[:data_store_specs] if args.key?(:data_store_specs)
28976
30081
  @display_spec = args[:display_spec] if args.key?(:display_spec)
28977
30082
  @embedding_spec = args[:embedding_spec] if args.key?(:embedding_spec)
30083
+ @entity = args[:entity] if args.key?(:entity)
28978
30084
  @facet_specs = args[:facet_specs] if args.key?(:facet_specs)
28979
30085
  @filter = args[:filter] if args.key?(:filter)
28980
30086
  @image_query = args[:image_query] if args.key?(:image_query)
@@ -29564,6 +30670,27 @@ module Google
29564
30670
  end
29565
30671
  end
29566
30672
 
30673
+ # Configuration parameters for the Custom Ranking feature.
30674
+ class GoogleCloudDiscoveryengineV1betaSearchRequestCustomRankingParams
30675
+ include Google::Apis::Core::Hashable
30676
+
30677
+ # Optional. A list of ranking expressions (see `ranking_expression` for the
30678
+ # syntax documentation) to evaluate. The evaluation results will be returned in `
30679
+ # SearchResponse.SearchResult.rank_signals.precomputed_expression_values` field.
30680
+ # Corresponds to the JSON property `expressionsToPrecompute`
30681
+ # @return [Array<String>]
30682
+ attr_accessor :expressions_to_precompute
30683
+
30684
+ def initialize(**args)
30685
+ update!(**args)
30686
+ end
30687
+
30688
+ # Update properties of this object
30689
+ def update!(**args)
30690
+ @expressions_to_precompute = args[:expressions_to_precompute] if args.key?(:expressions_to_precompute)
30691
+ end
30692
+ end
30693
+
29567
30694
  # A struct to define data stores to filter on in a search call and
29568
30695
  # configurations for those data stores. Otherwise, an `INVALID_ARGUMENT` error
29569
30696
  # is returned.
@@ -29888,9 +31015,7 @@ module Google
29888
31015
 
29889
31016
  # Field names used for location-based filtering, where geolocation filters are
29890
31017
  # detected in natural language search queries. Only valid when the
29891
- # FilterExtractionCondition is set to `ENABLED`. If this field is set, it
29892
- # overrides the field names set in ServingConfig.
29893
- # geo_search_query_detection_field_names.
31018
+ # FilterExtractionCondition is set to `ENABLED`.
29894
31019
  # Corresponds to the JSON property `geoSearchQueryDetectionFieldNames`
29895
31020
  # @return [Array<String>]
29896
31021
  attr_accessor :geo_search_query_detection_field_names
@@ -30815,6 +31940,13 @@ module Google
30815
31940
  # @return [Float]
30816
31941
  attr_accessor :pctr_rank
30817
31942
 
31943
+ # Optional. A list of precomputed expression results for a given document, in
31944
+ # the same order as requested in `SearchRequest.custom_ranking_params.
31945
+ # expressions_to_precompute`.
31946
+ # Corresponds to the JSON property `precomputedExpressionValues`
31947
+ # @return [Array<Float>]
31948
+ attr_accessor :precomputed_expression_values
31949
+
30818
31950
  # Optional. Semantic relevance adjustment.
30819
31951
  # Corresponds to the JSON property `relevanceScore`
30820
31952
  # @return [Float]
@@ -30842,6 +31974,7 @@ module Google
30842
31974
  @document_age = args[:document_age] if args.key?(:document_age)
30843
31975
  @keyword_similarity_score = args[:keyword_similarity_score] if args.key?(:keyword_similarity_score)
30844
31976
  @pctr_rank = args[:pctr_rank] if args.key?(:pctr_rank)
31977
+ @precomputed_expression_values = args[:precomputed_expression_values] if args.key?(:precomputed_expression_values)
30845
31978
  @relevance_score = args[:relevance_score] if args.key?(:relevance_score)
30846
31979
  @semantic_similarity_score = args[:semantic_similarity_score] if args.key?(:semantic_similarity_score)
30847
31980
  @topicality_rank = args[:topicality_rank] if args.key?(:topicality_rank)
@@ -31512,6 +32645,13 @@ module Google
31512
32645
  # @return [String]
31513
32646
  attr_accessor :name
31514
32647
 
32648
+ # Output only. Full resource name of an in-progress AsyncAssist operation for
32649
+ # this session, e.g. `projects/*/locations/*/collections/*/engines/*/sessions/*/
32650
+ # operations/*`. Set when the operation starts and cleared when it finishes.
32651
+ # Corresponds to the JSON property `pendingAsyncAssistOperationId`
32652
+ # @return [String]
32653
+ attr_accessor :pending_async_assist_operation_id
32654
+
31515
32655
  # Output only. The time the session started.
31516
32656
  # Corresponds to the JSON property `startTime`
31517
32657
  # @return [String]
@@ -31543,6 +32683,7 @@ module Google
31543
32683
  @is_pinned = args[:is_pinned] if args.key?(:is_pinned)
31544
32684
  @labels = args[:labels] if args.key?(:labels)
31545
32685
  @name = args[:name] if args.key?(:name)
32686
+ @pending_async_assist_operation_id = args[:pending_async_assist_operation_id] if args.key?(:pending_async_assist_operation_id)
31546
32687
  @start_time = args[:start_time] if args.key?(:start_time)
31547
32688
  @state = args[:state] if args.key?(:state)
31548
32689
  @turns = args[:turns] if args.key?(:turns)
@@ -31570,6 +32711,12 @@ module Google
31570
32711
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaAssistAnswer]
31571
32712
  attr_accessor :detailed_assist_answer
31572
32713
 
32714
+ # Optional. Indicates whether this turn is a live turn.
32715
+ # Corresponds to the JSON property `live`
32716
+ # @return [Boolean]
32717
+ attr_accessor :live
32718
+ alias_method :live?, :live
32719
+
31573
32720
  # Defines a user inputed query.
31574
32721
  # Corresponds to the JSON property `query`
31575
32722
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaQuery]
@@ -31591,6 +32738,7 @@ module Google
31591
32738
  @answer = args[:answer] if args.key?(:answer)
31592
32739
  @detailed_answer = args[:detailed_answer] if args.key?(:detailed_answer)
31593
32740
  @detailed_assist_answer = args[:detailed_assist_answer] if args.key?(:detailed_assist_answer)
32741
+ @live = args[:live] if args.key?(:live)
31594
32742
  @query = args[:query] if args.key?(:query)
31595
32743
  @query_config = args[:query_config] if args.key?(:query_config)
31596
32744
  end
@@ -32048,11 +33196,23 @@ module Google
32048
33196
  # @return [String]
32049
33197
  attr_accessor :assist_token
32050
33198
 
33199
+ # Per-connector authentication errors encountered during the request. Present
33200
+ # when one or more connectors failed authentication but the request proceeded
33201
+ # with the remaining connectors.
33202
+ # Corresponds to the JSON property `connectorAuthErrors`
33203
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaStreamAssistResponseConnectorAuthError>]
33204
+ attr_accessor :connector_auth_errors
33205
+
32051
33206
  # The tool names of the tools that were invoked.
32052
33207
  # Corresponds to the JSON property `invocationTools`
32053
33208
  # @return [Array<String>]
32054
33209
  attr_accessor :invocation_tools
32055
33210
 
33211
+ # The skills executed during the turn.
33212
+ # Corresponds to the JSON property `invokedSkills`
33213
+ # @return [Array<Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaStreamAssistResponseInvokedSkill>]
33214
+ attr_accessor :invoked_skills
33215
+
32056
33216
  # Information about the session.
32057
33217
  # Corresponds to the JSON property `sessionInfo`
32058
33218
  # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaStreamAssistResponseSessionInfo]
@@ -32066,11 +33226,63 @@ module Google
32066
33226
  def update!(**args)
32067
33227
  @answer = args[:answer] if args.key?(:answer)
32068
33228
  @assist_token = args[:assist_token] if args.key?(:assist_token)
33229
+ @connector_auth_errors = args[:connector_auth_errors] if args.key?(:connector_auth_errors)
32069
33230
  @invocation_tools = args[:invocation_tools] if args.key?(:invocation_tools)
33231
+ @invoked_skills = args[:invoked_skills] if args.key?(:invoked_skills)
32070
33232
  @session_info = args[:session_info] if args.key?(:session_info)
32071
33233
  end
32072
33234
  end
32073
33235
 
33236
+ # Describes an authentication error for a specific data connector.
33237
+ class GoogleCloudDiscoveryengineV1betaStreamAssistResponseConnectorAuthError
33238
+ include Google::Apis::Core::Hashable
33239
+
33240
+ # Resource name of the data connector that failed authentication.
33241
+ # Corresponds to the JSON property `dataConnector`
33242
+ # @return [String]
33243
+ attr_accessor :data_connector
33244
+
33245
+ # Human-readable error message describing the auth failure.
33246
+ # Corresponds to the JSON property `errorMessage`
33247
+ # @return [String]
33248
+ attr_accessor :error_message
33249
+
33250
+ def initialize(**args)
33251
+ update!(**args)
33252
+ end
33253
+
33254
+ # Update properties of this object
33255
+ def update!(**args)
33256
+ @data_connector = args[:data_connector] if args.key?(:data_connector)
33257
+ @error_message = args[:error_message] if args.key?(:error_message)
33258
+ end
33259
+ end
33260
+
33261
+ # Represents a skill used during the assist call.
33262
+ class GoogleCloudDiscoveryengineV1betaStreamAssistResponseInvokedSkill
33263
+ include Google::Apis::Core::Hashable
33264
+
33265
+ # The display name of the skill.
33266
+ # Corresponds to the JSON property `displayName`
33267
+ # @return [String]
33268
+ attr_accessor :display_name
33269
+
33270
+ # The resource name of the skill.
33271
+ # Corresponds to the JSON property `name`
33272
+ # @return [String]
33273
+ attr_accessor :name
33274
+
33275
+ def initialize(**args)
33276
+ update!(**args)
33277
+ end
33278
+
33279
+ # Update properties of this object
33280
+ def update!(**args)
33281
+ @display_name = args[:display_name] if args.key?(:display_name)
33282
+ @name = args[:name] if args.key?(:name)
33283
+ end
33284
+ end
33285
+
32074
33286
  # Information about the session.
32075
33287
  class GoogleCloudDiscoveryengineV1betaStreamAssistResponseSessionInfo
32076
33288
  include Google::Apis::Core::Hashable
@@ -32716,6 +33928,12 @@ module Google
32716
33928
  # @return [String]
32717
33929
  attr_accessor :event_type
32718
33930
 
33931
+ # Information about the user feedback. This information will be used for logging
33932
+ # and metrics purpose.
33933
+ # Corresponds to the JSON property `feedback`
33934
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaFeedback]
33935
+ attr_accessor :feedback
33936
+
32719
33937
  # Optional. The filter syntax consists of an expression language for
32720
33938
  # constructing a predicate from one or more fields of the documents being
32721
33939
  # filtered. One example is for `search` events, the associated SearchRequest may
@@ -32819,6 +34037,7 @@ module Google
32819
34037
  @entity = args[:entity] if args.key?(:entity)
32820
34038
  @event_time = args[:event_time] if args.key?(:event_time)
32821
34039
  @event_type = args[:event_type] if args.key?(:event_type)
34040
+ @feedback = args[:feedback] if args.key?(:feedback)
32822
34041
  @filter = args[:filter] if args.key?(:filter)
32823
34042
  @media_info = args[:media_info] if args.key?(:media_info)
32824
34043
  @page_info = args[:page_info] if args.key?(:page_info)
@@ -32838,6 +34057,12 @@ module Google
32838
34057
  class GoogleCloudDiscoveryengineV1betaUserInfo
32839
34058
  include Google::Apis::Core::Hashable
32840
34059
 
34060
+ # Precise location info with multiple representation options. Currently only
34061
+ # latitude and longitude point is supported.
34062
+ # Corresponds to the JSON property `preciseLocation`
34063
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation]
34064
+ attr_accessor :precise_location
34065
+
32841
34066
  # Optional. IANA time zone, e.g. Europe/Budapest.
32842
34067
  # Corresponds to the JSON property `timeZone`
32843
34068
  # @return [String]
@@ -32871,12 +34096,43 @@ module Google
32871
34096
 
32872
34097
  # Update properties of this object
32873
34098
  def update!(**args)
34099
+ @precise_location = args[:precise_location] if args.key?(:precise_location)
32874
34100
  @time_zone = args[:time_zone] if args.key?(:time_zone)
32875
34101
  @user_agent = args[:user_agent] if args.key?(:user_agent)
32876
34102
  @user_id = args[:user_id] if args.key?(:user_id)
32877
34103
  end
32878
34104
  end
32879
34105
 
34106
+ # Precise location info with multiple representation options. Currently only
34107
+ # latitude and longitude point is supported.
34108
+ class GoogleCloudDiscoveryengineV1betaUserInfoPreciseLocation
34109
+ include Google::Apis::Core::Hashable
34110
+
34111
+ # Optional. Location represented by a natural language address. Will later be
34112
+ # geocoded and converted to either a point or a polygon.
34113
+ # Corresponds to the JSON property `address`
34114
+ # @return [String]
34115
+ attr_accessor :address
34116
+
34117
+ # An object that represents a latitude/longitude pair. This is expressed as a
34118
+ # pair of doubles to represent degrees latitude and degrees longitude. Unless
34119
+ # specified otherwise, this object must conform to the WGS84 standard. Values
34120
+ # must be within normalized ranges.
34121
+ # Corresponds to the JSON property `point`
34122
+ # @return [Google::Apis::DiscoveryengineV1beta::GoogleTypeLatLng]
34123
+ attr_accessor :point
34124
+
34125
+ def initialize(**args)
34126
+ update!(**args)
34127
+ end
34128
+
34129
+ # Update properties of this object
34130
+ def update!(**args)
34131
+ @address = args[:address] if args.key?(:address)
34132
+ @point = args[:point] if args.key?(:point)
34133
+ end
34134
+ end
34135
+
32880
34136
  # User License information assigned by the admin.
32881
34137
  class GoogleCloudDiscoveryengineV1betaUserLicense
32882
34138
  include Google::Apis::Core::Hashable
@@ -33000,7 +34256,9 @@ module Google
33000
34256
  class GoogleCloudDiscoveryengineV1betaWorkspaceConfig
33001
34257
  include Google::Apis::Core::Hashable
33002
34258
 
33003
- # Obfuscated Dasher customer ID.
34259
+ # Output only. Obfuscated Dasher customer ID. Derived by the server from the
34260
+ # project's GCP organization at data store creation time; any value supplied in
34261
+ # the request payload is ignored.
33004
34262
  # Corresponds to the JSON property `dasherCustomerId`
33005
34263
  # @return [String]
33006
34264
  attr_accessor :dasher_customer_id
@@ -33828,6 +35086,34 @@ module Google
33828
35086
  end
33829
35087
  end
33830
35088
 
35089
+ # An object that represents a latitude/longitude pair. This is expressed as a
35090
+ # pair of doubles to represent degrees latitude and degrees longitude. Unless
35091
+ # specified otherwise, this object must conform to the WGS84 standard. Values
35092
+ # must be within normalized ranges.
35093
+ class GoogleTypeLatLng
35094
+ include Google::Apis::Core::Hashable
35095
+
35096
+ # The latitude in degrees. It must be in the range [-90.0, +90.0].
35097
+ # Corresponds to the JSON property `latitude`
35098
+ # @return [Float]
35099
+ attr_accessor :latitude
35100
+
35101
+ # The longitude in degrees. It must be in the range [-180.0, +180.0].
35102
+ # Corresponds to the JSON property `longitude`
35103
+ # @return [Float]
35104
+ attr_accessor :longitude
35105
+
35106
+ def initialize(**args)
35107
+ update!(**args)
35108
+ end
35109
+
35110
+ # Update properties of this object
35111
+ def update!(**args)
35112
+ @latitude = args[:latitude] if args.key?(:latitude)
35113
+ @longitude = args[:longitude] if args.key?(:longitude)
35114
+ end
35115
+ end
35116
+
33831
35117
  # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/
33832
35118
  # time-zones).
33833
35119
  class GoogleTypeTimeZone