google-apis-dialogflow_v3 0.104.0 → 0.106.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.
@@ -22,6 +22,49 @@ module Google
22
22
  module Apis
23
23
  module DialogflowV3
24
24
 
25
+ # Action performed by end user or Dialogflow agent in the conversation.
26
+ class GoogleCloudDialogflowCxV3Action
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # AgentUtterance represents one message sent by the agent.
30
+ # Corresponds to the JSON property `agentUtterance`
31
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3AgentUtterance]
32
+ attr_accessor :agent_utterance
33
+
34
+ # Stores metadata of the invocation of a CX flow.
35
+ # Corresponds to the JSON property `flowInvocation`
36
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3FlowInvocation]
37
+ attr_accessor :flow_invocation
38
+
39
+ # Stores metadata of the invocation of a child playbook.
40
+ # Corresponds to the JSON property `playbookInvocation`
41
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInvocation]
42
+ attr_accessor :playbook_invocation
43
+
44
+ # Stores metadata of the invocation of an action supported by a tool.
45
+ # Corresponds to the JSON property `toolUse`
46
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolUse]
47
+ attr_accessor :tool_use
48
+
49
+ # UserUtterance represents one message sent by the customer.
50
+ # Corresponds to the JSON property `userUtterance`
51
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3UserUtterance]
52
+ attr_accessor :user_utterance
53
+
54
+ def initialize(**args)
55
+ update!(**args)
56
+ end
57
+
58
+ # Update properties of this object
59
+ def update!(**args)
60
+ @agent_utterance = args[:agent_utterance] if args.key?(:agent_utterance)
61
+ @flow_invocation = args[:flow_invocation] if args.key?(:flow_invocation)
62
+ @playbook_invocation = args[:playbook_invocation] if args.key?(:playbook_invocation)
63
+ @tool_use = args[:tool_use] if args.key?(:tool_use)
64
+ @user_utterance = args[:user_utterance] if args.key?(:user_utterance)
65
+ end
66
+ end
67
+
25
68
  # Hierarchical advanced settings for agent/flow/page/fulfillment/parameter.
26
69
  # Settings exposed at lower level overrides the settings exposed at higher level.
27
70
  # Overriding occurs at the sub-setting level. For example, the
@@ -325,13 +368,23 @@ module Google
325
368
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3SpeechToTextSettings]
326
369
  attr_accessor :speech_to_text_settings
327
370
 
328
- # Immutable. Name of the start flow in this agent. A start flow will be
329
- # automatically created when the agent is created, and can only be deleted by
330
- # deleting the agent. Format: `projects//locations//agents//flows/`.
371
+ # Name of the start flow in this agent. A start flow will be automatically
372
+ # created when the agent is created, and can only be deleted by deleting the
373
+ # agent. Format: `projects//locations//agents//flows/`. Currently only the
374
+ # default start flow with id "00000000-0000-0000-0000-000000000000" is allowed.
331
375
  # Corresponds to the JSON property `startFlow`
332
376
  # @return [String]
333
377
  attr_accessor :start_flow
334
378
 
379
+ # Name of the start playbook in this agent. A start playbook will be
380
+ # automatically created when the agent is created, and can only be deleted by
381
+ # deleting the agent. Format: `projects//locations//agents//playbooks/`.
382
+ # Currently only the default playbook with id "00000000-0000-0000-0000-
383
+ # 000000000000" is allowed.
384
+ # Corresponds to the JSON property `startPlaybook`
385
+ # @return [String]
386
+ attr_accessor :start_playbook
387
+
335
388
  # The list of all languages supported by the agent (except for the `
336
389
  # default_language_code`).
337
390
  # Corresponds to the JSON property `supportedLanguageCodes`
@@ -375,6 +428,7 @@ module Google
375
428
  @security_settings = args[:security_settings] if args.key?(:security_settings)
376
429
  @speech_to_text_settings = args[:speech_to_text_settings] if args.key?(:speech_to_text_settings)
377
430
  @start_flow = args[:start_flow] if args.key?(:start_flow)
431
+ @start_playbook = args[:start_playbook] if args.key?(:start_playbook)
378
432
  @supported_language_codes = args[:supported_language_codes] if args.key?(:supported_language_codes)
379
433
  @text_to_speech_settings = args[:text_to_speech_settings] if args.key?(:text_to_speech_settings)
380
434
  @time_zone = args[:time_zone] if args.key?(:time_zone)
@@ -545,6 +599,25 @@ module Google
545
599
  end
546
600
  end
547
601
 
602
+ # AgentUtterance represents one message sent by the agent.
603
+ class GoogleCloudDialogflowCxV3AgentUtterance
604
+ include Google::Apis::Core::Hashable
605
+
606
+ # Required. Message content in text.
607
+ # Corresponds to the JSON property `text`
608
+ # @return [String]
609
+ attr_accessor :text
610
+
611
+ def initialize(**args)
612
+ update!(**args)
613
+ end
614
+
615
+ # Update properties of this object
616
+ def update!(**args)
617
+ @text = args[:text] if args.key?(:text)
618
+ end
619
+ end
620
+
548
621
  # The response message for Agents.GetAgentValidationResult.
549
622
  class GoogleCloudDialogflowCxV3AgentValidationResult
550
623
  include Google::Apis::Core::Hashable
@@ -2301,6 +2374,94 @@ module Google
2301
2374
  end
2302
2375
  end
2303
2376
 
2377
+ # Example represents a sample execution of the playbook in the conversation. An
2378
+ # example consists of a list of ordered actions performed by end user or
2379
+ # Dialogflow agent according the playbook instructions to fulfill the task.
2380
+ class GoogleCloudDialogflowCxV3Example
2381
+ include Google::Apis::Core::Hashable
2382
+
2383
+ # Required. The ordered list of actions performed by the end user and the
2384
+ # Dialogflow agent.
2385
+ # Corresponds to the JSON property `actions`
2386
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Action>]
2387
+ attr_accessor :actions
2388
+
2389
+ # Required. Example's output state.
2390
+ # Corresponds to the JSON property `conversationState`
2391
+ # @return [String]
2392
+ attr_accessor :conversation_state
2393
+
2394
+ # Output only. The timestamp of initial example creation.
2395
+ # Corresponds to the JSON property `createTime`
2396
+ # @return [String]
2397
+ attr_accessor :create_time
2398
+
2399
+ # Optional. The high level concise description of the example. The max number of
2400
+ # characters is 200.
2401
+ # Corresponds to the JSON property `description`
2402
+ # @return [String]
2403
+ attr_accessor :description
2404
+
2405
+ # Required. The display name of the example.
2406
+ # Corresponds to the JSON property `displayName`
2407
+ # @return [String]
2408
+ attr_accessor :display_name
2409
+
2410
+ # Optional. The language code of the example. If not specified, the agent's
2411
+ # default language is used. Note: languages must be enabled in the agent before
2412
+ # they can be used. Note: example's language code is not currently used in
2413
+ # dialogflow agents.
2414
+ # Corresponds to the JSON property `languageCode`
2415
+ # @return [String]
2416
+ attr_accessor :language_code
2417
+
2418
+ # The unique identifier of the playbook example. Format: `projects//locations//
2419
+ # agents//playbooks//examples/`.
2420
+ # Corresponds to the JSON property `name`
2421
+ # @return [String]
2422
+ attr_accessor :name
2423
+
2424
+ # Input of the playbook.
2425
+ # Corresponds to the JSON property `playbookInput`
2426
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInput]
2427
+ attr_accessor :playbook_input
2428
+
2429
+ # Output of the playbook.
2430
+ # Corresponds to the JSON property `playbookOutput`
2431
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookOutput]
2432
+ attr_accessor :playbook_output
2433
+
2434
+ # Output only. Estimated number of tokes current example takes when sent to the
2435
+ # LLM.
2436
+ # Corresponds to the JSON property `tokenCount`
2437
+ # @return [Fixnum]
2438
+ attr_accessor :token_count
2439
+
2440
+ # Output only. Last time the example was updated.
2441
+ # Corresponds to the JSON property `updateTime`
2442
+ # @return [String]
2443
+ attr_accessor :update_time
2444
+
2445
+ def initialize(**args)
2446
+ update!(**args)
2447
+ end
2448
+
2449
+ # Update properties of this object
2450
+ def update!(**args)
2451
+ @actions = args[:actions] if args.key?(:actions)
2452
+ @conversation_state = args[:conversation_state] if args.key?(:conversation_state)
2453
+ @create_time = args[:create_time] if args.key?(:create_time)
2454
+ @description = args[:description] if args.key?(:description)
2455
+ @display_name = args[:display_name] if args.key?(:display_name)
2456
+ @language_code = args[:language_code] if args.key?(:language_code)
2457
+ @name = args[:name] if args.key?(:name)
2458
+ @playbook_input = args[:playbook_input] if args.key?(:playbook_input)
2459
+ @playbook_output = args[:playbook_output] if args.key?(:playbook_output)
2460
+ @token_count = args[:token_count] if args.key?(:token_count)
2461
+ @update_time = args[:update_time] if args.key?(:update_time)
2462
+ end
2463
+ end
2464
+
2304
2465
  # Represents an experiment in an environment.
2305
2466
  class GoogleCloudDialogflowCxV3Experiment
2306
2467
  include Google::Apis::Core::Hashable
@@ -2937,6 +3098,38 @@ module Google
2937
3098
  end
2938
3099
  end
2939
3100
 
3101
+ # The request message for Playbooks.ExportPlaybook.
3102
+ class GoogleCloudDialogflowCxV3ExportPlaybookRequest
3103
+ include Google::Apis::Core::Hashable
3104
+
3105
+ # Optional. The data format of the exported agent. If not specified, `BLOB` is
3106
+ # assumed.
3107
+ # Corresponds to the JSON property `dataFormat`
3108
+ # @return [String]
3109
+ attr_accessor :data_format
3110
+
3111
+ # Optional. The [Google Cloud Storage](https://cloud.google.com/storage/docs/)
3112
+ # URI to export the playbook to. The format of this URI must be `gs:///`. If
3113
+ # left unspecified, the serialized playbook is returned inline. Dialogflow
3114
+ # performs a write operation for the Cloud Storage object on the caller's behalf,
3115
+ # so your request authentication must have write permissions for the object.
3116
+ # For more information, see [Dialogflow access control](https://cloud.google.com/
3117
+ # dialogflow/cx/docs/concept/access-control#storage).
3118
+ # Corresponds to the JSON property `playbookUri`
3119
+ # @return [String]
3120
+ attr_accessor :playbook_uri
3121
+
3122
+ def initialize(**args)
3123
+ update!(**args)
3124
+ end
3125
+
3126
+ # Update properties of this object
3127
+ def update!(**args)
3128
+ @data_format = args[:data_format] if args.key?(:data_format)
3129
+ @playbook_uri = args[:playbook_uri] if args.key?(:playbook_uri)
3130
+ end
3131
+ end
3132
+
2940
3133
  # Metadata returned for the TestCases.ExportTestCases long running operation.
2941
3134
  # This message currently has no fields.
2942
3135
  class GoogleCloudDialogflowCxV3ExportTestCasesMetadata
@@ -3192,6 +3385,38 @@ module Google
3192
3385
  end
3193
3386
  end
3194
3387
 
