google-apis-discoveryengine_v1alpha 0.81.0 → 0.83.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.
@@ -3467,6 +3467,11 @@ module Google
3467
3467
  # @return [String]
3468
3468
  attr_accessor :configurable_billing_approach
3469
3469
 
3470
+ # Output only. The timestamp when configurable_billing_approach was last updated.
3471
+ # Corresponds to the JSON property `configurableBillingApproachUpdateTime`
3472
+ # @return [String]
3473
+ attr_accessor :configurable_billing_approach_update_time
3474
+
3470
3475
  # Immutable. The content config of the data store. If this field is unset, the
3471
3476
  # server behavior defaults to ContentConfig.NO_CONTENT.
3472
3477
  # Corresponds to the JSON property `contentConfig`
@@ -3571,6 +3576,7 @@ module Google
3571
3576
  @billing_estimation = args[:billing_estimation] if args.key?(:billing_estimation)
3572
3577
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
3573
3578
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
3579
+ @configurable_billing_approach_update_time = args[:configurable_billing_approach_update_time] if args.key?(:configurable_billing_approach_update_time)
3574
3580
  @content_config = args[:content_config] if args.key?(:content_config)
3575
3581
  @create_time = args[:create_time] if args.key?(:create_time)
3576
3582
  @default_schema_id = args[:default_schema_id] if args.key?(:default_schema_id)
@@ -4142,6 +4148,12 @@ module Google
4142
4148
  attr_accessor :enable_image_annotation
4143
4149
  alias_method :enable_image_annotation?, :enable_image_annotation
4144
4150
 
4151
+ # Optional. If true, the pdf layout will be refined using an LLM.
4152
+ # Corresponds to the JSON property `enableLlmLayoutParsing`
4153
+ # @return [Boolean]
4154
+ attr_accessor :enable_llm_layout_parsing
4155
+ alias_method :enable_llm_layout_parsing?, :enable_llm_layout_parsing
4156
+
4145
4157
  # Optional. If true, the LLM based annotation is added to the table during
4146
4158
  # parsing.
4147
4159
  # Corresponds to the JSON property `enableTableAnnotation`
@@ -4178,6 +4190,7 @@ module Google
4178
4190
  def update!(**args)
4179
4191
  @enable_get_processed_document = args[:enable_get_processed_document] if args.key?(:enable_get_processed_document)
4180
4192
  @enable_image_annotation = args[:enable_image_annotation] if args.key?(:enable_image_annotation)
4193
+ @enable_llm_layout_parsing = args[:enable_llm_layout_parsing] if args.key?(:enable_llm_layout_parsing)
4181
4194
  @enable_table_annotation = args[:enable_table_annotation] if args.key?(:enable_table_annotation)
4182
4195
  @exclude_html_classes = args[:exclude_html_classes] if args.key?(:exclude_html_classes)
4183
4196
  @exclude_html_elements = args[:exclude_html_elements] if args.key?(:exclude_html_elements)
@@ -4277,6 +4290,11 @@ module Google
4277
4290
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1EngineChatEngineMetadata]
4278
4291
  attr_accessor :chat_engine_metadata
4279
4292
 
4293
+ # Configurations used to enable CMEK data encryption with Cloud KMS keys.
4294
+ # Corresponds to the JSON property `cmekConfig`
4295
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1CmekConfig]
4296
+ attr_accessor :cmek_config
4297
+
4280
4298
  # Common configurations for an Engine.
4281
4299
  # Corresponds to the JSON property `commonConfig`
4282
4300
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1EngineCommonConfig]
@@ -4338,6 +4356,17 @@ module Google
4338
4356
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig]
4339
4357
  attr_accessor :media_recommendation_engine_config
4340
4358
 
4359
+ # Optional. Maps a model name to its specific configuration for this engine.
4360
+ # This allows admin users to turn on/off individual models. This only stores
4361
+ # models whose states are overridden by the admin. When the state is unspecified,
4362
+ # or model_configs is empty for this model, the system will decide if this
4363
+ # model should be available or not based on the default configuration. For
4364
+ # example, a preview model should be disabled by default if the admin has not
4365
+ # chosen to enable it.
4366
+ # Corresponds to the JSON property `modelConfigs`
4367
+ # @return [Hash<String,String>]
4368
+ attr_accessor :model_configs
4369
+
4341
4370
  # Immutable. Identifier. The fully qualified resource name of the engine. This
4342
4371
  # field must be a UTF-8 encoded string with a length limit of 1024 characters.
4343
4372
  # Format: `projects/`project`/locations/`location`/collections/`collection`/
@@ -4371,6 +4400,7 @@ module Google
4371
4400
  @app_type = args[:app_type] if args.key?(:app_type)
4372
4401
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
4373
4402
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
4403
+ @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
4374
4404
  @common_config = args[:common_config] if args.key?(:common_config)
4375
4405
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
4376
4406
  @create_time = args[:create_time] if args.key?(:create_time)
@@ -4380,6 +4410,7 @@ module Google
4380
4410
  @features = args[:features] if args.key?(:features)
4381
4411
  @industry_vertical = args[:industry_vertical] if args.key?(:industry_vertical)
4382
4412
  @media_recommendation_engine_config = args[:media_recommendation_engine_config] if args.key?(:media_recommendation_engine_config)
4413
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
4383
4414
  @name = args[:name] if args.key?(:name)
4384
4415
  @search_engine_config = args[:search_engine_config] if args.key?(:search_engine_config)
4385
4416
  @solution_type = args[:solution_type] if args.key?(:solution_type)
@@ -5260,6 +5291,16 @@ module Google
5260
5291
  class GoogleCloudDiscoveryengineV1Project
5261
5292
  include Google::Apis::Core::Hashable
5262
5293
 
5294
+ # Represents the currently effective configurable billing parameters. These
5295
+ # values are derived from the customer's subscription history stored internally
5296
+ # and reflect the thresholds actively being used for billing purposes at the
5297
+ # time of the GetProject call. This includes the start_time of the subscription
5298
+ # and may differ from the values in `customer_provided_config` due to billing
5299
+ # rules (e.g., scale-downs taking effect only at the start of a new month).
5300
+ # Corresponds to the JSON property `configurableBillingStatus`
5301
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus]
5302
+ attr_accessor :configurable_billing_status
5303
+
5263
5304
  # Output only. The timestamp when this project is created.
5264
5305
  # Corresponds to the JSON property `createTime`
5265
5306
  # @return [String]
@@ -5294,6 +5335,7 @@ module Google
5294
5335
 
5295
5336
  # Update properties of this object
5296
5337
  def update!(**args)
5338
+ @configurable_billing_status = args[:configurable_billing_status] if args.key?(:configurable_billing_status)
5297
5339
  @create_time = args[:create_time] if args.key?(:create_time)
5298
5340
  @customer_provided_config = args[:customer_provided_config] if args.key?(:customer_provided_config)
5299
5341
  @name = args[:name] if args.key?(:name)
@@ -5302,6 +5344,46 @@ module Google
5302
5344
  end
5303
5345
  end
5304
5346
 
5347
+ # Represents the currently effective configurable billing parameters. These
5348
+ # values are derived from the customer's subscription history stored internally
5349
+ # and reflect the thresholds actively being used for billing purposes at the
5350
+ # time of the GetProject call. This includes the start_time of the subscription
5351
+ # and may differ from the values in `customer_provided_config` due to billing
5352
+ # rules (e.g., scale-downs taking effect only at the start of a new month).
5353
+ class GoogleCloudDiscoveryengineV1ProjectConfigurableBillingStatus
5354
+ include Google::Apis::Core::Hashable
5355
+
5356
+ # Optional. The currently effective Indexing Core threshold. This is the
5357
+ # threshold against which Indexing Core usage is compared for overage
5358
+ # calculations.
5359
+ # Corresponds to the JSON property `effectiveIndexingCoreThreshold`
5360
+ # @return [Fixnum]
5361
+ attr_accessor :effective_indexing_core_threshold
5362
+
5363
+ # Optional. The currently effective Search QPM threshold in queries per minute.
5364
+ # This is the threshold against which QPM usage is compared for overage
5365
+ # calculations.
5366
+ # Corresponds to the JSON property `effectiveSearchQpmThreshold`
5367
+ # @return [Fixnum]
5368
+ attr_accessor :effective_search_qpm_threshold
5369
+
5370
+ # Optional. The start time of the currently active billing subscription.
5371
+ # Corresponds to the JSON property `startTime`
5372
+ # @return [String]
5373
+ attr_accessor :start_time
5374
+
5375
+ def initialize(**args)
5376
+ update!(**args)
5377
+ end
5378
+
5379
+ # Update properties of this object
5380
+ def update!(**args)
5381
+ @effective_indexing_core_threshold = args[:effective_indexing_core_threshold] if args.key?(:effective_indexing_core_threshold)
5382
+ @effective_search_qpm_threshold = args[:effective_search_qpm_threshold] if args.key?(:effective_search_qpm_threshold)
5383
+ @start_time = args[:start_time] if args.key?(:start_time)
5384
+ end
5385
+ end
5386
+
5305
5387
  # Customer provided configurations.
5306
5388
  class GoogleCloudDiscoveryengineV1ProjectCustomerProvidedConfig
5307
5389
  include Google::Apis::Core::Hashable
@@ -6890,6 +6972,25 @@ module Google
6890
6972
  end
6891
6973
  end
6892
6974
 
6975
+ # Stored definition of an agent that uses A2A.
6976
+ class GoogleCloudDiscoveryengineV1alphaA2AAgentDefinition
6977
+ include Google::Apis::Core::Hashable
6978
+
6979
+ # Optional. The agent card is a JSON string.
6980
+ # Corresponds to the JSON property `jsonAgentCard`
6981
+ # @return [String]
6982
+ attr_accessor :json_agent_card
6983
+
6984
+ def initialize(**args)
6985
+ update!(**args)
6986
+ end
6987
+
6988
+ # Update properties of this object
6989
+ def update!(**args)
6990
+ @json_agent_card = args[:json_agent_card] if args.key?(:json_agent_card)
6991
+ end
6992
+ end
6993
+
6893
6994
  # Access Control Configuration.
6894
6995
  class GoogleCloudDiscoveryengineV1alphaAclConfig
6895
6996
  include Google::Apis::Core::Hashable
@@ -7005,6 +7106,52 @@ module Google
7005
7106
  end
7006
7107
  end
7007
7108
 
7109
+ # Stores the definition of an agent that uses ADK and is deployed to Agent
7110
+ # Engine (formerly known as Reasoning Engine).
7111
+ class GoogleCloudDiscoveryengineV1alphaAdkAgentDefinition
7112
+ include Google::Apis::Core::Hashable
7113
+
7114
+ # Keeps track of the reasoning engine that the agent is connected to. This
7115
+ # message is not intended to keep track of agent's lifecycle. Instead it is only
7116
+ # used to define parameters to connect to the agent that is already deployed to
7117
+ # a reasoning engine.
7118
+ # Corresponds to the JSON property `provisionedReasoningEngine`
7119
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAdkAgentDefinitionProvisionedReasoningEngine]
7120
+ attr_accessor :provisioned_reasoning_engine
7121
+
7122
+ def initialize(**args)
7123
+ update!(**args)
7124
+ end
7125
+
7126
+ # Update properties of this object
7127
+ def update!(**args)
7128
+ @provisioned_reasoning_engine = args[:provisioned_reasoning_engine] if args.key?(:provisioned_reasoning_engine)
7129
+ end
7130
+ end
7131
+
7132
+ # Keeps track of the reasoning engine that the agent is connected to. This
7133
+ # message is not intended to keep track of agent's lifecycle. Instead it is only
7134
+ # used to define parameters to connect to the agent that is already deployed to
7135
+ # a reasoning engine.
7136
+ class GoogleCloudDiscoveryengineV1alphaAdkAgentDefinitionProvisionedReasoningEngine
7137
+ include Google::Apis::Core::Hashable
7138
+
7139
+ # Required. The reasoning engine that the agent is connected to. Format: `
7140
+ # projects/`project`/locations/`location`/reasoningEngines/`reasoning_engine``
7141
+ # Corresponds to the JSON property `reasoningEngine`
7142
+ # @return [String]
7143
+ attr_accessor :reasoning_engine
7144
+
7145
+ def initialize(**args)
7146
+ update!(**args)
7147
+ end
7148
+
7149
+ # Update properties of this object
7150
+ def update!(**args)
7151
+ @reasoning_engine = args[:reasoning_engine] if args.key?(:reasoning_engine)
7152
+ end
7153
+ end
7154
+
7008
7155
  # Request message for CompletionService.AdvancedCompleteQuery method. .
7009
7156
  class GoogleCloudDiscoveryengineV1alphaAdvancedCompleteQueryRequest
7010
7157
  include Google::Apis::Core::Hashable
@@ -7068,9 +7215,9 @@ module Google
7068
7215
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaUserInfo]
7069
7216
  attr_accessor :user_info
7070
7217
 
7071
- # A unique identifier for tracking visitors. For example, this could be
7072
- # implemented with an HTTP cookie, which should be able to uniquely identify a
7073
- # visitor on a single device. This unique identifier should not change if the
7218
+ # Optional. A unique identifier for tracking visitors. For example, this could
7219
+ # be implemented with an HTTP cookie, which should be able to uniquely identify
7220
+ # a visitor on a single device. This unique identifier should not change if the
7074
7221
  # visitor logs in or out of the website. This field should NOT have a fixed
