xref: /aosp_15_r20/external/googleapis/google/cloud/notebooks/v1beta1/service.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.notebooks.v1beta1;
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/cloud/notebooks/v1beta1/environment.proto";
23*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/notebooks/v1beta1/instance.proto";
24*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto";
25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
26*d5c09012SAndroid Build Coastguard Worker
27*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.Notebooks.V1Beta1";
28*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/notebooks/apiv1beta1/notebookspb;notebookspb";
29*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
30*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "NotebooksProto";
31*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.notebooks.v1beta1";
32*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\Notebooks\\V1beta1";
33*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::Notebooks::V1beta1";
34*d5c09012SAndroid Build Coastguard Worker
35*d5c09012SAndroid Build Coastguard Worker// API v1beta1 service for Cloud AI Platform Notebooks.
36*d5c09012SAndroid Build Coastguard Workerservice NotebookService {
37*d5c09012SAndroid Build Coastguard Worker  option (google.api.default_host) = "notebooks.googleapis.com";
38*d5c09012SAndroid Build Coastguard Worker  option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
39*d5c09012SAndroid Build Coastguard Worker
40*d5c09012SAndroid Build Coastguard Worker  // Lists instances in a given project and location.
41*d5c09012SAndroid Build Coastguard Worker  rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) {
42*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
43*d5c09012SAndroid Build Coastguard Worker      get: "/v1beta1/{parent=projects/*/locations/*}/instances"
44*d5c09012SAndroid Build Coastguard Worker    };
45*d5c09012SAndroid Build Coastguard Worker  }
46*d5c09012SAndroid Build Coastguard Worker
47*d5c09012SAndroid Build Coastguard Worker  // Gets details of a single Instance.
48*d5c09012SAndroid Build Coastguard Worker  rpc GetInstance(GetInstanceRequest) returns (Instance) {
49*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
50*d5c09012SAndroid Build Coastguard Worker      get: "/v1beta1/{name=projects/*/locations/*/instances/*}"
51*d5c09012SAndroid Build Coastguard Worker    };
52*d5c09012SAndroid Build Coastguard Worker  }
53*d5c09012SAndroid Build Coastguard Worker
54*d5c09012SAndroid Build Coastguard Worker  // Creates a new Instance in a given project and location.
55*d5c09012SAndroid Build Coastguard Worker  rpc CreateInstance(CreateInstanceRequest) returns (google.longrunning.Operation) {
56*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
57*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{parent=projects/*/locations/*}/instances"
58*d5c09012SAndroid Build Coastguard Worker      body: "instance"
59*d5c09012SAndroid Build Coastguard Worker    };
60*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
61*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
62*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
63*d5c09012SAndroid Build Coastguard Worker    };
64*d5c09012SAndroid Build Coastguard Worker  }
65*d5c09012SAndroid Build Coastguard Worker
66*d5c09012SAndroid Build Coastguard Worker  // Registers an existing legacy notebook instance to the Notebooks API server.
67*d5c09012SAndroid Build Coastguard Worker  // Legacy instances are instances created with the legacy Compute Engine
68*d5c09012SAndroid Build Coastguard Worker  // calls. They are not manageable by the Notebooks API out of the box. This
69*d5c09012SAndroid Build Coastguard Worker  // call makes these instances manageable by the Notebooks API.
70*d5c09012SAndroid Build Coastguard Worker  rpc RegisterInstance(RegisterInstanceRequest) returns (google.longrunning.Operation) {
71*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
72*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{parent=projects/*/locations/*}/instances:register"
73*d5c09012SAndroid Build Coastguard Worker      body: "*"
74*d5c09012SAndroid Build Coastguard Worker    };
75*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
76*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
77*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
78*d5c09012SAndroid Build Coastguard Worker    };
79*d5c09012SAndroid Build Coastguard Worker  }
80*d5c09012SAndroid Build Coastguard Worker
81*d5c09012SAndroid Build Coastguard Worker  // Updates the guest accelerators of a single Instance.
82*d5c09012SAndroid Build Coastguard Worker  rpc SetInstanceAccelerator(SetInstanceAcceleratorRequest) returns (google.longrunning.Operation) {
83*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
84*d5c09012SAndroid Build Coastguard Worker      patch: "/v1beta1/{name=projects/*/locations/*/instances/*}:setAccelerator"
85*d5c09012SAndroid Build Coastguard Worker      body: "*"
86*d5c09012SAndroid Build Coastguard Worker    };
87*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
88*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
89*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
90*d5c09012SAndroid Build Coastguard Worker    };
91*d5c09012SAndroid Build Coastguard Worker  }
92*d5c09012SAndroid Build Coastguard Worker
93*d5c09012SAndroid Build Coastguard Worker  // Updates the machine type of a single Instance.
94*d5c09012SAndroid Build Coastguard Worker  rpc SetInstanceMachineType(SetInstanceMachineTypeRequest) returns (google.longrunning.Operation) {
95*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
96*d5c09012SAndroid Build Coastguard Worker      patch: "/v1beta1/{name=projects/*/locations/*/instances/*}:setMachineType"
97*d5c09012SAndroid Build Coastguard Worker      body: "*"
98*d5c09012SAndroid Build Coastguard Worker    };
99*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
100*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
101*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
102*d5c09012SAndroid Build Coastguard Worker    };
103*d5c09012SAndroid Build Coastguard Worker  }
104*d5c09012SAndroid Build Coastguard Worker
105*d5c09012SAndroid Build Coastguard Worker  // Updates the labels of an Instance.
106*d5c09012SAndroid Build Coastguard Worker  rpc SetInstanceLabels(SetInstanceLabelsRequest) returns (google.longrunning.Operation) {
107*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
108*d5c09012SAndroid Build Coastguard Worker      patch: "/v1beta1/{name=projects/*/locations/*/instances/*}:setLabels"
109*d5c09012SAndroid Build Coastguard Worker      body: "*"
110*d5c09012SAndroid Build Coastguard Worker    };
111*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
112*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
113*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
114*d5c09012SAndroid Build Coastguard Worker    };
115*d5c09012SAndroid Build Coastguard Worker  }
116*d5c09012SAndroid Build Coastguard Worker
117*d5c09012SAndroid Build Coastguard Worker  // Deletes a single Instance.
118*d5c09012SAndroid Build Coastguard Worker  rpc DeleteInstance(DeleteInstanceRequest) returns (google.longrunning.Operation) {
119*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
120*d5c09012SAndroid Build Coastguard Worker      delete: "/v1beta1/{name=projects/*/locations/*/instances/*}"
121*d5c09012SAndroid Build Coastguard Worker    };
122*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
123*d5c09012SAndroid Build Coastguard Worker      response_type: "google.protobuf.Empty"
124*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
125*d5c09012SAndroid Build Coastguard Worker    };
126*d5c09012SAndroid Build Coastguard Worker  }
127*d5c09012SAndroid Build Coastguard Worker
128*d5c09012SAndroid Build Coastguard Worker  // Starts a notebook instance.
129*d5c09012SAndroid Build Coastguard Worker  rpc StartInstance(StartInstanceRequest) returns (google.longrunning.Operation) {
130*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
131*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{name=projects/*/locations/*/instances/*}:start"
132*d5c09012SAndroid Build Coastguard Worker      body: "*"
133*d5c09012SAndroid Build Coastguard Worker    };
134*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
135*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
136*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
137*d5c09012SAndroid Build Coastguard Worker    };
138*d5c09012SAndroid Build Coastguard Worker  }
139*d5c09012SAndroid Build Coastguard Worker
140*d5c09012SAndroid Build Coastguard Worker  // Stops a notebook instance.
141*d5c09012SAndroid Build Coastguard Worker  rpc StopInstance(StopInstanceRequest) returns (google.longrunning.Operation) {
142*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
143*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{name=projects/*/locations/*/instances/*}:stop"
144*d5c09012SAndroid Build Coastguard Worker      body: "*"
145*d5c09012SAndroid Build Coastguard Worker    };
146*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
147*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
148*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
149*d5c09012SAndroid Build Coastguard Worker    };
150*d5c09012SAndroid Build Coastguard Worker  }
151*d5c09012SAndroid Build Coastguard Worker
152*d5c09012SAndroid Build Coastguard Worker  // Resets a notebook instance.
153*d5c09012SAndroid Build Coastguard Worker  rpc ResetInstance(ResetInstanceRequest) returns (google.longrunning.Operation) {
154*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
155*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{name=projects/*/locations/*/instances/*}:reset"
156*d5c09012SAndroid Build Coastguard Worker      body: "*"
157*d5c09012SAndroid Build Coastguard Worker    };
158*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
159*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
160*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
161*d5c09012SAndroid Build Coastguard Worker    };
162*d5c09012SAndroid Build Coastguard Worker  }
163*d5c09012SAndroid Build Coastguard Worker
164*d5c09012SAndroid Build Coastguard Worker  // Allows notebook instances to
165*d5c09012SAndroid Build Coastguard Worker  // report their latest instance information to the Notebooks
166*d5c09012SAndroid Build Coastguard Worker  // API server. The server will merge the reported information to
167*d5c09012SAndroid Build Coastguard Worker  // the instance metadata store. Do not use this method directly.
168*d5c09012SAndroid Build Coastguard Worker  rpc ReportInstanceInfo(ReportInstanceInfoRequest) returns (google.longrunning.Operation) {
169*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
170*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{name=projects/*/locations/*/instances/*}:report"
171*d5c09012SAndroid Build Coastguard Worker      body: "*"
172*d5c09012SAndroid Build Coastguard Worker    };
173*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
174*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
175*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
176*d5c09012SAndroid Build Coastguard Worker    };
177*d5c09012SAndroid Build Coastguard Worker  }
178*d5c09012SAndroid Build Coastguard Worker
179*d5c09012SAndroid Build Coastguard Worker  // Check if a notebook instance is upgradable.
180*d5c09012SAndroid Build Coastguard Worker  // Deprecated. Please consider using v1.
181*d5c09012SAndroid Build Coastguard Worker  rpc IsInstanceUpgradeable(IsInstanceUpgradeableRequest) returns (IsInstanceUpgradeableResponse) {
182*d5c09012SAndroid Build Coastguard Worker    option deprecated = true;
183*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
184*d5c09012SAndroid Build Coastguard Worker      get: "/v1beta1/{notebook_instance=projects/*/locations/*/instances/*}:isUpgradeable"
185*d5c09012SAndroid Build Coastguard Worker    };
186*d5c09012SAndroid Build Coastguard Worker  }
187*d5c09012SAndroid Build Coastguard Worker
188*d5c09012SAndroid Build Coastguard Worker  // Upgrades a notebook instance to the latest version.
189*d5c09012SAndroid Build Coastguard Worker  // Deprecated. Please consider using v1.
190*d5c09012SAndroid Build Coastguard Worker  rpc UpgradeInstance(UpgradeInstanceRequest) returns (google.longrunning.Operation) {
191*d5c09012SAndroid Build Coastguard Worker    option deprecated = true;
192*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
193*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade"
194*d5c09012SAndroid Build Coastguard Worker      body: "*"
195*d5c09012SAndroid Build Coastguard Worker    };
196*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
197*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
198*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
199*d5c09012SAndroid Build Coastguard Worker    };
200*d5c09012SAndroid Build Coastguard Worker  }
201*d5c09012SAndroid Build Coastguard Worker
202*d5c09012SAndroid Build Coastguard Worker  // Allows notebook instances to
203*d5c09012SAndroid Build Coastguard Worker  // call this endpoint to upgrade themselves. Do not use this method directly.
204*d5c09012SAndroid Build Coastguard Worker  // Deprecated. Please consider using v1.
205*d5c09012SAndroid Build Coastguard Worker  rpc UpgradeInstanceInternal(UpgradeInstanceInternalRequest) returns (google.longrunning.Operation) {
206*d5c09012SAndroid Build Coastguard Worker    option deprecated = true;
207*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
208*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{name=projects/*/locations/*/instances/*}:upgradeInternal"
209*d5c09012SAndroid Build Coastguard Worker      body: "*"
210*d5c09012SAndroid Build Coastguard Worker    };
211*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
212*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
213*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
214*d5c09012SAndroid Build Coastguard Worker    };
215*d5c09012SAndroid Build Coastguard Worker  }
216*d5c09012SAndroid Build Coastguard Worker
217*d5c09012SAndroid Build Coastguard Worker  // Lists environments in a project.
218*d5c09012SAndroid Build Coastguard Worker  rpc ListEnvironments(ListEnvironmentsRequest) returns (ListEnvironmentsResponse) {
219*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
220*d5c09012SAndroid Build Coastguard Worker      get: "/v1beta1/{parent=projects/*/locations/*}/environments"
221*d5c09012SAndroid Build Coastguard Worker    };
222*d5c09012SAndroid Build Coastguard Worker  }
223*d5c09012SAndroid Build Coastguard Worker
224*d5c09012SAndroid Build Coastguard Worker  // Gets details of a single Environment.
225*d5c09012SAndroid Build Coastguard Worker  rpc GetEnvironment(GetEnvironmentRequest) returns (Environment) {
226*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
227*d5c09012SAndroid Build Coastguard Worker      get: "/v1beta1/{name=projects/*/locations/*/environments/*}"
228*d5c09012SAndroid Build Coastguard Worker    };
229*d5c09012SAndroid Build Coastguard Worker  }
230*d5c09012SAndroid Build Coastguard Worker
231*d5c09012SAndroid Build Coastguard Worker  // Creates a new Environment.
232*d5c09012SAndroid Build Coastguard Worker  rpc CreateEnvironment(CreateEnvironmentRequest) returns (google.longrunning.Operation) {
233*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
234*d5c09012SAndroid Build Coastguard Worker      post: "/v1beta1/{parent=projects/*/locations/*}/environments"
235*d5c09012SAndroid Build Coastguard Worker      body: "environment"
236*d5c09012SAndroid Build Coastguard Worker    };
237*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
238*d5c09012SAndroid Build Coastguard Worker      response_type: "Environment"
239*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
240*d5c09012SAndroid Build Coastguard Worker    };
241*d5c09012SAndroid Build Coastguard Worker  }
242*d5c09012SAndroid Build Coastguard Worker
243*d5c09012SAndroid Build Coastguard Worker  // Deletes a single Environment.
244*d5c09012SAndroid Build Coastguard Worker  rpc DeleteEnvironment(DeleteEnvironmentRequest) returns (google.longrunning.Operation) {
245*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
246*d5c09012SAndroid Build Coastguard Worker      delete: "/v1beta1/{name=projects/*/locations/*/environments/*}"
247*d5c09012SAndroid Build Coastguard Worker    };
248*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
249*d5c09012SAndroid Build Coastguard Worker      response_type: "google.protobuf.Empty"
250*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
251*d5c09012SAndroid Build Coastguard Worker    };
252*d5c09012SAndroid Build Coastguard Worker  }
253*d5c09012SAndroid Build Coastguard Worker}
254*d5c09012SAndroid Build Coastguard Worker
255*d5c09012SAndroid Build Coastguard Worker// Represents the metadata of the long-running operation.
256*d5c09012SAndroid Build Coastguard Workermessage OperationMetadata {
257*d5c09012SAndroid Build Coastguard Worker  // The time the operation was created.
258*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 1;
259*d5c09012SAndroid Build Coastguard Worker
260*d5c09012SAndroid Build Coastguard Worker  // The time the operation finished running.
261*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp end_time = 2;
262*d5c09012SAndroid Build Coastguard Worker
263*d5c09012SAndroid Build Coastguard Worker  // Server-defined resource path for the target of the operation.
264*d5c09012SAndroid Build Coastguard Worker  string target = 3;
265*d5c09012SAndroid Build Coastguard Worker
266*d5c09012SAndroid Build Coastguard Worker  // Name of the verb executed by the operation.
267*d5c09012SAndroid Build Coastguard Worker  string verb = 4;
268*d5c09012SAndroid Build Coastguard Worker
269*d5c09012SAndroid Build Coastguard Worker  // Human-readable status of the operation, if any.
270*d5c09012SAndroid Build Coastguard Worker  string status_message = 5;
271*d5c09012SAndroid Build Coastguard Worker
272*d5c09012SAndroid Build Coastguard Worker  // Identifies whether the user has requested cancellation
273*d5c09012SAndroid Build Coastguard Worker  // of the operation. Operations that have successfully been cancelled
274*d5c09012SAndroid Build Coastguard Worker  // have [Operation.error][] value with a
275*d5c09012SAndroid Build Coastguard Worker  // [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to `Code.CANCELLED`.
276*d5c09012SAndroid Build Coastguard Worker  bool requested_cancellation = 6;
277*d5c09012SAndroid Build Coastguard Worker
278*d5c09012SAndroid Build Coastguard Worker  // API version used to start the operation.
279*d5c09012SAndroid Build Coastguard Worker  string api_version = 7;
280*d5c09012SAndroid Build Coastguard Worker
281*d5c09012SAndroid Build Coastguard Worker  // API endpoint name of this operation.
282*d5c09012SAndroid Build Coastguard Worker  string endpoint = 8;
283*d5c09012SAndroid Build Coastguard Worker}
284*d5c09012SAndroid Build Coastguard Worker
285*d5c09012SAndroid Build Coastguard Worker// Request for listing notebook instances.
286*d5c09012SAndroid Build Coastguard Workermessage ListInstancesRequest {
287*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
288*d5c09012SAndroid Build Coastguard Worker  // `parent=projects/{project_id}/locations/{location}`
289*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
290*d5c09012SAndroid Build Coastguard Worker
291*d5c09012SAndroid Build Coastguard Worker  // Maximum return size of the list call.
292*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
293*d5c09012SAndroid Build Coastguard Worker
294*d5c09012SAndroid Build Coastguard Worker  // A previous returned page token that can be used to continue listing
295*d5c09012SAndroid Build Coastguard Worker  // from the last result.
296*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
297*d5c09012SAndroid Build Coastguard Worker}
298*d5c09012SAndroid Build Coastguard Worker
299*d5c09012SAndroid Build Coastguard Worker// Response for listing notebook instances.
300*d5c09012SAndroid Build Coastguard Workermessage ListInstancesResponse {
301*d5c09012SAndroid Build Coastguard Worker  // A list of returned instances.
302*d5c09012SAndroid Build Coastguard Worker  repeated Instance instances = 1;
303*d5c09012SAndroid Build Coastguard Worker
304*d5c09012SAndroid Build Coastguard Worker  // Page token that can be used to continue listing from the last result in the
305*d5c09012SAndroid Build Coastguard Worker  // next list call.
306*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
307*d5c09012SAndroid Build Coastguard Worker
308*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached. For example,
309*d5c09012SAndroid Build Coastguard Worker  // `['us-west1-a', 'us-central1-b']`.
310*d5c09012SAndroid Build Coastguard Worker  // A ListInstancesResponse will only contain either instances or unreachables,
311*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
312*d5c09012SAndroid Build Coastguard Worker}
313*d5c09012SAndroid Build Coastguard Worker
314*d5c09012SAndroid Build Coastguard Worker// Request for getting a notebook instance.
315*d5c09012SAndroid Build Coastguard Workermessage GetInstanceRequest {
316*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
317*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
318*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
319*d5c09012SAndroid Build Coastguard Worker}
320*d5c09012SAndroid Build Coastguard Worker
321*d5c09012SAndroid Build Coastguard Worker// Request for creating a notebook instance.
322*d5c09012SAndroid Build Coastguard Workermessage CreateInstanceRequest {
323*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
324*d5c09012SAndroid Build Coastguard Worker  // `parent=projects/{project_id}/locations/{location}`
325*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
326*d5c09012SAndroid Build Coastguard Worker
327*d5c09012SAndroid Build Coastguard Worker  // Required. User-defined unique ID of this instance.
328*d5c09012SAndroid Build Coastguard Worker  string instance_id = 2 [(google.api.field_behavior) = REQUIRED];
329*d5c09012SAndroid Build Coastguard Worker
330*d5c09012SAndroid Build Coastguard Worker  // Required. The instance to be created.
331*d5c09012SAndroid Build Coastguard Worker  Instance instance = 3 [(google.api.field_behavior) = REQUIRED];
332*d5c09012SAndroid Build Coastguard Worker}
333*d5c09012SAndroid Build Coastguard Worker
334*d5c09012SAndroid Build Coastguard Worker// Request for registering a notebook instance.
335*d5c09012SAndroid Build Coastguard Workermessage RegisterInstanceRequest {
336*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
337*d5c09012SAndroid Build Coastguard Worker  // `parent=projects/{project_id}/locations/{location}`
338*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
339*d5c09012SAndroid Build Coastguard Worker
340*d5c09012SAndroid Build Coastguard Worker  // Required. User defined unique ID of this instance. The `instance_id` must
341*d5c09012SAndroid Build Coastguard Worker  // be 1 to 63 characters long and contain only lowercase letters,
342*d5c09012SAndroid Build Coastguard Worker  // numeric characters, and dashes. The first character must be a lowercase
343*d5c09012SAndroid Build Coastguard Worker  // letter and the last character cannot be a dash.
344*d5c09012SAndroid Build Coastguard Worker  string instance_id = 2 [(google.api.field_behavior) = REQUIRED];
345*d5c09012SAndroid Build Coastguard Worker}
346*d5c09012SAndroid Build Coastguard Worker
347*d5c09012SAndroid Build Coastguard Worker// Request for setting instance accelerator.
348*d5c09012SAndroid Build Coastguard Workermessage SetInstanceAcceleratorRequest {
349*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
350*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
351*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
352*d5c09012SAndroid Build Coastguard Worker
353*d5c09012SAndroid Build Coastguard Worker  // Required. Type of this accelerator.
354*d5c09012SAndroid Build Coastguard Worker  Instance.AcceleratorType type = 2 [(google.api.field_behavior) = REQUIRED];
355*d5c09012SAndroid Build Coastguard Worker
356*d5c09012SAndroid Build Coastguard Worker  // Required. Count of cores of this accelerator. Note that not all combinations
357*d5c09012SAndroid Build Coastguard Worker  // of `type` and `core_count` are valid. Check [GPUs on
358*d5c09012SAndroid Build Coastguard Worker  // Compute Engine](https://cloud.google.com/compute/docs/gpus/#gpus-list) to
359*d5c09012SAndroid Build Coastguard Worker  // find a valid combination. TPUs are not supported.
360*d5c09012SAndroid Build Coastguard Worker  int64 core_count = 3 [(google.api.field_behavior) = REQUIRED];
361*d5c09012SAndroid Build Coastguard Worker}
362*d5c09012SAndroid Build Coastguard Worker
363*d5c09012SAndroid Build Coastguard Worker// Request for setting instance machine type.
364*d5c09012SAndroid Build Coastguard Workermessage SetInstanceMachineTypeRequest {
365*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
366*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
367*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
368*d5c09012SAndroid Build Coastguard Worker
369*d5c09012SAndroid Build Coastguard Worker  // Required. The [Compute Engine machine
370*d5c09012SAndroid Build Coastguard Worker  // type](https://cloud.google.com/compute/docs/machine-types).
371*d5c09012SAndroid Build Coastguard Worker  string machine_type = 2 [(google.api.field_behavior) = REQUIRED];
372*d5c09012SAndroid Build Coastguard Worker}
373*d5c09012SAndroid Build Coastguard Worker
374*d5c09012SAndroid Build Coastguard Worker// Request for setting instance labels.
375*d5c09012SAndroid Build Coastguard Workermessage SetInstanceLabelsRequest {
376*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
377*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
378*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
379*d5c09012SAndroid Build Coastguard Worker
380*d5c09012SAndroid Build Coastguard Worker  // Labels to apply to this instance.
381*d5c09012SAndroid Build Coastguard Worker  // These can be later modified by the setLabels method
382*d5c09012SAndroid Build Coastguard Worker  map<string, string> labels = 2;
383*d5c09012SAndroid Build Coastguard Worker}
384*d5c09012SAndroid Build Coastguard Worker
385*d5c09012SAndroid Build Coastguard Worker// Request for deleting a notebook instance.
386*d5c09012SAndroid Build Coastguard Workermessage DeleteInstanceRequest {
387*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
388*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
389*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
390*d5c09012SAndroid Build Coastguard Worker}
391*d5c09012SAndroid Build Coastguard Worker
392*d5c09012SAndroid Build Coastguard Worker// Request for starting a notebook instance
393*d5c09012SAndroid Build Coastguard Workermessage StartInstanceRequest {
394*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
395*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
396*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
397*d5c09012SAndroid Build Coastguard Worker}
398*d5c09012SAndroid Build Coastguard Worker
399*d5c09012SAndroid Build Coastguard Worker// Request for stopping a notebook instance
400*d5c09012SAndroid Build Coastguard Workermessage StopInstanceRequest {
401*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
402*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
403*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
404*d5c09012SAndroid Build Coastguard Worker}
405*d5c09012SAndroid Build Coastguard Worker
406*d5c09012SAndroid Build Coastguard Worker// Request for reseting a notebook instance
407*d5c09012SAndroid Build Coastguard Workermessage ResetInstanceRequest {
408*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
409*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
410*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
411*d5c09012SAndroid Build Coastguard Worker}
412*d5c09012SAndroid Build Coastguard Worker
413*d5c09012SAndroid Build Coastguard Worker// Request for notebook instances to report information to Notebooks API.
414*d5c09012SAndroid Build Coastguard Workermessage ReportInstanceInfoRequest {
415*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
416*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
417*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
418*d5c09012SAndroid Build Coastguard Worker
419*d5c09012SAndroid Build Coastguard Worker  // Required. The VM hardware token for authenticating the VM.
420*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/compute/docs/instances/verifying-instance-identity
421*d5c09012SAndroid Build Coastguard Worker  string vm_id = 2 [(google.api.field_behavior) = REQUIRED];
422*d5c09012SAndroid Build Coastguard Worker
423*d5c09012SAndroid Build Coastguard Worker  // The metadata reported to Notebooks API. This will be merged to the instance
424*d5c09012SAndroid Build Coastguard Worker  // metadata store
425*d5c09012SAndroid Build Coastguard Worker  map<string, string> metadata = 3;
426*d5c09012SAndroid Build Coastguard Worker}
427*d5c09012SAndroid Build Coastguard Worker
428*d5c09012SAndroid Build Coastguard Worker// Request for checking if a notebook instance is upgradeable.
429*d5c09012SAndroid Build Coastguard Workermessage IsInstanceUpgradeableRequest {
430*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
431*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
432*d5c09012SAndroid Build Coastguard Worker  string notebook_instance = 1 [(google.api.field_behavior) = REQUIRED];
433*d5c09012SAndroid Build Coastguard Worker}
434*d5c09012SAndroid Build Coastguard Worker
435*d5c09012SAndroid Build Coastguard Worker// Response for checking if a notebook instance is upgradeable.
436*d5c09012SAndroid Build Coastguard Workermessage IsInstanceUpgradeableResponse {
437*d5c09012SAndroid Build Coastguard Worker  // If an instance is upgradeable.
438*d5c09012SAndroid Build Coastguard Worker  bool upgradeable = 1;
439*d5c09012SAndroid Build Coastguard Worker
440*d5c09012SAndroid Build Coastguard Worker  // The version this instance will be upgraded to if calling the upgrade
441*d5c09012SAndroid Build Coastguard Worker  // endpoint. This field will only be populated if field upgradeable is true.
442*d5c09012SAndroid Build Coastguard Worker  string upgrade_version = 2;
443*d5c09012SAndroid Build Coastguard Worker
444*d5c09012SAndroid Build Coastguard Worker  // Additional information about upgrade.
445*d5c09012SAndroid Build Coastguard Worker  string upgrade_info = 3;
446*d5c09012SAndroid Build Coastguard Worker
447*d5c09012SAndroid Build Coastguard Worker  // The new image self link this instance will be upgraded to if calling the
448*d5c09012SAndroid Build Coastguard Worker  // upgrade endpoint. This field will only be populated if field upgradeable
449*d5c09012SAndroid Build Coastguard Worker  // is true.
450*d5c09012SAndroid Build Coastguard Worker  string upgrade_image = 4;
451*d5c09012SAndroid Build Coastguard Worker}
452*d5c09012SAndroid Build Coastguard Worker
453*d5c09012SAndroid Build Coastguard Worker// Request for upgrading a notebook instance
454*d5c09012SAndroid Build Coastguard Workermessage UpgradeInstanceRequest {
455*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
456*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
457*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
458*d5c09012SAndroid Build Coastguard Worker}
459*d5c09012SAndroid Build Coastguard Worker
460*d5c09012SAndroid Build Coastguard Worker// Request for upgrading a notebook instance from within the VM
461*d5c09012SAndroid Build Coastguard Workermessage UpgradeInstanceInternalRequest {
462*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
463*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/instances/{instance_id}`
464*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
465*d5c09012SAndroid Build Coastguard Worker
466*d5c09012SAndroid Build Coastguard Worker  // Required. The VM hardware token for authenticating the VM.
467*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/compute/docs/instances/verifying-instance-identity
468*d5c09012SAndroid Build Coastguard Worker  string vm_id = 2 [(google.api.field_behavior) = REQUIRED];
469*d5c09012SAndroid Build Coastguard Worker}
470*d5c09012SAndroid Build Coastguard Worker
471*d5c09012SAndroid Build Coastguard Worker// Request for listing environments.
472*d5c09012SAndroid Build Coastguard Workermessage ListEnvironmentsRequest {
473*d5c09012SAndroid Build Coastguard Worker  // Required. Format: `projects/{project_id}/locations/{location}`
474*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
475*d5c09012SAndroid Build Coastguard Worker
476*d5c09012SAndroid Build Coastguard Worker  // Maximum return size of the list call.
477*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
478*d5c09012SAndroid Build Coastguard Worker
479*d5c09012SAndroid Build Coastguard Worker  // A previous returned page token that can be used to continue listing from
480*d5c09012SAndroid Build Coastguard Worker  // the last result.
481*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
482*d5c09012SAndroid Build Coastguard Worker}
483*d5c09012SAndroid Build Coastguard Worker
484*d5c09012SAndroid Build Coastguard Worker// Response for listing environments.
485*d5c09012SAndroid Build Coastguard Workermessage ListEnvironmentsResponse {
486*d5c09012SAndroid Build Coastguard Worker  // A list of returned environments.
487*d5c09012SAndroid Build Coastguard Worker  repeated Environment environments = 1;
488*d5c09012SAndroid Build Coastguard Worker
489*d5c09012SAndroid Build Coastguard Worker  // A page token that can be used to continue listing from the last result
490*d5c09012SAndroid Build Coastguard Worker  // in the next list call.
491*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
492*d5c09012SAndroid Build Coastguard Worker
493*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
494*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
495*d5c09012SAndroid Build Coastguard Worker}
496*d5c09012SAndroid Build Coastguard Worker
497*d5c09012SAndroid Build Coastguard Worker// Request for getting a notebook environment.
498*d5c09012SAndroid Build Coastguard Workermessage GetEnvironmentRequest {
499*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
500*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/environments/{environment_id}`
501*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
502*d5c09012SAndroid Build Coastguard Worker}
503*d5c09012SAndroid Build Coastguard Worker
504*d5c09012SAndroid Build Coastguard Worker// Request for creating a notebook environment.
505*d5c09012SAndroid Build Coastguard Workermessage CreateEnvironmentRequest {
506*d5c09012SAndroid Build Coastguard Worker  // Required. Format: `projects/{project_id}/locations/{location}`
507*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
508*d5c09012SAndroid Build Coastguard Worker
509*d5c09012SAndroid Build Coastguard Worker  // Required. User-defined unique ID of this environment. The `environment_id` must
510*d5c09012SAndroid Build Coastguard Worker  // be 1 to 63 characters long and contain only lowercase letters,
511*d5c09012SAndroid Build Coastguard Worker  // numeric characters, and dashes. The first character must be a lowercase
512*d5c09012SAndroid Build Coastguard Worker  // letter and the last character cannot be a dash.
513*d5c09012SAndroid Build Coastguard Worker  string environment_id = 2 [(google.api.field_behavior) = REQUIRED];
514*d5c09012SAndroid Build Coastguard Worker
515*d5c09012SAndroid Build Coastguard Worker  // Required. The environment to be created.
516*d5c09012SAndroid Build Coastguard Worker  Environment environment = 3 [(google.api.field_behavior) = REQUIRED];
517*d5c09012SAndroid Build Coastguard Worker}
518*d5c09012SAndroid Build Coastguard Worker
519*d5c09012SAndroid Build Coastguard Worker// Request for deleting a notebook environment.
520*d5c09012SAndroid Build Coastguard Workermessage DeleteEnvironmentRequest {
521*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
522*d5c09012SAndroid Build Coastguard Worker  // `projects/{project_id}/locations/{location}/environments/{environment_id}`
523*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
524*d5c09012SAndroid Build Coastguard Worker}
525