3388
+ # Stores metadata of the invocation of a CX flow.
3389
+ class GoogleCloudDialogflowCxV3FlowInvocation
3390
+ include Google::Apis::Core::Hashable
3391
+
3392
+ # Output only. The display name of the flow.
3393
+ # Corresponds to the JSON property `displayName`
3394
+ # @return [String]
3395
+ attr_accessor :display_name
3396
+
3397
+ # Required. The unique identifier of the flow. Format: `projects//locations//
3398
+ # agents//flows/`.
3399
+ # Corresponds to the JSON property `flow`
3400
+ # @return [String]
3401
+ attr_accessor :flow
3402
+
3403
+ # Required. Flow invocation's output state.
3404
+ # Corresponds to the JSON property `flowState`
3405
+ # @return [String]
3406
+ attr_accessor :flow_state
3407
+
3408
+ def initialize(**args)
3409
+ update!(**args)
3410
+ end
3411
+
3412
+ # Update properties of this object
3413
+ def update!(**args)
3414
+ @display_name = args[:display_name] if args.key?(:display_name)
3415
+ @flow = args[:flow] if args.key?(:flow)
3416
+ @flow_state = args[:flow_state] if args.key?(:flow_state)
3417
+ end
3418
+ end
3419
+
3195
3420
  # Settings for multi-lingual agents.
3196
3421
  class GoogleCloudDialogflowCxV3FlowMultiLanguageSettings
3197
3422
  include Google::Apis::Core::Hashable
@@ -3733,6 +3958,11 @@ module Google
3733
3958
  # @return [String]
3734
3959
  attr_accessor :language_code
3735
3960
 
3961
+ # Settings for LLM models.
3962
+ # Corresponds to the JSON property `llmModelSettings`
3963
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
3964
+ attr_accessor :llm_model_settings
3965
+
3736
3966
  # Format: `projects//locations//agents//generativeSettings`.
3737
3967
  # Corresponds to the JSON property `name`
3738
3968
  # @return [String]
@@ -3748,6 +3978,7 @@ module Google
3748
3978
  @generative_safety_settings = args[:generative_safety_settings] if args.key?(:generative_safety_settings)
3749
3979
  @knowledge_connector_settings = args[:knowledge_connector_settings] if args.key?(:knowledge_connector_settings)
3750
3980
  @language_code = args[:language_code] if args.key?(:language_code)
3981
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
3751
3982
  @name = args[:name] if args.key?(:name)
3752
3983
  end
3753
3984
  end
@@ -3883,6 +4114,11 @@ module Google
3883
4114
  # @return [String]
3884
4115
  attr_accessor :display_name
3885
4116
 
4117
+ # Settings for LLM models.
4118
+ # Corresponds to the JSON property `llmModelSettings`
4119
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
4120
+ attr_accessor :llm_model_settings
4121
+
3886
4122
  # Parameters to be passed to the LLM. If not set, default values will be used.
3887
4123
  # Corresponds to the JSON property `modelParameter`
3888
4124
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3GeneratorModelParameter]
@@ -3912,6 +4148,7 @@ module Google
3912
4148
  # Update properties of this object
3913
4149
  def update!(**args)
3914
4150
  @display_name = args[:display_name] if args.key?(:display_name)
4151
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
3915
4152
  @model_parameter = args[:model_parameter] if args.key?(:model_parameter)
3916
4153
  @name = args[:name] if args.key?(:name)
3917
4154
  @placeholders = args[:placeholders] if args.key?(:placeholders)
@@ -4272,6 +4509,40 @@ module Google
4272
4509
  end
4273
4510
  end
4274
4511
 
4512
+ # The request message for Playbooks.ImportPlaybook.
4513
+ class GoogleCloudDialogflowCxV3ImportPlaybookRequest
4514
+ include Google::Apis::Core::Hashable
4515
+
4516
+ # The playbook import strategy used for resource conflict resolution associated
4517
+ # with an ImportPlaybookRequest.
4518
+ # Corresponds to the JSON property `importStrategy`
4519
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookImportStrategy]
4520
+ attr_accessor :import_strategy
4521
+
4522
+ # Uncompressed raw byte content for playbook.
4523
+ # Corresponds to the JSON property `playbookContent`
4524
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
4525
+ # @return [String]
4526
+ attr_accessor :playbook_content
4527
+
4528
+ # [Dialogflow access control] (https://cloud.google.com/dialogflow/cx/docs/
4529
+ # concept/access-control#storage).
4530
+ # Corresponds to the JSON property `playbookUri`
4531
+ # @return [String]
4532
+ attr_accessor :playbook_uri
4533
+
4534
+ def initialize(**args)
4535
+ update!(**args)
4536
+ end
4537
+
4538
+ # Update properties of this object
4539
+ def update!(**args)
4540
+ @import_strategy = args[:import_strategy] if args.key?(:import_strategy)
4541
+ @playbook_content = args[:playbook_content] if args.key?(:playbook_content)
4542
+ @playbook_uri = args[:playbook_uri] if args.key?(:playbook_uri)
4543
+ end
4544
+ end
4545
+
4275
4546
  # Metadata returned for the TestCases.ImportTestCases long running operation.
4276
4547
  class GoogleCloudDialogflowCxV3ImportTestCasesMetadata
4277
4548
  include Google::Apis::Core::Hashable
@@ -5006,6 +5277,33 @@ module Google
5006
5277
  end
5007
5278
  end
5008
5279
 
5280
+ # The response message for Examples.ListExamples.
5281
+ class GoogleCloudDialogflowCxV3ListExamplesResponse
5282
+ include Google::Apis::Core::Hashable
5283
+
5284
+ # The list of examples. There will be a maximum number of items returned based
5285
+ # on the page_size field in the request.
5286
+ # Corresponds to the JSON property `examples`
5287
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Example>]
5288
+ attr_accessor :examples
5289
+
5290
+ # Token to retrieve the next page of results, or empty if there are no more
5291
+ # results in the list.
5292
+ # Corresponds to the JSON property `nextPageToken`
5293
+ # @return [String]
5294
+ attr_accessor :next_page_token
5295
+
5296
+ def initialize(**args)
5297
+ update!(**args)
5298
+ end
5299
+
5300
+ # Update properties of this object
5301
+ def update!(**args)
5302
+ @examples = args[:examples] if args.key?(:examples)
5303
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5304
+ end
5305
+ end
5306
+
5009
5307
  # The response message for Experiments.ListExperiments.
5010
5308
  class GoogleCloudDialogflowCxV3ListExperimentsResponse
5011
5309
  include Google::Apis::Core::Hashable
@@ -5142,6 +5440,60 @@ module Google
5142
5440
  end
5143
5441
  end
5144
5442
 
5443
+ # The response message for Playbooks.ListPlaybookVersions.
5444
+ class GoogleCloudDialogflowCxV3ListPlaybookVersionsResponse
5445
+ include Google::Apis::Core::Hashable
5446
+
5447
+ # Token to retrieve the next page of results, or empty if there are no more
5448
+ # results in the list.
5449
+ # Corresponds to the JSON property `nextPageToken`
5450
+ # @return [String]
5451
+ attr_accessor :next_page_token
5452
+
5453
+ # The list of playbook version. There will be a maximum number of items returned
5454
+ # based on the page_size field in the request.
5455
+ # Corresponds to the JSON property `playbookVersions`
5456
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookVersion>]
5457
+ attr_accessor :playbook_versions
5458
+
5459
+ def initialize(**args)
5460
+ update!(**args)
5461
+ end
5462
+
5463
+ # Update properties of this object
5464
+ def update!(**args)
5465
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5466
+ @playbook_versions = args[:playbook_versions] if args.key?(:playbook_versions)
5467
+ end
5468
+ end
5469
+
5470
+ # The response message for Playbooks.ListPlaybooks.
5471
+ class GoogleCloudDialogflowCxV3ListPlaybooksResponse
5472
+ include Google::Apis::Core::Hashable
5473
+
5474
+ # Token to retrieve the next page of results, or empty if there are no more
5475
+ # results in the list.
5476
+ # Corresponds to the JSON property `nextPageToken`
5477
+ # @return [String]
5478
+ attr_accessor :next_page_token
5479
+
5480
+ # The list of playbooks. There will be a maximum number of items returned based
5481
+ # on the page_size field in the request.
5482
+ # Corresponds to the JSON property `playbooks`
5483
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Playbook>]
5484
+ attr_accessor :playbooks
5485
+
5486
+ def initialize(**args)
5487
+ update!(**args)
5488
+ end
5489
+
5490
+ # Update properties of this object
5491
+ def update!(**args)
5492
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5493
+ @playbooks = args[:playbooks] if args.key?(:playbooks)
5494
+ end
5495
+ end
5496
+
5145
5497
  # The response message for SecuritySettings.ListSecuritySettings.
5146
5498
  class GoogleCloudDialogflowCxV3ListSecuritySettingsResponse
5147
5499
  include Google::Apis::Core::Hashable
@@ -5248,6 +5600,33 @@ module Google
5248
5600
  end
5249
5601
  end
5250
5602
 
5603
+ # The response message for Tools.ListTools.
5604
+ class GoogleCloudDialogflowCxV3ListToolsResponse
5605
+ include Google::Apis::Core::Hashable
5606
+
5607
+ # Token to retrieve the next page of results, or empty if there are no more
5608
+ # results in the list.
5609
+ # Corresponds to the JSON property `nextPageToken`
5610
+ # @return [String]
5611
+ attr_accessor :next_page_token
5612
+
5613
+ # The list of Tools. There will be a maximum number of items returned based on
5614
+ # the page_size field in the request.
5615
+ # Corresponds to the JSON property `tools`
5616
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Tool>]
5617
+ attr_accessor :tools
5618
+
5619
+ def initialize(**args)
5620
+ update!(**args)
5621
+ end
5622
+
5623
+ # Update properties of this object
5624
+ def update!(**args)
5625
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5626
+ @tools = args[:tools] if args.key?(:tools)
5627
+ end
5628
+ end
5629
+
5251
5630
  # The response message for TransitionRouteGroups.ListTransitionRouteGroups.
5252
5631
  class GoogleCloudDialogflowCxV3ListTransitionRouteGroupsResponse
5253
5632
  include Google::Apis::Core::Hashable
@@ -5332,6 +5711,31 @@ module Google
5332
5711
  end
5333
5712
  end
5334
5713
 
5714
+ # Settings for LLM models.
5715
+ class GoogleCloudDialogflowCxV3LlmModelSettings
5716
+ include Google::Apis::Core::Hashable
5717
+
5718
+ # The selected LLM model.
5719
+ # Corresponds to the JSON property `model`
5720
+ # @return [String]
5721
+ attr_accessor :model
5722
+
5723
+ # The custom prompt to use.
5724
+ # Corresponds to the JSON property `promptText`
5725
+ # @return [String]
5726
+ attr_accessor :prompt_text
5727
+
5728
+ def initialize(**args)
5729
+ update!(**args)
5730
+ end
5731
+
5732
+ # Update properties of this object
5733
+ def update!(**args)
5734
+ @model = args[:model] if args.key?(:model)
5735
+ @prompt_text = args[:prompt_text] if args.key?(:prompt_text)
5736
+ end
5737
+ end
5738
+
5335
5739
  # The request message for Versions.LoadVersion.
5336
5740
  class GoogleCloudDialogflowCxV3LoadVersionRequest
5337
5741
  include Google::Apis::Core::Hashable
@@ -5874,15 +6278,329 @@ module Google
5874
6278
  end
5875
6279
  end
5876
6280
 
5877
- # Represents the query input. It can contain one of: 1. A conversational query
5878
- # in the form of text. 2. An intent query that specifies which intent to trigger.
5879
- # 3. Natural language speech audio to be processed. 4. An event to be triggered.
5880
- # 5. DTMF digits to invoke an intent and fill in parameter value. 6. The
5881
- # results of a tool executed by the client.
5882
- class GoogleCloudDialogflowCxV3QueryInput
6281
+ # Playbook is the basic building block to instruct the LLM how to execute a
6282
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
6283
+ # step by step instructions (the step instruction may refers to name of the
6284
+ # custom or default plugin tools to use) to perform the task, a list of
6285
+ # contextual input data to be passed in at the beginning of the invoked, and a
6286
+ # list of output parameters to store the playbook result.
6287
+ class GoogleCloudDialogflowCxV3Playbook
5883
6288
  include Google::Apis::Core::Hashable
5884
6289
 
