xref: /aosp_15_r20/external/googleapis/google/cloud/dialogflow/v2beta1/version.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.dialogflow.v2beta1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto";
21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto";
22*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto";
23*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto";
24*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto";
25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
26*d5c09012SAndroid Build Coastguard Worker
27*d5c09012SAndroid Build Coastguard Workeroption cc_enable_arenas = true;
28*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.Dialogflow.V2Beta1";
29*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/dialogflow/apiv2beta1/dialogflowpb;dialogflowpb";
30*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
31*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "VersionProto";
32*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.dialogflow.v2beta1";
33*d5c09012SAndroid Build Coastguard Workeroption objc_class_prefix = "DF";
34*d5c09012SAndroid Build Coastguard Worker
35*d5c09012SAndroid Build Coastguard Worker// Service for managing [Versions][google.cloud.dialogflow.v2beta1.Version].
36*d5c09012SAndroid Build Coastguard Workerservice Versions {
37*d5c09012SAndroid Build Coastguard Worker  option (google.api.default_host) = "dialogflow.googleapis.com";
38*d5c09012SAndroid Build Coastguard Worker  option (google.api.oauth_scopes) =
39*d5c09012SAndroid Build Coastguard Worker      "https://www.googleapis.com/auth/cloud-platform,"
40*d5c09012SAndroid Build Coastguard Worker      "https://www.googleapis.com/auth/dialogflow";
41*d5c09012SAndroid Build Coastguard Worker
42*d5c09012SAndroid Build Coastguard Worker  // Returns the list of all versions of the specified agent.
43*d5c09012SAndroid Build Coastguard Worker  rpc ListVersions(ListVersionsRequest) returns (ListVersionsResponse) {
44*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
45*d5c09012SAndroid Build Coastguard Worker      get: "/v2beta1/{parent=projects/*/agent}/versions"
46*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
47*d5c09012SAndroid Build Coastguard Worker        get: "/v2beta1/{parent=projects/*/locations/*/agent}/versions"
48*d5c09012SAndroid Build Coastguard Worker      }
49*d5c09012SAndroid Build Coastguard Worker    };
50*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
51*d5c09012SAndroid Build Coastguard Worker  }
52*d5c09012SAndroid Build Coastguard Worker
53*d5c09012SAndroid Build Coastguard Worker  // Retrieves the specified agent version.
54*d5c09012SAndroid Build Coastguard Worker  rpc GetVersion(GetVersionRequest) returns (Version) {
55*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
56*d5c09012SAndroid Build Coastguard Worker      get: "/v2beta1/{name=projects/*/agent/versions/*}"
57*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
58*d5c09012SAndroid Build Coastguard Worker        get: "/v2beta1/{name=projects/*/locations/*/agent/versions/*}"
59*d5c09012SAndroid Build Coastguard Worker      }
60*d5c09012SAndroid Build Coastguard Worker    };
61*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
62*d5c09012SAndroid Build Coastguard Worker  }
63*d5c09012SAndroid Build Coastguard Worker
64*d5c09012SAndroid Build Coastguard Worker  // Creates an agent version.
65*d5c09012SAndroid Build Coastguard Worker  //
66*d5c09012SAndroid Build Coastguard Worker  // The new version points to the agent instance in the "default" environment.
67*d5c09012SAndroid Build Coastguard Worker  rpc CreateVersion(CreateVersionRequest) returns (Version) {
68*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
69*d5c09012SAndroid Build Coastguard Worker      post: "/v2beta1/{parent=projects/*/agent}/versions"
70*d5c09012SAndroid Build Coastguard Worker      body: "version"
71*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
72*d5c09012SAndroid Build Coastguard Worker        post: "/v2beta1/{parent=projects/*/locations/*/agent}/versions"
73*d5c09012SAndroid Build Coastguard Worker        body: "version"
74*d5c09012SAndroid Build Coastguard Worker      }
75*d5c09012SAndroid Build Coastguard Worker    };
76*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,version";
77*d5c09012SAndroid Build Coastguard Worker  }
78*d5c09012SAndroid Build Coastguard Worker
79*d5c09012SAndroid Build Coastguard Worker  // Updates the specified agent version.
80*d5c09012SAndroid Build Coastguard Worker  //
81*d5c09012SAndroid Build Coastguard Worker  // Note that this method does not allow you to update the state of the agent
82*d5c09012SAndroid Build Coastguard Worker  // the given version points to. It allows you to update only mutable
83*d5c09012SAndroid Build Coastguard Worker  // properties of the version resource.
84*d5c09012SAndroid Build Coastguard Worker  rpc UpdateVersion(UpdateVersionRequest) returns (Version) {
85*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
86*d5c09012SAndroid Build Coastguard Worker      patch: "/v2beta1/{version.name=projects/*/agent/versions/*}"
87*d5c09012SAndroid Build Coastguard Worker      body: "version"
88*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
89*d5c09012SAndroid Build Coastguard Worker        patch: "/v2beta1/{version.name=projects/*/locations/*/agent/versions/*}"
90*d5c09012SAndroid Build Coastguard Worker        body: "version"
91*d5c09012SAndroid Build Coastguard Worker      }
92*d5c09012SAndroid Build Coastguard Worker    };
93*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "version,update_mask";
94*d5c09012SAndroid Build Coastguard Worker  }
95*d5c09012SAndroid Build Coastguard Worker
96*d5c09012SAndroid Build Coastguard Worker  // Delete the specified agent version.
97*d5c09012SAndroid Build Coastguard Worker  rpc DeleteVersion(DeleteVersionRequest) returns (google.protobuf.Empty) {
98*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
99*d5c09012SAndroid Build Coastguard Worker      delete: "/v2beta1/{name=projects/*/agent/versions/*}"
100*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
101*d5c09012SAndroid Build Coastguard Worker        delete: "/v2beta1/{name=projects/*/locations/*/agent/versions/*}"
102*d5c09012SAndroid Build Coastguard Worker      }
103*d5c09012SAndroid Build Coastguard Worker    };
104*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
105*d5c09012SAndroid Build Coastguard Worker  }
106*d5c09012SAndroid Build Coastguard Worker}
107*d5c09012SAndroid Build Coastguard Worker
108*d5c09012SAndroid Build Coastguard Worker// You can create multiple versions of your agent and publish them to separate
109*d5c09012SAndroid Build Coastguard Worker// environments.
110*d5c09012SAndroid Build Coastguard Worker//
111*d5c09012SAndroid Build Coastguard Worker// When you edit an agent, you are editing the draft agent. At any point, you
112*d5c09012SAndroid Build Coastguard Worker// can save the draft agent as an agent version, which is an immutable snapshot
113*d5c09012SAndroid Build Coastguard Worker// of your agent.
114*d5c09012SAndroid Build Coastguard Worker//
115*d5c09012SAndroid Build Coastguard Worker// When you save the draft agent, it is published to the default environment.
116*d5c09012SAndroid Build Coastguard Worker// When you create agent versions, you can publish them to custom environments.
117*d5c09012SAndroid Build Coastguard Worker// You can create a variety of custom environments for:
118*d5c09012SAndroid Build Coastguard Worker//
119*d5c09012SAndroid Build Coastguard Worker// - testing
120*d5c09012SAndroid Build Coastguard Worker// - development
121*d5c09012SAndroid Build Coastguard Worker// - production
122*d5c09012SAndroid Build Coastguard Worker// - etc.
123*d5c09012SAndroid Build Coastguard Worker//
124*d5c09012SAndroid Build Coastguard Worker// For more information, see the [versions and environments
125*d5c09012SAndroid Build Coastguard Worker// guide](https://cloud.google.com/dialogflow/docs/agents-versions).
126*d5c09012SAndroid Build Coastguard Workermessage Version {
127*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
128*d5c09012SAndroid Build Coastguard Worker    type: "dialogflow.googleapis.com/Version"
129*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/agent/versions/{version}"
130*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/{location}/agent/versions/{version}"
131*d5c09012SAndroid Build Coastguard Worker  };
132*d5c09012SAndroid Build Coastguard Worker
133*d5c09012SAndroid Build Coastguard Worker  // The status of a version.
134*d5c09012SAndroid Build Coastguard Worker  enum VersionStatus {
135*d5c09012SAndroid Build Coastguard Worker    // Not specified. This value is not used.
136*d5c09012SAndroid Build Coastguard Worker    VERSION_STATUS_UNSPECIFIED = 0;
137*d5c09012SAndroid Build Coastguard Worker
138*d5c09012SAndroid Build Coastguard Worker    // Version is not ready to serve (e.g. training is in progress).
139*d5c09012SAndroid Build Coastguard Worker    IN_PROGRESS = 1;
140*d5c09012SAndroid Build Coastguard Worker
141*d5c09012SAndroid Build Coastguard Worker    // Version is ready to serve.
142*d5c09012SAndroid Build Coastguard Worker    READY = 2;
143*d5c09012SAndroid Build Coastguard Worker
144*d5c09012SAndroid Build Coastguard Worker    // Version training failed.
145*d5c09012SAndroid Build Coastguard Worker    FAILED = 3;
146*d5c09012SAndroid Build Coastguard Worker  }
147*d5c09012SAndroid Build Coastguard Worker
148*d5c09012SAndroid Build Coastguard Worker  // Output only. The unique identifier of this agent version.
149*d5c09012SAndroid Build Coastguard Worker  // Supported formats:
150*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/agent/versions/<Version ID>`
151*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
152*d5c09012SAndroid Build Coastguard Worker  //   ID>`
153*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
154*d5c09012SAndroid Build Coastguard Worker
155*d5c09012SAndroid Build Coastguard Worker  // Optional. The developer-provided description of this version.
156*d5c09012SAndroid Build Coastguard Worker  string description = 2 [(google.api.field_behavior) = OPTIONAL];
157*d5c09012SAndroid Build Coastguard Worker
158*d5c09012SAndroid Build Coastguard Worker  // Output only. The sequential number of this version. This field is read-only
159*d5c09012SAndroid Build Coastguard Worker  // which means it cannot be set by create and update methods.
160*d5c09012SAndroid Build Coastguard Worker  int32 version_number = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
161*d5c09012SAndroid Build Coastguard Worker
162*d5c09012SAndroid Build Coastguard Worker  // Output only. The creation time of this version. This field is read-only,
163*d5c09012SAndroid Build Coastguard Worker  // i.e., it cannot be set by create and update methods.
164*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 4
165*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
166*d5c09012SAndroid Build Coastguard Worker
167*d5c09012SAndroid Build Coastguard Worker  // Output only. The status of this version. This field is read-only and cannot
168*d5c09012SAndroid Build Coastguard Worker  // be set by create and update methods.
169*d5c09012SAndroid Build Coastguard Worker  VersionStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
170*d5c09012SAndroid Build Coastguard Worker}
171*d5c09012SAndroid Build Coastguard Worker
172*d5c09012SAndroid Build Coastguard Worker// The request message for
173*d5c09012SAndroid Build Coastguard Worker// [Versions.ListVersions][google.cloud.dialogflow.v2beta1.Versions.ListVersions].
174*d5c09012SAndroid Build Coastguard Workermessage ListVersionsRequest {
175*d5c09012SAndroid Build Coastguard Worker  // Required. The agent to list all versions from.
176*d5c09012SAndroid Build Coastguard Worker  // Supported formats:
177*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/agent`
178*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/locations/<Location ID>/agent`
179*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
180*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
181*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
182*d5c09012SAndroid Build Coastguard Worker      child_type: "dialogflow.googleapis.com/Version"
183*d5c09012SAndroid Build Coastguard Worker    }
184*d5c09012SAndroid Build Coastguard Worker  ];
185*d5c09012SAndroid Build Coastguard Worker
186*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of items to return in a single page. By
187*d5c09012SAndroid Build Coastguard Worker  // default 100 and at most 1000.
188*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
189*d5c09012SAndroid Build Coastguard Worker
190*d5c09012SAndroid Build Coastguard Worker  // Optional. The next_page_token value returned from a previous list request.
191*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
192*d5c09012SAndroid Build Coastguard Worker}
193*d5c09012SAndroid Build Coastguard Worker
194*d5c09012SAndroid Build Coastguard Worker// The response message for
195*d5c09012SAndroid Build Coastguard Worker// [Versions.ListVersions][google.cloud.dialogflow.v2beta1.Versions.ListVersions].
196*d5c09012SAndroid Build Coastguard Workermessage ListVersionsResponse {
197*d5c09012SAndroid Build Coastguard Worker  // The list of agent versions. There will be a maximum number of items
198*d5c09012SAndroid Build Coastguard Worker  // returned based on the page_size field in the request.
199*d5c09012SAndroid Build Coastguard Worker  repeated Version versions = 1;
200*d5c09012SAndroid Build Coastguard Worker
201*d5c09012SAndroid Build Coastguard Worker  // Token to retrieve the next page of results, or empty if there are no
202*d5c09012SAndroid Build Coastguard Worker  // more results in the list.
203*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
204*d5c09012SAndroid Build Coastguard Worker}
205*d5c09012SAndroid Build Coastguard Worker
206*d5c09012SAndroid Build Coastguard Worker// The request message for
207*d5c09012SAndroid Build Coastguard Worker// [Versions.GetVersion][google.cloud.dialogflow.v2beta1.Versions.GetVersion].
208*d5c09012SAndroid Build Coastguard Workermessage GetVersionRequest {
209*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the version.
210*d5c09012SAndroid Build Coastguard Worker  // Supported formats:
211*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/agent/versions/<Version ID>`
212*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
213*d5c09012SAndroid Build Coastguard Worker  //   ID>`
214*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
215*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
216*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
217*d5c09012SAndroid Build Coastguard Worker      type: "dialogflow.googleapis.com/Version"
218*d5c09012SAndroid Build Coastguard Worker    }
219*d5c09012SAndroid Build Coastguard Worker  ];
220*d5c09012SAndroid Build Coastguard Worker}
221*d5c09012SAndroid Build Coastguard Worker
222*d5c09012SAndroid Build Coastguard Worker// The request message for
223*d5c09012SAndroid Build Coastguard Worker// [Versions.CreateVersion][google.cloud.dialogflow.v2beta1.Versions.CreateVersion].
224*d5c09012SAndroid Build Coastguard Workermessage CreateVersionRequest {
225*d5c09012SAndroid Build Coastguard Worker  // Required. The agent to create a version for.
226*d5c09012SAndroid Build Coastguard Worker  // Supported formats:
227*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/agent`
228*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/locations/<Location ID>/agent`
229*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
230*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
231*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
232*d5c09012SAndroid Build Coastguard Worker      child_type: "dialogflow.googleapis.com/Version"
233*d5c09012SAndroid Build Coastguard Worker    }
234*d5c09012SAndroid Build Coastguard Worker  ];
235*d5c09012SAndroid Build Coastguard Worker
236*d5c09012SAndroid Build Coastguard Worker  // Required. The version to create.
237*d5c09012SAndroid Build Coastguard Worker  Version version = 2 [(google.api.field_behavior) = REQUIRED];
238*d5c09012SAndroid Build Coastguard Worker}
239*d5c09012SAndroid Build Coastguard Worker
240*d5c09012SAndroid Build Coastguard Worker// The request message for
241*d5c09012SAndroid Build Coastguard Worker// [Versions.UpdateVersion][google.cloud.dialogflow.v2beta1.Versions.UpdateVersion].
242*d5c09012SAndroid Build Coastguard Workermessage UpdateVersionRequest {
243*d5c09012SAndroid Build Coastguard Worker  // Required. The version to update.
244*d5c09012SAndroid Build Coastguard Worker  // Supported formats:
245*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/agent/versions/<Version ID>`
246*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
247*d5c09012SAndroid Build Coastguard Worker  //   ID>`
248*d5c09012SAndroid Build Coastguard Worker  Version version = 1 [(google.api.field_behavior) = REQUIRED];
249*d5c09012SAndroid Build Coastguard Worker
250*d5c09012SAndroid Build Coastguard Worker  // Required. The mask to control which fields get updated.
251*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 2
252*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
253*d5c09012SAndroid Build Coastguard Worker}
254*d5c09012SAndroid Build Coastguard Worker
255*d5c09012SAndroid Build Coastguard Worker// The request message for
256*d5c09012SAndroid Build Coastguard Worker// [Versions.DeleteVersion][google.cloud.dialogflow.v2beta1.Versions.DeleteVersion].
257*d5c09012SAndroid Build Coastguard Workermessage DeleteVersionRequest {
258*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the version to delete.
259*d5c09012SAndroid Build Coastguard Worker  // Supported formats:
260*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/agent/versions/<Version ID>`
261*d5c09012SAndroid Build Coastguard Worker  // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
262*d5c09012SAndroid Build Coastguard Worker  //   ID>`
263*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
264*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
265*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
266*d5c09012SAndroid Build Coastguard Worker      type: "dialogflow.googleapis.com/Version"
267*d5c09012SAndroid Build Coastguard Worker    }
268*d5c09012SAndroid Build Coastguard Worker  ];
269*d5c09012SAndroid Build Coastguard Worker}
270