google-apis-dialogflow_v3beta1 0.79.0 → 0.80.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -2433,6 +2433,11 @@ module Google
2433
2433
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3ResponseMessageText]
2434
2434
  attr_accessor :text
2435
2435
 
2436
+ # Represents a call of a specific tool's action with the specified inputs.
2437
+ # Corresponds to the JSON property `toolCall`
2438
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3ToolCall]
2439
+ attr_accessor :tool_call
2440
+
2436
2441
  def initialize(**args)
2437
2442
  update!(**args)
2438
2443
  end
@@ -2451,6 +2456,7 @@ module Google
2451
2456
  @response_type = args[:response_type] if args.key?(:response_type)
2452
2457
  @telephony_transfer_call = args[:telephony_transfer_call] if args.key?(:telephony_transfer_call)
2453
2458
  @text = args[:text] if args.key?(:text)
2459
+ @tool_call = args[:tool_call] if args.key?(:tool_call)
2454
2460
  end
2455
2461
  end
2456
2462
 
@@ -3073,6 +3079,38 @@ module Google
3073
3079
  end
3074
3080
  end
3075
3081
 
3082
+ # Represents a call of a specific tool's action with the specified inputs.
3083
+ class GoogleCloudDialogflowCxV3ToolCall
3084
+ include Google::Apis::Core::Hashable
3085
+
3086
+ # Required. The name of the tool's action associated with this call.
3087
+ # Corresponds to the JSON property `action`
3088
+ # @return [String]
3089
+ attr_accessor :action
3090
+
3091
+ # Optional. The action's input parameters.
3092
+ # Corresponds to the JSON property `inputParameters`
3093
+ # @return [Hash<String,Object>]
3094
+ attr_accessor :input_parameters
3095
+
3096
+ # Required. The tool associated with this call. Format: `projects//locations//
3097
+ # agents//tools/`.
3098
+ # Corresponds to the JSON property `tool`
3099
+ # @return [String]
3100
+ attr_accessor :tool
3101
+
3102
+ def initialize(**args)
3103
+ update!(**args)
3104
+ end
3105
+
3106
+ # Update properties of this object
3107
+ def update!(**args)
3108
+ @action = args[:action] if args.key?(:action)
3109
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
3110
+ @tool = args[:tool] if args.key?(:tool)
3111
+ end
3112
+ end
3113
+
3076
3114
  # A transition route specifies a intent that can be matched and/or a data
3077
3115
  # condition that can be evaluated during a session. When a specified transition
3078
3116
  # is matched, the following actions are taken in order: * If there is a `
@@ -3716,6 +3754,74 @@ module Google
3716
3754
  end
3717
3755
  end
3718
3756
 
3757
+ # Action performed by end user or Dialogflow agent in the conversation.
3758
+ class GoogleCloudDialogflowCxV3beta1Action
3759
+ include Google::Apis::Core::Hashable
3760
+
3761
+ # AgentUtterance represents one message sent by the agent.
3762
+ # Corresponds to the JSON property `agentUtterance`
3763
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1AgentUtterance]
3764
+ attr_accessor :agent_utterance
3765
+
3766
+ # Stores metadata of the invocation of a CX flow. Next Id: 7
3767
+ # Corresponds to the JSON property `flowInvocation`
3768
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1FlowInvocation]
3769
+ attr_accessor :flow_invocation
3770
+
3771
+ # Stores metadata of the invocation of a child playbook. Next Id: 5
3772
+ # Corresponds to the JSON property `playbookInvocation`
3773
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookInvocation]
3774
+ attr_accessor :playbook_invocation
3775
+
3776
+ # Stores metadata of the invocation of an action supported by a tool.
3777
+ # Corresponds to the JSON property `toolUse`
3778
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolUse]
3779
+ attr_accessor :tool_use
3780
+
3781
+ # UserUtterance represents one message sent by the customer.
3782
+ # Corresponds to the JSON property `userUtterance`
3783
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1UserUtterance]
3784
+ attr_accessor :user_utterance
3785
+
3786
+ def initialize(**args)
3787
+ update!(**args)
3788
+ end
3789
+
3790
+ # Update properties of this object
3791
+ def update!(**args)
3792
+ @agent_utterance = args[:agent_utterance] if args.key?(:agent_utterance)
3793
+ @flow_invocation = args[:flow_invocation] if args.key?(:flow_invocation)
3794
+ @playbook_invocation = args[:playbook_invocation] if args.key?(:playbook_invocation)
3795
+ @tool_use = args[:tool_use] if args.key?(:tool_use)
3796
+ @user_utterance = args[:user_utterance] if args.key?(:user_utterance)
3797
+ end
3798
+ end
3799
+
3800
+ # Parameter associated with action.
3801
+ class GoogleCloudDialogflowCxV3beta1ActionParameter
3802
+ include Google::Apis::Core::Hashable
3803
+
3804
+ # Required. Name of the parameter.
3805
+ # Corresponds to the JSON property `name`
3806
+ # @return [String]
3807
+ attr_accessor :name
3808
+
3809
+ # Required. Value of the parameter.
3810
+ # Corresponds to the JSON property `value`
3811
+ # @return [Object]
3812
+ attr_accessor :value
3813
+
3814
+ def initialize(**args)
3815
+ update!(**args)
3816
+ end
3817
+
3818
+ # Update properties of this object
3819
+ def update!(**args)
3820
+ @name = args[:name] if args.key?(:name)
3821
+ @value = args[:value] if args.key?(:value)
3822
+ end
3823
+ end
3824
+
3719
3825
  # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
3720
3826
  # Settings exposed at lower level overrides the settings exposed at higher level.
3721
3827
  # Overriding occurs at the sub-setting level. For example, the
@@ -3918,13 +4024,26 @@ module Google
3918
4024
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1SpeechToTextSettings]
3919
4025
  attr_accessor :speech_to_text_settings
3920
4026
 
3921
- # Immutable. Name of the start flow in this agent. A start flow will be
4027
+ # Optional. Name of the start flow in this agent. A start flow will be
3922
4028
  # automatically created when the agent is created, and can only be deleted by
3923
- # deleting the agent. Format: `projects//locations//agents//flows/`.
4029
+ # deleting the agent. Format: `projects//locations//agents//flows/`. Currently
4030
+ # only the default start flow with id "00000000-0000-0000-0000-000000000000" is
4031
+ # allowed. Only one of `start_flow` or `start_playbook` should be set, but not
4032
+ # both.
3924
4033
  # Corresponds to the JSON property `startFlow`
3925
4034
  # @return [String]
3926
4035
  attr_accessor :start_flow
3927
4036
 
4037
+ # Optional. Name of the start playbook in this agent. A start playbook will be
4038
+ # automatically created when the agent is created, and can only be deleted by
4039
+ # deleting the agent. Format: `projects//locations//agents//playbooks/`.
4040
+ # Currently only the default playbook with id "00000000-0000-0000-0000-
4041
+ # 000000000000" is allowed. Only one of `start_flow` or `start_playbook` should
4042
+ # be set, but not both.
4043
+ # Corresponds to the JSON property `startPlaybook`
4044
+ # @return [String]
4045
+ attr_accessor :start_playbook
4046
+
3928
4047
  # The list of all languages supported by the agent (except for the `
3929
4048
  # default_language_code`).
3930
4049
  # Corresponds to the JSON property `supportedLanguageCodes`
@@ -3963,6 +4082,7 @@ module Google
3963
4082
  @security_settings = args[:security_settings] if args.key?(:security_settings)
3964
4083
  @speech_to_text_settings = args[:speech_to_text_settings] if args.key?(:speech_to_text_settings)
3965
4084
  @start_flow = args[:start_flow] if args.key?(:start_flow)
4085
+ @start_playbook = args[:start_playbook] if args.key?(:start_playbook)
3966
4086
  @supported_language_codes = args[:supported_language_codes] if args.key?(:supported_language_codes)
3967
4087
  @text_to_speech_settings = args[:text_to_speech_settings] if args.key?(:text_to_speech_settings)
3968
4088
  @time_zone = args[:time_zone] if args.key?(:time_zone)
@@ -4074,6 +4194,25 @@ module Google
4074
4194
  end
4075
4195
  end
4076
4196
 
4197
+ # AgentUtterance represents one message sent by the agent.
4198
+ class GoogleCloudDialogflowCxV3beta1AgentUtterance
4199
+ include Google::Apis::Core::Hashable
4200
+
4201
+ # Required. Message content in text.
4202
+ # Corresponds to the JSON property `text`
4203
+ # @return [String]
4204
+ attr_accessor :text
4205
+
4206
+ def initialize(**args)
4207
+ update!(**args)
4208
+ end
4209
+
4210
+ # Update properties of this object
4211
+ def update!(**args)
4212
+ @text = args[:text] if args.key?(:text)
4213
+ end
4214
+ end
4215
+
4077
4216
  # The response message for Agents.GetAgentValidationResult.
4078
4217
  class GoogleCloudDialogflowCxV3beta1AgentValidationResult
4079
4218
  include Google::Apis::Core::Hashable
@@ -4468,6 +4607,11 @@ module Google
4468
4607
  # @return [String]
4469
4608
  attr_accessor :display_name
4470
4609
 
4610
+ # The affected language code of the change.
4611
+ # Corresponds to the JSON property `languageCode`
4612
+ # @return [String]
4613
+ attr_accessor :language_code
4614
+
4471
4615
  # The unique identifier of the changelog. Format: `projects//locations//agents//