5885
- # Represents the natural speech audio to be processed.
6290
+ # Output only. The timestamp of initial playbook creation.
6291
+ # Corresponds to the JSON property `createTime`
6292
+ # @return [String]
6293
+ attr_accessor :create_time
6294
+
6295
+ # Required. The human-readable name of the playbook, unique within an agent.
6296
+ # Corresponds to the JSON property `displayName`
6297
+ # @return [String]
6298
+ attr_accessor :display_name
6299
+
6300
+ # Required. High level description of the goal the playbook intend to accomplish.
6301
+ # A goal should be concise since it's visible to other playbooks that may
6302
+ # reference this playbook.
6303
+ # Corresponds to the JSON property `goal`
6304
+ # @return [String]
6305
+ attr_accessor :goal
6306
+
6307
+ # Message of the Instruction of the playbook.
6308
+ # Corresponds to the JSON property `instruction`
6309
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInstruction]
6310
+ attr_accessor :instruction
6311
+
6312
+ # Settings for LLM models.
6313
+ # Corresponds to the JSON property `llmModelSettings`
6314
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
6315
+ attr_accessor :llm_model_settings
6316
+
6317
+ # The unique identifier of the playbook. Format: `projects//locations//agents//
6318
+ # playbooks/`.
6319
+ # Corresponds to the JSON property `name`
6320
+ # @return [String]
6321
+ attr_accessor :name
6322
+
6323
+ # Output only. The resource name of flows referenced by the current playbook in
6324
+ # the instructions.
6325
+ # Corresponds to the JSON property `referencedFlows`
6326
+ # @return [Array<String>]
6327
+ attr_accessor :referenced_flows
6328
+
6329
+ # Output only. The resource name of other playbooks referenced by the current
6330
+ # playbook in the instructions.
6331
+ # Corresponds to the JSON property `referencedPlaybooks`
6332
+ # @return [Array<String>]
6333
+ attr_accessor :referenced_playbooks
6334
+
6335
+ # Optional. The resource name of tools referenced by the current playbook in the
6336
+ # instructions. If not provided explicitly, they are will be implied using the
6337
+ # tool being referenced in goal and steps.
6338
+ # Corresponds to the JSON property `referencedTools`
6339
+ # @return [Array<String>]
6340
+ attr_accessor :referenced_tools
6341
+
6342
+ # Output only. Estimated number of tokes current playbook takes when sent to the
6343
+ # LLM.
6344
+ # Corresponds to the JSON property `tokenCount`
6345
+ # @return [Fixnum]
6346
+ attr_accessor :token_count
6347
+
6348
+ # Output only. Last time the playbook version was updated.
6349
+ # Corresponds to the JSON property `updateTime`
6350
+ # @return [String]
6351
+ attr_accessor :update_time
6352
+
6353
+ def initialize(**args)
6354
+ update!(**args)
6355
+ end
6356
+
6357
+ # Update properties of this object
6358
+ def update!(**args)
6359
+ @create_time = args[:create_time] if args.key?(:create_time)
6360
+ @display_name = args[:display_name] if args.key?(:display_name)
6361
+ @goal = args[:goal] if args.key?(:goal)
6362
+ @instruction = args[:instruction] if args.key?(:instruction)
6363
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
6364
+ @name = args[:name] if args.key?(:name)
6365
+ @referenced_flows = args[:referenced_flows] if args.key?(:referenced_flows)
6366
+ @referenced_playbooks = args[:referenced_playbooks] if args.key?(:referenced_playbooks)
6367
+ @referenced_tools = args[:referenced_tools] if args.key?(:referenced_tools)
6368
+ @token_count = args[:token_count] if args.key?(:token_count)
6369
+ @update_time = args[:update_time] if args.key?(:update_time)
6370
+ end
6371
+ end
6372
+
6373
+ # The playbook import strategy used for resource conflict resolution associated
6374
+ # with an ImportPlaybookRequest.
6375
+ class GoogleCloudDialogflowCxV3PlaybookImportStrategy
6376
+ include Google::Apis::Core::Hashable
6377
+
6378
+ # Optional. Specifies the import strategy used when resolving conflicts with the
6379
+ # main playbook. If not specified, 'CREATE_NEW' is assumed.
6380
+ # Corresponds to the JSON property `mainPlaybookImportStrategy`
6381
+ # @return [String]
6382
+ attr_accessor :main_playbook_import_strategy
6383
+
6384
+ # Optional. Specifies the import strategy used when resolving referenced
6385
+ # playbook/flow conflicts. If not specified, 'CREATE_NEW' is assumed.
6386
+ # Corresponds to the JSON property `nestedResourceImportStrategy`
6387
+ # @return [String]
6388
+ attr_accessor :nested_resource_import_strategy
6389
+
6390
+ # Optional. Specifies the import strategy used when resolving tool conflicts. If
6391
+ # not specified, 'CREATE_NEW' is assumed. This will be applied after the main
6392
+ # playbook and nested resource import strategies, meaning if the playbook that
6393
+ # references the tool is skipped, the tool will also be skipped.
6394
+ # Corresponds to the JSON property `toolImportStrategy`
6395
+ # @return [String]
6396
+ attr_accessor :tool_import_strategy
6397
+
6398
+ def initialize(**args)
6399
+ update!(**args)
6400
+ end
6401
+
6402
+ # Update properties of this object
6403
+ def update!(**args)
6404
+ @main_playbook_import_strategy = args[:main_playbook_import_strategy] if args.key?(:main_playbook_import_strategy)
6405
+ @nested_resource_import_strategy = args[:nested_resource_import_strategy] if args.key?(:nested_resource_import_strategy)
6406
+ @tool_import_strategy = args[:tool_import_strategy] if args.key?(:tool_import_strategy)
6407
+ end
6408
+ end
6409
+
6410
+ # Input of the playbook.
6411
+ class GoogleCloudDialogflowCxV3PlaybookInput
6412
+ include Google::Apis::Core::Hashable
6413
+
6414
+ # Optional. Summary string of the preceding conversation for the child playbook
6415
+ # invocation.
6416
+ # Corresponds to the JSON property `precedingConversationSummary`
6417
+ # @return [String]
6418
+ attr_accessor :preceding_conversation_summary
6419
+
6420
+ def initialize(**args)
6421
+ update!(**args)
6422
+ end
6423
+
6424
+ # Update properties of this object
6425
+ def update!(**args)
6426
+ @preceding_conversation_summary = args[:preceding_conversation_summary] if args.key?(:preceding_conversation_summary)
6427
+ end
6428
+ end
6429
+
6430
+ # Message of the Instruction of the playbook.
6431
+ class GoogleCloudDialogflowCxV3PlaybookInstruction
6432
+ include Google::Apis::Core::Hashable
6433
+
6434
+ # General guidelines for the playbook. These are unstructured instructions that
6435
+ # are not directly part of the goal, e.g. "Always be polite". It's valid for
6436
+ # this text to be long and used instead of steps altogether.
6437
+ # Corresponds to the JSON property `guidelines`
6438
+ # @return [String]
6439
+ attr_accessor :guidelines
6440
+
6441
+ # Ordered list of step by step execution instructions to accomplish target goal.
6442
+ # Corresponds to the JSON property `steps`
6443
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookStep>]
6444
+ attr_accessor :steps
6445
+
6446
+ def initialize(**args)
6447
+ update!(**args)
6448
+ end
6449
+
6450
+ # Update properties of this object
6451
+ def update!(**args)
6452
+ @guidelines = args[:guidelines] if args.key?(:guidelines)
6453
+ @steps = args[:steps] if args.key?(:steps)
6454
+ end
6455
+ end
6456
+
6457
+ # Stores metadata of the invocation of a child playbook.
6458
+ class GoogleCloudDialogflowCxV3PlaybookInvocation
6459
+ include Google::Apis::Core::Hashable
6460
+
6461
+ # Output only. The display name of the playbook.
6462
+ # Corresponds to the JSON property `displayName`
6463
+ # @return [String]
6464
+ attr_accessor :display_name
6465
+
6466
+ # Required. The unique identifier of the playbook. Format: `projects//locations//
6467
+ # agents//playbooks/`.
6468
+ # Corresponds to the JSON property `playbook`
6469
+ # @return [String]
6470
+ attr_accessor :playbook
6471
+
6472
+ # Input of the playbook.
6473
+ # Corresponds to the JSON property `playbookInput`
6474
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookInput]
6475
+ attr_accessor :playbook_input
6476
+
6477
+ # Output of the playbook.
6478
+ # Corresponds to the JSON property `playbookOutput`
6479
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookOutput]
6480
+ attr_accessor :playbook_output
6481
+
6482
+ # Required. Playbook invocation's output state.
6483
+ # Corresponds to the JSON property `playbookState`
6484
+ # @return [String]
6485
+ attr_accessor :playbook_state
6486
+
6487
+ def initialize(**args)
6488
+ update!(**args)
6489
+ end
6490
+
6491
+ # Update properties of this object
6492
+ def update!(**args)
6493
+ @display_name = args[:display_name] if args.key?(:display_name)
6494
+ @playbook = args[:playbook] if args.key?(:playbook)
6495
+ @playbook_input = args[:playbook_input] if args.key?(:playbook_input)
6496
+ @playbook_output = args[:playbook_output] if args.key?(:playbook_output)
6497
+ @playbook_state = args[:playbook_state] if args.key?(:playbook_state)
6498
+ end
6499
+ end
6500
+
6501
+ # Output of the playbook.
6502
+ class GoogleCloudDialogflowCxV3PlaybookOutput
6503
+ include Google::Apis::Core::Hashable
6504
+
6505
+ # Optional. Summary string of the execution result of the child playbook.
6506
+ # Corresponds to the JSON property `executionSummary`
6507
+ # @return [String]
6508
+ attr_accessor :execution_summary
6509
+
6510
+ def initialize(**args)
6511
+ update!(**args)
6512
+ end
6513
+
6514
+ # Update properties of this object
6515
+ def update!(**args)
6516
+ @execution_summary = args[:execution_summary] if args.key?(:execution_summary)
6517
+ end
6518
+ end
6519
+
6520
+ # Message of single step execution.
6521
+ class GoogleCloudDialogflowCxV3PlaybookStep
6522
+ include Google::Apis::Core::Hashable
6523
+
6524
+ # Sub-processing needed to execute the current step.
6525
+ # Corresponds to the JSON property `steps`
6526
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3PlaybookStep>]
6527
+ attr_accessor :steps
6528
+
6529
+ # Step instruction in text format.
6530
+ # Corresponds to the JSON property `text`
6531
+ # @return [String]
6532
+ attr_accessor :text
6533
+
6534
+ def initialize(**args)
6535
+ update!(**args)
6536
+ end
6537
+
6538
+ # Update properties of this object
6539
+ def update!(**args)
6540
+ @steps = args[:steps] if args.key?(:steps)
6541
+ @text = args[:text] if args.key?(:text)
6542
+ end
6543
+ end
6544
+
6545
+ # Playbook version is a snapshot of the playbook at certain timestamp.
6546
+ class GoogleCloudDialogflowCxV3PlaybookVersion
6547
+ include Google::Apis::Core::Hashable
6548
+
6549
+ # Optional. The description of the playbook version.
6550
+ # Corresponds to the JSON property `description`
6551
+ # @return [String]
6552
+ attr_accessor :description
6553
+
6554
+ # Output only. Snapshot of the examples belonging to the playbook when the
6555
+ # playbook version is created.
6556
+ # Corresponds to the JSON property `examples`
6557
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Example>]
6558
+ attr_accessor :examples
6559
+
6560
+ # The unique identifier of the playbook version. Format: `projects//locations//
6561
+ # agents//playbooks//versions/`.
6562
+ # Corresponds to the JSON property `name`
6563
+ # @return [String]
6564
+ attr_accessor :name
6565
+
6566
+ # Playbook is the basic building block to instruct the LLM how to execute a
6567
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
6568
+ # step by step instructions (the step instruction may refers to name of the
6569
+ # custom or default plugin tools to use) to perform the task, a list of
6570
+ # contextual input data to be passed in at the beginning of the invoked, and a
6571
+ # list of output parameters to store the playbook result.
6572
+ # Corresponds to the JSON property `playbook`
6573
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Playbook]
6574
+ attr_accessor :playbook
6575
+
6576
+ # Output only. Last time the playbook version was created or modified.
6577
+ # Corresponds to the JSON property `updateTime`
6578
+ # @return [String]
6579
+ attr_accessor :update_time
6580
+
6581
+ def initialize(**args)
6582
+ update!(**args)
6583
+ end
6584
+
6585
+ # Update properties of this object
6586
+ def update!(**args)
6587
+ @description = args[:description] if args.key?(:description)
6588
+ @examples = args[:examples] if args.key?(:examples)
6589
+ @name = args[:name] if args.key?(:name)
6590
+ @playbook = args[:playbook] if args.key?(:playbook)
6591
+ @update_time = args[:update_time] if args.key?(:update_time)
6592
+ end
6593
+ end
6594
+
6595
+ # Represents the query input. It can contain one of: 1. A conversational query
6596
+ # in the form of text. 2. An intent query that specifies which intent to trigger.
6597
+ # 3. Natural language speech audio to be processed. 4. An event to be triggered.
6598
+ # 5. DTMF digits to invoke an intent and fill in parameter value. 6. The
6599
+ # results of a tool executed by the client.
6600
+ class GoogleCloudDialogflowCxV3QueryInput
6601
+ include Google::Apis::Core::Hashable
6602
+
6603
+ # Represents the natural speech audio to be processed.
5886
6604
  # Corresponds to the JSON property `audio`