7075
7222
  # value such as `unknown_visitor`. This should be the same identifier as
7076
7223
  # UserEvent.user_pseudo_id and SearchRequest.user_pseudo_id. The field must be a
@@ -7437,6 +7584,433 @@ module Google
7437
7584
  end
7438
7585
  end
7439
7586
 
7587
+ # Performs a predefined, specific task.
7588
+ class GoogleCloudDiscoveryengineV1alphaAgent
7589
+ include Google::Apis::Core::Hashable
7590
+
7591
+ # Stored definition of an agent that uses A2A.
7592
+ # Corresponds to the JSON property `a2aAgentDefinition`
7593
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaA2AAgentDefinition]
7594
+ attr_accessor :a2a_agent_definition
7595
+
7596
+ # Stores the definition of an agent that uses ADK and is deployed to Agent
7597
+ # Engine (formerly known as Reasoning Engine).
7598
+ # Corresponds to the JSON property `adkAgentDefinition`
7599
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAdkAgentDefinition]
7600
+ attr_accessor :adk_agent_definition
7601
+
7602
+ # Describes the authorizations required.
7603
+ # Corresponds to the JSON property `authorizationConfig`
7604
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAuthorizationConfig]
7605
+ attr_accessor :authorization_config
7606
+
7607
+ # Output only. Timestamp when this Agent was created.
7608
+ # Corresponds to the JSON property `createTime`
7609
+ # @return [String]
7610
+ attr_accessor :create_time
7611
+
7612
+ # Optional. The custom placeholder text that appears in the text box before the
7613
+ # user enters any text.
7614
+ # Corresponds to the JSON property `customPlaceholderText`
7615
+ # @return [String]
7616
+ attr_accessor :custom_placeholder_text
7617
+
7618
+ # Output only. The reason why the agent deployment failed. Only set if the state
7619
+ # is DEPLOYMENT_FAILED.
7620
+ # Corresponds to the JSON property `deploymentFailureReason`
7621
+ # @return [String]
7622
+ attr_accessor :deployment_failure_reason
7623
+
7624
+ # Required. Human-readable description of the agent. This might be used by an
7625
+ # LLM to automatically select an agent to respond to a user query.
7626
+ # Corresponds to the JSON property `description`
7627
+ # @return [String]
7628
+ attr_accessor :description
7629
+
7630
+ # Stored definition of an agent that uses a Dialogflow agent.
7631
+ # Corresponds to the JSON property `dialogflowAgentDefinition`
7632
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaDialogflowAgentDefinition]
7633
+ attr_accessor :dialogflow_agent_definition
7634
+
7635
+ # Required. Display name of the agent. This might be used by an LLM to
7636
+ # automatically select an agent to respond to a user query.
7637
+ # Corresponds to the JSON property `displayName`
7638
+ # @return [String]
7639
+ attr_accessor :display_name
7640
+
7641
+ # Represents an image.
7642
+ # Corresponds to the JSON property `icon`
7643
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentImage]
7644
+ attr_accessor :icon
7645
+
7646
+ # Optional. The code of the language of the text in the description,
7647
+ # display_name and starter_prompts fields.
7648
+ # Corresponds to the JSON property `languageCode`
7649
+ # @return [String]
7650
+ attr_accessor :language_code
7651
+
7652
+ # Identifier. Resource name of the agent. Format: `projects/`project`/locations/`
7653
+ # location`/collections/`collection`/engines/`engine`/assistants/`assistant`/
7654
+ # agents/`agent``
7655
+ # Corresponds to the JSON property `name`
7656
+ # @return [String]
7657
+ attr_accessor :name
7658
+
7659
+ # Output only. The reason why the agent was rejected. Only set if the state is
7660
+ # PRIVATE, and got there via rejection.
7661
+ # Corresponds to the JSON property `rejectionReason`
7662
+ # @return [String]
7663
+ attr_accessor :rejection_reason
7664
+
7665
+ # Sharing related configuration.
7666
+ # Corresponds to the JSON property `sharingConfig`
7667
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentSharingConfig]
7668
+ attr_accessor :sharing_config
7669
+
7670
+ # Optional. The starter prompt suggestions to show the user on the landing page
7671
+ # of the agent.
7672
+ # Corresponds to the JSON property `starterPrompts`
7673
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentStarterPrompt>]
7674
+ attr_accessor :starter_prompts
7675
+
7676
+ # Output only. The lifecycle state of the agent.
7677
+ # Corresponds to the JSON property `state`
7678
+ # @return [String]
7679
+ attr_accessor :state
7680
+
7681
+ # Output only. The reason why the agent was suspended. Only set if the state is
7682
+ # SUSPENDED.
7683
+ # Corresponds to the JSON property `suspensionReason`
7684
+ # @return [String]
7685
+ attr_accessor :suspension_reason
7686
+
7687
+ # Output only. Timestamp when this Agent was most recently updated.
7688
+ # Corresponds to the JSON property `updateTime`
7689
+ # @return [String]
7690
+ attr_accessor :update_time
7691
+
7692
+ def initialize(**args)
7693
+ update!(**args)
7694
+ end
7695
+
7696
+ # Update properties of this object
7697
+ def update!(**args)
7698
+ @a2a_agent_definition = args[:a2a_agent_definition] if args.key?(:a2a_agent_definition)
7699
+ @adk_agent_definition = args[:adk_agent_definition] if args.key?(:adk_agent_definition)
7700
+ @authorization_config = args[:authorization_config] if args.key?(:authorization_config)
7701
+ @create_time = args[:create_time] if args.key?(:create_time)
7702
+ @custom_placeholder_text = args[:custom_placeholder_text] if args.key?(:custom_placeholder_text)
7703
+ @deployment_failure_reason = args[:deployment_failure_reason] if args.key?(:deployment_failure_reason)
7704
+ @description = args[:description] if args.key?(:description)
7705
+ @dialogflow_agent_definition = args[:dialogflow_agent_definition] if args.key?(:dialogflow_agent_definition)
7706
+ @display_name = args[:display_name] if args.key?(:display_name)
7707
+ @icon = args[:icon] if args.key?(:icon)
7708
+ @language_code = args[:language_code] if args.key?(:language_code)
7709
+ @name = args[:name] if args.key?(:name)
7710
+ @rejection_reason = args[:rejection_reason] if args.key?(:rejection_reason)
7711
+ @sharing_config = args[:sharing_config] if args.key?(:sharing_config)
7712
+ @starter_prompts = args[:starter_prompts] if args.key?(:starter_prompts)
7713
+ @state = args[:state] if args.key?(:state)
7714
+ @suspension_reason = args[:suspension_reason] if args.key?(:suspension_reason)
7715
+ @update_time = args[:update_time] if args.key?(:update_time)
7716
+ end
7717
+ end
7718
+
7719
+ # Describes a file used internally by an agent as a context on each invocation.
7720
+ class GoogleCloudDiscoveryengineV1alphaAgentFile
7721
+ include Google::Apis::Core::Hashable
7722
+
7723
+ # Required. The name of the file.
7724
+ # Corresponds to the JSON property `fileName`
7725
+ # @return [String]
7726
+ attr_accessor :file_name
7727
+
7728
+ # Immutable. The content type of the file.
7729
+ # Corresponds to the JSON property `mimeType`
7730
+ # @return [String]
7731
+ attr_accessor :mime_type
7732
+
7733
+ # Identifier. The resource name of the file. Format: `projects/`project`/
7734
+ # locations/`location`/collections/`collection`/engines/`engine`/assistants/`
7735
+ # assistant`/agents/`agent`/files/`file``
7736
+ # Corresponds to the JSON property `name`
7737
+ # @return [String]
7738
+ attr_accessor :name
7739
+
7740
+ def initialize(**args)
7741
+ update!(**args)
7742
+ end
7743
+
7744
+ # Update properties of this object
7745
+ def update!(**args)
7746
+ @file_name = args[:file_name] if args.key?(:file_name)
7747
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
7748
+ @name = args[:name] if args.key?(:name)
7749
+ end
7750
+ end
7751
+
7752
+ # Represents an image.
7753
+ class GoogleCloudDiscoveryengineV1alphaAgentImage
7754
+ include Google::Apis::Core::Hashable
7755
+
7756
+ # Base64-encoded image file contents.
7757
+ # Corresponds to the JSON property `content`
7758
+ # @return [String]
7759
+ attr_accessor :content
7760
+
7761
+ # Image URI.
7762
+ # Corresponds to the JSON property `uri`
7763
+ # @return [String]
7764
+ attr_accessor :uri
7765
+
7766
+ def initialize(**args)
7767
+ update!(**args)
7768
+ end
7769
+
7770
+ # Update properties of this object
7771
+ def update!(**args)
7772
+ @content = args[:content] if args.key?(:content)
7773
+ @uri = args[:uri] if args.key?(:uri)
7774
+ end
7775
+ end
7776
+
7777
+ # Sharing related configuration.
7778
+ class GoogleCloudDiscoveryengineV1alphaAgentSharingConfig
7779
+ include Google::Apis::Core::Hashable
7780
+
7781
+ # Optional. The sharing scope of the agent.
7782
+ # Corresponds to the JSON property `scope`
7783
+ # @return [String]
7784
+ attr_accessor :scope
7785
+
7786
+ def initialize(**args)
7787
+ update!(**args)
7788
+ end
7789
+
7790
+ # Update properties of this object
7791
+ def update!(**args)
7792
+ @scope = args[:scope] if args.key?(:scope)
7793
+ end
7794
+ end
7795
+
7796
+ # The starter prompt suggestion to show the user on the landing page of the
7797
+ # agent.
7798
+ class GoogleCloudDiscoveryengineV1alphaAgentStarterPrompt
7799
+ include Google::Apis::Core::Hashable
7800
+
7801
+ # Required. The text of the starter prompt.
7802
+ # Corresponds to the JSON property `text`
7803
+ # @return [String]
7804
+ attr_accessor :text
7805
+
7806
+ def initialize(**args)
7807
+ update!(**args)
7808
+ end
7809
+
7810
+ # Update properties of this object
7811
+ def update!(**args)
7812
+ @text = args[:text] if args.key?(:text)
7813
+ end
7814
+ end
7815
+
7816
+ # The data for displaying an Agent.
7817
+ class GoogleCloudDiscoveryengineV1alphaAgentView
7818
+ include Google::Apis::Core::Hashable
7819
+
7820
+ # Immutable. The origin of the Agent.
7821
+ # Corresponds to the JSON property `agentOrigin`
7822
+ # @return [String]
7823
+ attr_accessor :agent_origin
7824
+
7825
+ # Output only. The sharing state of the agent.
7826
+ # Corresponds to the JSON property `agentSharingState`
7827
+ # @return [String]
7828
+ attr_accessor :agent_sharing_state
7829
+
7830
+ # Output only. The type of the agent.
7831
+ # Corresponds to the JSON property `agentType`
7832
+ # @return [String]
7833
+ attr_accessor :agent_type
7834
+
7835
+ # The custom placeholder text that appears in the text box before the user
7836
+ # enters any text.
7837
+ # Corresponds to the JSON property `customPlaceholderText`
7838
+ # @return [String]
7839
+ attr_accessor :custom_placeholder_text
7840
+
7841
+ # The reason why the agent deployment failed. Only set if the state is
7842
+ # DEPLOYMENT_FAILED.
7843
+ # Corresponds to the JSON property `deploymentFailureReason`
7844
+ # @return [String]
7845
+ attr_accessor :deployment_failure_reason
7846
+
7847
+ # Required. Human-readable description of the agent. This might be used by an
7848
+ # LLM to automatically select an agent to respond to a user query and to
7849
+ # generate the first version of the steps for the agent that can be modified by
7850
+ # the user. The language of this is either Agent.language_code, or
7851
+ # ListAvailableAgentViewsRequest.language_code if translations are enabled.
7852
+ # Corresponds to the JSON property `description`
7853
+ # @return [String]
7854
+ attr_accessor :description
7855
+
7856
+ # Required. Display name of the agent. The language of this is either Agent.
7857
+ # language_code, or ListAvailableAgentViewsRequest.language_code if translations
7858
+ # are enabled.
7859
+ # Corresponds to the JSON property `displayName`
7860
+ # @return [String]
7861
+ attr_accessor :display_name
7862
+
7863
+ # Represents an image.
7864
+ # Corresponds to the JSON property `icon`
7865
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentImage]
7866
+ attr_accessor :icon
7867
+
7868
+ # Resource name of the agent. Format: `projects/`project`/locations/`location`/
7869
+ # collections/`collection`/engines/`engine`/assistants/`assistant`/agents/`agent`
7870
+ # `
7871
+ # Corresponds to the JSON property `name`
7872
+ # @return [String]
7873
+ attr_accessor :name
7874
+
7875
+ # The reason why the agent was rejected. Only set if the state is PRIVATE, and
7876
+ # got there via rejection.
7877
+ # Corresponds to the JSON property `rejectionReason`
7878
+ # @return [String]
7879
+ attr_accessor :rejection_reason
7880
+
7881
+ # Output only. The state of the Agent.
7882
+ # Corresponds to the JSON property `state`
7883
+ # @return [String]
7884
+ attr_accessor :state
7885
+
7886
+ # Optional. The suggested prompts for the agent, to be shown on the agent
7887
+ # landing page.
7888
+ # Corresponds to the JSON property `suggestedPrompts`
7889
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentViewSuggestedPrompt>]
7890
+ attr_accessor :suggested_prompts
7891
+
7892
+ # The reason why the agent was suspended. Only set if the state is SUSPENDED.
7893
+ # Corresponds to the JSON property `suspensionReason`
7894
+ # @return [String]
7895
+ attr_accessor :suspension_reason
7896
+
7897
+ # Per-user annotations for an Agent, based on UserAnnotation.
7898
+ # Corresponds to the JSON property `userAnnotations`
7899
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaUserAnnotations]
7900
+ attr_accessor :user_annotations
7901
+
7902
+ # The permissions of the user on an Agent.
7903
+ # Corresponds to the JSON property `userPermissions`
7904
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentViewUserPermissions]
7905
+ attr_accessor :user_permissions
7906
+
7907
+ def initialize(**args)
7908
+ update!(**args)
7909
+ end
7910
+
7911
+ # Update properties of this object
7912
+ def update!(**args)
7913
+ @agent_origin = args[:agent_origin] if args.key?(:agent_origin)
7914
+ @agent_sharing_state = args[:agent_sharing_state] if args.key?(:agent_sharing_state)
7915
+ @agent_type = args[:agent_type] if args.key?(:agent_type)
7916
+ @custom_placeholder_text = args[:custom_placeholder_text] if args.key?(:custom_placeholder_text)
7917
+ @deployment_failure_reason = args[:deployment_failure_reason] if args.key?(:deployment_failure_reason)
7918
+ @description = args[:description] if args.key?(:description)
7919
+ @display_name = args[:display_name] if args.key?(:display_name)
7920
+ @icon = args[:icon] if args.key?(:icon)
7921
+ @name = args[:name] if args.key?(:name)
7922
+ @rejection_reason = args[:rejection_reason] if args.key?(:rejection_reason)
7923
+ @state = args[:state] if args.key?(:state)
7924
+ @suggested_prompts = args[:suggested_prompts] if args.key?(:suggested_prompts)
7925
+ @suspension_reason = args[:suspension_reason] if args.key?(:suspension_reason)
7926
+ @user_annotations = args[:user_annotations] if args.key?(:user_annotations)
7927
+ @user_permissions = args[:user_permissions] if args.key?(:user_permissions)
7928
+ end
7929
+ end
7930
+
7931
+ # A suggested prompt for the agent, to be shown on the agent landing page.
7932
+ class GoogleCloudDiscoveryengineV1alphaAgentViewSuggestedPrompt
7933
+ include Google::Apis::Core::Hashable
7934
+
7935
+ # Required. The text of the suggested prompt. The language of this is either
7936
+ # Agent.language_code, or ListAvailableAgentViewsRequest.language_code if
7937
+ # translations are enabled.
7938
+ # Corresponds to the JSON property `text`
7939
+ # @return [String]
7940
+ attr_accessor :text
7941
+
7942
+ def initialize(**args)
7943
+ update!(**args)
7944
+ end
7945
+
7946
+ # Update properties of this object
7947
+ def update!(**args)
7948
+ @text = args[:text] if args.key?(:text)
7949
+ end
7950
+ end
7951
+
7952
+ # The permissions of the user on an Agent.
7953
+ class GoogleCloudDiscoveryengineV1alphaAgentViewUserPermissions
7954
+ include Google::Apis::Core::Hashable
7955
+
7956
+ # If the user can delete this Agent.
7957
+ # Corresponds to the JSON property `canDelete`
7958
+ # @return [Boolean]
7959
+ attr_accessor :can_delete
7960
+ alias_method :can_delete?, :can_delete
7961
+
7962
+ # If the user can edit this Agent.
7963
+ # Corresponds to the JSON property `canEdit`
7964
+ # @return [Boolean]
7965
+ attr_accessor :can_edit
7966
+ alias_method :can_edit?, :can_edit
7967
+
7968
+ # If the user can propose other users to share the Agent with.
7969
+ # Corresponds to the JSON property `canProposeUsers`
7970
+ # @return [Boolean]
7971
+ attr_accessor :can_propose_users
7972
+ alias_method :can_propose_users?, :can_propose_users
7973
+
7974
+ # If the user can request a review for this Agent.
7975
+ # Corresponds to the JSON property `canRequestReview`
7976
+ # @return [Boolean]
7977
+ attr_accessor :can_request_review
7978
+ alias_method :can_request_review?, :can_request_review
7979
+
7980
+ # If the user can run this Agent.
7981
+ # Corresponds to the JSON property `canRun`
7982
+ # @return [Boolean]
7983
+ attr_accessor :can_run
7984
+ alias_method :can_run?, :can_run
7985
+
7986
+ # If the user can view the source of this Agent.
7987
+ # Corresponds to the JSON property `canView`
7988
+ # @return [Boolean]
7989
+ attr_accessor :can_view
7990
+ alias_method :can_view?, :can_view
7991
+
7992
+ # If the user can withdraw this Agent.
7993
+ # Corresponds to the JSON property `canWithdraw`
7994
+ # @return [Boolean]
7995
+ attr_accessor :can_withdraw
7996
+ alias_method :can_withdraw?, :can_withdraw
7997
+
7998
+ def initialize(**args)
7999
+ update!(**args)
8000
+ end
8001
+
8002
+ # Update properties of this object
8003
+ def update!(**args)
8004
+ @can_delete = args[:can_delete] if args.key?(:can_delete)
8005
+ @can_edit = args[:can_edit] if args.key?(:can_edit)
8006
+ @can_propose_users = args[:can_propose_users] if args.key?(:can_propose_users)
8007
+ @can_request_review = args[:can_request_review] if args.key?(:can_request_review)
8008
+ @can_run = args[:can_run] if args.key?(:can_run)
8009
+ @can_view = args[:can_view] if args.key?(:can_view)
8010
+ @can_withdraw = args[:can_withdraw] if args.key?(:can_withdraw)
8011
+ end
8012
+ end
8013
+
7440
8014
  # The connector level alert config.