4472
4616
  # changelogs/`.
4473
4617
  # Corresponds to the JSON property `name`
@@ -4498,6 +4642,7 @@ module Google
4498
4642
  @action = args[:action] if args.key?(:action)
4499
4643
  @create_time = args[:create_time] if args.key?(:create_time)
4500
4644
  @display_name = args[:display_name] if args.key?(:display_name)
4645
+ @language_code = args[:language_code] if args.key?(:language_code)
4501
4646
  @name = args[:name] if args.key?(:name)
4502
4647
  @resource = args[:resource] if args.key?(:resource)
4503
4648
  @type = args[:type] if args.key?(:type)
@@ -5487,6 +5632,93 @@ module Google
5487
5632
  end
5488
5633
  end
5489
5634
 
5635
+ # Example represents a sample execution of the playbook in the conversation. An
5636
+ # example consists of a list of ordered actions performed by end user or
5637
+ # Dialogflow agent according the playbook instructions to fulfill the task.
5638
+ class GoogleCloudDialogflowCxV3beta1Example
5639
+ include Google::Apis::Core::Hashable
5640
+
5641
+ # Required. The ordered list of actions performed by the end user and the
5642
+ # Dialogflow agent.
5643
+ # Corresponds to the JSON property `actions`
5644
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Action>]
5645
+ attr_accessor :actions
5646
+
5647
+ # Required. Example's output state.
5648
+ # Corresponds to the JSON property `conversationState`
5649
+ # @return [String]
5650
+ attr_accessor :conversation_state
5651
+
5652
+ # Output only. The timestamp of initial example creation.
5653
+ # Corresponds to the JSON property `createTime`
5654
+ # @return [String]
5655
+ attr_accessor :create_time
5656
+
5657
+ # Optional. The high level concise description of the example. The max number of
5658
+ # characters is 200.
5659
+ # Corresponds to the JSON property `description`
5660
+ # @return [String]
5661
+ attr_accessor :description
5662
+
5663
+ # Required. The display name of the example.
5664
+ # Corresponds to the JSON property `displayName`
5665
+ # @return [String]
5666
+ attr_accessor :display_name
5667
+
5668
+ # Optional. The language code of the example. If not specified, the agent's
5669
+ # default language is used. Note: languages must be enabled in the agent before
5670
+ # they can be used.
5671
+ # Corresponds to the JSON property `languageCode`
5672
+ # @return [String]
5673
+ attr_accessor :language_code
5674
+
5675
+ # The unique identifier of the playbook example. Format: `projects//locations//
5676
+ # agents//playbooks//examples/`.
5677
+ # Corresponds to the JSON property `name`
5678
+ # @return [String]
5679
+ attr_accessor :name
5680
+
5681
+ # Input of the playbook.
5682
+ # Corresponds to the JSON property `playbookInput`
5683
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookInput]
5684
+ attr_accessor :playbook_input
5685
+
5686
+ # Output of the playbook.
5687
+ # Corresponds to the JSON property `playbookOutput`
5688
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookOutput]
5689
+ attr_accessor :playbook_output
5690
+
5691
+ # Output only. Estimated number of tokes current example takes when sent to the
5692
+ # LLM.
5693
+ # Corresponds to the JSON property `tokenCount`
5694
+ # @return [Fixnum]
5695
+ attr_accessor :token_count
5696
+
5697
+ # Output only. Last time the example was updated.
5698
+ # Corresponds to the JSON property `updateTime`
5699
+ # @return [String]
5700
+ attr_accessor :update_time
5701
+
5702
+ def initialize(**args)
5703
+ update!(**args)
5704
+ end
5705
+
5706
+ # Update properties of this object
5707
+ def update!(**args)
5708
+ @actions = args[:actions] if args.key?(:actions)
5709
+ @conversation_state = args[:conversation_state] if args.key?(:conversation_state)
5710
+ @create_time = args[:create_time] if args.key?(:create_time)
5711
+ @description = args[:description] if args.key?(:description)
5712
+ @display_name = args[:display_name] if args.key?(:display_name)
5713
+ @language_code = args[:language_code] if args.key?(:language_code)
5714
+ @name = args[:name] if args.key?(:name)
5715
+ @playbook_input = args[:playbook_input] if args.key?(:playbook_input)
5716
+ @playbook_output = args[:playbook_output] if args.key?(:playbook_output)
5717
+ @token_count = args[:token_count] if args.key?(:token_count)
5718
+ @update_time = args[:update_time] if args.key?(:update_time)
5719
+ end
5720
+ end
5721
+
5490
5722
  # Represents an experiment in an environment.
5491
5723
  class GoogleCloudDialogflowCxV3beta1Experiment
5492
5724
  include Google::Apis::Core::Hashable
@@ -6205,6 +6437,51 @@ module Google
6205
6437
  end
6206
6438
  end
6207
6439
 
6440
+ # The request message for Tools.ExportTools.
6441
+ class GoogleCloudDialogflowCxV3beta1ExportToolsRequest
6442
+ include Google::Apis::Core::Hashable
6443
+
6444
+ # Optional. The data format of the exported tools. If not specified, `BLOB` is
6445
+ # assumed.
6446
+ # Corresponds to the JSON property `dataFormat`
6447
+ # @return [String]
6448
+ attr_accessor :data_format
6449
+
6450
+ # Required. The name of the tools to export. Format: `projects//locations//
6451
+ # agents//tools/`.
6452
+ # Corresponds to the JSON property `tools`
6453
+ # @return [Array<String>]
6454
+ attr_accessor :tools
6455
+
6456
+ # Optional. The option to return the serialized tools inline.
6457
+ # Corresponds to the JSON property `toolsContentInline`
6458
+ # @return [Boolean]
6459
+ attr_accessor :tools_content_inline
6460
+ alias_method :tools_content_inline?, :tools_content_inline
6461
+
6462
+ # Optional. The [Google Cloud Storage](https://cloud.google.com/storage/docs/)
6463
+ # URI to export the tools to. The format of this URI must be `gs:///`.
6464
+ # Dialogflow performs a write operation for the Cloud Storage object on the
6465
+ # caller's behalf, so your request authentication must have write permissions
6466
+ # for the object. For more information, see [Dialogflow access control](https://
6467
+ # cloud.google.com/dialogflow/cx/docs/concept/access-control#storage).
6468
+ # Corresponds to the JSON property `toolsUri`
6469
+ # @return [String]
6470
+ attr_accessor :tools_uri
6471
+
6472
+ def initialize(**args)
6473
+ update!(**args)
6474
+ end
6475
+
6476
+ # Update properties of this object
6477
+ def update!(**args)
6478
+ @data_format = args[:data_format] if args.key?(:data_format)
6479
+ @tools = args[:tools] if args.key?(:tools)
6480
+ @tools_content_inline = args[:tools_content_inline] if args.key?(:tools_content_inline)
6481
+ @tools_uri = args[:tools_uri] if args.key?(:tools_uri)
6482
+ end
6483
+ end
6484
+
6208
6485
  # Filter specifications for data stores.
6209
6486
  class GoogleCloudDialogflowCxV3beta1FilterSpecs
6210
6487
  include Google::Apis::Core::Hashable
@@ -6365,6 +6642,44 @@ module Google
6365
6642
  end
6366
6643
  end
6367
6644
 
6645
+ # Stores metadata of the invocation of a CX flow. Next Id: 7
6646
+ class GoogleCloudDialogflowCxV3beta1FlowInvocation
6647
+ include Google::Apis::Core::Hashable
6648
+
6649
+ # Required. The unique identifier of the flow. Format: `projects//locations//
6650
+ # agents/`.
6651
+ # Corresponds to the JSON property `flow`
6652
+ # @return [String]
6653
+ attr_accessor :flow
6654
+
6655
+ # Required. Flow invocation's output state.
6656
+ # Corresponds to the JSON property `flowState`
6657
+ # @return [String]
6658
+ attr_accessor :flow_state
6659
+
6660
+ # A list of input parameters for the flow invocation.
6661
+ # Corresponds to the JSON property `inputParameters`
6662
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ActionParameter>]
6663
+ attr_accessor :input_parameters
6664
+
6665
+ # A list of output parameters generated by the flow invocation.
6666
+ # Corresponds to the JSON property `outputParameters`
6667
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ActionParameter>]
6668
+ attr_accessor :output_parameters
6669
+
6670
+ def initialize(**args)
6671
+ update!(**args)
6672
+ end
6673
+
6674
+ # Update properties of this object
6675
+ def update!(**args)
6676
+ @flow = args[:flow] if args.key?(:flow)
6677
+ @flow_state = args[:flow_state] if args.key?(:flow_state)
6678
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
6679
+ @output_parameters = args[:output_parameters] if args.key?(:output_parameters)
6680
+ end
6681
+ end
6682
+
6368
6683
  # The response message for Flows.GetFlowValidationResult.
6369
6684
  class GoogleCloudDialogflowCxV3beta1FlowValidationResult
6370
6685
  include Google::Apis::Core::Hashable
@@ -6849,6 +7164,34 @@ module Google
6849
7164
  end
6850
7165
  end
6851
7166
 