5887
6605
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3AudioInput]
5888
6606
  attr_accessor :audio
@@ -5916,6 +6634,11 @@ module Google
5916
6634
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TextInput]
5917
6635
  attr_accessor :text
5918
6636
 
6637
+ # The result of calling a tool's action that has been executed by the client.
6638
+ # Corresponds to the JSON property `toolCallResult`
6639
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolCallResult]
6640
+ attr_accessor :tool_call_result
6641
+
5919
6642
  def initialize(**args)
5920
6643
  update!(**args)
5921
6644
  end
@@ -5928,6 +6651,7 @@ module Google
5928
6651
  @intent = args[:intent] if args.key?(:intent)
5929
6652
  @language_code = args[:language_code] if args.key?(:language_code)
5930
6653
  @text = args[:text] if args.key?(:text)
6654
+ @tool_call_result = args[:tool_call_result] if args.key?(:tool_call_result)
5931
6655
  end
5932
6656
  end
5933
6657
 
@@ -5961,6 +6685,14 @@ module Google
5961
6685
  # @return [String]
5962
6686
  attr_accessor :current_page
5963
6687
 
6688
+ # Optional. The unique identifier of the playbook to start or continue the
6689
+ # session with. If `current_playbook` is specified, the previous state of the
6690
+ # session will be ignored by Dialogflow. Format: `projects//locations//agents//
6691
+ # playbooks/`.
6692
+ # Corresponds to the JSON property `currentPlaybook`
6693
+ # @return [String]
6694
+ attr_accessor :current_playbook
6695
+
5964
6696
  # Whether to disable webhook calls for this request.
5965
6697
  # Corresponds to the JSON property `disableWebhook`
5966
6698
  # @return [Boolean]
@@ -5994,6 +6726,11 @@ module Google
5994
6726
  # @return [Google::Apis::DialogflowV3::GoogleTypeLatLng]
5995
6727
  attr_accessor :geo_location
5996
6728
 
6729
+ # Settings for LLM models.
6730
+ # Corresponds to the JSON property `llmModelSettings`
6731
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3LlmModelSettings]
6732
+ attr_accessor :llm_model_settings
6733
+
5997
6734
  # Additional parameters to be put into session parameters. To remove a parameter
5998
6735
  # from the session, clients should explicitly set the parameter value to null.
5999
6736
  # You can reference the session parameters in the agent with the following
@@ -6075,10 +6812,12 @@ module Google
6075
6812
  @analyze_query_text_sentiment = args[:analyze_query_text_sentiment] if args.key?(:analyze_query_text_sentiment)
6076
6813
  @channel = args[:channel] if args.key?(:channel)
6077
6814
  @current_page = args[:current_page] if args.key?(:current_page)
6815
+ @current_playbook = args[:current_playbook] if args.key?(:current_playbook)
6078
6816
  @disable_webhook = args[:disable_webhook] if args.key?(:disable_webhook)
6079
6817
  @end_user_metadata = args[:end_user_metadata] if args.key?(:end_user_metadata)
6080
6818
  @flow_versions = args[:flow_versions] if args.key?(:flow_versions)
6081
6819
  @geo_location = args[:geo_location] if args.key?(:geo_location)
6820
+ @llm_model_settings = args[:llm_model_settings] if args.key?(:llm_model_settings)
6082
6821
  @parameters = args[:parameters] if args.key?(:parameters)
6083
6822
  @payload = args[:payload] if args.key?(:payload)
6084
6823
  @populate_data_store_connection_signals = args[:populate_data_store_connection_signals] if args.key?(:populate_data_store_connection_signals)
@@ -6403,6 +7142,11 @@ module Google
6403
7142
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ResponseMessageText]
6404
7143
  attr_accessor :text
6405
7144
 
7145
+ # Represents a call of a specific tool's action with the specified inputs.
7146
+ # Corresponds to the JSON property `toolCall`
7147
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolCall]
7148
+ attr_accessor :tool_call
7149
+
6406
7150
  def initialize(**args)
6407
7151
  update!(**args)
6408
7152
  end
@@ -6421,6 +7165,7 @@ module Google
6421
7165
  @response_type = args[:response_type] if args.key?(:response_type)
6422
7166
  @telephony_transfer_call = args[:telephony_transfer_call] if args.key?(:telephony_transfer_call)
6423
7167
  @text = args[:text] if args.key?(:text)
7168
+ @tool_call = args[:tool_call] if args.key?(:tool_call)
6424
7169
  end
6425
7170
  end
6426
7171
 
@@ -6738,6 +7483,43 @@ module Google
6738
7483
  end
6739
7484
  end
6740
7485
 
7486
+ # The request message for Playbooks.RestorePlaybookVersion.
7487
+ class GoogleCloudDialogflowCxV3RestorePlaybookVersionRequest
7488
+ include Google::Apis::Core::Hashable
7489
+
7490
+ def initialize(**args)
7491
+ update!(**args)
7492
+ end
7493
+
7494
+ # Update properties of this object
7495
+ def update!(**args)
7496
+ end
7497
+ end
7498
+
7499
+ # The response message for Playbooks.RestorePlaybookVersion.
7500
+ class GoogleCloudDialogflowCxV3RestorePlaybookVersionResponse
7501
+ include Google::Apis::Core::Hashable
7502
+
7503
+ # Playbook is the basic building block to instruct the LLM how to execute a
7504
+ # certain task. A playbook consists of a goal to accomplish, an optional list of
7505
+ # step by step instructions (the step instruction may refers to name of the
7506
+ # custom or default plugin tools to use) to perform the task, a list of
7507
+ # contextual input data to be passed in at the beginning of the invoked, and a
7508
+ # list of output parameters to store the playbook result.
7509
+ # Corresponds to the JSON property `playbook`
7510
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3Playbook]
7511
+ attr_accessor :playbook
7512
+
7513
+ def initialize(**args)
7514
+ update!(**args)
7515
+ end
7516
+
7517
+ # Update properties of this object
7518
+ def update!(**args)
7519
+ @playbook = args[:playbook] if args.key?(:playbook)
7520
+ end
7521
+ end
7522
+
6741
7523
  # The configuration for auto rollout.
6742
7524
  class GoogleCloudDialogflowCxV3RolloutConfig
6743
7525
  include Google::Apis::Core::Hashable
@@ -6955,6 +7737,11 @@ module Google
6955
7737
  # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3SafetySettingsPhrase>]
6956
7738
  attr_accessor :banned_phrases
6957
7739
 
7740
+ # Optional. Default phrase match strategy for banned phrases.
7741
+ # Corresponds to the JSON property `defaultBannedPhraseMatchStrategy`
7742
+ # @return [String]
7743
+ attr_accessor :default_banned_phrase_match_strategy
7744
+
6958
7745
  def initialize(**args)
6959
7746
  update!(**args)
6960
7747
  end
@@ -6962,6 +7749,7 @@ module Google
6962
7749
  # Update properties of this object
6963
7750
  def update!(**args)
6964
7751
  @banned_phrases = args[:banned_phrases] if args.key?(:banned_phrases)
7752
+ @default_banned_phrase_match_strategy = args[:default_banned_phrase_match_strategy] if args.key?(:default_banned_phrase_match_strategy)
6965
7753
  end
6966
7754
  end
6967
7755
 
@@ -7728,34 +8516,91 @@ module Google
7728
8516
  end
7729
8517
  end
7730
8518
 
7731
- # The request message for Flows.TrainFlow.
7732
- class GoogleCloudDialogflowCxV3TrainFlowRequest
8519
+ # A tool provides a list of actions which are available to the Playbook to
8520
+ # attain its goal. A Tool consists of a description of the tool's usage and a
8521
+ # specification of the tool which contains the schema and authentication
8522
+ # information.
8523
+ class GoogleCloudDialogflowCxV3Tool
7733
8524
  include Google::Apis::Core::Hashable
7734
8525
 
8526
+ # A DataStoreTool is a way to provide specifications needed to search a list of
8527
+ # data stores.
8528
+ # Corresponds to the JSON property `dataStoreSpec`
8529
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolDataStoreTool]
8530
+ attr_accessor :data_store_spec
8531
+
8532
+ # Required. High level description of the Tool and its usage.
8533
+ # Corresponds to the JSON property `description`
8534
+ # @return [String]
8535
+ attr_accessor :description
8536
+
8537
+ # Required. The human-readable name of the Tool, unique within an agent.
8538
+ # Corresponds to the JSON property `displayName`
8539
+ # @return [String]
8540
+ attr_accessor :display_name
8541
+
8542
+ # A Function tool describes the functions to be invoked on the client side.
8543
+ # Corresponds to the JSON property `functionSpec`
8544
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolFunctionTool]
8545
+ attr_accessor :function_spec
8546
+
8547
+ # The unique identifier of the Tool. Format: `projects//locations//agents//tools/
8548
+ # `.
8549
+ # Corresponds to the JSON property `name`
8550
+ # @return [String]
8551
+ attr_accessor :name
8552
+
8553
+ # An OpenAPI tool is a way to provide the Tool specifications in the Open API
8554
+ # schema format.
8555
+ # Corresponds to the JSON property `openApiSpec`
8556
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolOpenApiTool]
8557
+ attr_accessor :open_api_spec
8558
+
8559
+ # Output only. The tool type.
8560
+ # Corresponds to the JSON property `toolType`
8561
+ # @return [String]
8562
+ attr_accessor :tool_type
8563
+
7735
8564
  def initialize(**args)
7736
8565
  update!(**args)
7737
8566
  end
7738
8567
 
7739
8568
  # Update properties of this object
7740
8569
  def update!(**args)
8570
+ @data_store_spec = args[:data_store_spec] if args.key?(:data_store_spec)
8571
+ @description = args[:description] if args.key?(:description)
8572
+ @display_name = args[:display_name] if args.key?(:display_name)
8573
+ @function_spec = args[:function_spec] if args.key?(:function_spec)
8574
+ @name = args[:name] if args.key?(:name)
8575
+ @open_api_spec = args[:open_api_spec] if args.key?(:open_api_spec)
8576
+ @tool_type = args[:tool_type] if args.key?(:tool_type)
7741
8577
  end
7742
8578
  end