7441
8015
  class GoogleCloudDiscoveryengineV1alphaAlertPolicyConfig
7442
8016
  include Google::Apis::Core::Hashable
@@ -10173,6 +10747,117 @@ module Google
10173
10747
  end
10174
10748
  end
10175
10749
 
10750
+ # Discovery Engine Authorization resource.
10751
+ class GoogleCloudDiscoveryengineV1alphaAuthorization
10752
+ include Google::Apis::Core::Hashable
10753
+
10754
+ # Required. The display name of the authorization. It must be a UTF-8 encoded
10755
+ # string with a length limit of 128 characters.
10756
+ # Corresponds to the JSON property `displayName`
10757
+ # @return [String]
10758
+ attr_accessor :display_name
10759
+
10760
+ # Identifier. Resource name of the authorization. Format: `projects/`project`/
10761
+ # locations/`location`/authorizations/`authorization`` It must be a UTF-8
10762
+ # encoded string with a length limit of 1024 characters.
10763
+ # Corresponds to the JSON property `name`
10764
+ # @return [String]
10765
+ attr_accessor :name
10766
+
10767
+ # OAuth2 configuration.
10768
+ # Corresponds to the JSON property `serverSideOauth2`
10769
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAuthorizationServerSideOAuth2]
10770
+ attr_accessor :server_side_oauth2
10771
+
10772
+ def initialize(**args)
10773
+ update!(**args)
10774
+ end
10775
+
10776
+ # Update properties of this object
10777
+ def update!(**args)
10778
+ @display_name = args[:display_name] if args.key?(:display_name)
10779
+ @name = args[:name] if args.key?(:name)
10780
+ @server_side_oauth2 = args[:server_side_oauth2] if args.key?(:server_side_oauth2)
10781
+ end
10782
+ end
10783
+
10784
+ # Describes the authorizations required.
10785
+ class GoogleCloudDiscoveryengineV1alphaAuthorizationConfig
10786
+ include Google::Apis::Core::Hashable
10787
+
10788
+ # Optional. The authorization that is required to invoke the agent. Auth tokens
10789
+ # will be passed to the agent as part of the request auth header.
10790
+ # Corresponds to the JSON property `agentAuthorization`
10791
+ # @return [String]
10792
+ attr_accessor :agent_authorization
10793
+
10794
+ # Optional. List of required authorizations for agent to access other resources.
10795
+ # Auth tokens will be passed to the agent as part of the request body.
10796
+ # Corresponds to the JSON property `toolAuthorizations`
10797
+ # @return [Array<String>]
10798
+ attr_accessor :tool_authorizations
10799
+
10800
+ def initialize(**args)
10801
+ update!(**args)
10802
+ end
10803
+
10804
+ # Update properties of this object
10805
+ def update!(**args)
10806
+ @agent_authorization = args[:agent_authorization] if args.key?(:agent_authorization)
10807
+ @tool_authorizations = args[:tool_authorizations] if args.key?(:tool_authorizations)
10808
+ end
10809
+ end
10810
+
10811
+ # OAuth2 configuration.
10812
+ class GoogleCloudDiscoveryengineV1alphaAuthorizationServerSideOAuth2
10813
+ include Google::Apis::Core::Hashable
10814
+
10815
+ # Required. The URI the user is directed to when they need to authorize. Should
10816
+ # include everything required for a successful authorization: OAuth ID, extra
10817
+ # flags, etc. Example: `https://accounts.google.com/o/oauth2/v2/auth?client_id=
10818
+ # OAUTH_ID&scope=https://www.googleapis.com/auth/calendar.events&response_type=
10819
+ # code&access_type=offline&prompt=consent` The `redirect_uri` parameter will be
10820
+ # overwritten by the Vertex AI Search frontend.
10821
+ # Corresponds to the JSON property `authorizationUri`
10822
+ # @return [String]
10823
+ attr_accessor :authorization_uri
10824
+
10825
+ # Required. The OAuth2 client ID.
10826
+ # Corresponds to the JSON property `clientId`
10827
+ # @return [String]
10828
+ attr_accessor :client_id
10829
+
10830
+ # Required. The OAuth2 client secret. Encrypted at rest.
10831
+ # Corresponds to the JSON property `clientSecret`
10832
+ # @return [String]
10833
+ attr_accessor :client_secret
10834
+
10835
+ # Required. The scopes to request. Example: `https://www.googleapis.com/auth/
10836
+ # calendar.events`
10837
+ # Corresponds to the JSON property `scopes`
10838
+ # @return [Array<String>]
10839
+ attr_accessor :scopes
10840
+
10841
+ # Required. The HTTP endpoint that exchanges a client authorization for an
10842
+ # access token.
10843
+ # Corresponds to the JSON property `tokenUri`
10844
+ # @return [String]
10845
+ attr_accessor :token_uri
10846
+
10847
+ def initialize(**args)
10848
+ update!(**args)
10849
+ end
10850
+
10851
+ # Update properties of this object
10852
+ def update!(**args)
10853
+ @authorization_uri = args[:authorization_uri] if args.key?(:authorization_uri)
10854
+ @client_id = args[:client_id] if args.key?(:client_id)
10855
+ @client_secret = args[:client_secret] if args.key?(:client_secret)
10856
+ @scopes = args[:scopes] if args.key?(:scopes)
10857
+ @token_uri = args[:token_uri] if args.key?(:token_uri)
10858
+ end
10859
+ end
10860
+
10176
10861
  # The configuration for the BAP connector.
10177
10862
  class GoogleCloudDiscoveryengineV1alphaBapConfig
10178
10863
  include Google::Apis::Core::Hashable
@@ -10684,43 +11369,148 @@ module Google
10684
11369
  # @return [String]
10685
11370
  attr_accessor :type
10686
11371
 