7167
+ # Represents the information of a query if handled by generative agent resources.
7168
+ class GoogleCloudDialogflowCxV3beta1GenerativeInfo
7169
+ include Google::Apis::Core::Hashable
7170
+
7171
+ # Example represents a sample execution of the playbook in the conversation. An
7172
+ # example consists of a list of ordered actions performed by end user or
7173
+ # Dialogflow agent according the playbook instructions to fulfill the task.
7174
+ # Corresponds to the JSON property `actionTracingInfo`
7175
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Example]
7176
+ attr_accessor :action_tracing_info
7177
+
7178
+ # The stack of playbooks that the conversation has currently entered, with the
7179
+ # most recent one on the top.
7180
+ # Corresponds to the JSON property `currentPlaybooks`
7181
+ # @return [Array<String>]
7182
+ attr_accessor :current_playbooks
7183
+
7184
+ def initialize(**args)
7185
+ update!(**args)
7186
+ end
7187
+
7188
+ # Update properties of this object
7189
+ def update!(**args)
7190
+ @action_tracing_info = args[:action_tracing_info] if args.key?(:action_tracing_info)
7191
+ @current_playbooks = args[:current_playbooks] if args.key?(:current_playbooks)
7192
+ end
7193
+ end
7194
+
6852
7195
  # Settings for Generative AI.
6853
7196
  class GoogleCloudDialogflowCxV3beta1GenerativeSettings
6854
7197
  include Google::Apis::Core::Hashable
@@ -6875,6 +7218,11 @@ module Google
6875
7218
  # @return [String]
6876
7219
  attr_accessor :language_code
6877
7220
 
7221
+ # Settings for LLM models.
7222
+ # Corresponds to the JSON property `llmModelSettings`
7223
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1LlmModelSettings]
7224
+ attr_accessor :llm_model_settings
7225
+
6878
7226
  # Format: `projects//locations//agents//generativeSettings`.
6879
7227
  # Corresponds to the JSON property `name`
6880
7228
  # @return [String]
@@ -6890,6 +7238,7 @@ module Google
6890
7238
  @generative_safety_settings = args[:generative_safety_settings] if args.key?(:generative_safety_settings)
6891
7239
  @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
6892
7240
  @language_code = args[:language_code] if args.key?(:language_code)
7241
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
6893
7242
  @name = args[:name] if args.key?(:name)
6894
7243
  end
6895
7244
  end
@@ -7025,6 +7374,11 @@ module Google
7025
7374
  # @return [String]
7026
7375
  attr_accessor :display_name
7027
7376
 
7377
+ # Settings for LLM models.
7378
+ # Corresponds to the JSON property `llmModelSettings`
7379
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1LlmModelSettings]
7380
+ attr_accessor :llm_model_settings
7381
+
7028
7382
  # The unique identifier of the generator. Must be set for the Generators.
7029
7383
  # UpdateGenerator method. Generators.CreateGenerate populates the name
7030
7384
  # automatically. Format: `projects//locations//agents//generators/`.
@@ -7049,6 +7403,7 @@ module Google
7049
7403
  # Update properties of this object
7050
7404
  def update!(**args)
7051
7405
  @display_name = args[:display_name] if args.key?(:display_name)
7406
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
7052
7407
  @name = args[:name] if args.key?(:name)
7053
7408
  @placeholders = args[:placeholders] if args.key?(:placeholders)
7054
7409
  @prompt_text = args[:prompt_text] if args.key?(:prompt_text)
@@ -8124,6 +8479,33 @@ module Google
8124
8479
  end
8125
8480
  end
8126
8481
 
8482
+ # The response message for Examples.ListExamples.
8483
+ class GoogleCloudDialogflowCxV3beta1ListExamplesResponse
8484
+ include Google::Apis::Core::Hashable
8485
+
8486
+ # The list of examples. There will be a maximum number of items returned based
8487
+ # on the page_size field in the request.
8488
+ # Corresponds to the JSON property `examples`
8489
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Example>]
8490
+ attr_accessor :examples
8491
+
8492
+ # Token to retrieve the next page of results, or empty if there are no more
8493
+ # results in the list.
8494
+ # Corresponds to the JSON property `nextPageToken`
8495
+ # @return [String]
8496
+ attr_accessor :next_page_token
8497
+
8498
+ def initialize(**args)
8499
+ update!(**args)
8500
+ end
8501
+
8502
+ # Update properties of this object
8503
+ def update!(**args)
8504
+ @examples = args[:examples] if args.key?(:examples)
8505
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8506
+ end
8507
+ end
8508
+
8127
8509
  # The response message for Experiments.ListExperiments.
8128
8510
  class GoogleCloudDialogflowCxV3beta1ListExperimentsResponse
8129
8511
  include Google::Apis::Core::Hashable
@@ -8260,6 +8642,60 @@ module Google
8260
8642
  end
8261
8643
  end
8262
8644
 
8645
+ # The response message for Playbooks.ListPlaybookVersions.
8646
+ class GoogleCloudDialogflowCxV3beta1ListPlaybookVersionsResponse
8647
+ include Google::Apis::Core::Hashable
8648
+
8649
+ # Token to retrieve the next page of results, or empty if there are no more
8650
+ # results in the list.
8651
+ # Corresponds to the JSON property `nextPageToken`
8652
+ # @return [String]
8653
+ attr_accessor :next_page_token
8654
+
8655
+ # The list of playbook version. There will be a maximum number of items returned
8656
+ # based on the page_size field in the request.
8657
+ # Corresponds to the JSON property `playbookVersions`
8658
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookVersion>]
8659
+ attr_accessor :playbook_versions
8660
+
8661
+ def initialize(**args)
8662
+ update!(**args)
8663
+ end
8664
+
8665
+ # Update properties of this object
8666
+ def update!(**args)
8667
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8668
+ @playbook_versions = args[:playbook_versions] if args.key?(:playbook_versions)
8669
+ end
8670
+ end
8671
+
8672
+ # The response message for Playbooks.ListPlaybooks.
8673
+ class GoogleCloudDialogflowCxV3beta1ListPlaybooksResponse
8674
+ include Google::Apis::Core::Hashable
8675
+
8676
+ # Token to retrieve the next page of results, or empty if there are no more
8677
+ # results in the list.
8678
+ # Corresponds to the JSON property `nextPageToken`
8679
+ # @return [String]
8680
+ attr_accessor :next_page_token
8681
+
8682
+ # The list of playbooks. There will be a maximum number of items returned based
8683
+ # on the page_size field in the request.
8684
+ # Corresponds to the JSON property `playbooks`
8685
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Playbook>]
8686
+ attr_accessor :playbooks
8687
+
8688
+ def initialize(**args)
8689
+ update!(**args)
8690
+ end
8691
+
8692
+ # Update properties of this object
8693
+ def update!(**args)
8694
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8695
+ @playbooks = args[:playbooks] if args.key?(:playbooks)
8696
+ end
8697
+ end
8698
+
8263
8699
  # The response message for SecuritySettings.ListSecuritySettings.
8264
8700
  class GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse
8265
8701
  include Google::Apis::Core::Hashable
@@ -8366,8 +8802,35 @@ module Google
8366
8802
  end
8367
8803
  end
8368
8804
 
8369
- # The response message for TransitionRouteGroups.ListTransitionRouteGroups.
8370
- class GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse
8805
+ # The response message for Tools.ListTools.
8806
+ class GoogleCloudDialogflowCxV3beta1ListToolsResponse
8807
+ include Google::Apis::Core::Hashable
8808
+
8809
+ # Token to retrieve the next page of results, or empty if there are no more
8810
+ # results in the list.
8811
+ # Corresponds to the JSON property `nextPageToken`
8812
+ # @return [String]
8813
+ attr_accessor :next_page_token
8814
+
8815
+ # The list of Tools. There will be a maximum number of items returned based on
8816
+ # the page_size field in the request.
8817
+ # Corresponds to the JSON property `tools`
8818
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Tool>]
8819
+ attr_accessor :tools
8820
+
8821
+ def initialize(**args)
8822
+ update!(**args)
8823
+ end
8824
+
8825
+ # Update properties of this object
8826
+ def update!(**args)
8827
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8828
+ @tools = args[:tools] if args.key?(:tools)
8829
+ end
8830
+ end
8831
+
8832
+ # The response message for TransitionRouteGroups.ListTransitionRouteGroups.
8833
+ class GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse
8371
8834
  include Google::Apis::Core::Hashable
8372
8835
 
8373
8836
  # Token to retrieve the next page of results, or empty if there are no more
@@ -8450,6 +8913,31 @@ module Google
8450
8913
  end
8451
8914
  end
8452
8915
 
8916
+ # Settings for LLM models.
8917
+ class GoogleCloudDialogflowCxV3beta1LlmModelSettings
8918
+ include Google::Apis::Core::Hashable
8919
+
8920
+ # The selected LLM model.
8921
+ # Corresponds to the JSON property `model`
8922
+ # @return [String]
8923
+ attr_accessor :model
8924
+
8925
+ # The custom prompt to use.
8926
+ # Corresponds to the JSON property `promptText`
8927
+ # @return [String]
8928
+ attr_accessor :prompt_text
8929
+
8930
+ def initialize(**args)
8931
+ update!(**args)
8932
+ end
8933
+
8934
+ # Update properties of this object
8935
+ def update!(**args)
8936
+ @model = args[:model] if args.key?(:model)
8937
+ @prompt_text = args[:prompt_text] if args.key?(:prompt_text)
8938
+ end
8939
+ end
8940
+
8453
8941
  # The request message for Versions.LoadVersion.