7743
8579
 
7744
- # Transition coverage represents the percentage of all possible page transitions
7745
- # (page-level transition routes and event handlers, excluding transition route
7746
- # groups) present within any of a parent's test cases.
7747
- class GoogleCloudDialogflowCxV3TransitionCoverage
8580
+ # Authentication information required for API calls
8581
+ class GoogleCloudDialogflowCxV3ToolAuthentication
7748
8582
  include Google::Apis::Core::Hashable
7749
8583
 
7750
- # The percent of transitions in the agent that are covered.
7751
- # Corresponds to the JSON property `coverageScore`
7752
- # @return [Float]
7753
- attr_accessor :coverage_score
8584
+ # Config for authentication with API key.
8585
+ # Corresponds to the JSON property `apiKeyConfig`
8586
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationApiKeyConfig]
8587
+ attr_accessor :api_key_config
7754
8588
 
7755
- # The list of Transitions present in the agent.
7756
- # Corresponds to the JSON property `transitions`
7757
- # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TransitionCoverageTransition>]
7758
- attr_accessor :transitions
8589
+ # Config for authentication using bearer token.
8590
+ # Corresponds to the JSON property `bearerTokenConfig`
8591
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationBearerTokenConfig]
8592
+ attr_accessor :bearer_token_config
8593
+
8594
+ # Config for authentication with OAuth.
8595
+ # Corresponds to the JSON property `oauthConfig`
8596
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationOAuthConfig]
8597
+ attr_accessor :oauth_config
8598
+
8599
+ # Config for auth using [Diglogflow service agent](https://cloud.google.com/iam/
8600
+ # docs/service-agents#dialogflow-service-agent).
8601
+ # Corresponds to the JSON property `serviceAgentAuthConfig`
8602
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthenticationServiceAgentAuthConfig]
8603
+ attr_accessor :service_agent_auth_config
7759
8604
 
7760
8605
  def initialize(**args)
7761
8606
  update!(**args)
@@ -7763,12 +8608,518 @@ module Google
7763
8608
 
7764
8609
  # Update properties of this object
7765
8610
  def update!(**args)
7766
- @coverage_score = args[:coverage_score] if args.key?(:coverage_score)
7767
- @transitions = args[:transitions] if args.key?(:transitions)
8611
+ @api_key_config = args[:api_key_config] if args.key?(:api_key_config)
8612
+ @bearer_token_config = args[:bearer_token_config] if args.key?(:bearer_token_config)
8613
+ @oauth_config = args[:oauth_config] if args.key?(:oauth_config)
8614
+ @service_agent_auth_config = args[:service_agent_auth_config] if args.key?(:service_agent_auth_config)
7768
8615
  end
7769
8616
  end
7770
8617
 