10687
- def initialize(**args)
10688
- update!(**args)
10689
- end
11372
+ def initialize(**args)
11373
+ update!(**args)
11374
+ end
11375
+
11376
+ # Update properties of this object
11377
+ def update!(**args)
11378
+ @columns = args[:columns] if args.key?(:columns)
11379
+ @encoding = args[:encoding] if args.key?(:encoding)
11380
+ @field_name = args[:field_name] if args.key?(:field_name)
11381
+ @type = args[:type] if args.key?(:type)
11382
+ end
11383
+ end
11384
+
11385
+ # The Cloud Bigtable source for importing data.
11386
+ class GoogleCloudDiscoveryengineV1alphaBigtableSource
11387
+ include Google::Apis::Core::Hashable
11388
+
11389
+ # The Bigtable Options object that contains information to support the import.
11390
+ # Corresponds to the JSON property `bigtableOptions`
11391
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBigtableOptions]
11392
+ attr_accessor :bigtable_options
11393
+
11394
+ # Required. The instance ID of the Cloud Bigtable that needs to be imported.
11395
+ # Corresponds to the JSON property `instanceId`
11396
+ # @return [String]
11397
+ attr_accessor :instance_id
11398
+
11399
+ # The project ID that contains the Bigtable source. Has a length limit of 128
11400
+ # characters. If not specified, inherits the project ID from the parent request.
11401
+ # Corresponds to the JSON property `projectId`
11402
+ # @return [String]
11403
+ attr_accessor :project_id
11404
+
11405
+ # Required. The table ID of the Cloud Bigtable that needs to be imported.
11406
+ # Corresponds to the JSON property `tableId`
11407
+ # @return [String]
11408
+ attr_accessor :table_id
11409
+
11410
+ def initialize(**args)
11411
+ update!(**args)
11412
+ end
11413
+
11414
+ # Update properties of this object
11415
+ def update!(**args)
11416
+ @bigtable_options = args[:bigtable_options] if args.key?(:bigtable_options)
11417
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
11418
+ @project_id = args[:project_id] if args.key?(:project_id)
11419
+ @table_id = args[:table_id] if args.key?(:table_id)
11420
+ end
11421
+ end
11422
+
11423
+ # Information about license configs at billing account level.
11424
+ class GoogleCloudDiscoveryengineV1alphaBillingAccountLicenseConfig
11425
+ include Google::Apis::Core::Hashable
11426
+
11427
+ # Whether the BillingAccountLicenseConfig is auto renewed when it reaches the
11428
+ # end date.
11429
+ # Corresponds to the JSON property `autoRenew`
11430
+ # @return [Boolean]
11431
+ attr_accessor :auto_renew
11432
+ alias_method :auto_renew?, :auto_renew
11433
+
11434
+ # Represents a whole or partial calendar date, such as a birthday. The time of
11435
+ # day and time zone are either specified elsewhere or are insignificant. The
11436
+ # date is relative to the Gregorian Calendar. This can represent one of the
11437
+ # following: * A full date, with non-zero year, month, and day values. * A month
11438
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
11439
+ # with a zero month and a zero day. * A year and month, with a zero day (for
11440
+ # example, a credit card expiration date). Related types: * google.type.
11441
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
11442
+ # Corresponds to the JSON property `endDate`
11443
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleTypeDate]
11444
+ attr_accessor :end_date
11445
+
11446
+ # Whether the license config is for Gemini bundle.
11447
+ # Corresponds to the JSON property `geminiBundle`
11448
+ # @return [Boolean]
11449
+ attr_accessor :gemini_bundle
11450
+ alias_method :gemini_bundle?, :gemini_bundle
11451
+
11452
+ # A map of LicenseConfig names to the number of licenses distributed to each.
11453
+ # The key is the full resource name of the LicenseConfig, such as `projects/`
11454
+ # project`/locations/`location`/licenseConfigs/`license_config``. The value is
11455
+ # the count of licenses allocated to it.
11456
+ # Corresponds to the JSON property `licenseConfigDistributions`
11457
+ # @return [Hash<String,Fixnum>]
11458
+ attr_accessor :license_config_distributions
11459
+
11460
+ # Required. The number of licenses purchased under this billing account license
11461
+ # config.
11462
+ # Corresponds to the JSON property `licenseCount`
11463
+ # @return [Fixnum]
11464
+ attr_accessor :license_count
11465
+
11466
+ # Immutable. Identifier. The fully qualified resource name of the billing
11467
+ # account license config. Format: `billingAccounts/`billing_account`/
11468
+ # billingAccountLicenseConfigs/`billing_account_license_config``.
11469
+ # Corresponds to the JSON property `name`
11470
+ # @return [String]
11471
+ attr_accessor :name
11472
+
11473
+ # The procurement entitlement id of the subscription.
11474
+ # Corresponds to the JSON property `procurementEntitlementId`
11475
+ # @return [String]
11476
+ attr_accessor :procurement_entitlement_id
10690
11477
 
10691
- # Update properties of this object
10692
- def update!(**args)
10693
- @columns = args[:columns] if args.key?(:columns)
10694
- @encoding = args[:encoding] if args.key?(:encoding)
10695
- @field_name = args[:field_name] if args.key?(:field_name)
10696
- @type = args[:type] if args.key?(:type)
10697
- end
10698
- end
11478
+ # Represents a whole or partial calendar date, such as a birthday. The time of
11479
+ # day and time zone are either specified elsewhere or are insignificant. The
11480
+ # date is relative to the Gregorian Calendar. This can represent one of the
11481
+ # following: * A full date, with non-zero year, month, and day values. * A month
11482
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
11483
+ # with a zero month and a zero day. * A year and month, with a zero day (for
11484
+ # example, a credit card expiration date). Related types: * google.type.
11485
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
11486
+ # Corresponds to the JSON property `startDate`
11487
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleTypeDate]
11488
+ attr_accessor :start_date
10699
11489
 
10700
- # The Cloud Bigtable source for importing data.
10701
- class GoogleCloudDiscoveryengineV1alphaBigtableSource
10702
- include Google::Apis::Core::Hashable
11490
+ # Output only. The state of the BillingAccountLicenseConfig.
11491
+ # Corresponds to the JSON property `state`
11492
+ # @return [String]
11493
+ attr_accessor :state
10703
11494
 
10704
- # The Bigtable Options object that contains information to support the import.
10705
- # Corresponds to the JSON property `bigtableOptions`
10706
- # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBigtableOptions]
10707
- attr_accessor :bigtable_options
11495
+ # The subscription display name.
11496
+ # Corresponds to the JSON property `subscriptionDisplayName`
11497
+ # @return [String]
11498
+ attr_accessor :subscription_display_name
10708
11499
 
10709
- # Required. The instance ID of the Cloud Bigtable that needs to be imported.
10710
- # Corresponds to the JSON property `instanceId`
11500
+ # Output only. The corresponding SubV3 subscription name.
11501
+ # Corresponds to the JSON property `subscriptionName`
10711
11502
  # @return [String]
10712
- attr_accessor :instance_id
11503
+ attr_accessor :subscription_name
10713
11504
 
10714
- # The project ID that contains the Bigtable source. Has a length limit of 128
10715
- # characters. If not specified, inherits the project ID from the parent request.
10716
- # Corresponds to the JSON property `projectId`
11505
+ # Required. The subscription term.
11506
+ # Corresponds to the JSON property `subscriptionTerm`
10717
11507
  # @return [String]
10718
- attr_accessor :project_id
11508
+ attr_accessor :subscription_term
10719
11509
 
10720
- # Required. The table ID of the Cloud Bigtable that needs to be imported.
10721
- # Corresponds to the JSON property `tableId`
11510
+ # Required. The subscription tier.
11511
+ # Corresponds to the JSON property `subscriptionTier`
10722
11512
  # @return [String]
10723
- attr_accessor :table_id
11513
+ attr_accessor :subscription_tier
10724
11514
 
10725
11515
  def initialize(**args)
10726
11516
  update!(**args)
@@ -10728,10 +11518,19 @@ module Google
10728
11518
 
10729
11519
  # Update properties of this object
10730
11520
  def update!(**args)
10731
- @bigtable_options = args[:bigtable_options] if args.key?(:bigtable_options)
10732
- @instance_id = args[:instance_id] if args.key?(:instance_id)
10733
- @project_id = args[:project_id] if args.key?(:project_id)
10734
- @table_id = args[:table_id] if args.key?(:table_id)
11521
+ @auto_renew = args[:auto_renew] if args.key?(:auto_renew)
11522
+ @end_date = args[:end_date] if args.key?(:end_date)
11523
+ @gemini_bundle = args[:gemini_bundle] if args.key?(:gemini_bundle)
11524
+ @license_config_distributions = args[:license_config_distributions] if args.key?(:license_config_distributions)
11525
+ @license_count = args[:license_count] if args.key?(:license_count)
11526
+ @name = args[:name] if args.key?(:name)
11527
+ @procurement_entitlement_id = args[:procurement_entitlement_id] if args.key?(:procurement_entitlement_id)
11528
+ @start_date = args[:start_date] if args.key?(:start_date)
11529
+ @state = args[:state] if args.key?(:state)
11530
+ @subscription_display_name = args[:subscription_display_name] if args.key?(:subscription_display_name)
11531
+ @subscription_name = args[:subscription_name] if args.key?(:subscription_name)
11532
+ @subscription_term = args[:subscription_term] if args.key?(:subscription_term)
11533
+ @subscription_tier = args[:subscription_tier] if args.key?(:subscription_tier)
10735
11534
  end
10736
11535
  end
10737
11536
 
@@ -13758,6 +14557,11 @@ module Google
13758
14557
  # @return [String]
13759
14558
  attr_accessor :configurable_billing_approach
13760
14559
 
14560
+ # Output only. The timestamp when configurable_billing_approach was last updated.
14561
+ # Corresponds to the JSON property `configurableBillingApproachUpdateTime`
14562
+ # @return [String]
14563
+ attr_accessor :configurable_billing_approach_update_time
14564
+
13761
14565
  # Immutable. The content config of the data store. If this field is unset, the
13762
14566
  # server behavior defaults to ContentConfig.NO_CONTENT.
13763
14567
  # Corresponds to the JSON property `contentConfig`
@@ -13877,6 +14681,7 @@ module Google
13877
14681
  @billing_estimation = args[:billing_estimation] if args.key?(:billing_estimation)
13878
14682
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
13879
14683
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
14684
+ @configurable_billing_approach_update_time = args[:configurable_billing_approach_update_time] if args.key?(:configurable_billing_approach_update_time)
13880
14685
  @content_config = args[:content_config] if args.key?(:content_config)
13881
14686
  @create_time = args[:create_time] if args.key?(:create_time)
13882
14687
  @default_schema_id = args[:default_schema_id] if args.key?(:default_schema_id)
@@ -14007,6 +14812,33 @@ module Google
14007
14812
  end
14008
14813
  end
14009
14814
 
14815
+ # Metadata related to the progress of the AgentService.DeleteAgent operation.
14816
+ # This will be returned by the google.longrunning.Operation.metadata field.
14817
+ class GoogleCloudDiscoveryengineV1alphaDeleteAgentMetadata
14818
+ include Google::Apis::Core::Hashable
14819
+
14820
+ # Operation create time.
14821
+ # Corresponds to the JSON property `createTime`
14822
+ # @return [String]
14823
+ attr_accessor :create_time
14824
+
14825
+ # Operation last update time. If the operation is done, this is also the finish
14826
+ # time.
14827
+ # Corresponds to the JSON property `updateTime`
14828
+ # @return [String]
14829
+ attr_accessor :update_time
14830
+
14831
+ def initialize(**args)
14832
+ update!(**args)
14833
+ end
14834
+
14835
+ # Update properties of this object
14836
+ def update!(**args)
14837
+ @create_time = args[:create_time] if args.key?(:create_time)
14838
+ @update_time = args[:update_time] if args.key?(:update_time)
14839
+ end
14840
+ end
14841
+
14010
14842
  # Metadata related to the progress of the CmekConfigService.DeleteCmekConfig
14011
14843
  # operation. This will be returned by the google.longrunning.Operation.metadata
14012
14844
  # field.
@@ -14341,6 +15173,26 @@ module Google
14341
15173
  end
14342
15174
  end
14343
15175
 
15176
+ # Stored definition of an agent that uses a Dialogflow agent.
15177
+ class GoogleCloudDiscoveryengineV1alphaDialogflowAgentDefinition
15178
+ include Google::Apis::Core::Hashable
15179
+
15180
+ # Required. Resource name of the underlying Dialogflow Agent. Format: `projects/`
15181
+ # project`/locations/`location`/agents/`agent``
15182
+ # Corresponds to the JSON property `dialogflowAgent`
15183
+ # @return [String]
15184
+ attr_accessor :dialogflow_agent
15185
+
15186
+ def initialize(**args)
15187
+ update!(**args)
15188
+ end
15189
+
15190
+ # Update properties of this object
15191
+ def update!(**args)
15192
+ @dialogflow_agent = args[:dialogflow_agent] if args.key?(:dialogflow_agent)
15193
+ end
15194
+ end
15195
+
14344
15196
  # Metadata related to the progress of the SiteSearchEngineService.
14345
15197
  # DisableAdvancedSiteSearch operation. This will be returned by the google.
14346
15198
  # longrunning.Operation.metadata field.
@@ -14904,6 +15756,12 @@ module Google
14904
15756
  attr_accessor :enable_image_annotation
14905
15757
  alias_method :enable_image_annotation?, :enable_image_annotation
14906
15758
 
15759
+ # Optional. If true, the pdf layout will be refined using an LLM.
15760
+ # Corresponds to the JSON property `enableLlmLayoutParsing`
15761
+ # @return [Boolean]
15762
+ attr_accessor :enable_llm_layout_parsing
15763
+ alias_method :enable_llm_layout_parsing?, :enable_llm_layout_parsing
15764
+
14907
15765
  # Optional. If true, the LLM based annotation is added to the table during
14908
15766
  # parsing.
14909
15767
  # Corresponds to the JSON property `enableTableAnnotation`
@@ -14940,6 +15798,7 @@ module Google
14940
15798
  def update!(**args)
14941
15799
  @enable_get_processed_document = args[:enable_get_processed_document] if args.key?(:enable_get_processed_document)
14942
15800
  @enable_image_annotation = args[:enable_image_annotation] if args.key?(:enable_image_annotation)