8454
8942
  class GoogleCloudDialogflowCxV3beta1LoadVersionRequest
8455
8943
  include Google::Apis::Core::Hashable
@@ -8972,6 +9460,38 @@ module Google
8972
9460
  end
8973
9461
  end
8974
9462
 
9463
+ # Defines the properties of a parameter. Used to define parameters used in the
9464
+ # agent and the input / output parameters for each fulfillment.
9465
+ class GoogleCloudDialogflowCxV3beta1ParameterDefinition
9466
+ include Google::Apis::Core::Hashable
9467
+
9468
+ # Human-readable description of the parameter. Limited to 300 characters.
9469
+ # Corresponds to the JSON property `description`
9470
+ # @return [String]
9471
+ attr_accessor :description
9472
+
9473
+ # Required. Name of parameter.
9474
+ # Corresponds to the JSON property `name`
9475
+ # @return [String]
9476
+ attr_accessor :name
9477
+
9478
+ # Required. Type of parameter.
9479
+ # Corresponds to the JSON property `type`
9480
+ # @return [String]
9481
+ attr_accessor :type
9482
+
9483
+ def initialize(**args)
9484
+ update!(**args)
9485
+ end
9486
+
9487
+ # Update properties of this object
9488
+ def update!(**args)
9489
+ @description = args[:description] if args.key?(:description)
9490
+ @name = args[:name] if args.key?(:name)
9491
+ @type = args[:type] if args.key?(:type)
9492
+ end
9493
+ end
9494
+
8975
9495
  # Text input which can be used for prompt or banned phrases.
8976
9496
  class GoogleCloudDialogflowCxV3beta1Phrase
8977
9497
  include Google::Apis::Core::Hashable
@@ -8991,6 +9511,272 @@ module Google
8991
9511
  end
8992
9512
  end
8993
9513
 
9514
+ # Playbook is the basic building block to instruct the LLM how to execute a
9515
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
9516
+ # step by step instructions (the step instruction may refers to name of the
9517
+ # custom or default plugin tools to use) to perform the task, a list of
9518
+ # contextual input data to be passed in at the beginning of the invoked, and a
9519
+ # list of output parameters to store the playbook result.
9520
+ class GoogleCloudDialogflowCxV3beta1Playbook
9521
+ include Google::Apis::Core::Hashable
9522
+
9523
+ # Output only. The timestamp of initial playbook creation.
9524
+ # Corresponds to the JSON property `createTime`
9525
+ # @return [String]
9526
+ attr_accessor :create_time
9527
+
9528
+ # Required. The human-readable name of the playbook, unique within an agent.
9529
+ # Corresponds to the JSON property `displayName`
9530
+ # @return [String]
9531
+ attr_accessor :display_name
9532
+
9533
+ # Required. High level description of the goal the playbook intend to accomplish.
9534
+ # Corresponds to the JSON property `goal`
9535
+ # @return [String]
9536
+ attr_accessor :goal
9537
+
9538
+ # Optional. Defined structured input parameters for this playbook.
9539
+ # Corresponds to the JSON property `inputParameterDefinitions`
9540
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ParameterDefinition>]
9541
+ attr_accessor :input_parameter_definitions
9542
+
9543
+ # Settings for LLM models.
9544
+ # Corresponds to the JSON property `llmModelSettings`
9545
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1LlmModelSettings]
9546
+ attr_accessor :llm_model_settings
9547
+
9548
+ # The unique identifier of the playbook. Format: `projects//locations//agents//
9549
+ # playbooks/`.
9550
+ # Corresponds to the JSON property `name`
9551
+ # @return [String]
9552
+ attr_accessor :name
9553
+
9554
+ # Optional. Defined structured output parameters for this playbook.
9555
+ # Corresponds to the JSON property `outputParameterDefinitions`
9556
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ParameterDefinition>]
9557
+ attr_accessor :output_parameter_definitions
9558
+
9559
+ # Output only. The resource name of flows referenced by the current playbook in
9560
+ # the instructions.
9561
+ # Corresponds to the JSON property `referencedFlows`
9562
+ # @return [Array<String>]
9563
+ attr_accessor :referenced_flows
9564
+
9565
+ # Output only. The resource name of other playbooks referenced by the current
9566
+ # playbook in the instructions.
9567
+ # Corresponds to the JSON property `referencedPlaybooks`
9568
+ # @return [Array<String>]
9569
+ attr_accessor :referenced_playbooks
9570
+
9571
+ # Optional. The resource name of tools referenced by the current playbook in the
9572
+ # instructions. If not provided explicitly, they are will be implied using the
9573
+ # tool being referenced in goal and steps.
9574
+ # Corresponds to the JSON property `referencedTools`
9575
+ # @return [Array<String>]
9576
+ attr_accessor :referenced_tools
9577
+
9578
+ # Ordered list of step by step execution instructions to accomplish target goal.
9579
+ # Corresponds to the JSON property `steps`
9580
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookStep>]
9581
+ attr_accessor :steps
9582
+
9583
+ # Output only. Estimated number of tokes current playbook takes when sent to the
9584
+ # LLM.
9585
+ # Corresponds to the JSON property `tokenCount`
9586
+ # @return [Fixnum]
9587
+ attr_accessor :token_count
9588
+
9589
+ # Output only. Last time the playbook version was updated.
9590
+ # Corresponds to the JSON property `updateTime`
9591
+ # @return [String]
9592
+ attr_accessor :update_time
9593
+
9594
+ def initialize(**args)
9595
+ update!(**args)
9596
+ end
9597
+
9598
+ # Update properties of this object
9599
+ def update!(**args)
9600
+ @create_time = args[:create_time] if args.key?(:create_time)
9601
+ @display_name = args[:display_name] if args.key?(:display_name)
9602
+ @goal = args[:goal] if args.key?(:goal)
9603
+ @input_parameter_definitions = args[:input_parameter_definitions] if args.key?(:input_parameter_definitions)
9604
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
9605
+ @name = args[:name] if args.key?(:name)
9606
+ @output_parameter_definitions = args[:output_parameter_definitions] if args.key?(:output_parameter_definitions)
9607
+ @referenced_flows = args[:referenced_flows] if args.key?(:referenced_flows)
9608
+ @referenced_playbooks = args[:referenced_playbooks] if args.key?(:referenced_playbooks)
9609
+ @referenced_tools = args[:referenced_tools] if args.key?(:referenced_tools)
9610
+ @steps = args[:steps] if args.key?(:steps)
9611
+ @token_count = args[:token_count] if args.key?(:token_count)
9612
+ @update_time = args[:update_time] if args.key?(:update_time)
9613
+ end
9614
+ end
9615
+
9616
+ # Input of the playbook.
9617
+ class GoogleCloudDialogflowCxV3beta1PlaybookInput
9618
+ include Google::Apis::Core::Hashable
9619
+
9620
+ # Optional. A list of input parameters for the invocation.
9621
+ # Corresponds to the JSON property `parameters`
9622
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ActionParameter>]
9623
+ attr_accessor :parameters
9624
+
9625
+ # Optional. Summary string of the preceding conversation for the child playbook
9626
+ # invocation.
9627
+ # Corresponds to the JSON property `precedingConversationSummary`
9628
+ # @return [String]
9629
+ attr_accessor :preceding_conversation_summary
9630
+
9631
+ def initialize(**args)
9632
+ update!(**args)
9633
+ end
9634
+
9635
+ # Update properties of this object
9636
+ def update!(**args)
9637
+ @parameters = args[:parameters] if args.key?(:parameters)
9638
+ @preceding_conversation_summary = args[:preceding_conversation_summary] if args.key?(:preceding_conversation_summary)
9639
+ end
9640
+ end
9641
+
9642
+ # Stores metadata of the invocation of a child playbook. Next Id: 5
9643
+ class GoogleCloudDialogflowCxV3beta1PlaybookInvocation
9644
+ include Google::Apis::Core::Hashable
9645
+
9646
+ # Required. The unique identifier of the playbook. Format: `projects//locations//
9647
+ # agents//playbooks/`.
9648
+ # Corresponds to the JSON property `playbook`
9649
+ # @return [String]
9650
+ attr_accessor :playbook
9651
+
9652
+ # Input of the playbook.
9653
+ # Corresponds to the JSON property `playbookInput`
9654
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookInput]
9655
+ attr_accessor :playbook_input
9656
+
9657
+ # Output of the playbook.
9658
+ # Corresponds to the JSON property `playbookOutput`
9659
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookOutput]
9660
+ attr_accessor :playbook_output
9661
+
9662
+ # Required. Playbook invocation's output state.
9663
+ # Corresponds to the JSON property `playbookState`
9664
+ # @return [String]
9665
+ attr_accessor :playbook_state
9666
+
9667
+ def initialize(**args)
9668
+ update!(**args)
9669
+ end
9670
+
9671
+ # Update properties of this object
9672
+ def update!(**args)
9673
+ @playbook = args[:playbook] if args.key?(:playbook)
9674
+ @playbook_input = args[:playbook_input] if args.key?(:playbook_input)
9675
+ @playbook_output = args[:playbook_output] if args.key?(:playbook_output)
9676
+ @playbook_state = args[:playbook_state] if args.key?(:playbook_state)
9677
+ end
9678
+ end
9679
+
9680
+ # Output of the playbook.
9681
+ class GoogleCloudDialogflowCxV3beta1PlaybookOutput
9682
+ include Google::Apis::Core::Hashable
9683
+
9684
+ # Optional. Summary string of the execution result of the child playbook.
9685
+ # Corresponds to the JSON property `executionSummary`
9686
+ # @return [String]
9687
+ attr_accessor :execution_summary
9688
+
9689
+ # Optional. A list of output parameters for the invocation.
9690
+ # Corresponds to the JSON property `parameters`
9691
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ActionParameter>]
9692
+ attr_accessor :parameters
9693
+
9694
+ def initialize(**args)
9695
+ update!(**args)
9696
+ end
9697
+
9698
+ # Update properties of this object
9699
+ def update!(**args)
9700
+ @execution_summary = args[:execution_summary] if args.key?(:execution_summary)
9701
+ @parameters = args[:parameters] if args.key?(:parameters)
9702
+ end
9703
+ end
9704
+
9705
+ # Message of single step execution.
9706
+ class GoogleCloudDialogflowCxV3beta1PlaybookStep
9707
+ include Google::Apis::Core::Hashable
9708
+
9709
+ # Sub-processing needed to execute the current step.
9710
+ # Corresponds to the JSON property `steps`
9711
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1PlaybookStep>]
9712
+ attr_accessor :steps
9713
+
9714
+ # Step instruction in text format.
9715
+ # Corresponds to the JSON property `text`
9716
+ # @return [String]
9717
+ attr_accessor :text
9718
+
9719
+ def initialize(**args)
9720
+ update!(**args)
9721
+ end
9722
+
9723
+ # Update properties of this object
9724
+ def update!(**args)
9725
+ @steps = args[:steps] if args.key?(:steps)
9726
+ @text = args[:text] if args.key?(:text)
9727
+ end
9728
+ end
9729
+
9730
+ # Playbook version is a snapshot of the playbook at certain timestamp.
9731
+ class GoogleCloudDialogflowCxV3beta1PlaybookVersion
9732
+ include Google::Apis::Core::Hashable
9733
+
9734
+ # Optional. The description of the playbook version.
9735
+ # Corresponds to the JSON property `description`
9736
+ # @return [String]
9737
+ attr_accessor :description
9738
+
9739
+ # Output only. Snapshot of the examples belonging to the playbook when the
9740
+ # playbook version is created.
9741
+ # Corresponds to the JSON property `examples`
9742
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Example>]
9743
+ attr_accessor :examples
9744
+
9745
+ # The unique identifier of the playbook version. Format: `projects//locations//
9746
+ # agents//playbooks//versions/`.
9747
+ # Corresponds to the JSON property `name`
9748
+ # @return [String]
9749
+ attr_accessor :name
9750
+
9751
+ # Playbook is the basic building block to instruct the LLM how to execute a
9752
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
9753
+ # step by step instructions (the step instruction may refers to name of the
9754
+ # custom or default plugin tools to use) to perform the task, a list of
9755
+ # contextual input data to be passed in at the beginning of the invoked, and a
9756
+ # list of output parameters to store the playbook result.
9757
+ # Corresponds to the JSON property `playbook`
9758
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Playbook]
9759
+ attr_accessor :playbook
9760
+
9761
+ # Output only. Last time the playbook version was created or modified.
9762
+ # Corresponds to the JSON property `updateTime`
9763
+ # @return [String]
9764
+ attr_accessor :update_time
9765
+
9766
+ def initialize(**args)
9767
+ update!(**args)
9768
+ end
9769
+
9770
+ # Update properties of this object
9771
+ def update!(**args)
9772
+ @description = args[:description] if args.key?(:description)
9773
+ @examples = args[:examples] if args.key?(:examples)
9774
+ @name = args[:name] if args.key?(:name)
9775
+ @playbook = args[:playbook] if args.key?(:playbook)
9776
+ @update_time = args[:update_time] if args.key?(:update_time)
9777
+ end
9778
+ end
9779
+
8994
9780
  # Represents the query input. It can contain one of: 1. A conversational query