7771
- # A transition in a page.
8618
+ # Config for authentication with API key.
8619
+ class GoogleCloudDialogflowCxV3ToolAuthenticationApiKeyConfig
8620
+ include Google::Apis::Core::Hashable
8621
+
8622
+ # Optional. The API key. If the `secret_version_for_api_key` field is set, this
8623
+ # field will be ignored.
8624
+ # Corresponds to the JSON property `apiKey`
8625
+ # @return [String]
8626
+ attr_accessor :api_key
8627
+
8628
+ # Required. The parameter name or the header name of the API key. E.g., If the
8629
+ # API request is "https://example.com/act?X-Api-Key=", "X-Api-Key" would be the
8630
+ # parameter name.
8631
+ # Corresponds to the JSON property `keyName`
8632
+ # @return [String]
8633
+ attr_accessor :key_name
8634
+
8635
+ # Required. Key location in the request.
8636
+ # Corresponds to the JSON property `requestLocation`
8637
+ # @return [String]
8638
+ attr_accessor :request_location
8639
+
8640
+ # Optional. The name of the SecretManager secret version resource storing the
8641
+ # API key. If this field is set, the `api_key` field will be ignored. Format: `
8642
+ # projects/`project`/secrets/`secret`/versions/`version``
8643
+ # Corresponds to the JSON property `secretVersionForApiKey`
8644
+ # @return [String]
8645
+ attr_accessor :secret_version_for_api_key
8646
+
8647
+ def initialize(**args)
8648
+ update!(**args)
8649
+ end
8650
+
8651
+ # Update properties of this object
8652
+ def update!(**args)
8653
+ @api_key = args[:api_key] if args.key?(:api_key)
8654
+ @key_name = args[:key_name] if args.key?(:key_name)
8655
+ @request_location = args[:request_location] if args.key?(:request_location)
8656
+ @secret_version_for_api_key = args[:secret_version_for_api_key] if args.key?(:secret_version_for_api_key)
8657
+ end
8658
+ end
8659
+
8660
+ # Config for authentication using bearer token.
8661
+ class GoogleCloudDialogflowCxV3ToolAuthenticationBearerTokenConfig
8662
+ include Google::Apis::Core::Hashable
8663
+
8664
+ # Optional. The name of the SecretManager secret version resource storing the
8665
+ # Bearer token. If this field is set, the `token` field will be ignored. Format:
8666
+ # `projects/`project`/secrets/`secret`/versions/`version``
8667
+ # Corresponds to the JSON property `secretVersionForToken`
8668
+ # @return [String]
8669
+ attr_accessor :secret_version_for_token
8670
+
8671
+ # Optional. The text token appended to the text `Bearer` to the request
8672
+ # Authorization header. [Session parameters reference](https://cloud.google.com/
8673
+ # dialogflow/cx/docs/concept/parameter#session-ref) can be used to pass the
8674
+ # token dynamically, e.g. `$session.params.parameter-id`.
8675
+ # Corresponds to the JSON property `token`
8676
+ # @return [String]
8677
+ attr_accessor :token
8678
+
8679
+ def initialize(**args)
8680
+ update!(**args)
8681
+ end
8682
+
8683
+ # Update properties of this object
8684
+ def update!(**args)
8685
+ @secret_version_for_token = args[:secret_version_for_token] if args.key?(:secret_version_for_token)
8686
+ @token = args[:token] if args.key?(:token)
8687
+ end
8688
+ end
8689
+
8690
+ # Config for authentication with OAuth.
8691
+ class GoogleCloudDialogflowCxV3ToolAuthenticationOAuthConfig
8692
+ include Google::Apis::Core::Hashable
8693
+
8694
+ # Required. The client ID from the OAuth provider.
8695
+ # Corresponds to the JSON property `clientId`
8696
+ # @return [String]
8697
+ attr_accessor :client_id
8698
+
8699
+ # Optional. The client secret from the OAuth provider. If the `
8700
+ # secret_version_for_client_secret` field is set, this field will be ignored.
8701
+ # Corresponds to the JSON property `clientSecret`
8702
+ # @return [String]
8703
+ attr_accessor :client_secret
8704
+
8705
+ # Required. OAuth grant types.
8706
+ # Corresponds to the JSON property `oauthGrantType`
8707
+ # @return [String]
8708
+ attr_accessor :oauth_grant_type
8709
+
8710
+ # Optional. The OAuth scopes to grant.
8711
+ # Corresponds to the JSON property `scopes`
8712
+ # @return [Array<String>]
8713
+ attr_accessor :scopes
8714
+
8715
+ # Optional. The name of the SecretManager secret version resource storing the
8716
+ # client secret. If this field is set, the `client_secret` field will be ignored.
8717
+ # Format: `projects/`project`/secrets/`secret`/versions/`version``
8718
+ # Corresponds to the JSON property `secretVersionForClientSecret`
8719
+ # @return [String]
8720
+ attr_accessor :secret_version_for_client_secret
8721
+
8722
+ # Required. The token endpoint in the OAuth provider to exchange for an access
8723
+ # token.
8724
+ # Corresponds to the JSON property `tokenEndpoint`
8725
+ # @return [String]
8726
+ attr_accessor :token_endpoint
8727
+
8728
+ def initialize(**args)
8729
+ update!(**args)
8730
+ end
8731
+
8732
+ # Update properties of this object
8733
+ def update!(**args)
8734
+ @client_id = args[:client_id] if args.key?(:client_id)
8735
+ @client_secret = args[:client_secret] if args.key?(:client_secret)
8736
+ @oauth_grant_type = args[:oauth_grant_type] if args.key?(:oauth_grant_type)
8737
+ @scopes = args[:scopes] if args.key?(:scopes)
8738
+ @secret_version_for_client_secret = args[:secret_version_for_client_secret] if args.key?(:secret_version_for_client_secret)
8739
+ @token_endpoint = args[:token_endpoint] if args.key?(:token_endpoint)
8740
+ end
8741
+ end
8742
+
8743
+ # Config for auth using [Diglogflow service agent](https://cloud.google.com/iam/
8744
+ # docs/service-agents#dialogflow-service-agent).
8745
+ class GoogleCloudDialogflowCxV3ToolAuthenticationServiceAgentAuthConfig
8746
+ include Google::Apis::Core::Hashable
8747
+
8748
+ # Optional. Indicate the auth token type generated from the [Diglogflow service
8749
+ # agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-
8750
+ # agent). The generated token is sent in the Authorization header.
8751
+ # Corresponds to the JSON property `serviceAgentAuth`
8752
+ # @return [String]
8753
+ attr_accessor :service_agent_auth
8754
+
8755
+ def initialize(**args)
8756
+ update!(**args)
8757
+ end
8758
+
8759
+ # Update properties of this object
8760
+ def update!(**args)
8761
+ @service_agent_auth = args[:service_agent_auth] if args.key?(:service_agent_auth)
8762
+ end
8763
+ end
8764
+
8765
+ # Represents a call of a specific tool's action with the specified inputs.
8766
+ class GoogleCloudDialogflowCxV3ToolCall
8767
+ include Google::Apis::Core::Hashable
8768
+
8769
+ # Required. The name of the tool's action associated with this call.
8770
+ # Corresponds to the JSON property `action`
8771
+ # @return [String]
8772
+ attr_accessor :action
8773
+
8774
+ # Optional. The action's input parameters.
8775
+ # Corresponds to the JSON property `inputParameters`
8776
+ # @return [Hash<String,Object>]
8777
+ attr_accessor :input_parameters
8778
+
8779
+ # Required. The tool associated with this call. Format: `projects//locations//
8780
+ # agents//tools/`.
8781
+ # Corresponds to the JSON property `tool`
8782
+ # @return [String]
8783
+ attr_accessor :tool
8784
+
8785
+ def initialize(**args)
8786
+ update!(**args)
8787
+ end
8788
+
8789
+ # Update properties of this object
8790
+ def update!(**args)
8791
+ @action = args[:action] if args.key?(:action)
8792
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
8793
+ @tool = args[:tool] if args.key?(:tool)
8794
+ end
8795
+ end
8796
+
8797
+ # The result of calling a tool's action that has been executed by the client.
8798
+ class GoogleCloudDialogflowCxV3ToolCallResult
8799
+ include Google::Apis::Core::Hashable
8800
+
8801
+ # Required. The name of the tool's action associated with this call.
8802
+ # Corresponds to the JSON property `action`
8803
+ # @return [String]
8804
+ attr_accessor :action
8805
+
8806
+ # An error produced by the tool call.
8807
+ # Corresponds to the JSON property `error`
8808
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolCallResultError]
8809
+ attr_accessor :error
8810
+
8811
+ # The tool call's output parameters.
8812
+ # Corresponds to the JSON property `outputParameters`
8813
+ # @return [Hash<String,Object>]
8814
+ attr_accessor :output_parameters
8815
+
8816
+ # Required. The tool associated with this call. Format: `projects//locations//
8817
+ # agents//tools/`.
8818
+ # Corresponds to the JSON property `tool`
8819
+ # @return [String]
8820
+ attr_accessor :tool
8821
+
8822
+ def initialize(**args)
8823
+ update!(**args)
8824
+ end
8825
+
8826
+ # Update properties of this object
8827
+ def update!(**args)
8828
+ @action = args[:action] if args.key?(:action)
8829
+ @error = args[:error] if args.key?(:error)
8830
+ @output_parameters = args[:output_parameters] if args.key?(:output_parameters)
8831
+ @tool = args[:tool] if args.key?(:tool)
8832
+ end
8833
+ end
8834
+
8835
+ # An error produced by the tool call.
8836
+ class GoogleCloudDialogflowCxV3ToolCallResultError
8837
+ include Google::Apis::Core::Hashable
8838
+
8839
+ # Optional. The error message of the function.
8840
+ # Corresponds to the JSON property `message`
8841
+ # @return [String]
8842
+ attr_accessor :message
8843
+
8844
+ def initialize(**args)
8845
+ update!(**args)
8846
+ end
8847
+
8848
+ # Update properties of this object
8849
+ def update!(**args)
8850
+ @message = args[:message] if args.key?(:message)
8851
+ end
8852
+ end
8853
+
8854
+ # A DataStoreTool is a way to provide specifications needed to search a list of
8855
+ # data stores.
8856
+ class GoogleCloudDialogflowCxV3ToolDataStoreTool
8857
+ include Google::Apis::Core::Hashable
8858
+
8859
+ # Required. List of data stores to search.
8860
+ # Corresponds to the JSON property `dataStoreConnections`
8861
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3DataStoreConnection>]
8862
+ attr_accessor :data_store_connections
8863
+
8864
+ # A FallbackPrompt is a way to provide specifications for the Data Store
8865
+ # fallback prompt when generating responses.
8866
+ # Corresponds to the JSON property `fallbackPrompt`
8867
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolDataStoreToolFallbackPrompt]
8868
+ attr_accessor :fallback_prompt
8869
+
8870
+ def initialize(**args)
8871
+ update!(**args)
8872
+ end
8873
+
8874
+ # Update properties of this object
8875
+ def update!(**args)
8876
+ @data_store_connections = args[:data_store_connections] if args.key?(:data_store_connections)
8877
+ @fallback_prompt = args[:fallback_prompt] if args.key?(:fallback_prompt)
8878
+ end
8879
+ end
8880
+
8881
+ # A FallbackPrompt is a way to provide specifications for the Data Store
8882
+ # fallback prompt when generating responses.
8883
+ class GoogleCloudDialogflowCxV3ToolDataStoreToolFallbackPrompt
8884
+ include Google::Apis::Core::Hashable
8885
+
8886
+ def initialize(**args)
8887
+ update!(**args)
8888
+ end
8889
+
8890
+ # Update properties of this object
8891
+ def update!(**args)
8892
+ end
8893
+ end
8894
+
8895
+ # A Function tool describes the functions to be invoked on the client side.
8896
+ class GoogleCloudDialogflowCxV3ToolFunctionTool
8897
+ include Google::Apis::Core::Hashable
8898
+
8899
+ # Optional. The JSON schema is encapsulated in a google.protobuf.Struct to
8900
+ # describe the input of the function. This input is a JSON object that contains
8901
+ # the function's parameters as properties of the object.
8902
+ # Corresponds to the JSON property `inputSchema`
8903
+ # @return [Hash<String,Object>]
8904
+ attr_accessor :input_schema
8905
+
8906
+ # Optional. The JSON schema is encapsulated in a google.protobuf.Struct to
8907
+ # describe the output of the function. This output is a JSON object that
8908
+ # contains the function's parameters as properties of the object.
8909
+ # Corresponds to the JSON property `outputSchema`
8910
+ # @return [Hash<String,Object>]
8911
+ attr_accessor :output_schema
8912
+
8913
+ def initialize(**args)
8914
+ update!(**args)
8915
+ end
8916
+
8917
+ # Update properties of this object
8918
+ def update!(**args)
8919
+ @input_schema = args[:input_schema] if args.key?(:input_schema)
8920
+ @output_schema = args[:output_schema] if args.key?(:output_schema)
8921
+ end
8922
+ end
8923
+
8924
+ # An OpenAPI tool is a way to provide the Tool specifications in the Open API
8925
+ # schema format.
8926
+ class GoogleCloudDialogflowCxV3ToolOpenApiTool
8927
+ include Google::Apis::Core::Hashable
8928
+
8929
+ # Authentication information required for API calls
8930
+ # Corresponds to the JSON property `authentication`
8931
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolAuthentication]
8932
+ attr_accessor :authentication
8933
+
8934
+ # Configuration for tools using Service Directory.
8935
+ # Corresponds to the JSON property `serviceDirectoryConfig`
8936
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolServiceDirectoryConfig]
8937
+ attr_accessor :service_directory_config
8938
+
8939
+ # Required. The OpenAPI schema specified as a text.
8940
+ # Corresponds to the JSON property `textSchema`
8941
+ # @return [String]
8942
+ attr_accessor :text_schema
8943
+
8944
+ # The TLS configuration.
8945
+ # Corresponds to the JSON property `tlsConfig`
8946
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolTlsConfig]
8947
+ attr_accessor :tls_config
8948
+
8949
+ def initialize(**args)
8950
+ update!(**args)
8951
+ end
8952
+
8953
+ # Update properties of this object
8954
+ def update!(**args)
8955
+ @authentication = args[:authentication] if args.key?(:authentication)
8956
+ @service_directory_config = args[:service_directory_config] if args.key?(:service_directory_config)
8957
+ @text_schema = args[:text_schema] if args.key?(:text_schema)
8958
+ @tls_config = args[:tls_config] if args.key?(:tls_config)
8959
+ end
8960
+ end
8961
+
8962
+ # Configuration for tools using Service Directory.
8963
+ class GoogleCloudDialogflowCxV3ToolServiceDirectoryConfig
8964
+ include Google::Apis::Core::Hashable
8965
+
8966
+ # Required. The name of [Service Directory](https://cloud.google.com/service-
8967
+ # directory) service. Format: `projects//locations//namespaces//services/`. `
8968
+ # LocationID` of the service directory must be the same as the location of the
8969
+ # agent.
8970
+ # Corresponds to the JSON property `service`
8971
+ # @return [String]
8972
+ attr_accessor :service
8973
+
8974
+ def initialize(**args)
8975
+ update!(**args)
8976
+ end
8977
+
8978
+ # Update properties of this object
8979
+ def update!(**args)
8980
+ @service = args[:service] if args.key?(:service)
8981
+ end
8982
+ end
8983
+
8984
+ # The TLS configuration.
8985
+ class GoogleCloudDialogflowCxV3ToolTlsConfig
8986
+ include Google::Apis::Core::Hashable
8987
+
8988
+ # Required. Specifies a list of allowed custom CA certificates for HTTPS
8989
+ # verification.
8990
+ # Corresponds to the JSON property `caCerts`
8991
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3ToolTlsConfigCaCert>]
8992
+ attr_accessor :ca_certs
8993
+
8994
+ def initialize(**args)
8995
+ update!(**args)
8996
+ end
8997
+
8998
+ # Update properties of this object
8999
+ def update!(**args)
9000
+ @ca_certs = args[:ca_certs] if args.key?(:ca_certs)
9001
+ end
9002
+ end
9003
+
9004
+ # The CA certificate.
9005
+ class GoogleCloudDialogflowCxV3ToolTlsConfigCaCert
9006
+ include Google::Apis::Core::Hashable
9007
+
9008
+ # Required. The allowed custom CA certificates (in DER format) for HTTPS
9009
+ # verification. This overrides the default SSL trust store. If this is empty or
9010
+ # unspecified, Dialogflow will use Google's default trust store to verify
9011
+ # certificates. N.B. Make sure the HTTPS server certificates are signed with "
9012
+ # subject alt name". For instance a certificate can be self-signed using the
9013
+ # following command: ``` openssl x509 -req -days 200 -in example.com.csr \ -
9014
+ # signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\
9015
+ # nsubjectAltName='DNS:www.example.com'") ```
9016
+ # Corresponds to the JSON property `cert`
9017
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
9018
+ # @return [String]
9019
+ attr_accessor :cert
9020
+
9021
+ # Required. The name of the allowed custom CA certificates. This can be used to
9022
+ # disambiguate the custom CA certificates.
9023
+ # Corresponds to the JSON property `displayName`
9024
+ # @return [String]
9025
+ attr_accessor :display_name
9026
+
9027
+ def initialize(**args)
9028
+ update!(**args)
9029
+ end
9030
+
9031
+ # Update properties of this object
9032
+ def update!(**args)
9033
+ @cert = args[:cert] if args.key?(:cert)
9034
+ @display_name = args[:display_name] if args.key?(:display_name)
9035
+ end
9036
+ end
9037
+
9038
+ # Stores metadata of the invocation of an action supported by a tool.
9039
+ class GoogleCloudDialogflowCxV3ToolUse
9040
+ include Google::Apis::Core::Hashable
9041
+
9042
+ # Optional. Name of the action to be called during the tool use.
9043
+ # Corresponds to the JSON property `action`
9044
+ # @return [String]
9045
+ attr_accessor :action
9046
+
9047
+ # Output only. The display name of the tool.
9048
+ # Corresponds to the JSON property `displayName`
9049
+ # @return [String]
9050
+ attr_accessor :display_name
9051
+
9052
+ # Optional. A list of input parameters for the action.
9053
+ # Corresponds to the JSON property `inputActionParameters`
9054
+ # @return [Hash<String,Object>]
9055
+ attr_accessor :input_action_parameters
9056
+
9057
+ # Optional. A list of output parameters generated by the action.
9058
+ # Corresponds to the JSON property `outputActionParameters`
9059
+ # @return [Hash<String,Object>]
9060
+ attr_accessor :output_action_parameters
9061
+
9062
+ # Required. The tool that should be used. Format: `projects//locations//agents//
9063
+ # tools/`.
9064
+ # Corresponds to the JSON property `tool`
9065
+ # @return [String]
9066
+ attr_accessor :tool
9067
+
9068
+ def initialize(**args)
9069
+ update!(**args)
9070
+ end
9071
+
9072
+ # Update properties of this object
9073
+ def update!(**args)
9074
+ @action = args[:action] if args.key?(:action)
9075
+ @display_name = args[:display_name] if args.key?(:display_name)
9076
+ @input_action_parameters = args[:input_action_parameters] if args.key?(:input_action_parameters)
9077
+ @output_action_parameters = args[:output_action_parameters] if args.key?(:output_action_parameters)
9078
+ @tool = args[:tool] if args.key?(:tool)
9079
+ end
9080
+ end
9081
+
9082
+ # The request message for Flows.TrainFlow.
9083
+ class GoogleCloudDialogflowCxV3TrainFlowRequest
9084
+ include Google::Apis::Core::Hashable
9085
+
9086
+ def initialize(**args)
9087
+ update!(**args)
9088
+ end
9089
+
9090
+ # Update properties of this object
9091
+ def update!(**args)
9092
+ end
9093
+ end
9094
+
9095
+ # Transition coverage represents the percentage of all possible page transitions
9096
+ # (page-level transition routes and event handlers, excluding transition route
9097
+ # groups) present within any of a parent's test cases.
9098
+ class GoogleCloudDialogflowCxV3TransitionCoverage
9099
+ include Google::Apis::Core::Hashable
9100
+
9101
+ # The percent of transitions in the agent that are covered.
9102
+ # Corresponds to the JSON property `coverageScore`
9103
+ # @return [Float]
9104
+ attr_accessor :coverage_score
9105
+
9106
+ # The list of Transitions present in the agent.
9107
+ # Corresponds to the JSON property `transitions`
9108
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3TransitionCoverageTransition>]
9109
+ attr_accessor :transitions
9110
+
9111
+ def initialize(**args)
9112
+ update!(**args)
9113
+ end
9114
+
9115
+ # Update properties of this object
9116
+ def update!(**args)
9117
+ @coverage_score = args[:coverage_score] if args.key?(:coverage_score)
9118
+ @transitions = args[:transitions] if args.key?(:transitions)
9119
+ end
9120
+ end
9121
+
9122
+ # A transition in a page.
7772
9123
  class GoogleCloudDialogflowCxV3TransitionCoverageTransition
