xref: /aosp_15_r20/external/googleapis/google/cloud/dialogflow/cx/v3/agent.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
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.v3;
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/v3/advanced_settings.proto";
24import "google/cloud/dialogflow/cx/v3/audio_config.proto";
25import "google/cloud/dialogflow/cx/v3/flow.proto";
26import "google/cloud/dialogflow/cx/v3/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.V3";
34option go_package = "cloud.google.com/go/dialogflow/cx/apiv3/cxpb;cxpb";
35option java_multiple_files = true;
36option java_outer_classname = "AgentProto";
37option java_package = "com.google.cloud.dialogflow.cx.v3";
38option objc_class_prefix = "DF";
39option ruby_package = "Google::Cloud::Dialogflow::CX::V3";
40
41// Service for managing [Agents][google.cloud.dialogflow.cx.v3.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: "/v3/{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: "/v3/{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 flows prior to sending them 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: "/v3/{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 flows prior to sending them 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: "/v3/{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: "/v3/{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.v3.ExportAgentResponse]
108  rpc ExportAgent(ExportAgentRequest) returns (google.longrunning.Operation) {
109    option (google.api.http) = {
110      post: "/v3/{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 flows prior to sending them 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: "/v3/{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: "/v3/{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: "/v3/{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: "/v3/{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: "/v3/{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.v3.Intent], [Entity
200// Types][google.cloud.dialogflow.cx.v3.EntityType],
201// [Flows][google.cloud.dialogflow.cx.v3.Flow],
202// [Fulfillments][google.cloud.dialogflow.cx.v3.Fulfillment],
203// [Webhooks][google.cloud.dialogflow.cx.v3.Webhook],
204// [TransitionRouteGroups][google.cloud.dialogflow.cx.v3.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.v3.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  // The unique identifier of the agent.
258  // Required for the
259  // [Agents.UpdateAgent][google.cloud.dialogflow.cx.v3.Agents.UpdateAgent]
260  // method.
261  // [Agents.CreateAgent][google.cloud.dialogflow.cx.v3.Agents.CreateAgent]
262  // populates the name automatically.
263  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`.
264  string name = 1;
265
266  // Required. The human-readable name of the agent, unique within the location.
267  string display_name = 2 [(google.api.field_behavior) = REQUIRED];
268
269  // Required. Immutable. The default language of the agent as a language tag.
270  // See [Language
271  // Support](https://cloud.google.com/dialogflow/cx/docs/reference/language)
272  // for a list of the currently supported language codes.
273  // This field cannot be set by the
274  // [Agents.UpdateAgent][google.cloud.dialogflow.cx.v3.Agents.UpdateAgent]
275  // method.
276  string default_language_code = 3 [
277    (google.api.field_behavior) = REQUIRED,
278    (google.api.field_behavior) = IMMUTABLE
279  ];
280
281  // The list of all languages supported by the agent (except for the
282  // `default_language_code`).
283  repeated string supported_language_codes = 4;
284
285  // Required. The time zone of the agent from the [time zone
286  // database](https://www.iana.org/time-zones), e.g., America/New_York,
287  // Europe/Paris.
288  string time_zone = 5 [(google.api.field_behavior) = REQUIRED];
289
290  // The description of the agent. The maximum length is 500 characters. If
291  // exceeded, the request is rejected.
292  string description = 6;
293
294  // The URI of the agent's avatar. Avatars are used throughout the Dialogflow
295  // console and in the self-hosted [Web
296  // Demo](https://cloud.google.com/dialogflow/docs/integrations/web-demo)
297  // integration.
298  string avatar_uri = 7;
299
300  // Speech recognition related settings.
301  SpeechToTextSettings speech_to_text_settings = 13;
302
303  // Immutable. Name of the start flow in this agent. A start flow will be
304  // automatically created when the agent is created, and can only be deleted by
305  // deleting the agent. Format: `projects/<Project ID>/locations/<Location
306  // ID>/agents/<Agent ID>/flows/<Flow ID>`. Currently only the default start
307  // flow with id "00000000-0000-0000-0000-000000000000" is allowed.
308  string start_flow = 16 [
309    (google.api.field_behavior) = IMMUTABLE,
310    (google.api.resource_reference) = { type: "dialogflow.googleapis.com/Flow" }
311  ];
312
313  // Name of the
314  // [SecuritySettings][google.cloud.dialogflow.cx.v3.SecuritySettings]
315  // reference for the agent. Format: `projects/<Project ID>/locations/<Location
316  // ID>/securitySettings/<Security Settings ID>`.
317  string security_settings = 17 [(google.api.resource_reference) = {
318    type: "dialogflow.googleapis.com/SecuritySettings"
319  }];
320
321  // Indicates if stackdriver logging is enabled for the agent.
322  // Please use
323  // [agent.advanced_settings][google.cloud.dialogflow.cx.v3.AdvancedSettings.LoggingSettings]
324  // instead.
325  bool enable_stackdriver_logging = 18 [deprecated = true];
326
327  // Indicates if automatic spell correction is enabled in detect intent
328  // requests.
329  bool enable_spell_correction = 20;
330
331  // Indicates whether the agent is locked for changes. If the agent is locked,
332  // modifications to the agent will be rejected except for [RestoreAgent][].
333  bool locked = 27;
334
335  // Hierarchical advanced settings for this agent. The settings exposed at the
336  // lower level overrides the settings exposed at the higher level.
337  AdvancedSettings advanced_settings = 22;
338
339  // Git integration settings for this agent.
340  GitIntegrationSettings git_integration_settings = 30;
341
342  // Settings on instructing the speech synthesizer on how to generate the
343  // output audio content.
344  TextToSpeechSettings text_to_speech_settings = 31;
345
346  // Gen App Builder-related agent-level settings.
347  optional GenAppBuilderSettings gen_app_builder_settings = 33;
348
349  // Optional. Answer feedback collection settings.
350  AnswerFeedbackSettings answer_feedback_settings = 38
351      [(google.api.field_behavior) = OPTIONAL];
352}
353
354// The request message for
355// [Agents.ListAgents][google.cloud.dialogflow.cx.v3.Agents.ListAgents].
356message ListAgentsRequest {
357  // Required. The location to list all agents for.
358  // Format: `projects/<Project ID>/locations/<Location ID>`.
359  string parent = 1 [
360    (google.api.field_behavior) = REQUIRED,
361    (google.api.resource_reference) = {
362      child_type: "dialogflow.googleapis.com/Agent"
363    }
364  ];
365
366  // The maximum number of items to return in a single page. By default 100 and
367  // at most 1000.
368  int32 page_size = 2;
369
370  // The next_page_token value returned from a previous list request.
371  string page_token = 3;
372}
373
374// The response message for
375// [Agents.ListAgents][google.cloud.dialogflow.cx.v3.Agents.ListAgents].
376message ListAgentsResponse {
377  // The list of agents. There will be a maximum number of items returned based
378  // on the page_size field in the request.
379  repeated Agent agents = 1;
380
381  // Token to retrieve the next page of results, or empty if there are no more
382  // results in the list.
383  string next_page_token = 2;
384}
385
386// The request message for
387// [Agents.GetAgent][google.cloud.dialogflow.cx.v3.Agents.GetAgent].
388message GetAgentRequest {
389  // Required. The name of the agent.
390  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`.
391  string name = 1 [
392    (google.api.field_behavior) = REQUIRED,
393    (google.api.resource_reference) = {
394      type: "dialogflow.googleapis.com/Agent"
395    }
396  ];
397}
398
399// The request message for
400// [Agents.CreateAgent][google.cloud.dialogflow.cx.v3.Agents.CreateAgent].
401message CreateAgentRequest {
402  // Required. The location to create a agent for.
403  // Format: `projects/<Project ID>/locations/<Location ID>`.
404  string parent = 1 [
405    (google.api.field_behavior) = REQUIRED,
406    (google.api.resource_reference) = {
407      child_type: "dialogflow.googleapis.com/Agent"
408    }
409  ];
410
411  // Required. The agent to create.
412  Agent agent = 2 [(google.api.field_behavior) = REQUIRED];
413}
414
415// The request message for
416// [Agents.UpdateAgent][google.cloud.dialogflow.cx.v3.Agents.UpdateAgent].
417message UpdateAgentRequest {
418  // Required. The agent to update.
419  Agent agent = 1 [(google.api.field_behavior) = REQUIRED];
420
421  // The mask to control which fields get updated. If the mask is not present,
422  // all fields will be updated.
423  google.protobuf.FieldMask update_mask = 2;
424}
425
426// The request message for
427// [Agents.DeleteAgent][google.cloud.dialogflow.cx.v3.Agents.DeleteAgent].
428message DeleteAgentRequest {
429  // Required. The name of the agent to delete.
430  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`.
431  string name = 1 [
432    (google.api.field_behavior) = REQUIRED,
433    (google.api.resource_reference) = {
434      type: "dialogflow.googleapis.com/Agent"
435    }
436  ];
437}
438
439// The request message for
440// [Agents.ExportAgent][google.cloud.dialogflow.cx.v3.Agents.ExportAgent].
441message ExportAgentRequest {
442  // Data format of the exported agent.
443  enum DataFormat {
444    // Unspecified format.
445    DATA_FORMAT_UNSPECIFIED = 0;
446
447    // Agent content will be exported as raw bytes.
448    BLOB = 1;
449
450    // Agent content will be exported in JSON Package format.
451    JSON_PACKAGE = 4;
452  }
453
454  // Settings for exporting to a git branch.
455  message GitDestination {
456    // Tracking branch for the git push.
457    string tracking_branch = 1;
458
459    // Commit message for the git push.
460    string commit_message = 2;
461  }
462
463  // Required. The name of the agent to export.
464  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`.
465  string name = 1 [
466    (google.api.field_behavior) = REQUIRED,
467    (google.api.resource_reference) = {
468      type: "dialogflow.googleapis.com/Agent"
469    }
470  ];
471
472  // Optional. The [Google Cloud
473  // Storage](https://cloud.google.com/storage/docs/) URI to export the agent
474  // to. The format of this URI must be `gs://<bucket-name>/<object-name>`. If
475  // left unspecified, the serialized agent is returned inline.
476  //
477  // Dialogflow performs a write operation for the Cloud Storage object
478  // on the caller's behalf, so your request authentication must
479  // have write permissions for the object. For more information, see
480  // [Dialogflow access
481  // control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage).
482  string agent_uri = 2 [(google.api.field_behavior) = OPTIONAL];
483
484  // Optional. The data format of the exported agent. If not specified, `BLOB`
485  // is assumed.
486  DataFormat data_format = 3 [(google.api.field_behavior) = OPTIONAL];
487
488  // Optional. Environment name. If not set, draft environment is assumed.
489  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
490  // ID>/environments/<Environment ID>`.
491  string environment = 5 [
492    (google.api.field_behavior) = OPTIONAL,
493    (google.api.resource_reference) = {
494      type: "dialogflow.googleapis.com/Environment"
495    }
496  ];
497
498  // Optional. The Git branch to export the agent to.
499  GitDestination git_destination = 6 [(google.api.field_behavior) = OPTIONAL];
500
501  // Optional. Whether to include BigQuery Export setting.
502  bool include_bigquery_export_settings = 7
503      [(google.api.field_behavior) = OPTIONAL];
504}
505
506// The response message for
507// [Agents.ExportAgent][google.cloud.dialogflow.cx.v3.Agents.ExportAgent].
508message ExportAgentResponse {
509  // The exported agent.
510  oneof agent {
511    // The URI to a file containing the exported agent. This field is populated
512    // if `agent_uri` is specified in
513    // [ExportAgentRequest][google.cloud.dialogflow.cx.v3.ExportAgentRequest].
514    string agent_uri = 1;
515
516    // Uncompressed raw byte content for agent. This field is populated
517    // if none of `agent_uri` and `git_destination` are specified in
518    // [ExportAgentRequest][google.cloud.dialogflow.cx.v3.ExportAgentRequest].
519    bytes agent_content = 2;
520
521    // Commit SHA of the git push. This field is populated if
522    // `git_destination` is specified in
523    // [ExportAgentRequest][google.cloud.dialogflow.cx.v3.ExportAgentRequest].
524    string commit_sha = 3;
525  }
526}
527
528// The request message for
529// [Agents.RestoreAgent][google.cloud.dialogflow.cx.v3.Agents.RestoreAgent].
530message RestoreAgentRequest {
531  // Settings for restoring from a git branch
532  message GitSource {
533    // tracking branch for the git pull
534    string tracking_branch = 1;
535  }
536
537  // Restore option.
538  enum RestoreOption {
539    // Unspecified. Treated as KEEP.
540    RESTORE_OPTION_UNSPECIFIED = 0;
541
542    // Always respect the settings from the exported agent file. It may cause
543    // a restoration failure if some settings (e.g. model type) are not
544    // supported in the target agent.
545    KEEP = 1;
546
547    // Fallback to default settings if some settings are not supported in the
548    // target agent.
549    FALLBACK = 2;
550  }
551
552  // Required. The name of the agent to restore into.
553  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`.
554  string name = 1 [
555    (google.api.field_behavior) = REQUIRED,
556    (google.api.resource_reference) = {
557      type: "dialogflow.googleapis.com/Agent"
558    }
559  ];
560
561  // Required. The agent to restore.
562  oneof agent {
563    // The [Google Cloud Storage](https://cloud.google.com/storage/docs/) URI
564    // to restore agent from. The format of this URI must be
565    // `gs://<bucket-name>/<object-name>`.
566    //
567    // Dialogflow performs a read operation for the Cloud Storage object
568    // on the caller's behalf, so your request authentication must
569    // have read permissions for the object. For more information, see
570    // [Dialogflow access
571    // control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage).
572    string agent_uri = 2;
573
574    // Uncompressed raw byte content for agent.
575    bytes agent_content = 3;
576
577    // Setting for restoring from a git branch
578    GitSource git_source = 6;
579  }
580
581  // Agent restore mode. If not specified, `KEEP` is assumed.
582  RestoreOption restore_option = 5;
583}
584
585// The request message for
586// [Agents.ValidateAgent][google.cloud.dialogflow.cx.v3.Agents.ValidateAgent].
587message ValidateAgentRequest {
588  // Required. The agent to validate.
589  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>`.
590  string name = 1 [
591    (google.api.field_behavior) = REQUIRED,
592    (google.api.resource_reference) = {
593      type: "dialogflow.googleapis.com/Agent"
594    }
595  ];
596
597  // If not specified, the agent's default language is used.
598  string language_code = 2;
599}
600
601// The request message for
602// [Agents.GetAgentValidationResult][google.cloud.dialogflow.cx.v3.Agents.GetAgentValidationResult].
603message GetAgentValidationResultRequest {
604  // Required. The agent name.
605  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
606  // ID>/validationResult`.
607  string name = 1 [
608    (google.api.field_behavior) = REQUIRED,
609    (google.api.resource_reference) = {
610      type: "dialogflow.googleapis.com/AgentValidationResult"
611    }
612  ];
613
614  // If not specified, the agent's default language is used.
615  string language_code = 2;
616}
617
618// The response message for
619// [Agents.GetAgentValidationResult][google.cloud.dialogflow.cx.v3.Agents.GetAgentValidationResult].
620message AgentValidationResult {
621  option (google.api.resource) = {
622    type: "dialogflow.googleapis.com/AgentValidationResult"
623    pattern: "projects/{project}/locations/{location}/agents/{agent}/validationResult"
624  };
625
626  // The unique identifier of the agent validation result.
627  // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
628  // ID>/validationResult`.
629  string name = 1;
630
631  // Contains all flow validation results.
632  repeated FlowValidationResult flow_validation_results = 2;
633}
634
635// Request for
636// [GetGenerativeSettings][google.cloud.dialogflow.cx.v3.Agents.GetGenerativeSettings]
637// RPC.
638message GetGenerativeSettingsRequest {
639  // Required. Format: `projects/<Project ID>/locations/<Location
640  // ID>/agents/<Agent ID>/generativeSettings`.
641  string name = 1 [
642    (google.api.field_behavior) = REQUIRED,
643    (google.api.resource_reference) = {
644      type: "dialogflow.googleapis.com/AgentGenerativeSettings"
645    }
646  ];
647
648  // Required. Language code of the generative settings.
649  string language_code = 2 [(google.api.field_behavior) = REQUIRED];
650}
651
652// Request for
653// [UpdateGenerativeSettings][google.cloud.dialogflow.cx.v3.Agents.UpdateGenerativeSettings]
654// RPC.
655message UpdateGenerativeSettingsRequest {
656  // Required. Generative settings to update.
657  GenerativeSettings generative_settings = 1
658      [(google.api.field_behavior) = REQUIRED];
659
660  // Optional. The mask to control which fields get updated. If the mask is not
661  // present, all fields will be updated.
662  google.protobuf.FieldMask update_mask = 2
663      [(google.api.field_behavior) = OPTIONAL];
664}
665