8995
9781
  # in the form of text. 2. An intent query that specifies which intent to trigger.
8996
9782
  # 3. Natural language speech audio to be processed. 4. An event to be triggered.
@@ -9033,6 +9819,11 @@ module Google
9033
9819
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1TextInput]
9034
9820
  attr_accessor :text
9035
9821
 
9822
+ # The result of calling a tool's action that has been executed by the client.
9823
+ # Corresponds to the JSON property `toolCallResult`
9824
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolCallResult]
9825
+ attr_accessor :tool_call_result
9826
+
9036
9827
  def initialize(**args)
9037
9828
  update!(**args)
9038
9829
  end
@@ -9045,6 +9836,7 @@ module Google
9045
9836
  @intent = args[:intent] if args.key?(:intent)
9046
9837
  @language_code = args[:language_code] if args.key?(:language_code)
9047
9838
  @text = args[:text] if args.key?(:text)
9839
+ @tool_call_result = args[:tool_call_result] if args.key?(:tool_call_result)
9048
9840
  end
9049
9841
  end
9050
9842
 
@@ -9078,6 +9870,13 @@ module Google
9078
9870
  # @return [String]
9079
9871
  attr_accessor :current_page
9080
9872
 
9873
+ # Optional. Start the session with the specified playbook. You can only specify
9874
+ # the playbook at the beginning of the session. Otherwise, an error will be
9875
+ # thrown. Format: `projects//locations//agents//playbooks/`.
9876
+ # Corresponds to the JSON property `currentPlaybook`
9877
+ # @return [String]
9878
+ attr_accessor :current_playbook
9879
+
9081
9880
  # Whether to disable webhook calls for this request.
9082
9881
  # Corresponds to the JSON property `disableWebhook`
9083
9882
  # @return [Boolean]
@@ -9111,6 +9910,11 @@ module Google
9111
9910
  # @return [Google::Apis::DialogflowV3beta1::GoogleTypeLatLng]
9112
9911
  attr_accessor :geo_location
9113
9912
 
9913
+ # Settings for LLM models.
9914
+ # Corresponds to the JSON property `llmModelSettings`
9915
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1LlmModelSettings]
9916
+ attr_accessor :llm_model_settings
9917
+
9114
9918
  # Additional parameters to be put into session parameters. To remove a parameter
9115
9919
  # from the session, clients should explicitly set the parameter value to null.
9116
9920
  # You can reference the session parameters in the agent with the following
@@ -9184,10 +9988,12 @@ module Google
9184
9988
  @analyze_query_text_sentiment = args[:analyze_query_text_sentiment] if args.key?(:analyze_query_text_sentiment)
9185
9989
  @channel = args[:channel] if args.key?(:channel)
9186
9990
  @current_page = args[:current_page] if args.key?(:current_page)
9991
+ @current_playbook = args[:current_playbook] if args.key?(:current_playbook)
9187
9992
  @disable_webhook = args[:disable_webhook] if args.key?(:disable_webhook)
9188
9993
  @end_user_metadata = args[:end_user_metadata] if args.key?(:end_user_metadata)
9189
9994
  @flow_versions = args[:flow_versions] if args.key?(:flow_versions)
9190
9995
  @geo_location = args[:geo_location] if args.key?(:geo_location)
9996
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
9191
9997
  @parameters = args[:parameters] if args.key?(:parameters)
9192
9998
  @payload = args[:payload] if args.key?(:payload)
9193
9999
  @search_config = args[:search_config] if args.key?(:search_config)
@@ -9221,6 +10027,21 @@ module Google
9221
10027
  attr_accessor :allow_answer_feedback
9222
10028
  alias_method :allow_answer_feedback?, :allow_answer_feedback
9223
10029
 
10030
+ # Flows represents the conversation flows when you build your chatbot agent. A
10031
+ # flow consists of many pages connected by the transition routes. Conversations
10032
+ # always start with the built-in Start Flow (with an all-0 ID). Transition
10033
+ # routes can direct the conversation session from the current flow (parent flow)
10034
+ # to another flow (sub flow). When the sub flow is finished, Dialogflow will
10035
+ # bring the session back to the parent flow, where the sub flow is started.
10036
+ # Usually, when a transition route is followed by a matched intent, the intent
10037
+ # will be "consumed". This means the intent won't activate more transition
10038
+ # routes. However, when the followed transition route moves the conversation
10039
+ # session into a different flow, the matched intent can be carried over and to
10040
+ # be consumed in the target flow.
10041
+ # Corresponds to the JSON property `currentFlow`
10042
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1Flow]
10043
+ attr_accessor :current_flow
10044
+
9224
10045
  # A Dialogflow CX conversation (session) can be described and visualized as a
9225
10046
  # state machine. The states of a CX session are represented by pages. For each
9226
10047
  # flow, you define many pages, where your combined pages can handle a complete
@@ -9258,6 +10079,11 @@ module Google
9258
10079
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1DtmfInput]
9259
10080
  attr_accessor :dtmf
9260
10081
 
10082
+ # Represents the information of a query if handled by generative agent resources.
10083
+ # Corresponds to the JSON property `generativeInfo`
10084
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1GenerativeInfo]
10085
+ attr_accessor :generative_info
10086
+
9261
10087
  # An intent represents a user's intent to interact with a conversational agent.
9262
10088
  # You can provide information for the Dialogflow API to use to match user input
9263
10089
  # to an intent by adding training phrases (i.e., examples of user input) to your