7773
9124
  include Google::Apis::Core::Hashable
7774
9125
 
@@ -8164,6 +9515,25 @@ module Google
8164
9515
  end
8165
9516
  end
8166
9517
 
9518
+ # UserUtterance represents one message sent by the customer.
9519
+ class GoogleCloudDialogflowCxV3UserUtterance
9520
+ include Google::Apis::Core::Hashable
9521
+
9522
+ # Required. Message content in text.
9523
+ # Corresponds to the JSON property `text`
9524
+ # @return [String]
9525
+ attr_accessor :text
9526
+
9527
+ def initialize(**args)
9528
+ update!(**args)
9529
+ end
9530
+
9531
+ # Update properties of this object
9532
+ def update!(**args)
9533
+ @text = args[:text] if args.key?(:text)
9534
+ end
9535
+ end
9536
+
8167
9537
  # The request message for Agents.ValidateAgent.
8168
9538
  class GoogleCloudDialogflowCxV3ValidateAgentRequest
8169
9539
  include Google::Apis::Core::Hashable
@@ -8516,6 +9886,22 @@ module Google
8516
9886
  # @return [Hash<String,String>]
8517
9887
  attr_accessor :request_headers
8518
9888
 
9889
+ # Optional. The SecretManager secret version resource storing the username:
9890
+ # password pair for HTTP Basic authentication. Format: `projects/`project`/
9891
+ # secrets/`secret`/versions/`version``
9892
+ # Corresponds to the JSON property `secretVersionForUsernamePassword`
9893
+ # @return [String]
9894
+ attr_accessor :secret_version_for_username_password
9895
+
9896
+ # Optional. The HTTP request headers to send together with webhook requests.
9897
+ # Header values are stored in SecretManager secret versions. When the same
9898
+ # header name is specified in both `request_headers` and `
9899
+ # secret_versions_for_request_headers`, the value in `
9900
+ # secret_versions_for_request_headers` will be used.
9901
+ # Corresponds to the JSON property `secretVersionsForRequestHeaders`
9902
+ # @return [Hash<String,Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3WebhookGenericWebServiceSecretVersionHeaderValue>]
9903
+ attr_accessor :secret_versions_for_request_headers
9904
+
8519
9905
  # Optional. Indicate the auth token type generated from the [Diglogflow service
8520
9906
  # agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-
8521
9907
  # agent). The generated token is sent in the Authorization header.
@@ -8552,6 +9938,8 @@ module Google
8552
9938
  @password = args[:password] if args.key?(:password)
8553
9939
  @request_body = args[:request_body] if args.key?(:request_body)
8554
9940
  @request_headers = args[:request_headers] if args.key?(:request_headers)
9941
+ @secret_version_for_username_password = args[:secret_version_for_username_password] if args.key?(:secret_version_for_username_password)
9942
+ @secret_versions_for_request_headers = args[:secret_versions_for_request_headers] if args.key?(:secret_versions_for_request_headers)
8555
9943
  @service_agent_auth = args[:service_agent_auth] if args.key?(:service_agent_auth)
8556
9944
  @uri = args[:uri] if args.key?(:uri)
8557
9945
  @username = args[:username] if args.key?(:username)
@@ -8579,11 +9967,43 @@ module Google
8579
9967
  # @return [Array<String>]
8580
9968
  attr_accessor :scopes
8581
9969
 
9970
+ # Optional. The name of the SecretManager secret version resource storing the
9971
+ # client secret. If this field is set, the `client_secret` field will be ignored.
9972
+ # Format: `projects/`project`/secrets/`secret`/versions/`version``
9973
+ # Corresponds to the JSON property `secretVersionForClientSecret`
9974
+ # @return [String]
9975
+ attr_accessor :secret_version_for_client_secret
9976
+
8582
9977
  # Required. The token endpoint provided by the 3rd party platform to exchange an
8583
9978
  # access token.
8584
9979
  # Corresponds to the JSON property `tokenEndpoint`
8585
9980
  # @return [String]
8586
- attr_accessor :token_endpoint
9981
+ attr_accessor :token_endpoint
9982
+
9983
+ def initialize(**args)
9984
+ update!(**args)
9985
+ end
9986
+
9987
+ # Update properties of this object
9988
+ def update!(**args)
9989
+ @client_id = args[:client_id] if args.key?(:client_id)
9990
+ @client_secret = args[:client_secret] if args.key?(:client_secret)
9991
+ @scopes = args[:scopes] if args.key?(:scopes)
9992
+ @secret_version_for_client_secret = args[:secret_version_for_client_secret] if args.key?(:secret_version_for_client_secret)
9993
+ @token_endpoint = args[:token_endpoint] if args.key?(:token_endpoint)
9994
+ end
9995
+ end
9996
+
9997
+ # Represents the value of an HTTP header stored in a SecretManager secret
9998
+ # version.
9999
+ class GoogleCloudDialogflowCxV3WebhookGenericWebServiceSecretVersionHeaderValue
10000
+ include Google::Apis::Core::Hashable
10001
+
10002
+ # Required. The SecretManager secret version resource storing the header value.
10003
+ # Format: `projects/`project`/secrets/`secret`/versions/`version``
10004
+ # Corresponds to the JSON property `secretVersion`
10005
+ # @return [String]
10006
+ attr_accessor :secret_version
8587
10007
 
8588
10008
  def initialize(**args)
8589
10009
  update!(**args)
@@ -8591,10 +10011,7 @@ module Google
8591
10011
 
8592
10012
  # Update properties of this object
8593
10013
  def update!(**args)
8594
- @client_id = args[:client_id] if args.key?(:client_id)
8595
- @client_secret = args[:client_secret] if args.key?(:client_secret)
8596
- @scopes = args[:scopes] if args.key?(:scopes)
8597
- @token_endpoint = args[:token_endpoint] if args.key?(:token_endpoint)
10014
+ @secret_version = args[:secret_version] if args.key?(:secret_version)
8598
10015
  end
8599
10016
  end
8600
10017
 
@@ -12349,6 +13766,22 @@ module Google
12349
13766
  # @return [Hash<String,String>]
12350
13767
  attr_accessor :request_headers
12351
13768
 
13769
+ # Optional. The SecretManager secret version resource storing the username:
13770
+ # password pair for HTTP Basic authentication. Format: `projects/`project`/
13771
+ # secrets/`secret`/versions/`version``
13772
+ # Corresponds to the JSON property `secretVersionForUsernamePassword`
13773
+ # @return [String]
13774
+ attr_accessor :secret_version_for_username_password
13775
+
13776
+ # Optional. The HTTP request headers to send together with webhook requests.
13777
+ # Header values are stored in SecretManager secret versions. When the same
13778
+ # header name is specified in both `request_headers` and `
13779
+ # secret_versions_for_request_headers`, the value in `
13780
+ # secret_versions_for_request_headers` will be used.
13781
+ # Corresponds to the JSON property `secretVersionsForRequestHeaders`
13782
+ # @return [Hash<String,Google::Apis::DialogflowV3::GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceSecretVersionHeaderValue>]
13783
+ attr_accessor :secret_versions_for_request_headers
13784
+
12352
13785
  # Optional. Indicate the auth token type generated from the [Diglogflow service
12353
13786
  # agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-
12354
13787
  # agent). The generated token is sent in the Authorization header.
@@ -12385,6 +13818,8 @@ module Google
12385
13818
  @password = args[:password] if args.key?(:password)
12386
13819
  @request_body = args[:request_body] if args.key?(:request_body)
12387
13820
  @request_headers = args[:request_headers] if args.key?(:request_headers)
13821
+ @secret_version_for_username_password = args[:secret_version_for_username_password] if args.key?(:secret_version_for_username_password)
13822
+ @secret_versions_for_request_headers = args[:secret_versions_for_request_headers] if args.key?(:secret_versions_for_request_headers)
12388
13823
  @service_agent_auth = args[:service_agent_auth] if args.key?(:service_agent_auth)
12389
13824
  @uri = args[:uri] if args.key?(:uri)
12390
13825
  @username = args[:username] if args.key?(:username)
@@ -12412,6 +13847,13 @@ module Google
12412
13847
  # @return [Array<String>]
12413
13848
  attr_accessor :scopes
12414
13849
 
13850
+ # Optional. The name of the SecretManager secret version resource storing the
13851
+ # client secret. If this field is set, the `client_secret` field will be ignored.
13852
+ # Format: `projects/`project`/secrets/`secret`/versions/`version``
13853
+ # Corresponds to the JSON property `secretVersionForClientSecret`
13854
+ # @return [String]
13855
+ attr_accessor :secret_version_for_client_secret
13856
+
12415
13857
  # Required. The token endpoint provided by the 3rd party platform to exchange an
12416
13858
  # access token.
12417
13859
  # Corresponds to the JSON property `tokenEndpoint`
@@ -12427,10 +13869,32 @@ module Google
12427
13869
  @client_id = args[:client_id] if args.key?(:client_id)
12428
13870
  @client_secret = args[:client_secret] if args.key?(:client_secret)
12429
13871
  @scopes = args[:scopes] if args.key?(:scopes)
13872
+ @secret_version_for_client_secret = args[:secret_version_for_client_secret] if args.key?(:secret_version_for_client_secret)
12430
13873
  @token_endpoint = args[:token_endpoint] if args.key?(:token_endpoint)
12431
13874
  end
12432
13875
  end
12433
13876
 
13877
+ # Represents the value of an HTTP header stored in a SecretManager secret
13878
+ # version.
13879
+ class GoogleCloudDialogflowCxV3beta1WebhookGenericWebServiceSecretVersionHeaderValue
13880
+ include Google::Apis::Core::Hashable
13881
+
13882
+ # Required. The SecretManager secret version resource storing the header value.
13883
+ # Format: `projects/`project`/secrets/`secret`/versions/`version``
13884
+ # Corresponds to the JSON property `secretVersion`
13885
+ # @return [String]
13886
+ attr_accessor :secret_version
13887
+
13888
+ def initialize(**args)
13889
+ update!(**args)
13890
+ end
13891
+
13892
+ # Update properties of this object
13893
+ def update!(**args)
13894
+ @secret_version = args[:secret_version] if args.key?(:secret_version)
13895
+ end
13896
+ end
13897
+
12434
13898
  # The request message for a webhook call. The request is sent as a JSON object
12435
13899
  # and the field names will be presented in camel cases. You may see undocumented
12436
13900
  # fields in an actual request. These fields are used internally by Dialogflow
@@ -13709,6 +15173,11 @@ module Google
13709
15173
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2SummarySuggestion]
13710
15174
  attr_accessor :summary_suggestion
13711
15175
 
15176
+ # Optional. List of request and response for tool calls executed.
15177
+ # Corresponds to the JSON property `toolCallInfo`
15178
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowV2GeneratorSuggestionToolCallInfo>]
15179
+ attr_accessor :tool_call_info
15180
+
13712
15181
  def initialize(**args)
13713
15182
  update!(**args)
13714
15183
  end
@@ -13717,6 +15186,32 @@ module Google
13717
15186
  def update!(**args)
13718
15187
  @free_form_suggestion = args[:free_form_suggestion] if args.key?(:free_form_suggestion)
13719
15188
  @summary_suggestion = args[:summary_suggestion] if args.key?(:summary_suggestion)