15801
+ @enable_llm_layout_parsing = args[:enable_llm_layout_parsing] if args.key?(:enable_llm_layout_parsing)
14943
15802
  @enable_table_annotation = args[:enable_table_annotation] if args.key?(:enable_table_annotation)
14944
15803
  @exclude_html_classes = args[:exclude_html_classes] if args.key?(:exclude_html_classes)
14945
15804
  @exclude_html_elements = args[:exclude_html_elements] if args.key?(:exclude_html_elements)
@@ -15090,6 +15949,11 @@ module Google
15090
15949
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaEngineChatEngineMetadata]
15091
15950
  attr_accessor :chat_engine_metadata
15092
15951
 
15952
+ # Configurations used to enable CMEK data encryption with Cloud KMS keys.
15953
+ # Corresponds to the JSON property `cmekConfig`
15954
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaCmekConfig]
15955
+ attr_accessor :cmek_config
15956
+
15093
15957
  # Common configurations for an Engine.
15094
15958
  # Corresponds to the JSON property `commonConfig`
15095
15959
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaEngineCommonConfig]
@@ -15151,6 +16015,17 @@ module Google
15151
16015
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaEngineMediaRecommendationEngineConfig]
15152
16016
  attr_accessor :media_recommendation_engine_config
15153
16017
 
16018
+ # Optional. Maps a model name to its specific configuration for this engine.
16019
+ # This allows admin users to turn on/off individual models. This only stores
16020
+ # models whose states are overridden by the admin. When the state is unspecified,
16021
+ # or model_configs is empty for this model, the system will decide if this
16022
+ # model should be available or not based on the default configuration. For
16023
+ # example, a preview model should be disabled by default if the admin has not
16024
+ # chosen to enable it.
16025
+ # Corresponds to the JSON property `modelConfigs`
16026
+ # @return [Hash<String,String>]
16027
+ attr_accessor :model_configs
16028
+
15154
16029
  # Immutable. Identifier. The fully qualified resource name of the engine. This
15155
16030
  # field must be a UTF-8 encoded string with a length limit of 1024 characters.
15156
16031
  # Format: `projects/`project`/locations/`location`/collections/`collection`/
@@ -15194,6 +16069,7 @@ module Google
15194
16069
  @app_type = args[:app_type] if args.key?(:app_type)
15195
16070
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
15196
16071
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
16072
+ @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
15197
16073
  @common_config = args[:common_config] if args.key?(:common_config)
15198
16074
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
15199
16075
  @create_time = args[:create_time] if args.key?(:create_time)
@@ -15203,6 +16079,7 @@ module Google
15203
16079
  @features = args[:features] if args.key?(:features)
15204
16080
  @industry_vertical = args[:industry_vertical] if args.key?(:industry_vertical)
15205
16081
  @media_recommendation_engine_config = args[:media_recommendation_engine_config] if args.key?(:media_recommendation_engine_config)
16082
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
15206
16083
  @name = args[:name] if args.key?(:name)
15207
16084
  @recommendation_metadata = args[:recommendation_metadata] if args.key?(:recommendation_metadata)
15208
16085
  @search_engine_config = args[:search_engine_config] if args.key?(:search_engine_config)
@@ -16516,6 +17393,25 @@ module Google
16516
17393
  end
16517
17394
  end
16518
17395
 
17396
+ # Response message for the AgentService.GetAgentView method.
17397
+ class GoogleCloudDiscoveryengineV1alphaGetAgentViewResponse
17398
+ include Google::Apis::Core::Hashable
17399
+
17400
+ # The data for displaying an Agent.
17401
+ # Corresponds to the JSON property `agentView`
17402
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentView]
17403
+ attr_accessor :agent_view
17404
+
17405
+ def initialize(**args)
17406
+ update!(**args)
17407
+ end
17408
+
17409
+ # Update properties of this object
17410
+ def update!(**args)
17411
+ @agent_view = args[:agent_view] if args.key?(:agent_view)
17412
+ end
17413
+ end
17414
+
16519
17415
  # Response message for DataConnectorService.GetConnectorSecret.
16520
17416
  class GoogleCloudDiscoveryengineV1alphaGetConnectorSecretResponse
16521
17417
  include Google::Apis::Core::Hashable
@@ -16943,6 +17839,52 @@ module Google
16943
17839
  end
16944
17840
  end
16945
17841
 
17842
+ # Request for the AgentService.ImportAgentFile method.
17843
+ class GoogleCloudDiscoveryengineV1alphaImportAgentFileRequest
17844
+ include Google::Apis::Core::Hashable
17845
+
17846
+ # Required. The name of the file.
17847
+ # Corresponds to the JSON property `fileName`
17848
+ # @return [String]
17849
+ attr_accessor :file_name
17850
+
17851
+ # Optional. The content type of the file, see https://www.iana.org/assignments/
17852
+ # media-types/media-types.xhtml. This field is required when the data source
17853
+ # does not provide the content type.
17854
+ # Corresponds to the JSON property `mimeType`
17855
+ # @return [String]
17856
+ attr_accessor :mime_type
17857
+
17858
+ def initialize(**args)
17859
+ update!(**args)
17860
+ end
17861
+
17862
+ # Update properties of this object
17863
+ def update!(**args)
17864
+ @file_name = args[:file_name] if args.key?(:file_name)
17865
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
17866
+ end
17867
+ end
17868
+
17869
+ # Response for the AgentService.ImportAgentFile method.
17870
+ class GoogleCloudDiscoveryengineV1alphaImportAgentFileResponse
17871
+ include Google::Apis::Core::Hashable
17872
+
17873
+ # Describes a file used internally by an agent as a context on each invocation.
17874
+ # Corresponds to the JSON property `agentFile`
17875
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentFile]
17876
+ attr_accessor :agent_file
17877
+
17878
+ def initialize(**args)
17879
+ update!(**args)
17880
+ end
17881
+
17882
+ # Update properties of this object
17883
+ def update!(**args)
17884
+ @agent_file = args[:agent_file] if args.key?(:agent_file)
17885
+ end
17886
+ end
17887
+
16946
17888
  # Metadata related to the progress of the ImportCompletionSuggestions operation.
16947
17889
  # This will be returned by the google.longrunning.Operation.metadata field.
16948
17890
  class GoogleCloudDiscoveryengineV1alphaImportCompletionSuggestionsMetadata
@@ -17885,10 +18827,151 @@ module Google
17885
18827
  # @return [String]
17886
18828
  attr_accessor :subscription_term
17887
18829
 
17888
- # Required. Subscription tier information for the license config.
17889
- # Corresponds to the JSON property `subscriptionTier`
18830
+ # Required. Subscription tier information for the license config.
18831
+ # Corresponds to the JSON property `subscriptionTier`
18832
+ # @return [String]
18833
+ attr_accessor :subscription_tier
18834
+
18835
+ def initialize(**args)
18836
+ update!(**args)
18837
+ end
18838
+
18839
+ # Update properties of this object
18840
+ def update!(**args)
18841
+ @alert_policy_resource_config = args[:alert_policy_resource_config] if args.key?(:alert_policy_resource_config)
18842
+ @auto_renew = args[:auto_renew] if args.key?(:auto_renew)
18843
+ @end_date = args[:end_date] if args.key?(:end_date)
18844
+ @free_trial = args[:free_trial] if args.key?(:free_trial)
18845
+ @gemini_bundle = args[:gemini_bundle] if args.key?(:gemini_bundle)
18846
+ @license_count = args[:license_count] if args.key?(:license_count)
18847
+ @name = args[:name] if args.key?(:name)
18848
+ @start_date = args[:start_date] if args.key?(:start_date)
18849
+ @state = args[:state] if args.key?(:state)
18850
+ @subscription_term = args[:subscription_term] if args.key?(:subscription_term)
18851
+ @subscription_tier = args[:subscription_tier] if args.key?(:subscription_tier)
18852
+ end
18853
+ end
18854
+
18855
+ # Stats about users' licenses.
18856
+ class GoogleCloudDiscoveryengineV1alphaLicenseConfigUsageStats
18857
+ include Google::Apis::Core::Hashable
18858
+
18859
+ # Required. The LicenseConfig name.
18860
+ # Corresponds to the JSON property `licenseConfig`
18861
+ # @return [String]
18862
+ attr_accessor :license_config
18863
+
18864
+ # Required. The number of licenses used.
18865
+ # Corresponds to the JSON property `usedLicenseCount`
18866
+ # @return [Fixnum]
18867
+ attr_accessor :used_license_count
18868
+
18869
+ def initialize(**args)
18870
+ update!(**args)
18871
+ end
18872
+
18873
+ # Update properties of this object
18874
+ def update!(**args)
18875
+ @license_config = args[:license_config] if args.key?(:license_config)
18876
+ @used_license_count = args[:used_license_count] if args.key?(:used_license_count)
18877
+ end
18878
+ end
18879
+
18880
+ # Response message for the AgentService.ListAgents method.
18881
+ class GoogleCloudDiscoveryengineV1alphaListAgentsResponse
18882
+ include Google::Apis::Core::Hashable
18883
+
18884
+ # The agents visible to the caller under the parent Assistant.
18885
+ # Corresponds to the JSON property `agents`
18886
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgent>]
18887
+ attr_accessor :agents
18888
+
18889
+ # A token that can be sent as ListAgentsRequest.page_token to retrieve the next
18890
+ # page. If this field is omitted, there are no subsequent pages.
18891
+ # Corresponds to the JSON property `nextPageToken`
18892
+ # @return [String]
18893
+ attr_accessor :next_page_token
18894
+
18895
+ def initialize(**args)
18896
+ update!(**args)
18897
+ end
18898
+
18899
+ # Update properties of this object
18900
+ def update!(**args)
18901
+ @agents = args[:agents] if args.key?(:agents)
18902
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
18903
+ end
18904
+ end
18905
+
18906
+ # Response message for the AuthorizationService.ListAuthorizations method.
18907
+ class GoogleCloudDiscoveryengineV1alphaListAuthorizationsResponse
18908
+ include Google::Apis::Core::Hashable
18909
+
18910
+ # All the customer's Authorizations.
18911
+ # Corresponds to the JSON property `authorizations`
18912
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAuthorization>]
18913
+ attr_accessor :authorizations
18914
+
18915
+ # A token that can be sent as ListAuthorizationsRequest.page_token to retrieve
18916
+ # the next page. If this field is omitted, there are no subsequent pages.
18917
+ # Corresponds to the JSON property `nextPageToken`
18918
+ # @return [String]
18919
+ attr_accessor :next_page_token
18920
+
18921
+ def initialize(**args)
18922
+ update!(**args)
18923
+ end
18924
+
18925
+ # Update properties of this object
18926
+ def update!(**args)
18927
+ @authorizations = args[:authorizations] if args.key?(:authorizations)
18928
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
18929
+ end
18930
+ end
18931
+
18932
+ # Response message for the AgentService.ListAvailableAgentViews method.
18933
+ class GoogleCloudDiscoveryengineV1alphaListAvailableAgentViewsResponse
18934
+ include Google::Apis::Core::Hashable
18935
+
18936
+ # The agent sources visible to the caller under the parent Assistant.
18937
+ # Corresponds to the JSON property `agentViews`
18938
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentView>]
18939
+ attr_accessor :agent_views
18940
+
18941
+ # A token that can be sent as ListAvailableAgentViewsRequest.page_token to
18942
+ # retrieve the next page. If this field is omitted, there are no subsequent
18943
+ # pages.
18944
+ # Corresponds to the JSON property `nextPageToken`
18945
+ # @return [String]
18946
+ attr_accessor :next_page_token
18947
+
18948
+ def initialize(**args)
18949
+ update!(**args)
18950
+ end
18951
+
18952
+ # Update properties of this object
18953
+ def update!(**args)
18954
+ @agent_views = args[:agent_views] if args.key?(:agent_views)
18955
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
18956
+ end
18957
+ end
18958
+
18959
+ # Response message for LicenseConfigService.ListBillingAccountLicenseConfigs
18960
+ # method.
18961
+ class GoogleCloudDiscoveryengineV1alphaListBillingAccountLicenseConfigsResponse
18962
+ include Google::Apis::Core::Hashable
18963
+
18964
+ # All BillingAccountLicenseConfigs for the given billing account.
18965
+ # Corresponds to the JSON property `billingAccountLicenseConfigs`
18966
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaBillingAccountLicenseConfig>]
18967
+ attr_accessor :billing_account_license_configs
18968
+
18969
+ # A token that can be sent as ListBillingAccountLicenseConfigsRequest.page_token
18970
+ # to retrieve the next page. If this field is omitted, there are no subsequent
18971
+ # pages.
18972
+ # Corresponds to the JSON property `nextPageToken`
17890
18973
  # @return [String]
17891
- attr_accessor :subscription_tier
18974
+ attr_accessor :next_page_token
17892
18975
 
17893
18976
  def initialize(**args)
17894
18977
  update!(**args)
@@ -17896,17 +18979,8 @@ module Google
17896
18979
 
17897
18980
  # Update properties of this object
17898
18981
  def update!(**args)