@@ -9339,6 +10165,21 @@ module Google
9339
10165
  # @return [String]
9340
10166
  attr_accessor :trigger_intent
9341
10167
 
10168
+ # The list of webhook display names in the order of call sequence.
10169
+ # Corresponds to the JSON property `webhookDisplayNames`
10170
+ # @return [Array<String>]
10171
+ attr_accessor :webhook_display_names
10172
+
10173
+ # The list of webhook ids in the order of call sequence.
10174
+ # Corresponds to the JSON property `webhookIds`
10175
+ # @return [Array<String>]
10176
+ attr_accessor :webhook_ids
10177
+
10178
+ # The list of webhook latencies in the order of call sequence.
10179
+ # Corresponds to the JSON property `webhookLatencies`
10180
+ # @return [Array<String>]
10181
+ attr_accessor :webhook_latencies
10182
+
9342
10183
  # The list of webhook payload in WebhookResponse.payload, in the order of call
9343
10184
  # sequence. If some webhook call fails or doesn't return any payload, an empty `
9344
10185
  # Struct` would be used instead.
@@ -9351,6 +10192,11 @@ module Google
9351
10192
  # @return [Array<Google::Apis::DialogflowV3beta1::GoogleRpcStatus>]
9352
10193
  attr_accessor :webhook_statuses
9353
10194
 
10195
+ # The list of webhook tags in the order of call sequence.
10196
+ # Corresponds to the JSON property `webhookTags`
10197
+ # @return [Array<String>]
10198
+ attr_accessor :webhook_tags
10199
+
9354
10200
  def initialize(**args)
9355
10201
  update!(**args)
9356
10202
  end
@@ -9359,9 +10205,11 @@ module Google
9359
10205
  def update!(**args)
9360
10206
  @advanced_settings = args[:advanced_settings] if args.key?(:advanced_settings)
9361
10207
  @allow_answer_feedback = args[:allow_answer_feedback] if args.key?(:allow_answer_feedback)
10208
+ @current_flow = args[:current_flow] if args.key?(:current_flow)
9362
10209
  @current_page = args[:current_page] if args.key?(:current_page)
9363
10210
  @diagnostic_info = args[:diagnostic_info] if args.key?(:diagnostic_info)
9364
10211
  @dtmf = args[:dtmf] if args.key?(:dtmf)
10212
+ @generative_info = args[:generative_info] if args.key?(:generative_info)
9365
10213
  @intent = args[:intent] if args.key?(:intent)
9366
10214
  @intent_detection_confidence = args[:intent_detection_confidence] if args.key?(:intent_detection_confidence)
9367
10215
  @language_code = args[:language_code] if args.key?(:language_code)
@@ -9373,8 +10221,12 @@ module Google
9373
10221
  @transcript = args[:transcript] if args.key?(:transcript)
9374
10222
  @trigger_event = args[:trigger_event] if args.key?(:trigger_event)
9375
10223
  @trigger_intent = args[:trigger_intent] if args.key?(:trigger_intent)
10224
+ @webhook_display_names = args[:webhook_display_names] if args.key?(:webhook_display_names)
10225
+ @webhook_ids = args[:webhook_ids] if args.key?(:webhook_ids)
10226
+ @webhook_latencies = args[:webhook_latencies] if args.key?(:webhook_latencies)
9376
10227
  @webhook_payloads = args[:webhook_payloads] if args.key?(:webhook_payloads)
9377
10228
  @webhook_statuses = args[:webhook_statuses] if args.key?(:webhook_statuses)
10229
+ @webhook_tags = args[:webhook_tags] if args.key?(:webhook_tags)
9378
10230
  end
9379
10231
  end
9380
10232
 
@@ -9516,6 +10368,11 @@ module Google
9516
10368
  # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ResponseMessageText]
9517
10369
  attr_accessor :text
9518
10370
 
10371
+ # Represents a call of a specific tool's action with the specified inputs.
10372
+ # Corresponds to the JSON property `toolCall`
10373
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolCall]
10374
+ attr_accessor :tool_call
10375
+
9519
10376
  def initialize(**args)
9520
10377
  update!(**args)
9521
10378
  end
@@ -9533,6 +10390,7 @@ module Google
9533
10390
  @play_audio = args[:play_audio] if args.key?(:play_audio)
9534
10391
  @telephony_transfer_call = args[:telephony_transfer_call] if args.key?(:telephony_transfer_call)
9535
10392
  @text = args[:text] if args.key?(:text)
10393
+ @tool_call = args[:tool_call] if args.key?(:tool_call)
9536
10394
  end
9537
10395
  end
9538
10396
 
@@ -10825,27 +11683,526 @@ module Google
10825
11683
  end
10826
11684
  end
10827
11685
 
10828
- # The request message for Flows.TrainFlow.
10829
- class GoogleCloudDialogflowCxV3beta1TrainFlowRequest
11686
+ # A tool provides a list of actions which are available to the Playbook to
11687
+ # attain its goal. A Tool consists of a description of the tool's usage and a
11688
+ # specification of the tool which contains the schema and authentication
11689
+ # information.
11690
+ class GoogleCloudDialogflowCxV3beta1Tool
10830
11691
  include Google::Apis::Core::Hashable
10831
11692
 
10832
- def initialize(**args)
10833
- update!(**args)
10834
- end
11693
+ # The list of derived action names for the tool.
11694
+ # Corresponds to the JSON property `actions`
11695
+ # @return [Array<String>]
11696
+ attr_accessor :actions
10835
11697
 
10836
- # Update properties of this object
10837
- def update!(**args)
10838
- end
10839
- end
11698
+ # A DataStoreTool is a way to provide specifications needed to search a list of
11699
+ # data stores.
11700
+ # Corresponds to the JSON property `dataStoreSpec`
11701
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolDataStoreTool]
11702
+ attr_accessor :data_store_spec
10840
11703
 
10841
- # Transition coverage represents the percentage of all possible page transitions
10842
- # (page-level transition routes and event handlers, excluding transition route
10843
- # groups) present within any of a parent's test cases.
10844
- class GoogleCloudDialogflowCxV3beta1TransitionCoverage
10845
- include Google::Apis::Core::Hashable
11704
+ # Required. High level description of the Tool and its usage.
11705
+ # Corresponds to the JSON property `description`
11706
+ # @return [String]
11707
+ attr_accessor :description
10846
11708
 