15189
+ @tool_call_info = args[:tool_call_info] if args.key?(:tool_call_info)
15190
+ end
15191
+ end
15192
+
15193
+ # Request and response for a tool call.
15194
+ class GoogleCloudDialogflowV2GeneratorSuggestionToolCallInfo
15195
+ include Google::Apis::Core::Hashable
15196
+
15197
+ # Represents a call of a specific tool's action with the specified inputs.
15198
+ # Corresponds to the JSON property `toolCall`
15199
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2ToolCall]
15200
+ attr_accessor :tool_call
15201
+
15202
+ # The result of calling a tool's action.
15203
+ # Corresponds to the JSON property `toolCallResult`
15204
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2ToolCallResult]
15205
+ attr_accessor :tool_call_result
15206
+
15207
+ def initialize(**args)
15208
+ update!(**args)
15209
+ end
15210
+
15211
+ # Update properties of this object
15212
+ def update!(**args)
15213
+ @tool_call = args[:tool_call] if args.key?(:tool_call)
15214
+ @tool_call_result = args[:tool_call_result] if args.key?(:tool_call_result)
13720
15215
  end
13721
15216
  end
13722
15217
 
@@ -16206,6 +17701,115 @@ module Google
16206
17701
  end
16207
17702
  end
16208
17703
 
17704
+ # Represents a call of a specific tool's action with the specified inputs.
17705
+ class GoogleCloudDialogflowV2ToolCall
17706
+ include Google::Apis::Core::Hashable
17707
+
17708
+ # Required. The name of the tool's action associated with this call.
17709
+ # Corresponds to the JSON property `action`
17710
+ # @return [String]
17711
+ attr_accessor :action
17712
+
17713
+ # Output only. Create time of the tool call.
17714
+ # Corresponds to the JSON property `createTime`
17715
+ # @return [String]
17716
+ attr_accessor :create_time
17717
+
17718
+ # Optional. The action's input parameters.
17719
+ # Corresponds to the JSON property `inputParameters`
17720
+ # @return [Hash<String,Object>]
17721
+ attr_accessor :input_parameters
17722
+
17723
+ # Required. The tool associated with this call. Format: `projects//locations//
17724
+ # tools/`.
17725
+ # Corresponds to the JSON property `tool`
17726
+ # @return [String]
17727
+ attr_accessor :tool
17728
+
17729
+ def initialize(**args)
17730
+ update!(**args)
17731
+ end
17732
+
17733
+ # Update properties of this object
17734
+ def update!(**args)
17735
+ @action = args[:action] if args.key?(:action)
17736
+ @create_time = args[:create_time] if args.key?(:create_time)
17737
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
17738
+ @tool = args[:tool] if args.key?(:tool)
17739
+ end
17740
+ end
17741
+
17742
+ # The result of calling a tool's action.
17743
+ class GoogleCloudDialogflowV2ToolCallResult
17744
+ include Google::Apis::Core::Hashable
17745
+
17746
+ # Required. The name of the tool's action associated with this call.
17747
+ # Corresponds to the JSON property `action`
17748
+ # @return [String]
17749
+ attr_accessor :action
17750
+
17751
+ # Only populated if the response content is utf-8 encoded.
17752
+ # Corresponds to the JSON property `content`
17753
+ # @return [String]
17754
+ attr_accessor :content
17755
+
17756
+ # Output only. Create time of the tool call result.
17757
+ # Corresponds to the JSON property `createTime`
17758
+ # @return [String]
17759
+ attr_accessor :create_time
17760
+
17761
+ # An error produced by the tool call.
17762
+ # Corresponds to the JSON property `error`
17763
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2ToolCallResultError]
17764
+ attr_accessor :error
17765
+
17766
+ # Only populated if the response content is not utf-8 encoded. (by definition
17767
+ # byte fields are base64 encoded).
17768
+ # Corresponds to the JSON property `rawContent`
17769
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
17770
+ # @return [String]
17771
+ attr_accessor :raw_content
17772
+
17773
+ # Required. The tool associated with this call. Format: `projects//locations//
17774
+ # tools/`.
17775
+ # Corresponds to the JSON property `tool`
17776
+ # @return [String]
17777
+ attr_accessor :tool
17778
+
17779
+ def initialize(**args)
17780
+ update!(**args)
17781
+ end
17782
+
17783
+ # Update properties of this object
17784
+ def update!(**args)
17785
+ @action = args[:action] if args.key?(:action)
17786
+ @content = args[:content] if args.key?(:content)
17787
+ @create_time = args[:create_time] if args.key?(:create_time)
17788
+ @error = args[:error] if args.key?(:error)
17789
+ @raw_content = args[:raw_content] if args.key?(:raw_content)
17790
+ @tool = args[:tool] if args.key?(:tool)
17791
+ end
17792
+ end
17793
+
17794
+ # An error produced by the tool call.
17795
+ class GoogleCloudDialogflowV2ToolCallResultError
17796
+ include Google::Apis::Core::Hashable
17797
+
17798
+ # Optional. The error message of the function.
17799
+ # Corresponds to the JSON property `message`
17800
+ # @return [String]
17801
+ attr_accessor :message
17802
+
17803
+ def initialize(**args)
17804
+ update!(**args)
17805
+ end
17806
+
17807
+ # Update properties of this object
17808
+ def update!(**args)
17809
+ @message = args[:message] if args.key?(:message)
17810
+ end
17811
+ end
17812
+
16209
17813
  # Metadata for a ConversationModels.UndeployConversationModel operation.
16210
17814
  class GoogleCloudDialogflowV2UndeployConversationModelOperationMetadata
16211
17815
  include Google::Apis::Core::Hashable
@@ -17069,6 +18673,11 @@ module Google
17069
18673
  # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2beta1SummarySuggestion]
17070
18674
  attr_accessor :summary_suggestion
17071
18675
 
18676
+ # Optional. List of request and response for tool calls executed.
18677
+ # Corresponds to the JSON property `toolCallInfo`
18678
+ # @return [Array<Google::Apis::DialogflowV3::GoogleCloudDialogflowV2beta1GeneratorSuggestionToolCallInfo>]
18679
+ attr_accessor :tool_call_info
18680
+
17072
18681
  def initialize(**args)
17073
18682
  update!(**args)
17074
18683
  end
@@ -17077,6 +18686,32 @@ module Google
17077
18686
  def update!(**args)
17078
18687
  @free_form_suggestion = args[:free_form_suggestion] if args.key?(:free_form_suggestion)
17079
18688
  @summary_suggestion = args[:summary_suggestion] if args.key?(:summary_suggestion)
18689
+ @tool_call_info = args[:tool_call_info] if args.key?(:tool_call_info)
18690
+ end
18691
+ end
18692
+
18693
+ # Request and response for a tool call.
18694
+ class GoogleCloudDialogflowV2beta1GeneratorSuggestionToolCallInfo
18695
+ include Google::Apis::Core::Hashable
18696
+
18697
+ # Represents a call of a specific tool's action with the specified inputs.
18698
+ # Corresponds to the JSON property `toolCall`
18699
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2beta1ToolCall]
18700
+ attr_accessor :tool_call
18701
+
18702
+ # The result of calling a tool's action.
18703
+ # Corresponds to the JSON property `toolCallResult`
18704
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2beta1ToolCallResult]
18705
+ attr_accessor :tool_call_result
18706
+
18707
+ def initialize(**args)
18708
+ update!(**args)
18709
+ end
18710
+
18711
+ # Update properties of this object
18712
+ def update!(**args)
18713
+ @tool_call = args[:tool_call] if args.key?(:tool_call)
18714
+ @tool_call_result = args[:tool_call_result] if args.key?(:tool_call_result)
17080
18715
  end
17081
18716
  end
17082
18717
 
@@ -20350,6 +21985,115 @@ module Google
20350
21985
  end
20351
21986
  end
20352
21987
 
21988
+ # Represents a call of a specific tool's action with the specified inputs.
21989
+ class GoogleCloudDialogflowV2beta1ToolCall
21990
+ include Google::Apis::Core::Hashable
21991
+
21992
+ # Required. The name of the tool's action associated with this call.
21993
+ # Corresponds to the JSON property `action`
21994
+ # @return [String]
21995
+ attr_accessor :action
21996
+
21997
+ # Output only. Create time of the tool call.
21998
+ # Corresponds to the JSON property `createTime`
21999
+ # @return [String]
22000
+ attr_accessor :create_time
22001
+
22002
+ # Optional. The action's input parameters.
22003
+ # Corresponds to the JSON property `inputParameters`
22004
+ # @return [Hash<String,Object>]
22005
+ attr_accessor :input_parameters
22006
+
22007
+ # Required. The tool associated with this call. Format: `projects//locations//
22008
+ # tools/`.
22009
+ # Corresponds to the JSON property `tool`
22010
+ # @return [String]
22011
+ attr_accessor :tool
22012
+
22013
+ def initialize(**args)
22014
+ update!(**args)
22015
+ end
22016
+
22017
+ # Update properties of this object
22018
+ def update!(**args)
22019
+ @action = args[:action] if args.key?(:action)
22020
+ @create_time = args[:create_time] if args.key?(:create_time)
22021
+ @input_parameters = args[:input_parameters] if args.key?(:input_parameters)
22022
+ @tool = args[:tool] if args.key?(:tool)
22023
+ end
22024
+ end
22025
+
22026
+ # The result of calling a tool's action.
22027
+ class GoogleCloudDialogflowV2beta1ToolCallResult
22028
+ include Google::Apis::Core::Hashable
22029
+
22030
+ # Required. The name of the tool's action associated with this call.
22031
+ # Corresponds to the JSON property `action`
22032
+ # @return [String]
22033
+ attr_accessor :action
22034
+
22035
+ # Only populated if the response content is utf-8 encoded.
22036
+ # Corresponds to the JSON property `content`
22037
+ # @return [String]
22038
+ attr_accessor :content
22039
+
22040
+ # Output only. Create time of the tool call result.
22041
+ # Corresponds to the JSON property `createTime`
22042
+ # @return [String]
22043
+ attr_accessor :create_time
22044
+
22045
+ # An error produced by the tool call.
22046
+ # Corresponds to the JSON property `error`
22047
+ # @return [Google::Apis::DialogflowV3::GoogleCloudDialogflowV2beta1ToolCallResultError]
22048
+ attr_accessor :error
22049
+
22050
+ # Only populated if the response content is not utf-8 encoded. (by definition
22051
+ # byte fields are base64 encoded).
22052
+ # Corresponds to the JSON property `rawContent`
22053
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
22054
+ # @return [String]
22055
+ attr_accessor :raw_content
22056
+
22057
+ # Required. The tool associated with this call. Format: `projects//locations//
22058
+ # tools/`.
22059
+ # Corresponds to the JSON property `tool`
22060
+ # @return [String]
22061
+ attr_accessor :tool
22062
+
22063
+ def initialize(**args)
22064
+ update!(**args)
22065
+ end
22066
+
22067
+ # Update properties of this object
22068
+ def update!(**args)
22069
+ @action = args[:action] if args.key?(:action)
22070
+ @content = args[:content] if args.key?(:content)
22071
+ @create_time = args[:create_time] if args.key?(:create_time)
22072
+ @error = args[:error] if args.key?(:error)
22073
+ @raw_content = args[:raw_content] if args.key?(:raw_content)
22074
+ @tool = args[:tool] if args.key?(:tool)
22075
+ end
22076
+ end
22077
+
22078
+ # An error produced by the tool call.
22079
+ class GoogleCloudDialogflowV2beta1ToolCallResultError
22080
+ include Google::Apis::Core::Hashable
22081
+
22082
+ # Optional. The error message of the function.
22083
+ # Corresponds to the JSON property `message`
22084
+ # @return [String]
22085
+ attr_accessor :message
22086
+
22087
+ def initialize(**args)
22088
+ update!(**args)
22089
+ end
22090
+
22091
+ # Update properties of this object
22092
+ def update!(**args)
22093
+ @message = args[:message] if args.key?(:message)
22094
+ end
22095
+ end
22096
+
20353
22097
  # The request message for a webhook call.
20354
22098
  class GoogleCloudDialogflowV2beta1WebhookRequest
20355
22099
  include Google::Apis::Core::Hashable