17899
- @alert_policy_resource_config = args[:alert_policy_resource_config] if args.key?(:alert_policy_resource_config)
17900
- @auto_renew = args[:auto_renew] if args.key?(:auto_renew)
17901
- @end_date = args[:end_date] if args.key?(:end_date)
17902
- @free_trial = args[:free_trial] if args.key?(:free_trial)
17903
- @gemini_bundle = args[:gemini_bundle] if args.key?(:gemini_bundle)
17904
- @license_count = args[:license_count] if args.key?(:license_count)
17905
- @name = args[:name] if args.key?(:name)
17906
- @start_date = args[:start_date] if args.key?(:start_date)
17907
- @state = args[:state] if args.key?(:state)
17908
- @subscription_term = args[:subscription_term] if args.key?(:subscription_term)
17909
- @subscription_tier = args[:subscription_tier] if args.key?(:subscription_tier)
18982
+ @billing_account_license_configs = args[:billing_account_license_configs] if args.key?(:billing_account_license_configs)
18983
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
17910
18984
  end
17911
18985
  end
17912
18986
 
@@ -18355,6 +19429,25 @@ module Google
18355
19429
  end
18356
19430
  end
18357
19431
 
19432
+ # Response message for UserLicenseService.ListLicenseConfigUsageStats method.
19433
+ class GoogleCloudDiscoveryengineV1alphaListLicenseConfigsUsageStatsResponse
19434
+ include Google::Apis::Core::Hashable
19435
+
19436
+ # All the customer's LicenseConfigUsageStats.
19437
+ # Corresponds to the JSON property `licenseConfigUsageStats`
19438
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaLicenseConfigUsageStats>]
19439
+ attr_accessor :license_config_usage_stats
19440
+
19441
+ def initialize(**args)
19442
+ update!(**args)
19443
+ end
19444
+
19445
+ # Update properties of this object
19446
+ def update!(**args)
19447
+ @license_config_usage_stats = args[:license_config_usage_stats] if args.key?(:license_config_usage_stats)
19448
+ end
19449
+ end
19450
+
18358
19451
  # Response message for SampleQueryService.ListSampleQueries method.
18359
19452
  class GoogleCloudDiscoveryengineV1alphaListSampleQueriesResponse
18360
19453
  include Google::Apis::Core::Hashable
@@ -18947,6 +20040,16 @@ module Google
18947
20040
  class GoogleCloudDiscoveryengineV1alphaProject
18948
20041
  include Google::Apis::Core::Hashable
18949
20042
 
20043
+ # Represents the currently effective configurable billing parameters. These
20044
+ # values are derived from the customer's subscription history stored internally
20045
+ # and reflect the thresholds actively being used for billing purposes at the
20046
+ # time of the GetProject call. This includes the start_time of the subscription
20047
+ # and may differ from the values in `customer_provided_config` due to billing
20048
+ # rules (e.g., scale-downs taking effect only at the start of a new month).
20049
+ # Corresponds to the JSON property `configurableBillingStatus`
20050
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus]
20051
+ attr_accessor :configurable_billing_status
20052
+
18950
20053
  # Output only. The timestamp when this project is created.
18951
20054
  # Corresponds to the JSON property `createTime`
18952
20055
  # @return [String]
@@ -18981,6 +20084,7 @@ module Google
18981
20084
 
18982
20085
  # Update properties of this object
18983
20086
  def update!(**args)
20087
+ @configurable_billing_status = args[:configurable_billing_status] if args.key?(:configurable_billing_status)
18984
20088
  @create_time = args[:create_time] if args.key?(:create_time)
18985
20089
  @customer_provided_config = args[:customer_provided_config] if args.key?(:customer_provided_config)
18986
20090
  @name = args[:name] if args.key?(:name)
@@ -18989,6 +20093,46 @@ module Google
18989
20093
  end
18990
20094
  end
18991
20095
 
20096
+ # Represents the currently effective configurable billing parameters. These
20097
+ # values are derived from the customer's subscription history stored internally
20098
+ # and reflect the thresholds actively being used for billing purposes at the
20099
+ # time of the GetProject call. This includes the start_time of the subscription
20100
+ # and may differ from the values in `customer_provided_config` due to billing
20101
+ # rules (e.g., scale-downs taking effect only at the start of a new month).
20102
+ class GoogleCloudDiscoveryengineV1alphaProjectConfigurableBillingStatus
20103
+ include Google::Apis::Core::Hashable
20104
+
20105
+ # Optional. The currently effective Indexing Core threshold. This is the
20106
+ # threshold against which Indexing Core usage is compared for overage
20107
+ # calculations.
20108
+ # Corresponds to the JSON property `effectiveIndexingCoreThreshold`
20109
+ # @return [Fixnum]
20110
+ attr_accessor :effective_indexing_core_threshold
20111
+
20112
+ # Optional. The currently effective Search QPM threshold in queries per minute.
20113
+ # This is the threshold against which QPM usage is compared for overage
20114
+ # calculations.
20115
+ # Corresponds to the JSON property `effectiveSearchQpmThreshold`
20116
+ # @return [Fixnum]
20117
+ attr_accessor :effective_search_qpm_threshold
20118
+
20119
+ # Optional. The start time of the currently active billing subscription.
20120
+ # Corresponds to the JSON property `startTime`
20121
+ # @return [String]
20122
+ attr_accessor :start_time
20123
+
20124
+ def initialize(**args)
20125
+ update!(**args)
20126
+ end
20127
+
20128
+ # Update properties of this object
20129
+ def update!(**args)
20130
+ @effective_indexing_core_threshold = args[:effective_indexing_core_threshold] if args.key?(:effective_indexing_core_threshold)
20131
+ @effective_search_qpm_threshold = args[:effective_search_qpm_threshold] if args.key?(:effective_search_qpm_threshold)
20132
+ @start_time = args[:start_time] if args.key?(:start_time)
20133
+ end
20134
+ end
20135
+
18992
20136
  # Customer provided configurations.
18993
20137
  class GoogleCloudDiscoveryengineV1alphaProjectCustomerProvidedConfig
18994
20138
  include Google::Apis::Core::Hashable
@@ -21472,9 +22616,9 @@ module Google
21472
22616
  # @return [Hash<String,String>]
21473
22617
  attr_accessor :user_labels
21474
22618
 
21475
- # A unique identifier for tracking visitors. For example, this could be
21476
- # implemented with an HTTP cookie, which should be able to uniquely identify a
21477
- # visitor on a single device. This unique identifier should not change if the
22619
+ # Optional. A unique identifier for tracking visitors. For example, this could
22620
+ # be implemented with an HTTP cookie, which should be able to uniquely identify
22621
+ # a visitor on a single device. This unique identifier should not change if the
21478
22622
  # visitor logs in or out of the website. This field should NOT have a fixed
21479
22623
  # value such as `unknown_visitor`. This should be the same identifier as
21480
22624
  # UserEvent.user_pseudo_id and CompleteQueryRequest.user_pseudo_id The field
@@ -25323,6 +26467,63 @@ module Google
25323
26467
  end
25324
26468
  end
25325
26469
 
26470
+ # Request message for the AgentService.UploadAgentFile method.
26471
+ class GoogleCloudDiscoveryengineV1alphaUploadAgentFileRequest
26472
+ include Google::Apis::Core::Hashable
26473
+
26474
+ # A reference to data stored on the filesystem, on GFS or in blobstore.
26475
+ # Corresponds to the JSON property `blob`
26476
+ # @return [Google::Apis::DiscoveryengineV1alpha::GdataMedia]
26477
+ attr_accessor :blob
26478
+
26479
+ # Extra information added to operations that support Scotty media requests.
26480
+ # Corresponds to the JSON property `mediaRequestInfo`
26481
+ # @return [Google::Apis::DiscoveryengineV1alpha::ApiservingMediaRequestInfo]
26482
+ attr_accessor :media_request_info
26483
+
26484
+ def initialize(**args)
26485
+ update!(**args)
26486
+ end
26487
+
26488
+ # Update properties of this object
26489
+ def update!(**args)
26490
+ @blob = args[:blob] if args.key?(:blob)
26491
+ @media_request_info = args[:media_request_info] if args.key?(:media_request_info)
26492
+ end
26493
+ end
26494
+
26495
+ # Response message for the AgentService.UploadAgentFile method.
26496
+ class GoogleCloudDiscoveryengineV1alphaUploadAgentFileResponse
26497
+ include Google::Apis::Core::Hashable
26498
+
26499
+ # Describes a file used internally by an agent as a context on each invocation.
26500
+ # Corresponds to the JSON property `agentFile`
26501
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaAgentFile]
26502
+ attr_accessor :agent_file
26503
+
26504
+ # This message is for backends to pass their scotty media specific fields to ESF.
26505
+ # Backend will include this in their response message to ESF. Example:
26506
+ # ExportFile is an rpc defined for upload using scotty from ESF. rpc ExportFile(
26507
+ # ExportFileRequest) returns (ExportFileResponse) Message ExportFileResponse
26508
+ # will include apiserving.MediaResponseInfo to tell ESF about data like
26509
+ # dynamic_dropzone it needs to pass to Scotty. message ExportFileResponse `
26510
+ # optional gdata.Media blob = 1; optional apiserving.MediaResponseInfo
26511
+ # media_response_info = 2 `
26512
+ # Corresponds to the JSON property `mediaResponseInfo`
26513
+ # @return [Google::Apis::DiscoveryengineV1alpha::ApiservingMediaResponseInfo]
26514
+ attr_accessor :media_response_info
26515
+
26516
+ def initialize(**args)
26517
+ update!(**args)
26518
+ end
26519
+
26520
+ # Update properties of this object
26521
+ def update!(**args)
26522
+ @agent_file = args[:agent_file] if args.key?(:agent_file)
26523
+ @media_response_info = args[:media_response_info] if args.key?(:media_response_info)
26524
+ end
26525
+ end
26526
+
25326
26527
  # Request for the AssistantService.UploadSessionFile method.
25327
26528
  class GoogleCloudDiscoveryengineV1alphaUploadSessionFileRequest
25328
26529
  include Google::Apis::Core::Hashable
@@ -25380,6 +26581,34 @@ module Google
25380
26581
  end
25381
26582
  end
25382
26583
 
26584
+ # Per-user annotations for an Agent, based on UserAnnotation.
26585
+ class GoogleCloudDiscoveryengineV1alphaUserAnnotations
26586
+ include Google::Apis::Core::Hashable
26587
+
26588
+ # Optional. Whether the agent is pinned, pinned agent will be displayed on the
26589
+ # top of the agent list.
26590
+ # Corresponds to the JSON property `pinned`
26591
+ # @return [Boolean]
26592
+ attr_accessor :pinned
26593
+ alias_method :pinned?, :pinned
26594
+
26595
+ # Optional. Whether the agent has been viewed by the user.
26596
+ # Corresponds to the JSON property `viewed`
26597
+ # @return [Boolean]
26598
+ attr_accessor :viewed
26599
+ alias_method :viewed?, :viewed
26600
+
26601
+ def initialize(**args)
26602
+ update!(**args)
26603
+ end
26604
+
26605
+ # Update properties of this object
26606
+ def update!(**args)
26607
+ @pinned = args[:pinned] if args.key?(:pinned)
26608
+ @viewed = args[:viewed] if args.key?(:viewed)
26609
+ end
26610
+ end
26611
+
25383
26612
  # UserEvent captures all metadata information Discovery Engine API needs to know
25384
26613
  # about how end users interact with your website.
25385
26614
  class GoogleCloudDiscoveryengineV1alphaUserEvent
@@ -25974,11 +27203,6 @@ module Google
25974
27203
  attr_accessor :enable_web_app
25975
27204
  alias_method :enable_web_app?, :enable_web_app
25976
27205
 
25977
- # Allows to toggle unstable/experimental features in the widget (or web app)
25978
- # Corresponds to the JSON property `experimentalFeatures`
25979
- # @return [Hash<String,String>]
25980
- attr_accessor :experimental_features
25981
-
25982
27206
  # The configuration and appearance of facets in the end user view.
25983
27207
  # Corresponds to the JSON property `facetField`
25984
27208
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaWidgetConfigFacetField>]
@@ -26089,7 +27313,6 @@ module Google
26089
27313
  @enable_snippet_result_summary = args[:enable_snippet_result_summary] if args.key?(:enable_snippet_result_summary)
26090
27314
  @enable_summarization = args[:enable_summarization] if args.key?(:enable_summarization)
26091
27315
  @enable_web_app = args[:enable_web_app] if args.key?(:enable_web_app)
26092
- @experimental_features = args[:experimental_features] if args.key?(:experimental_features)
26093
27316
  @facet_field = args[:facet_field] if args.key?(:facet_field)
26094
27317
  @fields_ui_components_map = args[:fields_ui_components_map] if args.key?(:fields_ui_components_map)
26095
27318
  @gemini_bundle = args[:gemini_bundle] if args.key?(:gemini_bundle)
@@ -26423,10 +27646,7 @@ module Google
26423
27646
  class GoogleCloudDiscoveryengineV1alphaWidgetConfigHomepageSetting
26424
27647
  include Google::Apis::Core::Hashable
26425
27648
 