10847
- # The percent of transitions in the agent that are covered.
10848
- # Corresponds to the JSON property `coverageScore`
11709
+ # Required. The human-readable name of the Tool, unique within an agent.
11710
+ # Corresponds to the JSON property `displayName`
11711
+ # @return [String]
11712
+ attr_accessor :display_name
11713
+
11714
+ # An ExtensionTool is a way to use Vertex Extensions as a tool.
11715
+ # Corresponds to the JSON property `extensionSpec`
11716
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolExtensionTool]
11717
+ attr_accessor :extension_spec
11718
+
11719
+ # A Function tool describes the functions to be invoked on the client side.
11720
+ # Corresponds to the JSON property `functionSpec`
11721
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolFunctionTool]
11722
+ attr_accessor :function_spec
11723
+
11724
+ # The unique identifier of the Tool. Format: `projects//locations//agents//tools/
11725
+ # `.
11726
+ # Corresponds to the JSON property `name`
11727
+ # @return [String]
11728
+ attr_accessor :name
11729
+
11730
+ # An OpenAPI tool is a way to provide the Tool specifications in the Open API
11731
+ # schema format.
11732
+ # Corresponds to the JSON property `openApiSpec`
11733
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolOpenApiTool]
11734
+ attr_accessor :open_api_spec
11735
+
11736
+ # The list of derived type schemas for the tool.
11737
+ # Corresponds to the JSON property `schemas`
11738
+ # @return [Array<String>]
11739
+ attr_accessor :schemas
11740
+
11741
+ # Output only. The tool type.
11742
+ # Corresponds to the JSON property `toolType`
11743
+ # @return [String]
11744
+ attr_accessor :tool_type
11745
+
11746
+ def initialize(**args)
11747
+ update!(**args)
11748
+ end
11749
+
11750
+ # Update properties of this object
11751
+ def update!(**args)
11752
+ @actions = args[:actions] if args.key?(:actions)
11753
+ @data_store_spec = args[:data_store_spec] if args.key?(:data_store_spec)
11754
+ @description = args[:description] if args.key?(:description)
11755
+ @display_name = args[:display_name] if args.key?(:display_name)
11756
+ @extension_spec = args[:extension_spec] if args.key?(:extension_spec)
11757
+ @function_spec = args[:function_spec] if args.key?(:function_spec)
11758
+ @name = args[:name] if args.key?(:name)
11759
+ @open_api_spec = args[:open_api_spec] if args.key?(:open_api_spec)
11760
+ @schemas = args[:schemas] if args.key?(:schemas)
11761
+ @tool_type = args[:tool_type] if args.key?(:tool_type)
11762
+ end
11763
+ end
11764
+
11765
+ # Authentication information required for API calls
11766
+ class GoogleCloudDialogflowCxV3beta1ToolAuthentication
11767
+ include Google::Apis::Core::Hashable
11768
+
11769
+ # Config for authentication with API key.
11770
+ # Corresponds to the JSON property `apiKeyConfig`
11771
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolAuthenticationApiKeyConfig]
11772
+ attr_accessor :api_key_config
11773
+
11774
+ # Config for authentication with OAuth.
11775
+ # Corresponds to the JSON property `oauthConfig`
11776
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolAuthenticationOAuthConfig]
11777
+ attr_accessor :oauth_config
11778
+
11779
+ # Config for auth using [Diglogflow service agent](https://cloud.google.com/iam/
11780
+ # docs/service-agents#dialogflow-service-agent).
11781
+ # Corresponds to the JSON property `serviceAgentAuthConfig`
11782
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolAuthenticationServiceAgentAuthConfig]
11783
+ attr_accessor :service_agent_auth_config
11784
+
11785
+ def initialize(**args)
11786
+ update!(**args)
11787
+ end
11788
+
11789
+ # Update properties of this object
11790
+ def update!(**args)
11791
+ @api_key_config = args[:api_key_config] if args.key?(:api_key_config)
11792
+ @oauth_config = args[:oauth_config] if args.key?(:oauth_config)
11793
+ @service_agent_auth_config = args[:service_agent_auth_config] if args.key?(:service_agent_auth_config)
11794
+ end
11795
+ end
11796
+
11797
+ # Config for authentication with API key.
11798
+ class GoogleCloudDialogflowCxV3beta1ToolAuthenticationApiKeyConfig
11799
+ include Google::Apis::Core::Hashable
11800
+
11801
+ # Required. The API key.
11802
+ # Corresponds to the JSON property `apiKey`
11803
+ # @return [String]
11804
+ attr_accessor :api_key
11805
+
11806
+ # Required. The parameter name or the header name of the API key. E.g., If the
11807
+ # API request is "https://example.com/act?X-Api-Key=", "X-Api-Key" would be the
11808
+ # parameter name.
11809
+ # Corresponds to the JSON property `keyName`
11810
+ # @return [String]
11811
+ attr_accessor :key_name
11812
+
11813
+ # Required. Key location in the request.
11814
+ # Corresponds to the JSON property `requestLocation`
11815
+ # @return [String]
11816
+ attr_accessor :request_location
11817
+
11818
+ def initialize(**args)
11819
+ update!(**args)
11820
+ end
11821
+
11822
+ # Update properties of this object
11823
+ def update!(**args)
11824
+ @api_key = args[:api_key] if args.key?(:api_key)
11825
+ @key_name = args[:key_name] if args.key?(:key_name)
11826
+ @request_location = args[:request_location] if args.key?(:request_location)
11827
+ end
11828
+ end
11829
+
11830
+ # Config for authentication with OAuth.
11831
+ class GoogleCloudDialogflowCxV3beta1ToolAuthenticationOAuthConfig
11832
+ include Google::Apis::Core::Hashable
11833
+
11834
+ # Required. The client ID from the OAuth provider.
11835
+ # Corresponds to the JSON property `clientId`
11836
+ # @return [String]
11837
+ attr_accessor :client_id
11838
+
11839
+ # Required. The client secret from the OAuth provider.
11840
+ # Corresponds to the JSON property `clientSecret`
11841
+ # @return [String]
11842
+ attr_accessor :client_secret
11843
+
11844
+ # Required. OAuth grant types.
11845
+ # Corresponds to the JSON property `oauthGrantType`
11846
+ # @return [String]
11847
+ attr_accessor :oauth_grant_type
11848
+
11849
+ # Required. The token endpoint in the OAuth provider to exchange for an access
11850
+ # token.
11851
+ # Corresponds to the JSON property `tokenEndpoint`
11852
+ # @return [String]
11853
+ attr_accessor :token_endpoint
11854
+
11855
+ def initialize(**args)
11856
+ update!(**args)
11857
+ end
11858
+
11859
+ # Update properties of this object
11860
+ def update!(**args)
11861
+ @client_id = args[:client_id] if args.key?(:client_id)
11862
+ @client_secret = args[:client_secret] if args.key?(:client_secret)
11863
+ @oauth_grant_type = args[:oauth_grant_type] if args.key?(:oauth_grant_type)
11864
+ @token_endpoint = args[:token_endpoint] if args.key?(:token_endpoint)
11865
+ end
11866
+ end
11867
+
11868
+ # Config for auth using [Diglogflow service agent](https://cloud.google.com/iam/
11869
+ # docs/service-agents#dialogflow-service-agent).
11870
+ class GoogleCloudDialogflowCxV3beta1ToolAuthenticationServiceAgentAuthConfig
11871
+ include Google::Apis::Core::Hashable
11872
+
11873
+ def initialize(**args)
11874
+ update!(**args)
11875
+ end
11876
+
11877
+ # Update properties of this object
11878
+ def update!(**args)
11879
+ end
11880
+ end
11881
+
11882
+ # Represents a call of a specific tool's action with the specified inputs.
11883
+ class GoogleCloudDialogflowCxV3beta1ToolCall
11884
+ include Google::Apis::Core::Hashable
11885
+
11886
+ # Required. The name of the tool's action associated with this call.
11887
+ # Corresponds to the JSON property `action`
11888
+ # @return [String]
11889
+ attr_accessor :action
11890
+
11891
+ # Optional. The action's input parameters.
11892
+ # Corresponds to the JSON property `inputParameters`
11893
+ # @return [Hash<String,Object>]
11894
+ attr_accessor :input_parameters
11895
+
11896
+ # Required. The tool associated with this call. Format: `projects//locations//
11897
+ # agents//tools/`.
11898
+ # Corresponds to the JSON property `tool`
11899
+ # @return [String]
11900
+ attr_accessor :tool
11901
+
11902
+ def initialize(**args)
11903
+ update!(**args)
11904
+ end
11905
+
11906
+ # Update properties of this object
11907
+ def update!(**args)
11908
+ @action = args[:action] if args.key?(:action)
11909
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
11910
+ @tool = args[:tool] if args.key?(:tool)
11911
+ end
11912
+ end
11913
+
11914
+ # The result of calling a tool's action that has been executed by the client.
11915
+ class GoogleCloudDialogflowCxV3beta1ToolCallResult
11916
+ include Google::Apis::Core::Hashable
11917
+
11918
+ # Required. The name of the tool's action associated with this call.
11919
+ # Corresponds to the JSON property `action`
11920
+ # @return [String]
11921
+ attr_accessor :action
11922
+
11923
+ # An error produced by the tool call.
11924
+ # Corresponds to the JSON property `error`
11925
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolCallResultError]
11926
+ attr_accessor :error
11927
+
11928
+ # The tool call's output parameters.
11929
+ # Corresponds to the JSON property `outputParameters`
11930
+ # @return [Hash<String,Object>]
11931
+ attr_accessor :output_parameters
11932
+
11933
+ # Required. The tool associated with this call. Format: `projects//locations//
11934
+ # agents//tools/`.
11935
+ # Corresponds to the JSON property `tool`
11936
+ # @return [String]
11937
+ attr_accessor :tool
11938
+
11939
+ def initialize(**args)
11940
+ update!(**args)
11941
+ end
11942
+
11943
+ # Update properties of this object
11944
+ def update!(**args)
11945
+ @action = args[:action] if args.key?(:action)
11946
+ @error = args[:error] if args.key?(:error)
11947
+ @output_parameters = args[:output_parameters] if args.key?(:output_parameters)
11948
+ @tool = args[:tool] if args.key?(:tool)
11949
+ end
11950
+ end
11951
+
11952
+ # An error produced by the tool call.
11953
+ class GoogleCloudDialogflowCxV3beta1ToolCallResultError
11954
+ include Google::Apis::Core::Hashable
11955
+
11956
+ # Optional. The error message of the function.
11957
+ # Corresponds to the JSON property `message`
11958
+ # @return [String]
11959
+ attr_accessor :message
11960
+
11961
+ def initialize(**args)
11962
+ update!(**args)
11963
+ end
11964
+
11965
+ # Update properties of this object
11966
+ def update!(**args)
11967
+ @message = args[:message] if args.key?(:message)
11968
+ end
11969
+ end
11970
+
11971
+ # A DataStoreTool is a way to provide specifications needed to search a list of
11972
+ # data stores.
11973
+ class GoogleCloudDialogflowCxV3beta1ToolDataStoreTool
11974
+ include Google::Apis::Core::Hashable
11975
+
11976
+ # Required. List of data stores to search.
11977
+ # Corresponds to the JSON property `dataStoreConnections`
11978
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1DataStoreConnection>]
11979
+ attr_accessor :data_store_connections
11980
+
11981
+ # A FallbackPrompt is a way to provide specifications for the Data Store
11982
+ # fallback prompt when generating responses.
11983
+ # Corresponds to the JSON property `fallbackPrompt`
11984
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolDataStoreToolFallbackPrompt]
11985
+ attr_accessor :fallback_prompt
11986
+
11987
+ def initialize(**args)
11988
+ update!(**args)
11989
+ end
11990
+
11991
+ # Update properties of this object
11992
+ def update!(**args)
11993
+ @data_store_connections = args[:data_store_connections] if args.key?(:data_store_connections)
11994
+ @fallback_prompt = args[:fallback_prompt] if args.key?(:fallback_prompt)
11995
+ end
11996
+ end
11997
+
11998
+ # A FallbackPrompt is a way to provide specifications for the Data Store
11999
+ # fallback prompt when generating responses.
12000
+ class GoogleCloudDialogflowCxV3beta1ToolDataStoreToolFallbackPrompt
12001
+ include Google::Apis::Core::Hashable
12002
+
12003
+ def initialize(**args)
12004
+ update!(**args)
12005
+ end
12006
+
12007
+ # Update properties of this object
12008
+ def update!(**args)
12009
+ end
12010
+ end
12011
+
12012
+ # An ExtensionTool is a way to use Vertex Extensions as a tool.
12013
+ class GoogleCloudDialogflowCxV3beta1ToolExtensionTool
12014
+ include Google::Apis::Core::Hashable
12015
+
12016
+ # Required. The full name of the referenced vertex extension. Formats: `projects/
12017
+ # `project`/locations/`location`/extensions/`extension``
12018
+ # Corresponds to the JSON property `name`
12019
+ # @return [String]
12020
+ attr_accessor :name
12021
+
12022
+ def initialize(**args)
12023
+ update!(**args)
12024
+ end
12025
+
12026
+ # Update properties of this object
12027
+ def update!(**args)
12028
+ @name = args[:name] if args.key?(:name)
12029
+ end
12030
+ end
12031
+
12032
+ # A Function tool describes the functions to be invoked on the client side.
12033
+ class GoogleCloudDialogflowCxV3beta1ToolFunctionTool
12034
+ include Google::Apis::Core::Hashable
12035
+
12036
+ # Optional. The JSON schema is encapsulated in a google.protobuf.Struct to
12037
+ # describe the input of the function. This input is a JSON object that contains
12038
+ # the function's parameters as properties of the object.
12039
+ # Corresponds to the JSON property `inputSchema`
12040
+ # @return [Hash<String,Object>]
12041
+ attr_accessor :input_schema
12042
+
12043
+ # Optional. The JSON schema is encapsulated in a google.protobuf.Struct to
12044
+ # describe the output of the function. This output is a JSON object that
12045
+ # contains the function's parameters as properties of the object.
12046
+ # Corresponds to the JSON property `outputSchema`
12047
+ # @return [Hash<String,Object>]
12048
+ attr_accessor :output_schema
12049
+
12050
+ def initialize(**args)
12051
+ update!(**args)
12052
+ end
12053
+
12054
+ # Update properties of this object
12055
+ def update!(**args)
12056
+ @input_schema = args[:input_schema] if args.key?(:input_schema)
12057
+ @output_schema = args[:output_schema] if args.key?(:output_schema)
12058
+ end
12059
+ end
12060
+
12061
+ # An OpenAPI tool is a way to provide the Tool specifications in the Open API
12062
+ # schema format.
12063
+ class GoogleCloudDialogflowCxV3beta1ToolOpenApiTool
12064
+ include Google::Apis::Core::Hashable
12065
+
12066
+ # Authentication information required for API calls
12067
+ # Corresponds to the JSON property `authentication`
12068
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolAuthentication]
12069
+ attr_accessor :authentication
12070
+
12071
+ # Required. The OpenAPI schema specified as a text.
12072
+ # Corresponds to the JSON property `textSchema`
12073
+ # @return [String]
12074
+ attr_accessor :text_schema
12075
+
12076
+ # The TLS configuration.
12077
+ # Corresponds to the JSON property `tlsConfig`
12078
+ # @return [Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolTlsConfig]
12079
+ attr_accessor :tls_config
12080
+
12081
+ def initialize(**args)
12082
+ update!(**args)
12083
+ end
12084
+
12085
+ # Update properties of this object
12086
+ def update!(**args)
12087
+ @authentication = args[:authentication] if args.key?(:authentication)
12088
+ @text_schema = args[:text_schema] if args.key?(:text_schema)
12089
+ @tls_config = args[:tls_config] if args.key?(:tls_config)
12090
+ end
12091
+ end
12092
+
12093
+ # The TLS configuration.
12094
+ class GoogleCloudDialogflowCxV3beta1ToolTlsConfig
12095
+ include Google::Apis::Core::Hashable
12096
+
12097
+ # Required. Specifies a list of allowed custom CA certificates for HTTPS
12098
+ # verification.
12099
+ # Corresponds to the JSON property `caCerts`
12100
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ToolTlsConfigCaCert>]
12101
+ attr_accessor :ca_certs
12102
+
12103
+ def initialize(**args)
12104
+ update!(**args)
12105
+ end
12106
+
12107
+ # Update properties of this object
12108
+ def update!(**args)
12109
+ @ca_certs = args[:ca_certs] if args.key?(:ca_certs)
12110
+ end
12111
+ end
12112
+
12113
+ # The CA certificate.
12114
+ class GoogleCloudDialogflowCxV3beta1ToolTlsConfigCaCert
12115
+ include Google::Apis::Core::Hashable
12116
+
12117
+ # Required. The allowed custom CA certificates (in DER format) for HTTPS
12118
+ # verification. This overrides the default SSL trust store. If this is empty or
12119
+ # unspecified, Dialogflow will use Google's default trust store to verify
12120
+ # certificates. N.B. Make sure the HTTPS server certificates are signed with "
12121
+ # subject alt name". For instance a certificate can be self-signed using the
12122
+ # following command, openssl x509 -req -days 200 -in example.com.csr \ -signkey
12123
+ # example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='
12124
+ # DNS:www.example.com'")
12125
+ # Corresponds to the JSON property `cert`
12126
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
12127
+ # @return [String]
12128
+ attr_accessor :cert
12129
+
12130
+ # Required. The name of the allowed custom CA certificates. This can be used to
12131
+ # disambiguate the custom CA certificates.
12132
+ # Corresponds to the JSON property `displayName`
12133
+ # @return [String]
12134
+ attr_accessor :display_name
12135
+
12136
+ def initialize(**args)
12137
+ update!(**args)
12138
+ end
12139
+
12140
+ # Update properties of this object
12141
+ def update!(**args)
12142
+ @cert = args[:cert] if args.key?(:cert)
12143
+ @display_name = args[:display_name] if args.key?(:display_name)
12144
+ end
12145
+ end
12146
+
12147
+ # Stores metadata of the invocation of an action supported by a tool.
12148
+ class GoogleCloudDialogflowCxV3beta1ToolUse
12149
+ include Google::Apis::Core::Hashable
12150
+
12151
+ # Optional. Name of the action to be called during the tool use.
12152
+ # Corresponds to the JSON property `action`
12153
+ # @return [String]
12154
+ attr_accessor :action
12155
+
12156
+ # A list of input parameters for the action.
12157
+ # Corresponds to the JSON property `inputParameters`
12158
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ActionParameter>]
12159
+ attr_accessor :input_parameters
12160
+
12161
+ # A list of output parameters generated by the action.
12162
+ # Corresponds to the JSON property `outputParameters`
12163
+ # @return [Array<Google::Apis::DialogflowV3beta1::GoogleCloudDialogflowCxV3beta1ActionParameter>]
12164
+ attr_accessor :output_parameters
12165
+
12166
+ # Required. The tool that should be used. Format: `projects//locations//agents//
12167
+ # tools/`.
12168
+ # Corresponds to the JSON property `tool`
12169
+ # @return [String]
12170
+ attr_accessor :tool
12171
+
12172
+ def initialize(**args)
12173
+ update!(**args)
12174
+ end
12175
+
12176
+ # Update properties of this object
12177
+ def update!(**args)
12178
+ @action = args[:action] if args.key?(:action)
12179
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
12180
+ @output_parameters = args[:output_parameters] if args.key?(:output_parameters)
12181
+ @tool = args[:tool] if args.key?(:tool)
12182
+ end
12183
+ end
12184
+
12185
+ # The request message for Flows.TrainFlow.
12186
+ class GoogleCloudDialogflowCxV3beta1TrainFlowRequest
12187
+ include Google::Apis::Core::Hashable
12188
+
12189
+ def initialize(**args)
12190
+ update!(**args)
12191
+ end
12192
+
12193
+ # Update properties of this object
12194
+ def update!(**args)
12195
+ end
12196
+ end
12197
+
12198
+ # Transition coverage represents the percentage of all possible page transitions
12199
+ # (page-level transition routes and event handlers, excluding transition route
12200
+ # groups) present within any of a parent's test cases.
12201
+ class GoogleCloudDialogflowCxV3beta1TransitionCoverage
12202
+ include Google::Apis::Core::Hashable
12203
+
12204
+ # The percent of transitions in the agent that are covered.
12205
+ # Corresponds to the JSON property `coverageScore`
10849
12206
  # @return [Float]
10850
12207
  attr_accessor :coverage_score
10851
12208
 
@@ -11281,6 +12638,25 @@ module Google
11281
12638
  end
11282
12639
  end
11283
12640
 
12641
+ # UserUtterance represents one message sent by the customer.
12642
+ class GoogleCloudDialogflowCxV3beta1UserUtterance
12643
+ include Google::Apis::Core::Hashable
12644
+
12645
+ # Required. Message content in text.
12646
+ # Corresponds to the JSON property `text`
12647
+ # @return [String]
12648
+ attr_accessor :text
12649
+
12650
+ def initialize(**args)
12651
+ update!(**args)
12652
+ end
12653
+
12654
+ # Update properties of this object
12655
+ def update!(**args)
12656
+ @text = args[:text] if args.key?(:text)
12657
+ end
12658
+ end
12659
+
11284
12660
  # The request message for Agents.ValidateAgent.
11285
12661
  class GoogleCloudDialogflowCxV3beta1ValidateAgentRequest
11286
12662
  include Google::Apis::Core::Hashable