1// Copyright 2023 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15syntax = "proto3"; 16 17package google.cloud.dialogflow.cx.v3beta1; 18 19import "google/api/annotations.proto"; 20import "google/api/client.proto"; 21import "google/api/field_behavior.proto"; 22import "google/api/resource.proto"; 23import "google/cloud/dialogflow/cx/v3beta1/advanced_settings.proto"; 24import "google/cloud/dialogflow/cx/v3beta1/audio_config.proto"; 25import "google/cloud/dialogflow/cx/v3beta1/flow.proto"; 26import "google/cloud/dialogflow/cx/v3beta1/generative_settings.proto"; 27import "google/longrunning/operations.proto"; 28import "google/protobuf/empty.proto"; 29import "google/protobuf/field_mask.proto"; 30import "google/protobuf/struct.proto"; 31 32option cc_enable_arenas = true; 33option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3Beta1"; 34option go_package = "cloud.google.com/go/dialogflow/cx/apiv3beta1/cxpb;cxpb"; 35option java_multiple_files = true; 36option java_outer_classname = "AgentProto"; 37option java_package = "com.google.cloud.dialogflow.cx.v3beta1"; 38option objc_class_prefix = "DF"; 39option ruby_package = "Google::Cloud::Dialogflow::CX::V3beta1"; 40 41// Service for managing [Agents][google.cloud.dialogflow.cx.v3beta1.Agent]. 42service Agents { 43 option (google.api.default_host) = "dialogflow.googleapis.com"; 44 option (google.api.oauth_scopes) = 45 "https://www.googleapis.com/auth/cloud-platform," 46 "https://www.googleapis.com/auth/dialogflow"; 47 48 // Returns the list of all agents in the specified location. 49 rpc ListAgents(ListAgentsRequest) returns (ListAgentsResponse) { 50 option (google.api.http) = { 51 get: "/v3beta1/{parent=projects/*/locations/*}/agents" 52 }; 53 option (google.api.method_signature) = "parent"; 54 } 55 56 // Retrieves the specified agent. 57 rpc GetAgent(GetAgentRequest) returns (Agent) { 58 option (google.api.http) = { 59 get: "/v3beta1/{name=projects/*/locations/*/agents/*}" 60 }; 61 option (google.api.method_signature) = "name"; 62 } 63 64 // Creates an agent in the specified location. 65 // 66 // Note: You should always train a flow prior to sending it queries. See the 67 // [training 68 // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). 69 rpc CreateAgent(CreateAgentRequest) returns (Agent) { 70 option (google.api.http) = { 71 post: "/v3beta1/{parent=projects/*/locations/*}/agents" 72 body: "agent" 73 }; 74 option (google.api.method_signature) = "parent,agent"; 75 } 76 77 // Updates the specified agent. 78 // 79 // Note: You should always train a flow prior to sending it queries. See the 80 // [training 81 // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). 82 rpc UpdateAgent(UpdateAgentRequest) returns (Agent) { 83 option (google.api.http) = { 84 patch: "/v3beta1/{agent.name=projects/*/locations/*/agents/*}" 85 body: "agent" 86 }; 87 option (google.api.method_signature) = "agent,update_mask"; 88 } 89 90 // Deletes the specified agent. 91 rpc DeleteAgent(DeleteAgentRequest) returns (google.protobuf.Empty) { 92 option (google.api.http) = { 93 delete: "/v3beta1/{name=projects/*/locations/*/agents/*}" 94 }; 95 option (google.api.method_signature) = "name"; 96 } 97 98 // Exports the specified agent to a binary file. 99 // 100 // This method is a [long-running 101 // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). 102 // The returned `Operation` type has the following method-specific fields: 103 // 104 // - `metadata`: An empty [Struct 105 // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) 106 // - `response`: 107 // [ExportAgentResponse][google.cloud.dialogflow.cx.v3beta1.ExportAgentResponse] 108 rpc ExportAgent(ExportAgentRequest) returns (google.longrunning.Operation) { 109 option (google.api.http) = { 110 post: "/v3beta1/{name=projects/*/locations/*/agents/*}:export" 111 body: "*" 112 }; 113 option (google.longrunning.operation_info) = { 114 response_type: "ExportAgentResponse" 115 metadata_type: "google.protobuf.Struct" 116 }; 117 } 118 119 // Restores the specified agent from a binary file. 120 // 121 // Replaces the current agent with a new one. Note that all existing resources 122 // in agent (e.g. intents, entity types, flows) will be removed. 123 // 124 // This method is a [long-running 125 // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). 126 // The returned `Operation` type has the following method-specific fields: 127 // 128 // - `metadata`: An empty [Struct 129 // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) 130 // - `response`: An [Empty 131 // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 132 // 133 // Note: You should always train a flow prior to sending it queries. See the 134 // [training 135 // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). 136 rpc RestoreAgent(RestoreAgentRequest) returns (google.longrunning.Operation) { 137 option (google.api.http) = { 138 post: "/v3beta1/{name=projects/*/locations/*/agents/*}:restore" 139 body: "*" 140 }; 141 option (google.longrunning.operation_info) = { 142 response_type: "google.protobuf.Empty" 143 metadata_type: "google.protobuf.Struct" 144 }; 145 } 146 147 // Validates the specified agent and creates or updates validation results. 148 // The agent in draft version is validated. Please call this API after the 149 // training is completed to get the complete validation results. 150 rpc ValidateAgent(ValidateAgentRequest) returns (AgentValidationResult) { 151 option (google.api.http) = { 152 post: "/v3beta1/{name=projects/*/locations/*/agents/*}:validate" 153 body: "*" 154 }; 155 } 156 157 // Gets the latest agent validation result. Agent validation is performed 158 // when ValidateAgent is called. 159 rpc GetAgentValidationResult(GetAgentValidationResultRequest) 160 returns (AgentValidationResult) { 161 option (google.api.http) = { 162 get: "/v3beta1/{name=projects/*/locations/*/agents/*/validationResult}" 163 }; 164 option (google.api.method_signature) = "name"; 165 } 166 167 // Gets the generative settings for the agent. 168 rpc GetGenerativeSettings(GetGenerativeSettingsRequest) 169 returns (GenerativeSettings) { 170 option (google.api.http) = { 171 get: "/v3beta1/{name=projects/*/locations/*/agents/*/generativeSettings}" 172 }; 173 option (google.api.method_signature) = "name,language_code"; 174 } 175 176 // Updates the generative settings for the agent. 177 rpc UpdateGenerativeSettings(UpdateGenerativeSettingsRequest) 178 returns (GenerativeSettings) { 179 option (google.api.http) = { 180 patch: "/v3beta1/{generative_settings.name=projects/*/locations/*/agents/*/generativeSettings}" 181 body: "generative_settings" 182 }; 183 option (google.api.method_signature) = "generative_settings,update_mask"; 184 } 185} 186 187// Settings related to speech recognition. 188message SpeechToTextSettings { 189 // Whether to use speech adaptation for speech recognition. 190 bool enable_speech_adaptation = 1; 191} 192 193// Agents are best described as Natural Language Understanding (NLU) modules 194// that transform user requests into actionable data. You can include agents 195// in your app, product, or service to determine user intent and respond to the 196// user in a natural way. 197// 198// After you create an agent, you can add 199// [Intents][google.cloud.dialogflow.cx.v3beta1.Intent], [Entity 200// Types][google.cloud.dialogflow.cx.v3beta1.EntityType], 201// [Flows][google.cloud.dialogflow.cx.v3beta1.Flow], 202// [Fulfillments][google.cloud.dialogflow.cx.v3beta1.Fulfillment], 203// [Webhooks][google.cloud.dialogflow.cx.v3beta1.Webhook], 204// [TransitionRouteGroups][google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroup] 205// and so on to manage the conversation flows. 206message Agent { 207 option (google.api.resource) = { 208 type: "dialogflow.googleapis.com/Agent" 209 pattern: "projects/{project}/locations/{location}/agents/{agent}" 210 }; 211 212 // Settings for connecting to Git repository for an agent. 213 message GitIntegrationSettings { 214 // Settings of integration with GitHub. 215 message GithubSettings { 216 // The unique repository display name for the GitHub repository. 217 string display_name = 1; 218 219 // The GitHub repository URI related to the agent. 220 string repository_uri = 2; 221 222 // The branch of the GitHub repository tracked for this agent. 223 string tracking_branch = 3; 224 225 // The access token used to authenticate the access to the GitHub 226 // repository. 227 string access_token = 4; 228 229 // A list of branches configured to be used from Dialogflow. 230 repeated string branches = 5; 231 } 232 233 // The git settings to specific systems. 234 oneof git_settings { 235 // GitHub settings. 236 GithubSettings github_settings = 1; 237 } 238 } 239 240 // Settings for Gen App Builder. 241 message GenAppBuilderSettings { 242 // Required. The full name of the Gen App Builder engine related to this 243 // agent if there is one. Format: `projects/{Project ID}/locations/{Location 244 // ID}/collections/{Collection ID}/engines/{Engine ID}` 245 string engine = 1 [(google.api.field_behavior) = REQUIRED]; 246 } 247 248 // Settings for answer feedback collection. 249 message AnswerFeedbackSettings { 250 // Optional. If enabled, end users will be able to provide 251 // [answer feedback][google.cloud.dialogflow.cx.v3beta1.AnswerFeedback] to 252 // Dialogflow responses. Feature works only if interaction logging is 253 // enabled in the Dialogflow agent. 254 bool enable_answer_feedback = 1 [(google.api.field_behavior) = OPTIONAL]; 255 } 256 257 // Settings for end user personalization. 258 message PersonalizationSettings { 259 // Optional. Default end user metadata, used when processing DetectIntent 260 // requests. Recommended to be filled as a template instead of hard-coded 261 // value, for example { "age": "$session.params.age" }. The data will be 262 // merged with the 263 // [QueryParameters.end_user_metadata][google.cloud.dialogflow.cx.v3beta1.QueryParameters.end_user_metadata] 264 // in 265 // [DetectIntentRequest.query_params][google.cloud.dialogflow.cx.v3beta1.DetectIntentRequest.query_params] 266 // during query processing. 267 google.protobuf.Struct default_end_user_metadata = 1 268 [(google.api.field_behavior) = OPTIONAL]; 269 } 270 271 // The unique identifier of the agent. 272 // Required for the 273 // [Agents.UpdateAgent][google.cloud.dialogflow.cx.v3beta1.Agents.UpdateAgent] 274 // method. 275 // [Agents.CreateAgent][google.cloud.dialogflow.cx.v3beta1.Agents.CreateAgent] 276 // populates the name automatically. 277 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`. 278 string name = 1; 279 280 // Required. The human-readable name of the agent, unique within the location. 281 string display_name = 2 [(google.api.field_behavior) = REQUIRED]; 282 283 // Required. Immutable. The default language of the agent as a language tag. 284 // See [Language 285 // Support](https://cloud.google.com/dialogflow/cx/docs/reference/language) 286 // for a list of the currently supported language codes. 287 // This field cannot be set by the 288 // [Agents.UpdateAgent][google.cloud.dialogflow.cx.v3beta1.Agents.UpdateAgent] 289 // method. 290 string default_language_code = 3 [ 291 (google.api.field_behavior) = REQUIRED, 292 (google.api.field_behavior) = IMMUTABLE 293 ]; 294 295 // The list of all languages supported by the agent (except for the 296 // `default_language_code`). 297 repeated string supported_language_codes = 4; 298 299 // Required. The time zone of the agent from the [time zone 300 // database](https://www.iana.org/time-zones), e.g., America/New_York, 301 // Europe/Paris. 302 string time_zone = 5 [(google.api.field_behavior) = REQUIRED]; 303 304 // The description of the agent. The maximum length is 500 characters. If 305 // exceeded, the request is rejected. 306 string description = 6; 307 308 // The URI of the agent's avatar. Avatars are used throughout the Dialogflow 309 // console and in the self-hosted [Web 310 // Demo](https://cloud.google.com/dialogflow/docs/integrations/web-demo) 311 // integration. 312 string avatar_uri = 7; 313 314 // Speech recognition related settings. 315 SpeechToTextSettings speech_to_text_settings = 13; 316 317 // Immutable. Name of the start flow in this agent. A start flow will be 318 // automatically created when the agent is created, and can only be deleted by 319 // deleting the agent. Format: `projects/<Project ID>/locations/<Location 320 // ID>/agents/<Agent ID>/flows/<Flow ID>`. 321 string start_flow = 16 [ 322 (google.api.field_behavior) = IMMUTABLE, 323 (google.api.resource_reference) = { type: "dialogflow.googleapis.com/Flow" } 324 ]; 325 326 // Optional. Name of the start playbook in this agent. A start playbook will 327 // be automatically created when the agent is created, and can only be deleted 328 // by deleting the agent. 329 // Format: `projects/<Project ID>/locations/<Location 330 // ID>/agents/<Agent ID>/playbooks/<Playbook ID>`. Currently only the 331 // default playbook with id 332 // "00000000-0000-0000-0000-000000000000" is allowed. 333 // 334 // Only one of `start_flow` or `start_playbook` should be set, but not both. 335 string start_playbook = 39 [ 336 (google.api.field_behavior) = OPTIONAL, 337 (google.api.resource_reference) = { 338 type: "dialogflow.googleapis.com/Playbook" 339 } 340 ]; 341 342 // Name of the 343 // [SecuritySettings][google.cloud.dialogflow.cx.v3beta1.SecuritySettings] 344 // reference for the agent. Format: `projects/<Project ID>/locations/<Location 345 // ID>/securitySettings/<Security Settings ID>`. 346 string security_settings = 17 [(google.api.resource_reference) = { 347 type: "dialogflow.googleapis.com/SecuritySettings" 348 }]; 349 350 // Indicates if stackdriver logging is enabled for the agent. 351 // Please use 352 // [agent.advanced_settings][google.cloud.dialogflow.cx.v3beta1.AdvancedSettings.LoggingSettings] 353 // instead. 354 bool enable_stackdriver_logging = 18 [deprecated = true]; 355 356 // Indicates if automatic spell correction is enabled in detect intent 357 // requests. 358 bool enable_spell_correction = 20; 359 360 // Optional. Enable training multi-lingual models for this agent. These models 361 // will be trained on all the languages supported by the agent. 362 bool enable_multi_language_training = 40 363 [(google.api.field_behavior) = OPTIONAL]; 364 365 // Indicates whether the agent is locked for changes. If the agent is locked, 366 // modifications to the agent will be rejected except for [RestoreAgent][]. 367 bool locked = 27; 368 369 // Hierarchical advanced settings for this agent. The settings exposed at the 370 // lower level overrides the settings exposed at the higher level. 371 AdvancedSettings advanced_settings = 22; 372 373 // Git integration settings for this agent. 374 GitIntegrationSettings git_integration_settings = 30; 375 376 // Settings on instructing the speech synthesizer on how to generate the 377 // output audio content. 378 TextToSpeechSettings text_to_speech_settings = 31; 379 380 // Gen App Builder-related agent-level settings. 381 optional GenAppBuilderSettings gen_app_builder_settings = 33; 382 383 // Optional. Answer feedback collection settings. 384 AnswerFeedbackSettings answer_feedback_settings = 38 385 [(google.api.field_behavior) = OPTIONAL]; 386 387 // Optional. Settings for end user personalization. 388 PersonalizationSettings personalization_settings = 42 389 [(google.api.field_behavior) = OPTIONAL]; 390} 391 392// The request message for 393// [Agents.ListAgents][google.cloud.dialogflow.cx.v3beta1.Agents.ListAgents]. 394message ListAgentsRequest { 395 // Required. The location to list all agents for. 396 // Format: `projects/<Project ID>/locations/<Location ID>`. 397 string parent = 1 [ 398 (google.api.field_behavior) = REQUIRED, 399 (google.api.resource_reference) = { 400 child_type: "dialogflow.googleapis.com/Agent" 401 } 402 ]; 403 404 // The maximum number of items to return in a single page. By default 100 and 405 // at most 1000. 406 int32 page_size = 2; 407 408 // The next_page_token value returned from a previous list request. 409 string page_token = 3; 410} 411 412// The response message for 413// [Agents.ListAgents][google.cloud.dialogflow.cx.v3beta1.Agents.ListAgents]. 414message ListAgentsResponse { 415 // The list of agents. There will be a maximum number of items returned based 416 // on the page_size field in the request. 417 repeated Agent agents = 1; 418 419 // Token to retrieve the next page of results, or empty if there are no more 420 // results in the list. 421 string next_page_token = 2; 422} 423 424// The request message for 425// [Agents.GetAgent][google.cloud.dialogflow.cx.v3beta1.Agents.GetAgent]. 426message GetAgentRequest { 427 // Required. The name of the agent. 428 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`. 429 string name = 1 [ 430 (google.api.field_behavior) = REQUIRED, 431 (google.api.resource_reference) = { 432 type: "dialogflow.googleapis.com/Agent" 433 } 434 ]; 435} 436 437// The request message for 438// [Agents.CreateAgent][google.cloud.dialogflow.cx.v3beta1.Agents.CreateAgent]. 439message CreateAgentRequest { 440 // Required. The location to create a agent for. 441 // Format: `projects/<Project ID>/locations/<Location ID>`. 442 string parent = 1 [ 443 (google.api.field_behavior) = REQUIRED, 444 (google.api.resource_reference) = { 445 child_type: "dialogflow.googleapis.com/Agent" 446 } 447 ]; 448 449 // Required. The agent to create. 450 Agent agent = 2 [(google.api.field_behavior) = REQUIRED]; 451} 452 453// The request message for 454// [Agents.UpdateAgent][google.cloud.dialogflow.cx.v3beta1.Agents.UpdateAgent]. 455message UpdateAgentRequest { 456 // Required. The agent to update. 457 Agent agent = 1 [(google.api.field_behavior) = REQUIRED]; 458 459 // The mask to control which fields get updated. If the mask is not present, 460 // all fields will be updated. 461 google.protobuf.FieldMask update_mask = 2; 462} 463 464// The request message for 465// [Agents.DeleteAgent][google.cloud.dialogflow.cx.v3beta1.Agents.DeleteAgent]. 466message DeleteAgentRequest { 467 // Required. The name of the agent to delete. 468 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`. 469 string name = 1 [ 470 (google.api.field_behavior) = REQUIRED, 471 (google.api.resource_reference) = { 472 type: "dialogflow.googleapis.com/Agent" 473 } 474 ]; 475} 476 477// The request message for 478// [Agents.ExportAgent][google.cloud.dialogflow.cx.v3beta1.Agents.ExportAgent]. 479message ExportAgentRequest { 480 // Data format of the exported agent. 481 enum DataFormat { 482 // Unspecified format. 483 DATA_FORMAT_UNSPECIFIED = 0; 484 485 // Agent content will be exported as raw bytes. 486 BLOB = 1; 487 488 // Agent content will be exported in JSON Package format. 489 JSON_PACKAGE = 4; 490 } 491 492 // Settings for exporting to a git branch. 493 message GitDestination { 494 // Tracking branch for the git push. 495 string tracking_branch = 1; 496 497 // Commit message for the git push. 498 string commit_message = 2; 499 } 500 501 // Required. The name of the agent to export. 502 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`. 503 string name = 1 [ 504 (google.api.field_behavior) = REQUIRED, 505 (google.api.resource_reference) = { 506 type: "dialogflow.googleapis.com/Agent" 507 } 508 ]; 509 510 // Optional. The [Google Cloud 511 // Storage](https://cloud.google.com/storage/docs/) URI to export the agent 512 // to. The format of this URI must be `gs://<bucket-name>/<object-name>`. If 513 // left unspecified, the serialized agent is returned inline. 514 // 515 // Dialogflow performs a write operation for the Cloud Storage object 516 // on the caller's behalf, so your request authentication must 517 // have write permissions for the object. For more information, see 518 // [Dialogflow access 519 // control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage). 520 string agent_uri = 2 [(google.api.field_behavior) = OPTIONAL]; 521 522 // Optional. The data format of the exported agent. If not specified, `BLOB` 523 // is assumed. 524 DataFormat data_format = 3 [(google.api.field_behavior) = OPTIONAL]; 525 526 // Optional. Environment name. If not set, draft environment is assumed. 527 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent 528 // ID>/environments/<Environment ID>`. 529 string environment = 5 [ 530 (google.api.field_behavior) = OPTIONAL, 531 (google.api.resource_reference) = { 532 type: "dialogflow.googleapis.com/Environment" 533 } 534 ]; 535 536 // Optional. The Git branch to export the agent to. 537 GitDestination git_destination = 6 [(google.api.field_behavior) = OPTIONAL]; 538 539 // Optional. Whether to include BigQuery Export setting. 540 bool include_bigquery_export_settings = 7 541 [(google.api.field_behavior) = OPTIONAL]; 542} 543 544// The response message for 545// [Agents.ExportAgent][google.cloud.dialogflow.cx.v3beta1.Agents.ExportAgent]. 546message ExportAgentResponse { 547 // The exported agent. 548 oneof agent { 549 // The URI to a file containing the exported agent. This field is populated 550 // if `agent_uri` is specified in 551 // [ExportAgentRequest][google.cloud.dialogflow.cx.v3beta1.ExportAgentRequest]. 552 string agent_uri = 1; 553 554 // Uncompressed raw byte content for agent. This field is populated 555 // if none of `agent_uri` and `git_destination` are specified in 556 // [ExportAgentRequest][google.cloud.dialogflow.cx.v3beta1.ExportAgentRequest]. 557 bytes agent_content = 2; 558 559 // Commit SHA of the git push. This field is populated if 560 // `git_destination` is specified in 561 // [ExportAgentRequest][google.cloud.dialogflow.cx.v3beta1.ExportAgentRequest]. 562 string commit_sha = 3; 563 } 564} 565 566// The request message for 567// [Agents.RestoreAgent][google.cloud.dialogflow.cx.v3beta1.Agents.RestoreAgent]. 568message RestoreAgentRequest { 569 // Settings for restoring from a git branch 570 message GitSource { 571 // tracking branch for the git pull 572 string tracking_branch = 1; 573 } 574 575 // Restore option. 576 enum RestoreOption { 577 // Unspecified. Treated as KEEP. 578 RESTORE_OPTION_UNSPECIFIED = 0; 579 580 // Always respect the settings from the exported agent file. It may cause 581 // a restoration failure if some settings (e.g. model type) are not 582 // supported in the target agent. 583 KEEP = 1; 584 585 // Fallback to default settings if some settings are not supported in the 586 // target agent. 587 FALLBACK = 2; 588 } 589 590 // Required. The name of the agent to restore into. 591 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`. 592 string name = 1 [ 593 (google.api.field_behavior) = REQUIRED, 594 (google.api.resource_reference) = { 595 type: "dialogflow.googleapis.com/Agent" 596 } 597 ]; 598 599 // Required. The agent to restore. 600 oneof agent { 601 // The [Google Cloud Storage](https://cloud.google.com/storage/docs/) URI 602 // to restore agent from. The format of this URI must be 603 // `gs://<bucket-name>/<object-name>`. 604 // 605 // Dialogflow performs a read operation for the Cloud Storage object 606 // on the caller's behalf, so your request authentication must 607 // have read permissions for the object. For more information, see 608 // [Dialogflow access 609 // control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage). 610 string agent_uri = 2; 611 612 // Uncompressed raw byte content for agent. 613 bytes agent_content = 3; 614 615 // Setting for restoring from a git branch 616 GitSource git_source = 6; 617 } 618 619 // Agent restore mode. If not specified, `KEEP` is assumed. 620 RestoreOption restore_option = 5; 621} 622 623// The request message for 624// [Agents.ValidateAgent][google.cloud.dialogflow.cx.v3beta1.Agents.ValidateAgent]. 625message ValidateAgentRequest { 626 // Required. The agent to validate. 627 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`. 628 string name = 1 [ 629 (google.api.field_behavior) = REQUIRED, 630 (google.api.resource_reference) = { 631 type: "dialogflow.googleapis.com/Agent" 632 } 633 ]; 634 635 // If not specified, the agent's default language is used. 636 string language_code = 2; 637} 638 639// The request message for 640// [Agents.GetAgentValidationResult][google.cloud.dialogflow.cx.v3beta1.Agents.GetAgentValidationResult]. 641message GetAgentValidationResultRequest { 642 // Required. The agent name. 643 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent 644 // ID>/validationResult`. 645 string name = 1 [ 646 (google.api.field_behavior) = REQUIRED, 647 (google.api.resource_reference) = { 648 type: "dialogflow.googleapis.com/AgentValidationResult" 649 } 650 ]; 651 652 // If not specified, the agent's default language is used. 653 string language_code = 2; 654} 655 656// The response message for 657// [Agents.GetAgentValidationResult][google.cloud.dialogflow.cx.v3beta1.Agents.GetAgentValidationResult]. 658message AgentValidationResult { 659 option (google.api.resource) = { 660 type: "dialogflow.googleapis.com/AgentValidationResult" 661 pattern: "projects/{project}/locations/{location}/agents/{agent}/validationResult" 662 }; 663 664 // The unique identifier of the agent validation result. 665 // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent 666 // ID>/validationResult`. 667 string name = 1; 668 669 // Contains all flow validation results. 670 repeated FlowValidationResult flow_validation_results = 2; 671} 672 673// Request for 674// [GetGenerativeSettings][google.cloud.dialogflow.cx.v3beta1.Agents.GetGenerativeSettings] 675// RPC. 676message GetGenerativeSettingsRequest { 677 // Required. Format: `projects/<Project ID>/locations/<Location 678 // ID>/agents/<Agent ID>/generativeSettings`. 679 string name = 1 [ 680 (google.api.field_behavior) = REQUIRED, 681 (google.api.resource_reference) = { 682 type: "dialogflow.googleapis.com/AgentGenerativeSettings" 683 } 684 ]; 685 686 // Required. Language code of the generative settings. 687 string language_code = 2 [(google.api.field_behavior) = REQUIRED]; 688} 689 690// Request for 691// [UpdateGenerativeSettings][google.cloud.dialogflow.cx.v3beta1.Agents.UpdateGenerativeSettings] 692// RPC. 693message UpdateGenerativeSettingsRequest { 694 // Required. Generative settings to update. 695 GenerativeSettings generative_settings = 1 696 [(google.api.field_behavior) = REQUIRED]; 697 698 // Optional. The mask to control which fields get updated. If the mask is not 699 // present, all fields will be updated. 700 google.protobuf.FieldMask update_mask = 2 701 [(google.api.field_behavior) = OPTIONAL]; 702} 703