26426
- # Optional. The shortcuts to display on the homepage. LINT.IfChange(
26427
- # max_shortcuts_number) LINT.ThenChange( //depot/google3/cloud/console/web/ai/
26428
- # unified_cloud_search/components/widget_preview/
26429
- # widget_homepage_shortcut_config_form.ts:max_shortcuts_number )
27649
+ # Optional. The shortcuts to display on the homepage.
26430
27650
  # Corresponds to the JSON property `shortcuts`
26431
27651
  # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaWidgetConfigHomepageSettingShortcut>]
26432
27652
  attr_accessor :shortcuts
@@ -26633,12 +27853,29 @@ module Google
26633
27853
  # @return [String]
26634
27854
  attr_accessor :interaction_type
26635
27855
 
27856
+ # Output only. Maps a model name to its specific configuration for this engine.
27857
+ # This allows admin users to turn on/off individual models. This only stores
27858
+ # models whose states are overridden by the admin. When the state is unspecified,
27859
+ # or model_configs is empty for this model, the system will decide if this
27860
+ # model should be available or not based on the default configuration. For
27861
+ # example, a preview model should be disabled by default if the admin has not
27862
+ # chosen to enable it.
27863
+ # Corresponds to the JSON property `modelConfigs`
27864
+ # @return [Hash<String,String>]
27865
+ attr_accessor :model_configs
27866
+
26636
27867
  # Controls whether result extract is display and how (snippet or extractive
26637
27868
  # answer). Default to no result if unspecified.
26638
27869
  # Corresponds to the JSON property `resultDescriptionType`
26639
27870
  # @return [String]
26640
27871
  attr_accessor :result_description_type
26641
27872
 
27873
+ # SearchAddonSpec is used to disable add-ons for search. By default, if this
27874
+ # field is not specified, add-ons are enabled wherever applicable.
27875
+ # Corresponds to the JSON property `searchAddonSpec`
27876
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1alphaWidgetConfigUiSettingsSearchAddonSpec]
27877
+ attr_accessor :search_addon_spec
27878
+
26642
27879
  def initialize(**args)
26643
27880
  update!(**args)
26644
27881
  end
@@ -26658,7 +27895,9 @@ module Google
26658
27895
  @features = args[:features] if args.key?(:features)
26659
27896
  @generative_answer_config = args[:generative_answer_config] if args.key?(:generative_answer_config)
26660
27897
  @interaction_type = args[:interaction_type] if args.key?(:interaction_type)
27898
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
26661
27899
  @result_description_type = args[:result_description_type] if args.key?(:result_description_type)
27900
+ @search_addon_spec = args[:search_addon_spec] if args.key?(:search_addon_spec)
26662
27901
  end
26663
27902
  end
26664
27903
 
@@ -26747,6 +27986,44 @@ module Google
26747
27986
  end
26748
27987
  end
26749
27988
 
27989
+ # SearchAddonSpec is used to disable add-ons for search. By default, if this
27990
+ # field is not specified, add-ons are enabled wherever applicable.
27991
+ class GoogleCloudDiscoveryengineV1alphaWidgetConfigUiSettingsSearchAddonSpec
27992
+ include Google::Apis::Core::Hashable
27993
+
27994
+ # Optional. If true, generative answer add-on is disabled. Generative answer add-
27995
+ # on includes natural language to filters and simple answers.
27996
+ # Corresponds to the JSON property `generativeAnswerAddOnDisabled`
27997
+ # @return [Boolean]
27998
+ attr_accessor :generative_answer_add_on_disabled
27999
+ alias_method :generative_answer_add_on_disabled?, :generative_answer_add_on_disabled
28000
+
28001
+ # Optional. If true, disables event re-ranking and personalization to optimize
28002
+ # KPIs & personalize results.
28003
+ # Corresponds to the JSON property `kpiPersonalizationAddOnDisabled`
28004
+ # @return [Boolean]
28005
+ attr_accessor :kpi_personalization_add_on_disabled
28006
+ alias_method :kpi_personalization_add_on_disabled?, :kpi_personalization_add_on_disabled
28007
+
28008
+ # Optional. If true, semantic add-on is disabled. Semantic add-on includes
28009
+ # embeddings and jetstream.
28010
+ # Corresponds to the JSON property `semanticAddOnDisabled`
28011
+ # @return [Boolean]
28012
+ attr_accessor :semantic_add_on_disabled
28013
+ alias_method :semantic_add_on_disabled?, :semantic_add_on_disabled
28014
+
28015
+ def initialize(**args)
28016
+ update!(**args)
28017
+ end
28018
+
28019
+ # Update properties of this object
28020
+ def update!(**args)
28021
+ @generative_answer_add_on_disabled = args[:generative_answer_add_on_disabled] if args.key?(:generative_answer_add_on_disabled)
28022
+ @kpi_personalization_add_on_disabled = args[:kpi_personalization_add_on_disabled] if args.key?(:kpi_personalization_add_on_disabled)
28023
+ @semantic_add_on_disabled = args[:semantic_add_on_disabled] if args.key?(:semantic_add_on_disabled)
28024
+ end
28025
+ end
28026
+
26750
28027
  # Config to store data store type configuration for workspace data
26751
28028
  class GoogleCloudDiscoveryengineV1alphaWorkspaceConfig
26752
28029
  include Google::Apis::Core::Hashable
@@ -27660,6 +28937,11 @@ module Google
27660
28937
  # @return [String]
27661
28938
  attr_accessor :configurable_billing_approach
27662
28939
 
28940
+ # Output only. The timestamp when configurable_billing_approach was last updated.
28941
+ # Corresponds to the JSON property `configurableBillingApproachUpdateTime`
28942
+ # @return [String]
28943
+ attr_accessor :configurable_billing_approach_update_time
28944
+
27663
28945
  # Immutable. The content config of the data store. If this field is unset, the
27664
28946
  # server behavior defaults to ContentConfig.NO_CONTENT.
27665
28947
  # Corresponds to the JSON property `contentConfig`
@@ -27774,6 +29056,7 @@ module Google
27774
29056
  @billing_estimation = args[:billing_estimation] if args.key?(:billing_estimation)
27775
29057
  @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
27776
29058
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
29059
+ @configurable_billing_approach_update_time = args[:configurable_billing_approach_update_time] if args.key?(:configurable_billing_approach_update_time)
27777
29060
  @content_config = args[:content_config] if args.key?(:content_config)
27778
29061
  @create_time = args[:create_time] if args.key?(:create_time)
27779
29062
  @default_schema_id = args[:default_schema_id] if args.key?(:default_schema_id)
@@ -28267,6 +29550,12 @@ module Google
28267
29550
  attr_accessor :enable_image_annotation
28268
29551
  alias_method :enable_image_annotation?, :enable_image_annotation
28269
29552
 
29553
+ # Optional. If true, the pdf layout will be refined using an LLM.
29554
+ # Corresponds to the JSON property `enableLlmLayoutParsing`
29555
+ # @return [Boolean]
29556
+ attr_accessor :enable_llm_layout_parsing
29557
+ alias_method :enable_llm_layout_parsing?, :enable_llm_layout_parsing
29558
+
28270
29559
  # Optional. If true, the LLM based annotation is added to the table during
28271
29560
  # parsing.
28272
29561
  # Corresponds to the JSON property `enableTableAnnotation`
@@ -28303,6 +29592,7 @@ module Google
28303
29592
  def update!(**args)
28304
29593
  @enable_get_processed_document = args[:enable_get_processed_document] if args.key?(:enable_get_processed_document)
28305
29594
  @enable_image_annotation = args[:enable_image_annotation] if args.key?(:enable_image_annotation)
29595
+ @enable_llm_layout_parsing = args[:enable_llm_layout_parsing] if args.key?(:enable_llm_layout_parsing)
28306
29596
  @enable_table_annotation = args[:enable_table_annotation] if args.key?(:enable_table_annotation)
28307
29597
  @exclude_html_classes = args[:exclude_html_classes] if args.key?(:exclude_html_classes)
28308
29598
  @exclude_html_elements = args[:exclude_html_elements] if args.key?(:exclude_html_elements)
@@ -28402,6 +29692,11 @@ module Google
28402
29692
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaEngineChatEngineMetadata]
28403
29693
  attr_accessor :chat_engine_metadata
28404
29694
 
29695
+ # Configurations used to enable CMEK data encryption with Cloud KMS keys.
29696
+ # Corresponds to the JSON property `cmekConfig`
29697
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaCmekConfig]
29698
+ attr_accessor :cmek_config
29699
+
28405
29700
  # Common configurations for an Engine.
28406
29701
  # Corresponds to the JSON property `commonConfig`
28407
29702
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaEngineCommonConfig]
@@ -28463,6 +29758,17 @@ module Google
28463
29758
  # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaEngineMediaRecommendationEngineConfig]
28464
29759
  attr_accessor :media_recommendation_engine_config
28465
29760
 
29761
+ # Optional. Maps a model name to its specific configuration for this engine.
29762
+ # This allows admin users to turn on/off individual models. This only stores
29763
+ # models whose states are overridden by the admin. When the state is unspecified,
29764
+ # or model_configs is empty for this model, the system will decide if this
29765
+ # model should be available or not based on the default configuration. For
29766
+ # example, a preview model should be disabled by default if the admin has not
29767
+ # chosen to enable it.
29768
+ # Corresponds to the JSON property `modelConfigs`
29769
+ # @return [Hash<String,String>]
29770
+ attr_accessor :model_configs
29771
+
28466
29772
  # Immutable. Identifier. The fully qualified resource name of the engine. This
28467
29773
  # field must be a UTF-8 encoded string with a length limit of 1024 characters.
28468
29774
  # Format: `projects/`project`/locations/`location`/collections/`collection`/
@@ -28496,6 +29802,7 @@ module Google
28496
29802
  @app_type = args[:app_type] if args.key?(:app_type)
28497
29803
  @chat_engine_config = args[:chat_engine_config] if args.key?(:chat_engine_config)
28498
29804
  @chat_engine_metadata = args[:chat_engine_metadata] if args.key?(:chat_engine_metadata)
29805
+ @cmek_config = args[:cmek_config] if args.key?(:cmek_config)
28499
29806
  @common_config = args[:common_config] if args.key?(:common_config)
28500
29807
  @configurable_billing_approach = args[:configurable_billing_approach] if args.key?(:configurable_billing_approach)
28501
29808
  @create_time = args[:create_time] if args.key?(:create_time)
@@ -28505,6 +29812,7 @@ module Google
28505
29812
  @features = args[:features] if args.key?(:features)
28506
29813
  @industry_vertical = args[:industry_vertical] if args.key?(:industry_vertical)
28507
29814
  @media_recommendation_engine_config = args[:media_recommendation_engine_config] if args.key?(:media_recommendation_engine_config)
29815
+ @model_configs = args[:model_configs] if args.key?(:model_configs)
28508
29816
  @name = args[:name] if args.key?(:name)
28509
29817
  @search_engine_config = args[:search_engine_config] if args.key?(:search_engine_config)
28510
29818
  @solution_type = args[:solution_type] if args.key?(:solution_type)
@@ -29706,6 +31014,16 @@ module Google
29706
31014
  class GoogleCloudDiscoveryengineV1betaProject
29707
31015
  include Google::Apis::Core::Hashable
29708
31016
 
31017
+ # Represents the currently effective configurable billing parameters. These
31018
+ # values are derived from the customer's subscription history stored internally
31019
+ # and reflect the thresholds actively being used for billing purposes at the
31020
+ # time of the GetProject call. This includes the start_time of the subscription
31021
+ # and may differ from the values in `customer_provided_config` due to billing
31022
+ # rules (e.g., scale-downs taking effect only at the start of a new month).
31023
+ # Corresponds to the JSON property `configurableBillingStatus`
31024
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus]
31025
+ attr_accessor :configurable_billing_status
31026
+
29709
31027
  # Output only. The timestamp when this project is created.
29710
31028
  # Corresponds to the JSON property `createTime`
29711
31029
  # @return [String]
@@ -29740,6 +31058,7 @@ module Google
29740
31058
 
29741
31059
  # Update properties of this object
29742
31060
  def update!(**args)
31061
+ @configurable_billing_status = args[:configurable_billing_status] if args.key?(:configurable_billing_status)
29743
31062
  @create_time = args[:create_time] if args.key?(:create_time)
29744
31063
  @customer_provided_config = args[:customer_provided_config] if args.key?(:customer_provided_config)
29745
31064
  @name = args[:name] if args.key?(:name)
@@ -29748,6 +31067,46 @@ module Google
29748
31067
  end
29749
31068
  end
29750
31069
 
