xref: /aosp_15_r20/external/googleapis/google/cloud/alloydb/v1/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.alloydb.v1;
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/cloud/alloydb/v1/resources.proto";
24*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto";
25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/duration.proto";
26*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto";
27*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto";
28*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
29*d5c09012SAndroid Build Coastguard Workerimport "google/rpc/status.proto";
30*d5c09012SAndroid Build Coastguard Worker
31*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.AlloyDb.V1";
32*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/alloydb/apiv1/alloydbpb;alloydbpb";
33*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
34*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ServiceProto";
35*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.alloydb.v1";
36*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\AlloyDb\\V1";
37*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::AlloyDB::V1";
38*d5c09012SAndroid Build Coastguard Worker
39*d5c09012SAndroid Build Coastguard Worker// Service describing handlers for resources
40*d5c09012SAndroid Build Coastguard Workerservice AlloyDBAdmin {
41*d5c09012SAndroid Build Coastguard Worker  option (google.api.default_host) = "alloydb.googleapis.com";
42*d5c09012SAndroid Build Coastguard Worker  option (google.api.oauth_scopes) =
43*d5c09012SAndroid Build Coastguard Worker      "https://www.googleapis.com/auth/cloud-platform";
44*d5c09012SAndroid Build Coastguard Worker
45*d5c09012SAndroid Build Coastguard Worker  // Lists Clusters in a given project and location.
46*d5c09012SAndroid Build Coastguard Worker  rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) {
47*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
48*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=projects/*/locations/*}/clusters"
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  // Gets details of a single Cluster.
54*d5c09012SAndroid Build Coastguard Worker  rpc GetCluster(GetClusterRequest) returns (Cluster) {
55*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
56*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=projects/*/locations/*/clusters/*}"
57*d5c09012SAndroid Build Coastguard Worker    };
58*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
59*d5c09012SAndroid Build Coastguard Worker  }
60*d5c09012SAndroid Build Coastguard Worker
61*d5c09012SAndroid Build Coastguard Worker  // Creates a new Cluster in a given project and location.
62*d5c09012SAndroid Build Coastguard Worker  rpc CreateCluster(CreateClusterRequest)
63*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
64*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
65*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*}/clusters"
66*d5c09012SAndroid Build Coastguard Worker      body: "cluster"
67*d5c09012SAndroid Build Coastguard Worker    };
68*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,cluster,cluster_id";
69*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
70*d5c09012SAndroid Build Coastguard Worker      response_type: "Cluster"
71*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
72*d5c09012SAndroid Build Coastguard Worker    };
73*d5c09012SAndroid Build Coastguard Worker  }
74*d5c09012SAndroid Build Coastguard Worker
75*d5c09012SAndroid Build Coastguard Worker  // Updates the parameters of a single Cluster.
76*d5c09012SAndroid Build Coastguard Worker  rpc UpdateCluster(UpdateClusterRequest)
77*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
78*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
79*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{cluster.name=projects/*/locations/*/clusters/*}"
80*d5c09012SAndroid Build Coastguard Worker      body: "cluster"
81*d5c09012SAndroid Build Coastguard Worker    };
82*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "cluster,update_mask";
83*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
84*d5c09012SAndroid Build Coastguard Worker      response_type: "Cluster"
85*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
86*d5c09012SAndroid Build Coastguard Worker    };
87*d5c09012SAndroid Build Coastguard Worker  }
88*d5c09012SAndroid Build Coastguard Worker
89*d5c09012SAndroid Build Coastguard Worker  // Deletes a single Cluster.
90*d5c09012SAndroid Build Coastguard Worker  rpc DeleteCluster(DeleteClusterRequest)
91*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
92*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
93*d5c09012SAndroid Build Coastguard Worker      delete: "/v1/{name=projects/*/locations/*/clusters/*}"
94*d5c09012SAndroid Build Coastguard Worker    };
95*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
96*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
97*d5c09012SAndroid Build Coastguard Worker      response_type: "google.protobuf.Empty"
98*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
99*d5c09012SAndroid Build Coastguard Worker    };
100*d5c09012SAndroid Build Coastguard Worker  }
101*d5c09012SAndroid Build Coastguard Worker
102*d5c09012SAndroid Build Coastguard Worker  // Promotes a SECONDARY cluster. This turns down replication
103*d5c09012SAndroid Build Coastguard Worker  // from the PRIMARY cluster and promotes a secondary cluster
104*d5c09012SAndroid Build Coastguard Worker  // into its own standalone cluster.
105*d5c09012SAndroid Build Coastguard Worker  // Imperative only.
106*d5c09012SAndroid Build Coastguard Worker  rpc PromoteCluster(PromoteClusterRequest)
107*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
108*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
109*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=projects/*/locations/*/clusters/*}:promote"
110*d5c09012SAndroid Build Coastguard Worker      body: "*"
111*d5c09012SAndroid Build Coastguard Worker    };
112*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
113*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
114*d5c09012SAndroid Build Coastguard Worker      response_type: "Cluster"
115*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
116*d5c09012SAndroid Build Coastguard Worker    };
117*d5c09012SAndroid Build Coastguard Worker  }
118*d5c09012SAndroid Build Coastguard Worker
119*d5c09012SAndroid Build Coastguard Worker  // Creates a new Cluster in a given project and location, with a volume
120*d5c09012SAndroid Build Coastguard Worker  // restored from the provided source, either a backup ID or a point-in-time
121*d5c09012SAndroid Build Coastguard Worker  // and a source cluster.
122*d5c09012SAndroid Build Coastguard Worker  rpc RestoreCluster(RestoreClusterRequest)
123*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
124*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
125*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*}/clusters:restore"
126*d5c09012SAndroid Build Coastguard Worker      body: "*"
127*d5c09012SAndroid Build Coastguard Worker    };
128*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
129*d5c09012SAndroid Build Coastguard Worker      response_type: "Cluster"
130*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
131*d5c09012SAndroid Build Coastguard Worker    };
132*d5c09012SAndroid Build Coastguard Worker  }
133*d5c09012SAndroid Build Coastguard Worker
134*d5c09012SAndroid Build Coastguard Worker  // Creates a cluster of type SECONDARY in the given location using
135*d5c09012SAndroid Build Coastguard Worker  // the primary cluster as the source.
136*d5c09012SAndroid Build Coastguard Worker  rpc CreateSecondaryCluster(CreateSecondaryClusterRequest)
137*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
138*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
139*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*}/clusters:createsecondary"
140*d5c09012SAndroid Build Coastguard Worker      body: "cluster"
141*d5c09012SAndroid Build Coastguard Worker    };
142*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,cluster,cluster_id";
143*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
144*d5c09012SAndroid Build Coastguard Worker      response_type: "Cluster"
145*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
146*d5c09012SAndroid Build Coastguard Worker    };
147*d5c09012SAndroid Build Coastguard Worker  }
148*d5c09012SAndroid Build Coastguard Worker
149*d5c09012SAndroid Build Coastguard Worker  // Lists Instances in a given project and location.
150*d5c09012SAndroid Build Coastguard Worker  rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) {
151*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
152*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=projects/*/locations/*/clusters/*}/instances"
153*d5c09012SAndroid Build Coastguard Worker    };
154*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
155*d5c09012SAndroid Build Coastguard Worker  }
156*d5c09012SAndroid Build Coastguard Worker
157*d5c09012SAndroid Build Coastguard Worker  // Gets details of a single Instance.
158*d5c09012SAndroid Build Coastguard Worker  rpc GetInstance(GetInstanceRequest) returns (Instance) {
159*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
160*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=projects/*/locations/*/clusters/*/instances/*}"
161*d5c09012SAndroid Build Coastguard Worker    };
162*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
163*d5c09012SAndroid Build Coastguard Worker  }
164*d5c09012SAndroid Build Coastguard Worker
165*d5c09012SAndroid Build Coastguard Worker  // Creates a new Instance in a given project and location.
166*d5c09012SAndroid Build Coastguard Worker  rpc CreateInstance(CreateInstanceRequest)
167*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
168*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
169*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*/clusters/*}/instances"
170*d5c09012SAndroid Build Coastguard Worker      body: "instance"
171*d5c09012SAndroid Build Coastguard Worker    };
172*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,instance,instance_id";
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  // Creates a new SECONDARY Instance in a given project and location.
180*d5c09012SAndroid Build Coastguard Worker  rpc CreateSecondaryInstance(CreateSecondaryInstanceRequest)
181*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
182*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
183*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*/clusters/*}/instances:createsecondary"
184*d5c09012SAndroid Build Coastguard Worker      body: "instance"
185*d5c09012SAndroid Build Coastguard Worker    };
186*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,instance,instance_id";
187*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
188*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
189*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
190*d5c09012SAndroid Build Coastguard Worker    };
191*d5c09012SAndroid Build Coastguard Worker  }
192*d5c09012SAndroid Build Coastguard Worker
193*d5c09012SAndroid Build Coastguard Worker  // Creates new instances under the given project, location and cluster.
194*d5c09012SAndroid Build Coastguard Worker  // There can be only one primary instance in a cluster. If the primary
195*d5c09012SAndroid Build Coastguard Worker  // instance exists in the cluster as well as this request, then API will
196*d5c09012SAndroid Build Coastguard Worker  // throw an error.
197*d5c09012SAndroid Build Coastguard Worker  // The primary instance should exist before any read pool instance is
198*d5c09012SAndroid Build Coastguard Worker  // created. If the primary instance is a part of the request payload, then
199*d5c09012SAndroid Build Coastguard Worker  // the API will take care of creating instances in the correct order.
200*d5c09012SAndroid Build Coastguard Worker  // This method is here to support Google-internal use cases, and is not meant
201*d5c09012SAndroid Build Coastguard Worker  // for external customers to consume. Please do not start relying on it; its
202*d5c09012SAndroid Build Coastguard Worker  // behavior is subject to change without notice.
203*d5c09012SAndroid Build Coastguard Worker  rpc BatchCreateInstances(BatchCreateInstancesRequest)
204*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
205*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
206*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*/clusters/*}/instances:batchCreate"
207*d5c09012SAndroid Build Coastguard Worker      body: "requests"
208*d5c09012SAndroid Build Coastguard Worker    };
209*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
210*d5c09012SAndroid Build Coastguard Worker      response_type: "BatchCreateInstancesResponse"
211*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
212*d5c09012SAndroid Build Coastguard Worker    };
213*d5c09012SAndroid Build Coastguard Worker  }
214*d5c09012SAndroid Build Coastguard Worker
215*d5c09012SAndroid Build Coastguard Worker  // Updates the parameters of a single Instance.
216*d5c09012SAndroid Build Coastguard Worker  rpc UpdateInstance(UpdateInstanceRequest)
217*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
218*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
219*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{instance.name=projects/*/locations/*/clusters/*/instances/*}"
220*d5c09012SAndroid Build Coastguard Worker      body: "instance"
221*d5c09012SAndroid Build Coastguard Worker    };
222*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "instance,update_mask";
223*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
224*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
225*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
226*d5c09012SAndroid Build Coastguard Worker    };
227*d5c09012SAndroid Build Coastguard Worker  }
228*d5c09012SAndroid Build Coastguard Worker
229*d5c09012SAndroid Build Coastguard Worker  // Deletes a single Instance.
230*d5c09012SAndroid Build Coastguard Worker  rpc DeleteInstance(DeleteInstanceRequest)
231*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
232*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
233*d5c09012SAndroid Build Coastguard Worker      delete: "/v1/{name=projects/*/locations/*/clusters/*/instances/*}"
234*d5c09012SAndroid Build Coastguard Worker    };
235*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
236*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
237*d5c09012SAndroid Build Coastguard Worker      response_type: "google.protobuf.Empty"
238*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
239*d5c09012SAndroid Build Coastguard Worker    };
240*d5c09012SAndroid Build Coastguard Worker  }
241*d5c09012SAndroid Build Coastguard Worker
242*d5c09012SAndroid Build Coastguard Worker  // Forces a Failover for a highly available instance.
243*d5c09012SAndroid Build Coastguard Worker  // Failover promotes the HA standby instance as the new primary.
244*d5c09012SAndroid Build Coastguard Worker  // Imperative only.
245*d5c09012SAndroid Build Coastguard Worker  rpc FailoverInstance(FailoverInstanceRequest)
246*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
247*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
248*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=projects/*/locations/*/clusters/*/instances/*}:failover"
249*d5c09012SAndroid Build Coastguard Worker      body: "*"
250*d5c09012SAndroid Build Coastguard Worker    };
251*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
252*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
253*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
254*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
255*d5c09012SAndroid Build Coastguard Worker    };
256*d5c09012SAndroid Build Coastguard Worker  }
257*d5c09012SAndroid Build Coastguard Worker
258*d5c09012SAndroid Build Coastguard Worker  // Injects fault in an instance.
259*d5c09012SAndroid Build Coastguard Worker  // Imperative only.
260*d5c09012SAndroid Build Coastguard Worker  rpc InjectFault(InjectFaultRequest) returns (google.longrunning.Operation) {
261*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
262*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=projects/*/locations/*/clusters/*/instances/*}:injectFault"
263*d5c09012SAndroid Build Coastguard Worker      body: "*"
264*d5c09012SAndroid Build Coastguard Worker    };
265*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "fault_type,name";
266*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
267*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
268*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
269*d5c09012SAndroid Build Coastguard Worker    };
270*d5c09012SAndroid Build Coastguard Worker  }
271*d5c09012SAndroid Build Coastguard Worker
272*d5c09012SAndroid Build Coastguard Worker  // Restart an Instance in a cluster.
273*d5c09012SAndroid Build Coastguard Worker  // Imperative only.
274*d5c09012SAndroid Build Coastguard Worker  rpc RestartInstance(RestartInstanceRequest)
275*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
276*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
277*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=projects/*/locations/*/clusters/*/instances/*}:restart"
278*d5c09012SAndroid Build Coastguard Worker      body: "*"
279*d5c09012SAndroid Build Coastguard Worker    };
280*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
281*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
282*d5c09012SAndroid Build Coastguard Worker      response_type: "Instance"
283*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
284*d5c09012SAndroid Build Coastguard Worker    };
285*d5c09012SAndroid Build Coastguard Worker  }
286*d5c09012SAndroid Build Coastguard Worker
287*d5c09012SAndroid Build Coastguard Worker  // Lists Backups in a given project and location.
288*d5c09012SAndroid Build Coastguard Worker  rpc ListBackups(ListBackupsRequest) returns (ListBackupsResponse) {
289*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
290*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=projects/*/locations/*}/backups"
291*d5c09012SAndroid Build Coastguard Worker    };
292*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
293*d5c09012SAndroid Build Coastguard Worker  }
294*d5c09012SAndroid Build Coastguard Worker
295*d5c09012SAndroid Build Coastguard Worker  // Gets details of a single Backup.
296*d5c09012SAndroid Build Coastguard Worker  rpc GetBackup(GetBackupRequest) returns (Backup) {
297*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
298*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=projects/*/locations/*/backups/*}"
299*d5c09012SAndroid Build Coastguard Worker    };
300*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
301*d5c09012SAndroid Build Coastguard Worker  }
302*d5c09012SAndroid Build Coastguard Worker
303*d5c09012SAndroid Build Coastguard Worker  // Creates a new Backup in a given project and location.
304*d5c09012SAndroid Build Coastguard Worker  rpc CreateBackup(CreateBackupRequest) returns (google.longrunning.Operation) {
305*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
306*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*}/backups"
307*d5c09012SAndroid Build Coastguard Worker      body: "backup"
308*d5c09012SAndroid Build Coastguard Worker    };
309*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,backup,backup_id";
310*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
311*d5c09012SAndroid Build Coastguard Worker      response_type: "Backup"
312*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
313*d5c09012SAndroid Build Coastguard Worker    };
314*d5c09012SAndroid Build Coastguard Worker  }
315*d5c09012SAndroid Build Coastguard Worker
316*d5c09012SAndroid Build Coastguard Worker  // Updates the parameters of a single Backup.
317*d5c09012SAndroid Build Coastguard Worker  rpc UpdateBackup(UpdateBackupRequest) returns (google.longrunning.Operation) {
318*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
319*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{backup.name=projects/*/locations/*/backups/*}"
320*d5c09012SAndroid Build Coastguard Worker      body: "backup"
321*d5c09012SAndroid Build Coastguard Worker    };
322*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "backup,update_mask";
323*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
324*d5c09012SAndroid Build Coastguard Worker      response_type: "Backup"
325*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
326*d5c09012SAndroid Build Coastguard Worker    };
327*d5c09012SAndroid Build Coastguard Worker  }
328*d5c09012SAndroid Build Coastguard Worker
329*d5c09012SAndroid Build Coastguard Worker  // Deletes a single Backup.
330*d5c09012SAndroid Build Coastguard Worker  rpc DeleteBackup(DeleteBackupRequest) returns (google.longrunning.Operation) {
331*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
332*d5c09012SAndroid Build Coastguard Worker      delete: "/v1/{name=projects/*/locations/*/backups/*}"
333*d5c09012SAndroid Build Coastguard Worker    };
334*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
335*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
336*d5c09012SAndroid Build Coastguard Worker      response_type: "google.protobuf.Empty"
337*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
338*d5c09012SAndroid Build Coastguard Worker    };
339*d5c09012SAndroid Build Coastguard Worker  }
340*d5c09012SAndroid Build Coastguard Worker
341*d5c09012SAndroid Build Coastguard Worker  // Lists SupportedDatabaseFlags for a given project and location.
342*d5c09012SAndroid Build Coastguard Worker  rpc ListSupportedDatabaseFlags(ListSupportedDatabaseFlagsRequest)
343*d5c09012SAndroid Build Coastguard Worker      returns (ListSupportedDatabaseFlagsResponse) {
344*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
345*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=projects/*/locations/*}/supportedDatabaseFlags"
346*d5c09012SAndroid Build Coastguard Worker    };
347*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
348*d5c09012SAndroid Build Coastguard Worker  }
349*d5c09012SAndroid Build Coastguard Worker
350*d5c09012SAndroid Build Coastguard Worker  // Generate a client certificate signed by a Cluster CA.
351*d5c09012SAndroid Build Coastguard Worker  // The sole purpose of this endpoint is to support AlloyDB connectors and the
352*d5c09012SAndroid Build Coastguard Worker  // Auth Proxy client. The endpoint's behavior is subject to change without
353*d5c09012SAndroid Build Coastguard Worker  // notice, so do not rely on its behavior remaining constant. Future changes
354*d5c09012SAndroid Build Coastguard Worker  // will not break AlloyDB connectors or the Auth Proxy client.
355*d5c09012SAndroid Build Coastguard Worker  rpc GenerateClientCertificate(GenerateClientCertificateRequest)
356*d5c09012SAndroid Build Coastguard Worker      returns (GenerateClientCertificateResponse) {
357*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
358*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*/clusters/*}:generateClientCertificate"
359*d5c09012SAndroid Build Coastguard Worker      body: "*"
360*d5c09012SAndroid Build Coastguard Worker    };
361*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
362*d5c09012SAndroid Build Coastguard Worker  }
363*d5c09012SAndroid Build Coastguard Worker
364*d5c09012SAndroid Build Coastguard Worker  // Get instance metadata used for a connection.
365*d5c09012SAndroid Build Coastguard Worker  rpc GetConnectionInfo(GetConnectionInfoRequest) returns (ConnectionInfo) {
366*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
367*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=projects/*/locations/*/clusters/*/instances/*}/connectionInfo"
368*d5c09012SAndroid Build Coastguard Worker    };
369*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
370*d5c09012SAndroid Build Coastguard Worker  }
371*d5c09012SAndroid Build Coastguard Worker
372*d5c09012SAndroid Build Coastguard Worker  // Lists Users in a given project and location.
373*d5c09012SAndroid Build Coastguard Worker  rpc ListUsers(ListUsersRequest) returns (ListUsersResponse) {
374*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
375*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=projects/*/locations/*/clusters/*}/users"
376*d5c09012SAndroid Build Coastguard Worker    };
377*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
378*d5c09012SAndroid Build Coastguard Worker  }
379*d5c09012SAndroid Build Coastguard Worker
380*d5c09012SAndroid Build Coastguard Worker  // Gets details of a single User.
381*d5c09012SAndroid Build Coastguard Worker  rpc GetUser(GetUserRequest) returns (User) {
382*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
383*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=projects/*/locations/*/clusters/*/users/*}"
384*d5c09012SAndroid Build Coastguard Worker    };
385*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
386*d5c09012SAndroid Build Coastguard Worker  }
387*d5c09012SAndroid Build Coastguard Worker
388*d5c09012SAndroid Build Coastguard Worker  // Creates a new User in a given project, location, and cluster.
389*d5c09012SAndroid Build Coastguard Worker  rpc CreateUser(CreateUserRequest) returns (User) {
390*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
391*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=projects/*/locations/*/clusters/*}/users"
392*d5c09012SAndroid Build Coastguard Worker      body: "user"
393*d5c09012SAndroid Build Coastguard Worker    };
394*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,user,user_id";
395*d5c09012SAndroid Build Coastguard Worker  }
396*d5c09012SAndroid Build Coastguard Worker
397*d5c09012SAndroid Build Coastguard Worker  // Updates the parameters of a single User.
398*d5c09012SAndroid Build Coastguard Worker  rpc UpdateUser(UpdateUserRequest) returns (User) {
399*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
400*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{user.name=projects/*/locations/*/clusters/*/users/*}"
401*d5c09012SAndroid Build Coastguard Worker      body: "user"
402*d5c09012SAndroid Build Coastguard Worker    };
403*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "user,update_mask";
404*d5c09012SAndroid Build Coastguard Worker  }
405*d5c09012SAndroid Build Coastguard Worker
406*d5c09012SAndroid Build Coastguard Worker  // Deletes a single User.
407*d5c09012SAndroid Build Coastguard Worker  rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty) {
408*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
409*d5c09012SAndroid Build Coastguard Worker      delete: "/v1/{name=projects/*/locations/*/clusters/*/users/*}"
410*d5c09012SAndroid Build Coastguard Worker    };
411*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
412*d5c09012SAndroid Build Coastguard Worker  }
413*d5c09012SAndroid Build Coastguard Worker}
414*d5c09012SAndroid Build Coastguard Worker
415*d5c09012SAndroid Build Coastguard Worker// Message for requesting list of Clusters
416*d5c09012SAndroid Build Coastguard Workermessage ListClustersRequest {
417*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. For the required format, see the
418*d5c09012SAndroid Build Coastguard Worker  // comment on the Cluster.name field. Additionally, you can perform an
419*d5c09012SAndroid Build Coastguard Worker  // aggregated list operation by specifying a value with the following format:
420*d5c09012SAndroid Build Coastguard Worker  //  * projects/{project}/locations/-
421*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
422*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
423*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
424*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Cluster"
425*d5c09012SAndroid Build Coastguard Worker    }
426*d5c09012SAndroid Build Coastguard Worker  ];
427*d5c09012SAndroid Build Coastguard Worker
428*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server may return fewer items than
429*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, server will pick an appropriate default.
430*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
431*d5c09012SAndroid Build Coastguard Worker
432*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
433*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
434*d5c09012SAndroid Build Coastguard Worker
435*d5c09012SAndroid Build Coastguard Worker  // Optional. Filtering results
436*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
437*d5c09012SAndroid Build Coastguard Worker
438*d5c09012SAndroid Build Coastguard Worker  // Optional. Hint for how to order the results
439*d5c09012SAndroid Build Coastguard Worker  string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
440*d5c09012SAndroid Build Coastguard Worker}
441*d5c09012SAndroid Build Coastguard Worker
442*d5c09012SAndroid Build Coastguard Worker// Message for response to listing Clusters
443*d5c09012SAndroid Build Coastguard Workermessage ListClustersResponse {
444*d5c09012SAndroid Build Coastguard Worker  // The list of Cluster
445*d5c09012SAndroid Build Coastguard Worker  repeated Cluster clusters = 1;
446*d5c09012SAndroid Build Coastguard Worker
447*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
448*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
449*d5c09012SAndroid Build Coastguard Worker
450*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
451*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
452*d5c09012SAndroid Build Coastguard Worker}
453*d5c09012SAndroid Build Coastguard Worker
454*d5c09012SAndroid Build Coastguard Worker// Message for getting a Cluster
455*d5c09012SAndroid Build Coastguard Workermessage GetClusterRequest {
456*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
457*d5c09012SAndroid Build Coastguard Worker  // comment on the Cluster.name field.
458*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
459*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
460*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/Cluster" }
461*d5c09012SAndroid Build Coastguard Worker  ];
462*d5c09012SAndroid Build Coastguard Worker
463*d5c09012SAndroid Build Coastguard Worker  // Optional. The view of the cluster to return. Returns all default fields if
464*d5c09012SAndroid Build Coastguard Worker  // not set.
465*d5c09012SAndroid Build Coastguard Worker  ClusterView view = 2 [(google.api.field_behavior) = OPTIONAL];
466*d5c09012SAndroid Build Coastguard Worker}
467*d5c09012SAndroid Build Coastguard Worker
468*d5c09012SAndroid Build Coastguard Workermessage CreateSecondaryClusterRequest {
469*d5c09012SAndroid Build Coastguard Worker  // Required. The location of the new cluster. For the required
470*d5c09012SAndroid Build Coastguard Worker  // format, see the comment on the Cluster.name field.
471*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
472*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
473*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
474*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Cluster"
475*d5c09012SAndroid Build Coastguard Worker    }
476*d5c09012SAndroid Build Coastguard Worker  ];
477*d5c09012SAndroid Build Coastguard Worker
478*d5c09012SAndroid Build Coastguard Worker  // Required. ID of the requesting object (the secondary cluster).
479*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 2 [(google.api.field_behavior) = REQUIRED];
480*d5c09012SAndroid Build Coastguard Worker
481*d5c09012SAndroid Build Coastguard Worker  // Required. Configuration of the requesting object (the secondary cluster).
482*d5c09012SAndroid Build Coastguard Worker  Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED];
483*d5c09012SAndroid Build Coastguard Worker
484*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
485*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
486*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
487*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
488*d5c09012SAndroid Build Coastguard Worker  //
489*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
490*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
491*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
492*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
493*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
494*d5c09012SAndroid Build Coastguard Worker  //
495*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
496*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
497*d5c09012SAndroid Build Coastguard Worker  string request_id = 5 [(google.api.field_behavior) = OPTIONAL];
498*d5c09012SAndroid Build Coastguard Worker
499*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
500*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the create
501*d5c09012SAndroid Build Coastguard Worker  // request.
502*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 6 [(google.api.field_behavior) = OPTIONAL];
503*d5c09012SAndroid Build Coastguard Worker}
504*d5c09012SAndroid Build Coastguard Worker
505*d5c09012SAndroid Build Coastguard Worker// Message for creating a Cluster
506*d5c09012SAndroid Build Coastguard Workermessage CreateClusterRequest {
507*d5c09012SAndroid Build Coastguard Worker  // Required. The location of the new cluster. For the required format, see the
508*d5c09012SAndroid Build Coastguard Worker  // comment on the Cluster.name field.
509*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
510*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
511*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
512*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Cluster"
513*d5c09012SAndroid Build Coastguard Worker    }
514*d5c09012SAndroid Build Coastguard Worker  ];
515*d5c09012SAndroid Build Coastguard Worker
516*d5c09012SAndroid Build Coastguard Worker  // Required. ID of the requesting object.
517*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 2 [(google.api.field_behavior) = REQUIRED];
518*d5c09012SAndroid Build Coastguard Worker
519*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being created
520*d5c09012SAndroid Build Coastguard Worker  Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED];
521*d5c09012SAndroid Build Coastguard Worker
522*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
523*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
524*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
525*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
526*d5c09012SAndroid Build Coastguard Worker  //
527*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
528*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
529*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
530*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
531*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
532*d5c09012SAndroid Build Coastguard Worker  //
533*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
534*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
535*d5c09012SAndroid Build Coastguard Worker  string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
536*d5c09012SAndroid Build Coastguard Worker
537*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
538*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the create
539*d5c09012SAndroid Build Coastguard Worker  // request.
540*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL];
541*d5c09012SAndroid Build Coastguard Worker}
542*d5c09012SAndroid Build Coastguard Worker
543*d5c09012SAndroid Build Coastguard Worker// Message for updating a Cluster
544*d5c09012SAndroid Build Coastguard Workermessage UpdateClusterRequest {
545*d5c09012SAndroid Build Coastguard Worker  // Optional. Field mask is used to specify the fields to be overwritten in the
546*d5c09012SAndroid Build Coastguard Worker  // Cluster resource by the update.
547*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
548*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
549*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
550*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1
551*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
552*d5c09012SAndroid Build Coastguard Worker
553*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being updated
554*d5c09012SAndroid Build Coastguard Worker  Cluster cluster = 2 [(google.api.field_behavior) = REQUIRED];
555*d5c09012SAndroid Build Coastguard Worker
556*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
557*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
558*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
559*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
560*d5c09012SAndroid Build Coastguard Worker  //
561*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
562*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
563*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
564*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
565*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
566*d5c09012SAndroid Build Coastguard Worker  //
567*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
568*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
569*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
570*d5c09012SAndroid Build Coastguard Worker
571*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
572*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the update
573*d5c09012SAndroid Build Coastguard Worker  // request.
574*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
575*d5c09012SAndroid Build Coastguard Worker
576*d5c09012SAndroid Build Coastguard Worker  // Optional. If set to true, update succeeds even if cluster is not found. In
577*d5c09012SAndroid Build Coastguard Worker  // that case, a new cluster is created and `update_mask` is ignored.
578*d5c09012SAndroid Build Coastguard Worker  bool allow_missing = 5 [(google.api.field_behavior) = OPTIONAL];
579*d5c09012SAndroid Build Coastguard Worker}
580*d5c09012SAndroid Build Coastguard Worker
581*d5c09012SAndroid Build Coastguard Worker// Message for deleting a Cluster
582*d5c09012SAndroid Build Coastguard Workermessage DeleteClusterRequest {
583*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
584*d5c09012SAndroid Build Coastguard Worker  // comment on the Cluster.name field.
585*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
586*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
587*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/Cluster" }
588*d5c09012SAndroid Build Coastguard Worker  ];
589*d5c09012SAndroid Build Coastguard Worker
590*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
591*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
592*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
593*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
594*d5c09012SAndroid Build Coastguard Worker  //
595*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
596*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
597*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
598*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
599*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
600*d5c09012SAndroid Build Coastguard Worker  //
601*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
602*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
603*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
604*d5c09012SAndroid Build Coastguard Worker
605*d5c09012SAndroid Build Coastguard Worker  // Optional. The current etag of the Cluster.
606*d5c09012SAndroid Build Coastguard Worker  // If an etag is provided and does not match the current etag of the Cluster,
607*d5c09012SAndroid Build Coastguard Worker  // deletion will be blocked and an ABORTED error will be returned.
608*d5c09012SAndroid Build Coastguard Worker  string etag = 3 [(google.api.field_behavior) = OPTIONAL];
609*d5c09012SAndroid Build Coastguard Worker
610*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
611*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the delete.
612*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
613*d5c09012SAndroid Build Coastguard Worker
614*d5c09012SAndroid Build Coastguard Worker  // Optional. Whether to cascade delete child instances for given cluster.
615*d5c09012SAndroid Build Coastguard Worker  bool force = 5 [(google.api.field_behavior) = OPTIONAL];
616*d5c09012SAndroid Build Coastguard Worker}
617*d5c09012SAndroid Build Coastguard Worker
618*d5c09012SAndroid Build Coastguard Worker// Message for promoting a Cluster
619*d5c09012SAndroid Build Coastguard Workermessage PromoteClusterRequest {
620*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
621*d5c09012SAndroid Build Coastguard Worker  // comment on the Cluster.name field
622*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
623*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
624*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/Cluster" }
625*d5c09012SAndroid Build Coastguard Worker  ];
626*d5c09012SAndroid Build Coastguard Worker
627*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
628*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
629*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
630*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
631*d5c09012SAndroid Build Coastguard Worker  //
632*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
633*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
634*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
635*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
636*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
637*d5c09012SAndroid Build Coastguard Worker  //
638*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
639*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
640*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
641*d5c09012SAndroid Build Coastguard Worker
642*d5c09012SAndroid Build Coastguard Worker  // Optional. The current etag of the Cluster.
643*d5c09012SAndroid Build Coastguard Worker  // If an etag is provided and does not match the current etag of the Cluster,
644*d5c09012SAndroid Build Coastguard Worker  // deletion will be blocked and an ABORTED error will be returned.
645*d5c09012SAndroid Build Coastguard Worker  string etag = 3 [(google.api.field_behavior) = OPTIONAL];
646*d5c09012SAndroid Build Coastguard Worker
647*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
648*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the delete.
649*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
650*d5c09012SAndroid Build Coastguard Worker}
651*d5c09012SAndroid Build Coastguard Worker
652*d5c09012SAndroid Build Coastguard Worker// Message for restoring a Cluster from a backup or another cluster at a given
653*d5c09012SAndroid Build Coastguard Worker// point in time.
654*d5c09012SAndroid Build Coastguard Workermessage RestoreClusterRequest {
655*d5c09012SAndroid Build Coastguard Worker  // Required.
656*d5c09012SAndroid Build Coastguard Worker  // The source to import from.
657*d5c09012SAndroid Build Coastguard Worker  oneof source {
658*d5c09012SAndroid Build Coastguard Worker    // Backup source.
659*d5c09012SAndroid Build Coastguard Worker    BackupSource backup_source = 4;
660*d5c09012SAndroid Build Coastguard Worker
661*d5c09012SAndroid Build Coastguard Worker    // ContinuousBackup source. Continuous backup needs to be enabled in the
662*d5c09012SAndroid Build Coastguard Worker    // source cluster for this operation to succeed.
663*d5c09012SAndroid Build Coastguard Worker    ContinuousBackupSource continuous_backup_source = 8;
664*d5c09012SAndroid Build Coastguard Worker  }
665*d5c09012SAndroid Build Coastguard Worker
666*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. For the required format, see the
667*d5c09012SAndroid Build Coastguard Worker  // comment on the Cluster.name field.
668*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
669*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
670*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
671*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Cluster"
672*d5c09012SAndroid Build Coastguard Worker    }
673*d5c09012SAndroid Build Coastguard Worker  ];
674*d5c09012SAndroid Build Coastguard Worker
675*d5c09012SAndroid Build Coastguard Worker  // Required. ID of the requesting object.
676*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 2 [(google.api.field_behavior) = REQUIRED];
677*d5c09012SAndroid Build Coastguard Worker
678*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being created
679*d5c09012SAndroid Build Coastguard Worker  Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED];
680*d5c09012SAndroid Build Coastguard Worker
681*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
682*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
683*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
684*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
685*d5c09012SAndroid Build Coastguard Worker  //
686*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
687*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
688*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
689*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
690*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
691*d5c09012SAndroid Build Coastguard Worker  //
692*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
693*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
694*d5c09012SAndroid Build Coastguard Worker  string request_id = 5 [(google.api.field_behavior) = OPTIONAL];
695*d5c09012SAndroid Build Coastguard Worker
696*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
697*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the import
698*d5c09012SAndroid Build Coastguard Worker  // request.
699*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 6 [(google.api.field_behavior) = OPTIONAL];
700*d5c09012SAndroid Build Coastguard Worker}
701*d5c09012SAndroid Build Coastguard Worker
702*d5c09012SAndroid Build Coastguard Worker// Message for requesting list of Instances
703*d5c09012SAndroid Build Coastguard Workermessage ListInstancesRequest {
704*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. For the required format, see the
705*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field. Additionally, you can perform an
706*d5c09012SAndroid Build Coastguard Worker  // aggregated list operation by specifying a value with one of the following
707*d5c09012SAndroid Build Coastguard Worker  // formats:
708*d5c09012SAndroid Build Coastguard Worker  //  * projects/{project}/locations/-/clusters/-
709*d5c09012SAndroid Build Coastguard Worker  //  * projects/{project}/locations/{region}/clusters/-
710*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
711*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
712*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
713*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Instance"
714*d5c09012SAndroid Build Coastguard Worker    }
715*d5c09012SAndroid Build Coastguard Worker  ];
716*d5c09012SAndroid Build Coastguard Worker
717*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server may return fewer items than
718*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, server will pick an appropriate default.
719*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
720*d5c09012SAndroid Build Coastguard Worker
721*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
722*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
723*d5c09012SAndroid Build Coastguard Worker
724*d5c09012SAndroid Build Coastguard Worker  // Optional. Filtering results
725*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
726*d5c09012SAndroid Build Coastguard Worker
727*d5c09012SAndroid Build Coastguard Worker  // Optional. Hint for how to order the results
728*d5c09012SAndroid Build Coastguard Worker  string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
729*d5c09012SAndroid Build Coastguard Worker}
730*d5c09012SAndroid Build Coastguard Worker
731*d5c09012SAndroid Build Coastguard Worker// Message for response to listing Instances
732*d5c09012SAndroid Build Coastguard Workermessage ListInstancesResponse {
733*d5c09012SAndroid Build Coastguard Worker  // The list of Instance
734*d5c09012SAndroid Build Coastguard Worker  repeated Instance instances = 1;
735*d5c09012SAndroid Build Coastguard Worker
736*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
737*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
738*d5c09012SAndroid Build Coastguard Worker
739*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
740*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
741*d5c09012SAndroid Build Coastguard Worker}
742*d5c09012SAndroid Build Coastguard Worker
743*d5c09012SAndroid Build Coastguard Worker// Message for getting a Instance
744*d5c09012SAndroid Build Coastguard Workermessage GetInstanceRequest {
745*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
746*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field.
747*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
748*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
749*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
750*d5c09012SAndroid Build Coastguard Worker      type: "alloydb.googleapis.com/Instance"
751*d5c09012SAndroid Build Coastguard Worker    }
752*d5c09012SAndroid Build Coastguard Worker  ];
753*d5c09012SAndroid Build Coastguard Worker
754*d5c09012SAndroid Build Coastguard Worker  // The view of the instance to return.
755*d5c09012SAndroid Build Coastguard Worker  InstanceView view = 2;
756*d5c09012SAndroid Build Coastguard Worker}
757*d5c09012SAndroid Build Coastguard Worker
758*d5c09012SAndroid Build Coastguard Worker// Message for creating a Instance
759*d5c09012SAndroid Build Coastguard Workermessage CreateInstanceRequest {
760*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. For the required format, see the
761*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field.
762*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
763*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
764*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
765*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Instance"
766*d5c09012SAndroid Build Coastguard Worker    }
767*d5c09012SAndroid Build Coastguard Worker  ];
768*d5c09012SAndroid Build Coastguard Worker
769*d5c09012SAndroid Build Coastguard Worker  // Required. ID of the requesting object.
770*d5c09012SAndroid Build Coastguard Worker  string instance_id = 2 [(google.api.field_behavior) = REQUIRED];
771*d5c09012SAndroid Build Coastguard Worker
772*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being created
773*d5c09012SAndroid Build Coastguard Worker  Instance instance = 3 [(google.api.field_behavior) = REQUIRED];
774*d5c09012SAndroid Build Coastguard Worker
775*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
776*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
777*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
778*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
779*d5c09012SAndroid Build Coastguard Worker  //
780*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
781*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
782*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
783*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
784*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
785*d5c09012SAndroid Build Coastguard Worker  //
786*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
787*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
788*d5c09012SAndroid Build Coastguard Worker  string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
789*d5c09012SAndroid Build Coastguard Worker
790*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
791*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the create
792*d5c09012SAndroid Build Coastguard Worker  // request.
793*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL];
794*d5c09012SAndroid Build Coastguard Worker}
795*d5c09012SAndroid Build Coastguard Worker
796*d5c09012SAndroid Build Coastguard Worker// Message for creating a Secondary Instance
797*d5c09012SAndroid Build Coastguard Workermessage CreateSecondaryInstanceRequest {
798*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. For the required format, see the
799*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field.
800*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
801*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
802*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
803*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Instance"
804*d5c09012SAndroid Build Coastguard Worker    }
805*d5c09012SAndroid Build Coastguard Worker  ];
806*d5c09012SAndroid Build Coastguard Worker
807*d5c09012SAndroid Build Coastguard Worker  // Required. ID of the requesting object.
808*d5c09012SAndroid Build Coastguard Worker  string instance_id = 2 [(google.api.field_behavior) = REQUIRED];
809*d5c09012SAndroid Build Coastguard Worker
810*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being created
811*d5c09012SAndroid Build Coastguard Worker  Instance instance = 3 [(google.api.field_behavior) = REQUIRED];
812*d5c09012SAndroid Build Coastguard Worker
813*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
814*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
815*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
816*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
817*d5c09012SAndroid Build Coastguard Worker  //
818*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
819*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
820*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
821*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
822*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
823*d5c09012SAndroid Build Coastguard Worker  //
824*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
825*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
826*d5c09012SAndroid Build Coastguard Worker  string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
827*d5c09012SAndroid Build Coastguard Worker
828*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
829*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the create
830*d5c09012SAndroid Build Coastguard Worker  // request.
831*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL];
832*d5c09012SAndroid Build Coastguard Worker}
833*d5c09012SAndroid Build Coastguard Worker
834*d5c09012SAndroid Build Coastguard Worker// See usage below for notes.
835*d5c09012SAndroid Build Coastguard Workermessage CreateInstanceRequests {
836*d5c09012SAndroid Build Coastguard Worker  // Required. Primary and read replica instances to be created. This list
837*d5c09012SAndroid Build Coastguard Worker  // should not be empty.
838*d5c09012SAndroid Build Coastguard Worker  repeated CreateInstanceRequest create_instance_requests = 1
839*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
840*d5c09012SAndroid Build Coastguard Worker}
841*d5c09012SAndroid Build Coastguard Worker
842*d5c09012SAndroid Build Coastguard Worker// Message for creating a batch of instances under the specified cluster.
843*d5c09012SAndroid Build Coastguard Workermessage BatchCreateInstancesRequest {
844*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource.
845*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
846*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
847*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
848*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Instance"
849*d5c09012SAndroid Build Coastguard Worker    }
850*d5c09012SAndroid Build Coastguard Worker  ];
851*d5c09012SAndroid Build Coastguard Worker
852*d5c09012SAndroid Build Coastguard Worker  // Required. Resources being created.
853*d5c09012SAndroid Build Coastguard Worker  CreateInstanceRequests requests = 2 [(google.api.field_behavior) = REQUIRED];
854*d5c09012SAndroid Build Coastguard Worker
855*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
856*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
857*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
858*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
859*d5c09012SAndroid Build Coastguard Worker  //
860*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
861*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
862*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
863*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
864*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
865*d5c09012SAndroid Build Coastguard Worker  //
866*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
867*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
868*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
869*d5c09012SAndroid Build Coastguard Worker}
870*d5c09012SAndroid Build Coastguard Worker
871*d5c09012SAndroid Build Coastguard Worker// Message for creating batches of instances in a cluster.
872*d5c09012SAndroid Build Coastguard Workermessage BatchCreateInstancesResponse {
873*d5c09012SAndroid Build Coastguard Worker  // Created instances.
874*d5c09012SAndroid Build Coastguard Worker  repeated Instance instances = 1;
875*d5c09012SAndroid Build Coastguard Worker}
876*d5c09012SAndroid Build Coastguard Worker
877*d5c09012SAndroid Build Coastguard Worker// Message for metadata that is specific to BatchCreateInstances API.
878*d5c09012SAndroid Build Coastguard Worker// NEXT_ID: 3
879*d5c09012SAndroid Build Coastguard Workermessage BatchCreateInstancesMetadata {
880*d5c09012SAndroid Build Coastguard Worker  // The instances being created in the API call. Each string in this list
881*d5c09012SAndroid Build Coastguard Worker  // is the server defined resource path for target instances in the request
882*d5c09012SAndroid Build Coastguard Worker  // and for the format of each string, see the comment on the Instance.name
883*d5c09012SAndroid Build Coastguard Worker  // field.
884*d5c09012SAndroid Build Coastguard Worker  repeated string instance_targets = 1;
885*d5c09012SAndroid Build Coastguard Worker
886*d5c09012SAndroid Build Coastguard Worker  // A map representing state of the instances involved in the
887*d5c09012SAndroid Build Coastguard Worker  // BatchCreateInstances operation during the operation execution.
888*d5c09012SAndroid Build Coastguard Worker  // The instance state will be in STATE_UNSPECIFIED state if the instance has
889*d5c09012SAndroid Build Coastguard Worker  // not yet been picked up for processing.
890*d5c09012SAndroid Build Coastguard Worker  // The key of the map is the name of the instance resource.
891*d5c09012SAndroid Build Coastguard Worker  // For the format, see the comment on the Instance.name field.
892*d5c09012SAndroid Build Coastguard Worker  map<string, BatchCreateInstanceStatus> instance_statuses = 2;
893*d5c09012SAndroid Build Coastguard Worker}
894*d5c09012SAndroid Build Coastguard Worker
895*d5c09012SAndroid Build Coastguard Worker// Message for current status of an instance in the BatchCreateInstances
896*d5c09012SAndroid Build Coastguard Worker// operation.
897*d5c09012SAndroid Build Coastguard Worker// For example, lets say a BatchCreateInstances workflow has 4 instances,
898*d5c09012SAndroid Build Coastguard Worker// Instance1 through Instance4. Lets also assume that 2 instances succeeded
899*d5c09012SAndroid Build Coastguard Worker// but the third failed to create and the 4th was never picked up for creation
900*d5c09012SAndroid Build Coastguard Worker// because of failure of the previous one. Then, resulting states would look
901*d5c09012SAndroid Build Coastguard Worker// something like:
902*d5c09012SAndroid Build Coastguard Worker//   1. Instance1 = ROLLED_BACK
903*d5c09012SAndroid Build Coastguard Worker//   2. Instance2 = ROLLED_BACK
904*d5c09012SAndroid Build Coastguard Worker//   3. Instance3 = FAILED
905*d5c09012SAndroid Build Coastguard Worker//   4. Instance4 = FAILED
906*d5c09012SAndroid Build Coastguard Worker//
907*d5c09012SAndroid Build Coastguard Worker// However, while the operation is running, the instance might be in other
908*d5c09012SAndroid Build Coastguard Worker// states including PENDING_CREATE, ACTIVE, DELETING and CREATING. The states
909*d5c09012SAndroid Build Coastguard Worker// / do not get further updated once the operation is done.
910*d5c09012SAndroid Build Coastguard Workermessage BatchCreateInstanceStatus {
911*d5c09012SAndroid Build Coastguard Worker  // State contains all valid instance states for the BatchCreateInstances
912*d5c09012SAndroid Build Coastguard Worker  // operation. This is mainly used for status reporting through the LRO
913*d5c09012SAndroid Build Coastguard Worker  // metadata.
914*d5c09012SAndroid Build Coastguard Worker  enum State {
915*d5c09012SAndroid Build Coastguard Worker    // The state of the instance is unknown.
916*d5c09012SAndroid Build Coastguard Worker    STATE_UNSPECIFIED = 0;
917*d5c09012SAndroid Build Coastguard Worker
918*d5c09012SAndroid Build Coastguard Worker    // Instance is pending creation and has not yet been picked up for
919*d5c09012SAndroid Build Coastguard Worker    // processsing in the backend.
920*d5c09012SAndroid Build Coastguard Worker    PENDING_CREATE = 1;
921*d5c09012SAndroid Build Coastguard Worker
922*d5c09012SAndroid Build Coastguard Worker    // The instance is active and running.
923*d5c09012SAndroid Build Coastguard Worker    READY = 2;
924*d5c09012SAndroid Build Coastguard Worker
925*d5c09012SAndroid Build Coastguard Worker    // The instance is being created.
926*d5c09012SAndroid Build Coastguard Worker    CREATING = 3;
927*d5c09012SAndroid Build Coastguard Worker
928*d5c09012SAndroid Build Coastguard Worker    // The instance is being deleted.
929*d5c09012SAndroid Build Coastguard Worker    DELETING = 4;
930*d5c09012SAndroid Build Coastguard Worker
931*d5c09012SAndroid Build Coastguard Worker    // The creation of the instance failed or a fatal error occurred during
932*d5c09012SAndroid Build Coastguard Worker    // an operation on the instance or a batch of instances.
933*d5c09012SAndroid Build Coastguard Worker    FAILED = 5;
934*d5c09012SAndroid Build Coastguard Worker
935*d5c09012SAndroid Build Coastguard Worker    // The instance was created successfully, but was rolled back and deleted
936*d5c09012SAndroid Build Coastguard Worker    // due to some other failure during BatchCreateInstances operation.
937*d5c09012SAndroid Build Coastguard Worker    ROLLED_BACK = 6;
938*d5c09012SAndroid Build Coastguard Worker  }
939*d5c09012SAndroid Build Coastguard Worker
940*d5c09012SAndroid Build Coastguard Worker  // The current state of an instance involved in the batch create operation.
941*d5c09012SAndroid Build Coastguard Worker  // Once the operation is complete, the final state of the instances in the
942*d5c09012SAndroid Build Coastguard Worker  // LRO can be one of:
943*d5c09012SAndroid Build Coastguard Worker  //   1. ACTIVE, indicating that instances were created successfully
944*d5c09012SAndroid Build Coastguard Worker  //   2. FAILED, indicating that a particular instance failed creation
945*d5c09012SAndroid Build Coastguard Worker  //   3. ROLLED_BACK indicating that although the instance was created
946*d5c09012SAndroid Build Coastguard Worker  //      successfully, it had to be rolled back and deleted due to failure in
947*d5c09012SAndroid Build Coastguard Worker  //      other steps of the workflow.
948*d5c09012SAndroid Build Coastguard Worker  State state = 1;
949*d5c09012SAndroid Build Coastguard Worker
950*d5c09012SAndroid Build Coastguard Worker  // DEPRECATED - Use the error field instead.
951*d5c09012SAndroid Build Coastguard Worker  // Error, if any error occurred and is available, during instance creation.
952*d5c09012SAndroid Build Coastguard Worker  string error_msg = 2;
953*d5c09012SAndroid Build Coastguard Worker
954*d5c09012SAndroid Build Coastguard Worker  // The RPC status of the instance creation operation. This field will be
955*d5c09012SAndroid Build Coastguard Worker  // present if an error happened during the instance creation.
956*d5c09012SAndroid Build Coastguard Worker  google.rpc.Status error = 4;
957*d5c09012SAndroid Build Coastguard Worker
958*d5c09012SAndroid Build Coastguard Worker  Instance.InstanceType type = 3;
959*d5c09012SAndroid Build Coastguard Worker}
960*d5c09012SAndroid Build Coastguard Worker
961*d5c09012SAndroid Build Coastguard Worker// Message for updating a Instance
962*d5c09012SAndroid Build Coastguard Workermessage UpdateInstanceRequest {
963*d5c09012SAndroid Build Coastguard Worker  // Optional. Field mask is used to specify the fields to be overwritten in the
964*d5c09012SAndroid Build Coastguard Worker  // Instance resource by the update.
965*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
966*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
967*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
968*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1
969*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
970*d5c09012SAndroid Build Coastguard Worker
971*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being updated
972*d5c09012SAndroid Build Coastguard Worker  Instance instance = 2 [(google.api.field_behavior) = REQUIRED];
973*d5c09012SAndroid Build Coastguard Worker
974*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
975*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
976*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
977*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
978*d5c09012SAndroid Build Coastguard Worker  //
979*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
980*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
981*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
982*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
983*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
984*d5c09012SAndroid Build Coastguard Worker  //
985*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
986*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
987*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
988*d5c09012SAndroid Build Coastguard Worker
989*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
990*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the update
991*d5c09012SAndroid Build Coastguard Worker  // request.
992*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
993*d5c09012SAndroid Build Coastguard Worker
994*d5c09012SAndroid Build Coastguard Worker  // Optional. If set to true, update succeeds even if instance is not found. In
995*d5c09012SAndroid Build Coastguard Worker  // that case, a new instance is created and `update_mask` is ignored.
996*d5c09012SAndroid Build Coastguard Worker  bool allow_missing = 5 [(google.api.field_behavior) = OPTIONAL];
997*d5c09012SAndroid Build Coastguard Worker}
998*d5c09012SAndroid Build Coastguard Worker
999*d5c09012SAndroid Build Coastguard Worker// Message for deleting a Instance
1000*d5c09012SAndroid Build Coastguard Workermessage DeleteInstanceRequest {
1001*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
1002*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field.
1003*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1004*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1005*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1006*d5c09012SAndroid Build Coastguard Worker      type: "alloydb.googleapis.com/Instance"
1007*d5c09012SAndroid Build Coastguard Worker    }
1008*d5c09012SAndroid Build Coastguard Worker  ];
1009*d5c09012SAndroid Build Coastguard Worker
1010*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1011*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1012*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1013*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1014*d5c09012SAndroid Build Coastguard Worker  //
1015*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1016*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1017*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1018*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1019*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1020*d5c09012SAndroid Build Coastguard Worker  //
1021*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1022*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1023*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
1024*d5c09012SAndroid Build Coastguard Worker
1025*d5c09012SAndroid Build Coastguard Worker  // Optional. The current etag of the Instance.
1026*d5c09012SAndroid Build Coastguard Worker  // If an etag is provided and does not match the current etag of the Instance,
1027*d5c09012SAndroid Build Coastguard Worker  // deletion will be blocked and an ABORTED error will be returned.
1028*d5c09012SAndroid Build Coastguard Worker  string etag = 3 [(google.api.field_behavior) = OPTIONAL];
1029*d5c09012SAndroid Build Coastguard Worker
1030*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
1031*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the delete.
1032*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
1033*d5c09012SAndroid Build Coastguard Worker}
1034*d5c09012SAndroid Build Coastguard Worker
1035*d5c09012SAndroid Build Coastguard Worker// Message for triggering failover on an Instance
1036*d5c09012SAndroid Build Coastguard Workermessage FailoverInstanceRequest {
1037*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
1038*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field.
1039*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1040*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1041*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1042*d5c09012SAndroid Build Coastguard Worker      type: "alloydb.googleapis.com/Instance"
1043*d5c09012SAndroid Build Coastguard Worker    }
1044*d5c09012SAndroid Build Coastguard Worker  ];
1045*d5c09012SAndroid Build Coastguard Worker
1046*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1047*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1048*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1049*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1050*d5c09012SAndroid Build Coastguard Worker  //
1051*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1052*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1053*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1054*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1055*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1056*d5c09012SAndroid Build Coastguard Worker  //
1057*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1058*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1059*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
1060*d5c09012SAndroid Build Coastguard Worker
1061*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
1062*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the failover.
1063*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL];
1064*d5c09012SAndroid Build Coastguard Worker}
1065*d5c09012SAndroid Build Coastguard Worker
1066*d5c09012SAndroid Build Coastguard Worker// Message for triggering fault injection on an instance
1067*d5c09012SAndroid Build Coastguard Workermessage InjectFaultRequest {
1068*d5c09012SAndroid Build Coastguard Worker  // FaultType contains all valid types of faults that can be injected to an
1069*d5c09012SAndroid Build Coastguard Worker  // instance.
1070*d5c09012SAndroid Build Coastguard Worker  enum FaultType {
1071*d5c09012SAndroid Build Coastguard Worker    // The fault type is unknown.
1072*d5c09012SAndroid Build Coastguard Worker    FAULT_TYPE_UNSPECIFIED = 0;
1073*d5c09012SAndroid Build Coastguard Worker
1074*d5c09012SAndroid Build Coastguard Worker    // Stop the VM
1075*d5c09012SAndroid Build Coastguard Worker    STOP_VM = 1;
1076*d5c09012SAndroid Build Coastguard Worker  }
1077*d5c09012SAndroid Build Coastguard Worker
1078*d5c09012SAndroid Build Coastguard Worker  // Required. The type of fault to be injected in an instance.
1079*d5c09012SAndroid Build Coastguard Worker  FaultType fault_type = 1 [(google.api.field_behavior) = REQUIRED];
1080*d5c09012SAndroid Build Coastguard Worker
1081*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
1082*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field.
1083*d5c09012SAndroid Build Coastguard Worker  string name = 2 [
1084*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1085*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1086*d5c09012SAndroid Build Coastguard Worker      type: "alloydb.googleapis.com/Instance"
1087*d5c09012SAndroid Build Coastguard Worker    }
1088*d5c09012SAndroid Build Coastguard Worker  ];
1089*d5c09012SAndroid Build Coastguard Worker
1090*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1091*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1092*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1093*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1094*d5c09012SAndroid Build Coastguard Worker  //
1095*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1096*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1097*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1098*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1099*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1100*d5c09012SAndroid Build Coastguard Worker  //
1101*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1102*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1103*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
1104*d5c09012SAndroid Build Coastguard Worker
1105*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
1106*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the fault
1107*d5c09012SAndroid Build Coastguard Worker  // injection.
1108*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
1109*d5c09012SAndroid Build Coastguard Worker}
1110*d5c09012SAndroid Build Coastguard Worker
1111*d5c09012SAndroid Build Coastguard Workermessage RestartInstanceRequest {
1112*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
1113*d5c09012SAndroid Build Coastguard Worker  // comment on the Instance.name field.
1114*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1115*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1116*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1117*d5c09012SAndroid Build Coastguard Worker      type: "alloydb.googleapis.com/Instance"
1118*d5c09012SAndroid Build Coastguard Worker    }
1119*d5c09012SAndroid Build Coastguard Worker  ];
1120*d5c09012SAndroid Build Coastguard Worker
1121*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1122*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1123*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1124*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1125*d5c09012SAndroid Build Coastguard Worker  //
1126*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1127*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1128*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1129*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1130*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1131*d5c09012SAndroid Build Coastguard Worker  //
1132*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1133*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1134*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
1135*d5c09012SAndroid Build Coastguard Worker
1136*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, performs request validation (e.g. permission checks and
1137*d5c09012SAndroid Build Coastguard Worker  // any other type of validation), but do not actually execute the restart.
1138*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL];
1139*d5c09012SAndroid Build Coastguard Worker}
1140*d5c09012SAndroid Build Coastguard Worker
1141*d5c09012SAndroid Build Coastguard Worker// Message for requesting list of Backups
1142*d5c09012SAndroid Build Coastguard Workermessage ListBackupsRequest {
1143*d5c09012SAndroid Build Coastguard Worker  // Required. Parent value for ListBackupsRequest
1144*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1145*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1146*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1147*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Backup"
1148*d5c09012SAndroid Build Coastguard Worker    }
1149*d5c09012SAndroid Build Coastguard Worker  ];
1150*d5c09012SAndroid Build Coastguard Worker
1151*d5c09012SAndroid Build Coastguard Worker  // Requested page size. Server may return fewer items than requested.
1152*d5c09012SAndroid Build Coastguard Worker  // If unspecified, server will pick an appropriate default.
1153*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
1154*d5c09012SAndroid Build Coastguard Worker
1155*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
1156*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
1157*d5c09012SAndroid Build Coastguard Worker
1158*d5c09012SAndroid Build Coastguard Worker  // Filtering results
1159*d5c09012SAndroid Build Coastguard Worker  string filter = 4;
1160*d5c09012SAndroid Build Coastguard Worker
1161*d5c09012SAndroid Build Coastguard Worker  // Hint for how to order the results
1162*d5c09012SAndroid Build Coastguard Worker  string order_by = 5;
1163*d5c09012SAndroid Build Coastguard Worker}
1164*d5c09012SAndroid Build Coastguard Worker
1165*d5c09012SAndroid Build Coastguard Worker// Message for response to listing Backups
1166*d5c09012SAndroid Build Coastguard Workermessage ListBackupsResponse {
1167*d5c09012SAndroid Build Coastguard Worker  // The list of Backup
1168*d5c09012SAndroid Build Coastguard Worker  repeated Backup backups = 1;
1169*d5c09012SAndroid Build Coastguard Worker
1170*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
1171*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1172*d5c09012SAndroid Build Coastguard Worker
1173*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
1174*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
1175*d5c09012SAndroid Build Coastguard Worker}
1176*d5c09012SAndroid Build Coastguard Worker
1177*d5c09012SAndroid Build Coastguard Worker// Message for getting a Backup
1178*d5c09012SAndroid Build Coastguard Workermessage GetBackupRequest {
1179*d5c09012SAndroid Build Coastguard Worker  // Required. Name of the resource
1180*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1181*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1182*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/Backup" }
1183*d5c09012SAndroid Build Coastguard Worker  ];
1184*d5c09012SAndroid Build Coastguard Worker}
1185*d5c09012SAndroid Build Coastguard Worker
1186*d5c09012SAndroid Build Coastguard Worker// Message for creating a Backup
1187*d5c09012SAndroid Build Coastguard Workermessage CreateBackupRequest {
1188*d5c09012SAndroid Build Coastguard Worker  // Required. Value for parent.
1189*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1190*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1191*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1192*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/Backup"
1193*d5c09012SAndroid Build Coastguard Worker    }
1194*d5c09012SAndroid Build Coastguard Worker  ];
1195*d5c09012SAndroid Build Coastguard Worker
1196*d5c09012SAndroid Build Coastguard Worker  // Required. ID of the requesting object.
1197*d5c09012SAndroid Build Coastguard Worker  string backup_id = 2 [(google.api.field_behavior) = REQUIRED];
1198*d5c09012SAndroid Build Coastguard Worker
1199*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being created
1200*d5c09012SAndroid Build Coastguard Worker  Backup backup = 3 [(google.api.field_behavior) = REQUIRED];
1201*d5c09012SAndroid Build Coastguard Worker
1202*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1203*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1204*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1205*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
1206*d5c09012SAndroid Build Coastguard Worker  //
1207*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1208*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1209*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1210*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1211*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1212*d5c09012SAndroid Build Coastguard Worker  //
1213*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1214*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1215*d5c09012SAndroid Build Coastguard Worker  string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
1216*d5c09012SAndroid Build Coastguard Worker
1217*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, the backend validates the request, but doesn't actually
1218*d5c09012SAndroid Build Coastguard Worker  // execute it.
1219*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL];
1220*d5c09012SAndroid Build Coastguard Worker}
1221*d5c09012SAndroid Build Coastguard Worker
1222*d5c09012SAndroid Build Coastguard Worker// Message for updating a Backup
1223*d5c09012SAndroid Build Coastguard Workermessage UpdateBackupRequest {
1224*d5c09012SAndroid Build Coastguard Worker  // Optional. Field mask is used to specify the fields to be overwritten in the
1225*d5c09012SAndroid Build Coastguard Worker  // Backup resource by the update.
1226*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
1227*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
1228*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
1229*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1
1230*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
1231*d5c09012SAndroid Build Coastguard Worker
1232*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being updated
1233*d5c09012SAndroid Build Coastguard Worker  Backup backup = 2 [(google.api.field_behavior) = REQUIRED];
1234*d5c09012SAndroid Build Coastguard Worker
1235*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1236*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1237*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1238*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
1239*d5c09012SAndroid Build Coastguard Worker  //
1240*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1241*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1242*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1243*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1244*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1245*d5c09012SAndroid Build Coastguard Worker  //
1246*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1247*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1248*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
1249*d5c09012SAndroid Build Coastguard Worker
1250*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, the backend validates the request, but doesn't actually
1251*d5c09012SAndroid Build Coastguard Worker  // execute it.
1252*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
1253*d5c09012SAndroid Build Coastguard Worker
1254*d5c09012SAndroid Build Coastguard Worker  // Optional. If set to true, update succeeds even if instance is not found. In
1255*d5c09012SAndroid Build Coastguard Worker  // that case, a new backup is created and `update_mask` is ignored.
1256*d5c09012SAndroid Build Coastguard Worker  bool allow_missing = 5 [(google.api.field_behavior) = OPTIONAL];
1257*d5c09012SAndroid Build Coastguard Worker}
1258*d5c09012SAndroid Build Coastguard Worker
1259*d5c09012SAndroid Build Coastguard Worker// Message for deleting a Backup
1260*d5c09012SAndroid Build Coastguard Workermessage DeleteBackupRequest {
1261*d5c09012SAndroid Build Coastguard Worker  // Required. Name of the resource. For the required format, see the comment on
1262*d5c09012SAndroid Build Coastguard Worker  // the Backup.name field.
1263*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1264*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1265*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/Backup" }
1266*d5c09012SAndroid Build Coastguard Worker  ];
1267*d5c09012SAndroid Build Coastguard Worker
1268*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1269*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1270*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1271*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1272*d5c09012SAndroid Build Coastguard Worker  //
1273*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1274*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1275*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1276*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1277*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1278*d5c09012SAndroid Build Coastguard Worker  //
1279*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1280*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1281*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
1282*d5c09012SAndroid Build Coastguard Worker
1283*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, the backend validates the request, but doesn't actually
1284*d5c09012SAndroid Build Coastguard Worker  // execute it.
1285*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL];
1286*d5c09012SAndroid Build Coastguard Worker
1287*d5c09012SAndroid Build Coastguard Worker  // Optional. The current etag of the Backup.
1288*d5c09012SAndroid Build Coastguard Worker  // If an etag is provided and does not match the current etag of the Backup,
1289*d5c09012SAndroid Build Coastguard Worker  // deletion will be blocked and an ABORTED error will be returned.
1290*d5c09012SAndroid Build Coastguard Worker  string etag = 4 [(google.api.field_behavior) = OPTIONAL];
1291*d5c09012SAndroid Build Coastguard Worker}
1292*d5c09012SAndroid Build Coastguard Worker
1293*d5c09012SAndroid Build Coastguard Worker// Message for listing the information about the supported Database flags.
1294*d5c09012SAndroid Build Coastguard Workermessage ListSupportedDatabaseFlagsRequest {
1295*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. The required format is:
1296*d5c09012SAndroid Build Coastguard Worker  //  * projects/{project}/locations/{location}
1297*d5c09012SAndroid Build Coastguard Worker  //
1298*d5c09012SAndroid Build Coastguard Worker  // Regardless of the parent specified here, as long it is contains a valid
1299*d5c09012SAndroid Build Coastguard Worker  // project and location, the service will return a static list of supported
1300*d5c09012SAndroid Build Coastguard Worker  // flags resources. Note that we do not yet support region-specific
1301*d5c09012SAndroid Build Coastguard Worker  // flags.
1302*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1303*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1304*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1305*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/SupportedDatabaseFlag"
1306*d5c09012SAndroid Build Coastguard Worker    }
1307*d5c09012SAndroid Build Coastguard Worker  ];
1308*d5c09012SAndroid Build Coastguard Worker
1309*d5c09012SAndroid Build Coastguard Worker  // Requested page size. Server may return fewer items than requested.
1310*d5c09012SAndroid Build Coastguard Worker  // If unspecified, server will pick an appropriate default.
1311*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
1312*d5c09012SAndroid Build Coastguard Worker
1313*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
1314*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
1315*d5c09012SAndroid Build Coastguard Worker}
1316*d5c09012SAndroid Build Coastguard Worker
1317*d5c09012SAndroid Build Coastguard Worker// Message for response to listing SupportedDatabaseFlags.
1318*d5c09012SAndroid Build Coastguard Workermessage ListSupportedDatabaseFlagsResponse {
1319*d5c09012SAndroid Build Coastguard Worker  // The list of SupportedDatabaseFlags.
1320*d5c09012SAndroid Build Coastguard Worker  repeated SupportedDatabaseFlag supported_database_flags = 1;
1321*d5c09012SAndroid Build Coastguard Worker
1322*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
1323*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1324*d5c09012SAndroid Build Coastguard Worker}
1325*d5c09012SAndroid Build Coastguard Worker
1326*d5c09012SAndroid Build Coastguard Worker// Message for requests to generate a client certificate signed by the Cluster
1327*d5c09012SAndroid Build Coastguard Worker// CA.
1328*d5c09012SAndroid Build Coastguard Workermessage GenerateClientCertificateRequest {
1329*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. The required format is:
1330*d5c09012SAndroid Build Coastguard Worker  //  * projects/{project}/locations/{location}/clusters/{cluster}
1331*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1332*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1333*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/Cluster" }
1334*d5c09012SAndroid Build Coastguard Worker  ];
1335*d5c09012SAndroid Build Coastguard Worker
1336*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1337*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1338*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1339*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1340*d5c09012SAndroid Build Coastguard Worker  //
1341*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1342*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1343*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1344*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1345*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1346*d5c09012SAndroid Build Coastguard Worker  //
1347*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1348*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1349*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
1350*d5c09012SAndroid Build Coastguard Worker
1351*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional hint to the endpoint to generate the client
1352*d5c09012SAndroid Build Coastguard Worker  // certificate with the requested duration. The duration can be from 1 hour to
1353*d5c09012SAndroid Build Coastguard Worker  // 24 hours. The endpoint may or may not honor the hint. If the hint is left
1354*d5c09012SAndroid Build Coastguard Worker  // unspecified or is not honored, then the endpoint will pick an appropriate
1355*d5c09012SAndroid Build Coastguard Worker  // default duration.
1356*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Duration cert_duration = 4
1357*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
1358*d5c09012SAndroid Build Coastguard Worker
1359*d5c09012SAndroid Build Coastguard Worker  // Optional. The public key from the client.
1360*d5c09012SAndroid Build Coastguard Worker  string public_key = 5 [(google.api.field_behavior) = OPTIONAL];
1361*d5c09012SAndroid Build Coastguard Worker
1362*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional hint to the endpoint to generate a client
1363*d5c09012SAndroid Build Coastguard Worker  // ceritificate that can be used by AlloyDB connectors to exchange additional
1364*d5c09012SAndroid Build Coastguard Worker  // metadata with the server after TLS handshake.
1365*d5c09012SAndroid Build Coastguard Worker  bool use_metadata_exchange = 6 [(google.api.field_behavior) = OPTIONAL];
1366*d5c09012SAndroid Build Coastguard Worker}
1367*d5c09012SAndroid Build Coastguard Worker
1368*d5c09012SAndroid Build Coastguard Worker// Message returned by a GenerateClientCertificate operation.
1369*d5c09012SAndroid Build Coastguard Workermessage GenerateClientCertificateResponse {
1370*d5c09012SAndroid Build Coastguard Worker  // Output only. The pem-encoded chain that may be used to verify the X.509
1371*d5c09012SAndroid Build Coastguard Worker  // certificate. Expected to be in issuer-to-root order according to RFC 5246.
1372*d5c09012SAndroid Build Coastguard Worker  repeated string pem_certificate_chain = 2
1373*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
1374*d5c09012SAndroid Build Coastguard Worker
1375*d5c09012SAndroid Build Coastguard Worker  // Optional. The pem-encoded cluster ca X.509 certificate.
1376*d5c09012SAndroid Build Coastguard Worker  string ca_cert = 3 [(google.api.field_behavior) = OPTIONAL];
1377*d5c09012SAndroid Build Coastguard Worker}
1378*d5c09012SAndroid Build Coastguard Worker
1379*d5c09012SAndroid Build Coastguard Worker// Request message for GetConnectionInfo.
1380*d5c09012SAndroid Build Coastguard Workermessage GetConnectionInfoRequest {
1381*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource. The required format is:
1382*d5c09012SAndroid Build Coastguard Worker  // projects/{project}/locations/{location}/clusters/{cluster}/instances/{instance}
1383*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1384*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1385*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1386*d5c09012SAndroid Build Coastguard Worker      type: "alloydb.googleapis.com/Instance"
1387*d5c09012SAndroid Build Coastguard Worker    }
1388*d5c09012SAndroid Build Coastguard Worker  ];
1389*d5c09012SAndroid Build Coastguard Worker
1390*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1391*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1392*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1393*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1394*d5c09012SAndroid Build Coastguard Worker  //
1395*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1396*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1397*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1398*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1399*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1400*d5c09012SAndroid Build Coastguard Worker  //
1401*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1402*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1403*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
1404*d5c09012SAndroid Build Coastguard Worker}
1405*d5c09012SAndroid Build Coastguard Worker
1406*d5c09012SAndroid Build Coastguard Worker// Represents the metadata of the long-running operation.
1407*d5c09012SAndroid Build Coastguard Workermessage OperationMetadata {
1408*d5c09012SAndroid Build Coastguard Worker  // Request specific metadata, if any.
1409*d5c09012SAndroid Build Coastguard Worker  oneof request_specific {
1410*d5c09012SAndroid Build Coastguard Worker    // Output only. BatchCreateInstances related metadata.
1411*d5c09012SAndroid Build Coastguard Worker    BatchCreateInstancesMetadata batch_create_instances_metadata = 8
1412*d5c09012SAndroid Build Coastguard Worker        [(google.api.field_behavior) = OUTPUT_ONLY];
1413*d5c09012SAndroid Build Coastguard Worker  }
1414*d5c09012SAndroid Build Coastguard Worker
1415*d5c09012SAndroid Build Coastguard Worker  // Output only. The time the operation was created.
1416*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 1
1417*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
1418*d5c09012SAndroid Build Coastguard Worker
1419*d5c09012SAndroid Build Coastguard Worker  // Output only. The time the operation finished running.
1420*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp end_time = 2
1421*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
1422*d5c09012SAndroid Build Coastguard Worker
1423*d5c09012SAndroid Build Coastguard Worker  // Output only. Server-defined resource path for the target of the operation.
1424*d5c09012SAndroid Build Coastguard Worker  string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
1425*d5c09012SAndroid Build Coastguard Worker
1426*d5c09012SAndroid Build Coastguard Worker  // Output only. Name of the verb executed by the operation.
1427*d5c09012SAndroid Build Coastguard Worker  string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
1428*d5c09012SAndroid Build Coastguard Worker
1429*d5c09012SAndroid Build Coastguard Worker  // Output only. Human-readable status of the operation, if any.
1430*d5c09012SAndroid Build Coastguard Worker  string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
1431*d5c09012SAndroid Build Coastguard Worker
1432*d5c09012SAndroid Build Coastguard Worker  // Output only. Identifies whether the user has requested cancellation
1433*d5c09012SAndroid Build Coastguard Worker  // of the operation. Operations that have successfully been cancelled
1434*d5c09012SAndroid Build Coastguard Worker  // have [Operation.error][] value with a
1435*d5c09012SAndroid Build Coastguard Worker  // [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to
1436*d5c09012SAndroid Build Coastguard Worker  // `Code.CANCELLED`.
1437*d5c09012SAndroid Build Coastguard Worker  bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
1438*d5c09012SAndroid Build Coastguard Worker
1439*d5c09012SAndroid Build Coastguard Worker  // Output only. API version used to start the operation.
1440*d5c09012SAndroid Build Coastguard Worker  string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
1441*d5c09012SAndroid Build Coastguard Worker}
1442*d5c09012SAndroid Build Coastguard Worker
1443*d5c09012SAndroid Build Coastguard Worker// Message for requesting list of Users
1444*d5c09012SAndroid Build Coastguard Workermessage ListUsersRequest {
1445*d5c09012SAndroid Build Coastguard Worker  // Required. Parent value for ListUsersRequest
1446*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1447*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1448*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1449*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/User"
1450*d5c09012SAndroid Build Coastguard Worker    }
1451*d5c09012SAndroid Build Coastguard Worker  ];
1452*d5c09012SAndroid Build Coastguard Worker
1453*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server may return fewer items than
1454*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, server will pick an appropriate default.
1455*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
1456*d5c09012SAndroid Build Coastguard Worker
1457*d5c09012SAndroid Build Coastguard Worker  // Optional. A token identifying a page of results the server should return.
1458*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
1459*d5c09012SAndroid Build Coastguard Worker
1460*d5c09012SAndroid Build Coastguard Worker  // Optional. Filtering results
1461*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
1462*d5c09012SAndroid Build Coastguard Worker
1463*d5c09012SAndroid Build Coastguard Worker  // Optional. Hint for how to order the results
1464*d5c09012SAndroid Build Coastguard Worker  string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
1465*d5c09012SAndroid Build Coastguard Worker}
1466*d5c09012SAndroid Build Coastguard Worker
1467*d5c09012SAndroid Build Coastguard Worker// Message for response to listing Users
1468*d5c09012SAndroid Build Coastguard Workermessage ListUsersResponse {
1469*d5c09012SAndroid Build Coastguard Worker  // The list of User
1470*d5c09012SAndroid Build Coastguard Worker  repeated User users = 1;
1471*d5c09012SAndroid Build Coastguard Worker
1472*d5c09012SAndroid Build Coastguard Worker  // A token identifying a page of results the server should return.
1473*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1474*d5c09012SAndroid Build Coastguard Worker
1475*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
1476*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
1477*d5c09012SAndroid Build Coastguard Worker}
1478*d5c09012SAndroid Build Coastguard Worker
1479*d5c09012SAndroid Build Coastguard Worker// Message for getting a User
1480*d5c09012SAndroid Build Coastguard Workermessage GetUserRequest {
1481*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
1482*d5c09012SAndroid Build Coastguard Worker  // comment on the User.name field.
1483*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1484*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1485*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/User" }
1486*d5c09012SAndroid Build Coastguard Worker  ];
1487*d5c09012SAndroid Build Coastguard Worker}
1488*d5c09012SAndroid Build Coastguard Worker
1489*d5c09012SAndroid Build Coastguard Worker// Message for creating a User
1490*d5c09012SAndroid Build Coastguard Workermessage CreateUserRequest {
1491*d5c09012SAndroid Build Coastguard Worker  // Required. Value for parent.
1492*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1493*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1494*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1495*d5c09012SAndroid Build Coastguard Worker      child_type: "alloydb.googleapis.com/User"
1496*d5c09012SAndroid Build Coastguard Worker    }
1497*d5c09012SAndroid Build Coastguard Worker  ];
1498*d5c09012SAndroid Build Coastguard Worker
1499*d5c09012SAndroid Build Coastguard Worker  // Required. ID of the requesting object.
1500*d5c09012SAndroid Build Coastguard Worker  string user_id = 2 [(google.api.field_behavior) = REQUIRED];
1501*d5c09012SAndroid Build Coastguard Worker
1502*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being created
1503*d5c09012SAndroid Build Coastguard Worker  User user = 3 [(google.api.field_behavior) = REQUIRED];
1504*d5c09012SAndroid Build Coastguard Worker
1505*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1506*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1507*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1508*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
1509*d5c09012SAndroid Build Coastguard Worker  //
1510*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1511*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1512*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1513*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1514*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1515*d5c09012SAndroid Build Coastguard Worker  //
1516*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1517*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1518*d5c09012SAndroid Build Coastguard Worker  string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
1519*d5c09012SAndroid Build Coastguard Worker
1520*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, the backend validates the request, but doesn't actually
1521*d5c09012SAndroid Build Coastguard Worker  // execute it.
1522*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL];
1523*d5c09012SAndroid Build Coastguard Worker}
1524*d5c09012SAndroid Build Coastguard Worker
1525*d5c09012SAndroid Build Coastguard Worker// Message for updating a User
1526*d5c09012SAndroid Build Coastguard Workermessage UpdateUserRequest {
1527*d5c09012SAndroid Build Coastguard Worker  // Optional. Field mask is used to specify the fields to be overwritten in the
1528*d5c09012SAndroid Build Coastguard Worker  // User resource by the update.
1529*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
1530*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
1531*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
1532*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1
1533*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
1534*d5c09012SAndroid Build Coastguard Worker
1535*d5c09012SAndroid Build Coastguard Worker  // Required. The resource being updated
1536*d5c09012SAndroid Build Coastguard Worker  User user = 2 [(google.api.field_behavior) = REQUIRED];
1537*d5c09012SAndroid Build Coastguard Worker
1538*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1539*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1540*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1541*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes since the first request.
1542*d5c09012SAndroid Build Coastguard Worker  //
1543*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1544*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1545*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1546*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1547*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1548*d5c09012SAndroid Build Coastguard Worker  //
1549*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1550*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1551*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
1552*d5c09012SAndroid Build Coastguard Worker
1553*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, the backend validates the request, but doesn't actually
1554*d5c09012SAndroid Build Coastguard Worker  // execute it.
1555*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL];
1556*d5c09012SAndroid Build Coastguard Worker
1557*d5c09012SAndroid Build Coastguard Worker  // Optional. Allow missing fields in the update mask.
1558*d5c09012SAndroid Build Coastguard Worker  bool allow_missing = 5 [(google.api.field_behavior) = OPTIONAL];
1559*d5c09012SAndroid Build Coastguard Worker}
1560*d5c09012SAndroid Build Coastguard Worker
1561*d5c09012SAndroid Build Coastguard Worker// Message for deleting a User
1562*d5c09012SAndroid Build Coastguard Workermessage DeleteUserRequest {
1563*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the resource. For the required format, see the
1564*d5c09012SAndroid Build Coastguard Worker  // comment on the User.name field.
1565*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1566*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1567*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "alloydb.googleapis.com/User" }
1568*d5c09012SAndroid Build Coastguard Worker  ];
1569*d5c09012SAndroid Build Coastguard Worker
1570*d5c09012SAndroid Build Coastguard Worker  // Optional. An optional request ID to identify requests. Specify a unique
1571*d5c09012SAndroid Build Coastguard Worker  // request ID so that if you must retry your request, the server will know to
1572*d5c09012SAndroid Build Coastguard Worker  // ignore the request if it has already been completed. The server will
1573*d5c09012SAndroid Build Coastguard Worker  // guarantee that for at least 60 minutes after the first request.
1574*d5c09012SAndroid Build Coastguard Worker  //
1575*d5c09012SAndroid Build Coastguard Worker  // For example, consider a situation where you make an initial request and
1576*d5c09012SAndroid Build Coastguard Worker  // the request times out. If you make the request again with the same request
1577*d5c09012SAndroid Build Coastguard Worker  // ID, the server can check if original operation with the same request ID
1578*d5c09012SAndroid Build Coastguard Worker  // was received, and if so, will ignore the second request. This prevents
1579*d5c09012SAndroid Build Coastguard Worker  // clients from accidentally creating duplicate commitments.
1580*d5c09012SAndroid Build Coastguard Worker  //
1581*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid UUID with the exception that zero UUID is
1582*d5c09012SAndroid Build Coastguard Worker  // not supported (00000000-0000-0000-0000-000000000000).
1583*d5c09012SAndroid Build Coastguard Worker  string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
1584*d5c09012SAndroid Build Coastguard Worker
1585*d5c09012SAndroid Build Coastguard Worker  // Optional. If set, the backend validates the request, but doesn't actually
1586*d5c09012SAndroid Build Coastguard Worker  // execute it.
1587*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL];
1588*d5c09012SAndroid Build Coastguard Worker}
1589