31070
+ # Represents the currently effective configurable billing parameters. These
31071
+ # values are derived from the customer's subscription history stored internally
31072
+ # and reflect the thresholds actively being used for billing purposes at the
31073
+ # time of the GetProject call. This includes the start_time of the subscription
31074
+ # and may differ from the values in `customer_provided_config` due to billing
31075
+ # rules (e.g., scale-downs taking effect only at the start of a new month).
31076
+ class GoogleCloudDiscoveryengineV1betaProjectConfigurableBillingStatus
31077
+ include Google::Apis::Core::Hashable
31078
+
31079
+ # Optional. The currently effective Indexing Core threshold. This is the
31080
+ # threshold against which Indexing Core usage is compared for overage
31081
+ # calculations.
31082
+ # Corresponds to the JSON property `effectiveIndexingCoreThreshold`
31083
+ # @return [Fixnum]
31084
+ attr_accessor :effective_indexing_core_threshold
31085
+
31086
+ # Optional. The currently effective Search QPM threshold in queries per minute.
31087
+ # This is the threshold against which QPM usage is compared for overage
31088
+ # calculations.
31089
+ # Corresponds to the JSON property `effectiveSearchQpmThreshold`
31090
+ # @return [Fixnum]
31091
+ attr_accessor :effective_search_qpm_threshold
31092
+
31093
+ # Optional. The start time of the currently active billing subscription.
31094
+ # Corresponds to the JSON property `startTime`
31095
+ # @return [String]
31096
+ attr_accessor :start_time
31097
+
31098
+ def initialize(**args)
31099
+ update!(**args)
31100
+ end
31101
+
31102
+ # Update properties of this object
31103
+ def update!(**args)
31104
+ @effective_indexing_core_threshold = args[:effective_indexing_core_threshold] if args.key?(:effective_indexing_core_threshold)
31105
+ @effective_search_qpm_threshold = args[:effective_search_qpm_threshold] if args.key?(:effective_search_qpm_threshold)
31106
+ @start_time = args[:start_time] if args.key?(:start_time)
31107
+ end
31108
+ end
31109
+
29751
31110
  # Customer provided configurations.
29752
31111
  class GoogleCloudDiscoveryengineV1betaProjectCustomerProvidedConfig
29753
31112
  include Google::Apis::Core::Hashable
@@ -30566,9 +31925,9 @@ module Google
30566
31925
  # @return [Hash<String,String>]
30567
31926
  attr_accessor :user_labels
30568
31927
 
30569
- # A unique identifier for tracking visitors. For example, this could be
30570
- # implemented with an HTTP cookie, which should be able to uniquely identify a
30571
- # visitor on a single device. This unique identifier should not change if the
31928
+ # Optional. A unique identifier for tracking visitors. For example, this could
31929
+ # be implemented with an HTTP cookie, which should be able to uniquely identify
31930
+ # a visitor on a single device. This unique identifier should not change if the
30572
31931
  # visitor logs in or out of the website. This field should NOT have a fixed
30573
31932
  # value such as `unknown_visitor`. This should be the same identifier as
30574
31933
  # UserEvent.user_pseudo_id and CompleteQueryRequest.user_pseudo_id The field
@@ -33495,6 +34854,241 @@ module Google
33495
34854
  end
33496
34855
  end
33497
34856
 
34857
+ # Associates `members`, or principals, with a `role`.
34858
+ class GoogleIamV1Binding
34859
+ include Google::Apis::Core::Hashable
34860
+
34861
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
34862
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
34863
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
34864
+ # "Summary size limit" description: "Determines if a summary is less than 100
34865
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
34866
+ # Requestor is owner" description: "Determines if requestor is the document
34867
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
34868
+ # Logic): title: "Public documents" description: "Determine whether the document
34869
+ # should be publicly visible" expression: "document.type != 'private' &&
34870
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
34871
+ # string" description: "Create a notification string with a timestamp."
34872
+ # expression: "'New message received at ' + string(document.create_time)" The
34873
+ # exact variables and functions that may be referenced within an expression are
34874
+ # determined by the service that evaluates it. See the service documentation for
34875
+ # additional information.
34876
+ # Corresponds to the JSON property `condition`
34877
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleTypeExpr]
34878
+ attr_accessor :condition
34879
+
34880
+ # Specifies the principals requesting access for a Google Cloud resource. `
34881
+ # members` can have the following values: * `allUsers`: A special identifier
34882
+ # that represents anyone who is on the internet; with or without a Google
34883
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
34884
+ # anyone who is authenticated with a Google account or a service account. Does
34885
+ # not include identities that come from external identity providers (IdPs)
34886
+ # through identity federation. * `user:`emailid``: An email address that
34887
+ # represents a specific Google account. For example, `alice@example.com` . * `
34888
+ # serviceAccount:`emailid``: An email address that represents a Google service
34889
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`. * `
34890
+ # serviceAccount:`projectid`.svc.id.goog[`namespace`/`kubernetes-sa`]`: An
34891
+ # identifier for a [Kubernetes service account](https://cloud.google.com/
34892
+ # kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-
34893
+ # project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An
34894
+ # email address that represents a Google group. For example, `admins@example.com`
34895
+ # . * `domain:`domain``: The G Suite domain (primary) that represents all the
34896
+ # users of that domain. For example, `google.com` or `example.com`. * `principal:
34897
+ # //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/`
34898
+ # subject_attribute_value``: A single identity in a workforce identity pool. * `
34899
+ # principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/
34900
+ # group/`group_id``: All workforce identities in a group. * `principalSet://iam.
34901
+ # googleapis.com/locations/global/workforcePools/`pool_id`/attribute.`
34902
+ # attribute_name`/`attribute_value``: All workforce identities with a specific
34903
+ # attribute value. * `principalSet://iam.googleapis.com/locations/global/
34904
+ # workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * `
34905
+ # principal://iam.googleapis.com/projects/`project_number`/locations/global/
34906
+ # workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single
34907
+ # identity in a workload identity pool. * `principalSet://iam.googleapis.com/
34908
+ # projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/
34909
+ # group/`group_id``: A workload identity pool group. * `principalSet://iam.
34910
+ # googleapis.com/projects/`project_number`/locations/global/
34911
+ # workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``:
34912
+ # All identities in a workload identity pool with a certain attribute. * `
34913
+ # principalSet://iam.googleapis.com/projects/`project_number`/locations/global/
34914
+ # workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool.
34915
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
34916
+ # identifier) representing a user that has been recently deleted. For example, `
34917
+ # alice@example.com?uid=123456789012345678901`. If the user is recovered, this
34918
+ # value reverts to `user:`emailid`` and the recovered user retains the role in
34919
+ # the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email
34920
+ # address (plus unique identifier) representing a service account that has been
34921
+ # recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
34922
+ # 123456789012345678901`. If the service account is undeleted, this value
34923
+ # reverts to `serviceAccount:`emailid`` and the undeleted service account
34924
+ # retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``:
34925
+ # An email address (plus unique identifier) representing a Google group that has
34926
+ # been recently deleted. For example, `admins@example.com?uid=
34927
+ # 123456789012345678901`. If the group is recovered, this value reverts to `
34928
+ # group:`emailid`` and the recovered group retains the role in the binding. * `
34929
+ # deleted:principal://iam.googleapis.com/locations/global/workforcePools/`
34930
+ # pool_id`/subject/`subject_attribute_value``: Deleted single identity in a
34931
+ # workforce identity pool. For example, `deleted:principal://iam.googleapis.com/
34932
+ # locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
34933
+ # Corresponds to the JSON property `members`
34934
+ # @return [Array<String>]
34935
+ attr_accessor :members
34936
+
34937
+ # Role that is assigned to the list of `members`, or principals. For example, `
34938
+ # roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM
34939
+ # roles and permissions, see the [IAM documentation](https://cloud.google.com/
34940
+ # iam/docs/roles-overview). For a list of the available pre-defined roles, see [
34941
+ # here](https://cloud.google.com/iam/docs/understanding-roles).
34942
+ # Corresponds to the JSON property `role`
34943
+ # @return [String]
34944
+ attr_accessor :role
34945
+
34946
+ def initialize(**args)
34947
+ update!(**args)
34948
+ end
34949
+
34950
+ # Update properties of this object
34951
+ def update!(**args)
34952
+ @condition = args[:condition] if args.key?(:condition)
34953
+ @members = args[:members] if args.key?(:members)
34954
+ @role = args[:role] if args.key?(:role)
34955
+ end
34956
+ end
34957
+
34958
+ # An Identity and Access Management (IAM) policy, which specifies access
34959
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
34960
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
34961
+ # Principals can be user accounts, service accounts, Google groups, and domains (
34962
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
34963
+ # an IAM predefined role or a user-created custom role. For some types of Google
34964
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
34965
+ # logical expression that allows access to a resource only if the expression
34966
+ # evaluates to `true`. A condition can add constraints based on attributes of
34967
+ # the request, the resource, or both. To learn which resources support
34968
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
34969
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
34970
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
34971
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
34972
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
34973
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
34974
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
34975
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
34976
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
34977
+ # example:** ``` bindings: - members: - user:mike@example.com - group:admins@
34978
+ # example.com - domain:google.com - serviceAccount:my-project-id@appspot.
34979
+ # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
34980
+ # user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
34981
+ # title: expirable access description: Does not grant access after Sep 2020
34982
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
34983
+ # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
34984
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
34985
+ class GoogleIamV1Policy
34986
+ include Google::Apis::Core::Hashable
34987
+
34988
+ # Associates a list of `members`, or principals, with a `role`. Optionally, may
34989
+ # specify a `condition` that determines how and when the `bindings` are applied.
34990
+ # Each of the `bindings` must contain at least one principal. The `bindings` in
34991
+ # a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
34992
+ # can be Google groups. Each occurrence of a principal counts towards these
34993
+ # limits. For example, if the `bindings` grant 50 different roles to `user:alice@
34994
+ # example.com`, and not to any other principal, then you can add another 1,450
34995
+ # principals to the `bindings` in the `Policy`.
34996
+ # Corresponds to the JSON property `bindings`
34997
+ # @return [Array<Google::Apis::DiscoveryengineV1alpha::GoogleIamV1Binding>]
34998
+ attr_accessor :bindings
34999
+
35000
+ # `etag` is used for optimistic concurrency control as a way to help prevent
35001
+ # simultaneous updates of a policy from overwriting each other. It is strongly
35002
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
35003
+ # to perform policy updates in order to avoid race conditions: An `etag` is
35004
+ # returned in the response to `getIamPolicy`, and systems are expected to put
35005
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
35006
+ # applied to the same version of the policy. **Important:** If you use IAM
35007
+ # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
35008
+ # If you omit this field, then IAM allows you to overwrite a version `3` policy
35009
+ # with a version `1` policy, and all of the conditions in the version `3` policy
35010
+ # are lost.
35011
+ # Corresponds to the JSON property `etag`
35012
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
35013
+ # @return [String]
35014
+ attr_accessor :etag
35015
+
35016
+ # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
35017
+ # Requests that specify an invalid value are rejected. Any operation that
35018
+ # affects conditional role bindings must specify version `3`. This requirement
35019
+ # applies to the following operations: * Getting a policy that includes a
35020
+ # conditional role binding * Adding a conditional role binding to a policy *
35021
+ # Changing a conditional role binding in a policy * Removing any role binding,
35022
+ # with or without a condition, from a policy that includes conditions **
35023
+ # Important:** If you use IAM Conditions, you must include the `etag` field
35024
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
35025
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
35026
+ # conditions in the version `3` policy are lost. If a policy does not include
35027
+ # any conditions, operations on that policy may specify any valid version or
35028
+ # leave the field unset. To learn which resources support conditions in their
35029
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
35030
+ # conditions/resource-policies).
35031
+ # Corresponds to the JSON property `version`
35032
+ # @return [Fixnum]
35033
+ attr_accessor :version
35034
+
35035
+ def initialize(**args)
35036
+ update!(**args)
35037
+ end
35038
+
35039
+ # Update properties of this object
35040
+ def update!(**args)
35041
+ @bindings = args[:bindings] if args.key?(:bindings)
35042
+ @etag = args[:etag] if args.key?(:etag)
35043
+ @version = args[:version] if args.key?(:version)
35044
+ end
35045
+ end
35046
+
35047
+ # Request message for `SetIamPolicy` method.
35048
+ class GoogleIamV1SetIamPolicyRequest
35049
+ include Google::Apis::Core::Hashable
35050
+
35051
+ # An Identity and Access Management (IAM) policy, which specifies access
35052
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
35053
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
35054
+ # Principals can be user accounts, service accounts, Google groups, and domains (
35055
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
35056
+ # an IAM predefined role or a user-created custom role. For some types of Google
35057
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
35058
+ # logical expression that allows access to a resource only if the expression
35059
+ # evaluates to `true`. A condition can add constraints based on attributes of
35060
+ # the request, the resource, or both. To learn which resources support
35061
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
35062
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
35063
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
35064
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
35065
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
35066
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
35067
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
35068
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
35069
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
35070
+ # example:** ``` bindings: - members: - user:mike@example.com - group:admins@
35071
+ # example.com - domain:google.com - serviceAccount:my-project-id@appspot.
35072
+ # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
35073
+ # user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
35074
+ # title: expirable access description: Does not grant access after Sep 2020
35075
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
35076
+ # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
35077
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
35078
+ # Corresponds to the JSON property `policy`
35079
+ # @return [Google::Apis::DiscoveryengineV1alpha::GoogleIamV1Policy]
35080
+ attr_accessor :policy
35081
+
35082
+ def initialize(**args)
35083
+ update!(**args)
35084
+ end
35085
+
35086
+ # Update properties of this object
35087
+ def update!(**args)
35088
+ @policy = args[:policy] if args.key?(:policy)
35089
+ end
35090
+ end
35091
+
33498
35092
  # The request message for Operations.CancelOperation.
33499
35093
  class GoogleLongrunningCancelOperationRequest
33500
35094
  include Google::Apis::Core::Hashable