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.backupdr.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/longrunning/operations.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 26*d5c09012SAndroid Build Coastguard Worker 27*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.BackupDR.V1"; 28*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/backupdr/apiv1/backupdrpb;backupdrpb"; 29*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 30*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "BackupDRProto"; 31*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.backupdr.v1"; 32*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\BackupDR\\V1"; 33*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::BackupDR::V1"; 34*d5c09012SAndroid Build Coastguard Worker 35*d5c09012SAndroid Build Coastguard Worker// The BackupDR Service 36*d5c09012SAndroid Build Coastguard Workerservice BackupDR { 37*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "backupdr.googleapis.com"; 38*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 39*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 40*d5c09012SAndroid Build Coastguard Worker 41*d5c09012SAndroid Build Coastguard Worker // Lists ManagementServers in a given project and location. 42*d5c09012SAndroid Build Coastguard Worker rpc ListManagementServers(ListManagementServersRequest) 43*d5c09012SAndroid Build Coastguard Worker returns (ListManagementServersResponse) { 44*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 45*d5c09012SAndroid Build Coastguard Worker get: "/v1/{parent=projects/*/locations/*}/managementServers" 46*d5c09012SAndroid Build Coastguard Worker }; 47*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 48*d5c09012SAndroid Build Coastguard Worker } 49*d5c09012SAndroid Build Coastguard Worker 50*d5c09012SAndroid Build Coastguard Worker // Gets details of a single ManagementServer. 51*d5c09012SAndroid Build Coastguard Worker rpc GetManagementServer(GetManagementServerRequest) 52*d5c09012SAndroid Build Coastguard Worker returns (ManagementServer) { 53*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 54*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/managementServers/*}" 55*d5c09012SAndroid Build Coastguard Worker }; 56*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 57*d5c09012SAndroid Build Coastguard Worker } 58*d5c09012SAndroid Build Coastguard Worker 59*d5c09012SAndroid Build Coastguard Worker // Creates a new ManagementServer in a given project and location. 60*d5c09012SAndroid Build Coastguard Worker rpc CreateManagementServer(CreateManagementServerRequest) 61*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 62*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 63*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*}/managementServers" 64*d5c09012SAndroid Build Coastguard Worker body: "management_server" 65*d5c09012SAndroid Build Coastguard Worker }; 66*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 67*d5c09012SAndroid Build Coastguard Worker "parent,management_server,management_server_id"; 68*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 69*d5c09012SAndroid Build Coastguard Worker response_type: "ManagementServer" 70*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 71*d5c09012SAndroid Build Coastguard Worker }; 72*d5c09012SAndroid Build Coastguard Worker } 73*d5c09012SAndroid Build Coastguard Worker 74*d5c09012SAndroid Build Coastguard Worker // Deletes a single ManagementServer. 75*d5c09012SAndroid Build Coastguard Worker rpc DeleteManagementServer(DeleteManagementServerRequest) 76*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 77*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 78*d5c09012SAndroid Build Coastguard Worker delete: "/v1/{name=projects/*/locations/*/managementServers/*}" 79*d5c09012SAndroid Build Coastguard Worker }; 80*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 81*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 82*d5c09012SAndroid Build Coastguard Worker response_type: "google.protobuf.Empty" 83*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 84*d5c09012SAndroid Build Coastguard Worker }; 85*d5c09012SAndroid Build Coastguard Worker } 86*d5c09012SAndroid Build Coastguard Worker} 87*d5c09012SAndroid Build Coastguard Worker 88*d5c09012SAndroid Build Coastguard Worker// Network configuration for ManagementServer instance. 89*d5c09012SAndroid Build Coastguard Workermessage NetworkConfig { 90*d5c09012SAndroid Build Coastguard Worker // VPC peering modes supported by Cloud BackupDR. 91*d5c09012SAndroid Build Coastguard Worker enum PeeringMode { 92*d5c09012SAndroid Build Coastguard Worker // Peering mode not set. 93*d5c09012SAndroid Build Coastguard Worker PEERING_MODE_UNSPECIFIED = 0; 94*d5c09012SAndroid Build Coastguard Worker 95*d5c09012SAndroid Build Coastguard Worker // Connect using Private Service Access to the Management Server. Private 96*d5c09012SAndroid Build Coastguard Worker // services access provides an IP address range for multiple Google Cloud 97*d5c09012SAndroid Build Coastguard Worker // services, including Cloud BackupDR. 98*d5c09012SAndroid Build Coastguard Worker PRIVATE_SERVICE_ACCESS = 1; 99*d5c09012SAndroid Build Coastguard Worker } 100*d5c09012SAndroid Build Coastguard Worker 101*d5c09012SAndroid Build Coastguard Worker // Optional. The resource name of the Google Compute Engine VPC network to 102*d5c09012SAndroid Build Coastguard Worker // which the ManagementServer instance is connected. 103*d5c09012SAndroid Build Coastguard Worker string network = 1 [(google.api.field_behavior) = OPTIONAL]; 104*d5c09012SAndroid Build Coastguard Worker 105*d5c09012SAndroid Build Coastguard Worker // Optional. The network connect mode of the ManagementServer instance. For 106*d5c09012SAndroid Build Coastguard Worker // this version, only PRIVATE_SERVICE_ACCESS is supported. 107*d5c09012SAndroid Build Coastguard Worker PeeringMode peering_mode = 2 [(google.api.field_behavior) = OPTIONAL]; 108*d5c09012SAndroid Build Coastguard Worker} 109*d5c09012SAndroid Build Coastguard Worker 110*d5c09012SAndroid Build Coastguard Worker// ManagementURI for the Management Server resource. 111*d5c09012SAndroid Build Coastguard Workermessage ManagementURI { 112*d5c09012SAndroid Build Coastguard Worker // Output only. The ManagementServer AGM/RD WebUI URL. 113*d5c09012SAndroid Build Coastguard Worker string web_ui = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 114*d5c09012SAndroid Build Coastguard Worker 115*d5c09012SAndroid Build Coastguard Worker // Output only. The ManagementServer AGM/RD API URL. 116*d5c09012SAndroid Build Coastguard Worker string api = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 117*d5c09012SAndroid Build Coastguard Worker} 118*d5c09012SAndroid Build Coastguard Worker 119*d5c09012SAndroid Build Coastguard Worker// ManagementURI depending on the Workforce Identity i.e. either 1p or 3p. 120*d5c09012SAndroid Build Coastguard Workermessage WorkforceIdentityBasedManagementURI { 121*d5c09012SAndroid Build Coastguard Worker // Output only. First party Management URI for Google Identities. 122*d5c09012SAndroid Build Coastguard Worker string first_party_management_uri = 1 123*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 124*d5c09012SAndroid Build Coastguard Worker 125*d5c09012SAndroid Build Coastguard Worker // Output only. Third party Management URI for External Identity Providers. 126*d5c09012SAndroid Build Coastguard Worker string third_party_management_uri = 2 127*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 128*d5c09012SAndroid Build Coastguard Worker} 129*d5c09012SAndroid Build Coastguard Worker 130*d5c09012SAndroid Build Coastguard Worker// OAuth Client ID depending on the Workforce Identity i.e. either 1p or 3p, 131*d5c09012SAndroid Build Coastguard Workermessage WorkforceIdentityBasedOAuth2ClientID { 132*d5c09012SAndroid Build Coastguard Worker // Output only. First party OAuth Client ID for Google Identities. 133*d5c09012SAndroid Build Coastguard Worker string first_party_oauth2_client_id = 1 134*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 135*d5c09012SAndroid Build Coastguard Worker 136*d5c09012SAndroid Build Coastguard Worker // Output only. Third party OAuth Client ID for External Identity Providers. 137*d5c09012SAndroid Build Coastguard Worker string third_party_oauth2_client_id = 2 138*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 139*d5c09012SAndroid Build Coastguard Worker} 140*d5c09012SAndroid Build Coastguard Worker 141*d5c09012SAndroid Build Coastguard Worker// ManagementServer describes a single BackupDR ManagementServer instance. 142*d5c09012SAndroid Build Coastguard Workermessage ManagementServer { 143*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 144*d5c09012SAndroid Build Coastguard Worker type: "backupdr.googleapis.com/ManagementServer" 145*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/managementServers/{managementserver}" 146*d5c09012SAndroid Build Coastguard Worker plural: "managementServers" 147*d5c09012SAndroid Build Coastguard Worker singular: "managementServer" 148*d5c09012SAndroid Build Coastguard Worker }; 149*d5c09012SAndroid Build Coastguard Worker 150*d5c09012SAndroid Build Coastguard Worker // Type of backup service resource. 151*d5c09012SAndroid Build Coastguard Worker enum InstanceType { 152*d5c09012SAndroid Build Coastguard Worker // Instance type is not mentioned. 153*d5c09012SAndroid Build Coastguard Worker INSTANCE_TYPE_UNSPECIFIED = 0; 154*d5c09012SAndroid Build Coastguard Worker 155*d5c09012SAndroid Build Coastguard Worker // Instance for backup and restore management (i.e., AGM). 156*d5c09012SAndroid Build Coastguard Worker BACKUP_RESTORE = 1; 157*d5c09012SAndroid Build Coastguard Worker } 158*d5c09012SAndroid Build Coastguard Worker 159*d5c09012SAndroid Build Coastguard Worker // State of Management server instance. 160*d5c09012SAndroid Build Coastguard Worker enum InstanceState { 161*d5c09012SAndroid Build Coastguard Worker // State not set. 162*d5c09012SAndroid Build Coastguard Worker INSTANCE_STATE_UNSPECIFIED = 0; 163*d5c09012SAndroid Build Coastguard Worker 164*d5c09012SAndroid Build Coastguard Worker // The instance is being created. 165*d5c09012SAndroid Build Coastguard Worker CREATING = 1; 166*d5c09012SAndroid Build Coastguard Worker 167*d5c09012SAndroid Build Coastguard Worker // The instance has been created and is fully usable. 168*d5c09012SAndroid Build Coastguard Worker READY = 2; 169*d5c09012SAndroid Build Coastguard Worker 170*d5c09012SAndroid Build Coastguard Worker // The instance configuration is being updated. Certain kinds of updates 171*d5c09012SAndroid Build Coastguard Worker // may cause the instance to become unusable while the update is in 172*d5c09012SAndroid Build Coastguard Worker // progress. 173*d5c09012SAndroid Build Coastguard Worker UPDATING = 3; 174*d5c09012SAndroid Build Coastguard Worker 175*d5c09012SAndroid Build Coastguard Worker // The instance is being deleted. 176*d5c09012SAndroid Build Coastguard Worker DELETING = 4; 177*d5c09012SAndroid Build Coastguard Worker 178*d5c09012SAndroid Build Coastguard Worker // The instance is being repaired and may be unstable. 179*d5c09012SAndroid Build Coastguard Worker REPAIRING = 5; 180*d5c09012SAndroid Build Coastguard Worker 181*d5c09012SAndroid Build Coastguard Worker // Maintenance is being performed on this instance. 182*d5c09012SAndroid Build Coastguard Worker MAINTENANCE = 6; 183*d5c09012SAndroid Build Coastguard Worker 184*d5c09012SAndroid Build Coastguard Worker // The instance is experiencing an issue and might be unusable. You can get 185*d5c09012SAndroid Build Coastguard Worker // further details from the statusMessage field of Instance resource. 186*d5c09012SAndroid Build Coastguard Worker ERROR = 7; 187*d5c09012SAndroid Build Coastguard Worker } 188*d5c09012SAndroid Build Coastguard Worker 189*d5c09012SAndroid Build Coastguard Worker // Output only. Identifier. The resource name. 190*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 191*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY, 192*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = IDENTIFIER 193*d5c09012SAndroid Build Coastguard Worker ]; 194*d5c09012SAndroid Build Coastguard Worker 195*d5c09012SAndroid Build Coastguard Worker // Optional. The description of the ManagementServer instance (2048 characters 196*d5c09012SAndroid Build Coastguard Worker // or less). 197*d5c09012SAndroid Build Coastguard Worker string description = 9 [(google.api.field_behavior) = OPTIONAL]; 198*d5c09012SAndroid Build Coastguard Worker 199*d5c09012SAndroid Build Coastguard Worker // Optional. Resource labels to represent user provided metadata. 200*d5c09012SAndroid Build Coastguard Worker // Labels currently defined: 201*d5c09012SAndroid Build Coastguard Worker // 1. migrate_from_go=<false|true> 202*d5c09012SAndroid Build Coastguard Worker // If set to true, the MS is created in migration ready mode. 203*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 4 [(google.api.field_behavior) = OPTIONAL]; 204*d5c09012SAndroid Build Coastguard Worker 205*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the instance was created. 206*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 2 207*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 208*d5c09012SAndroid Build Coastguard Worker 209*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the instance was updated. 210*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 3 211*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 212*d5c09012SAndroid Build Coastguard Worker 213*d5c09012SAndroid Build Coastguard Worker // Optional. The type of the ManagementServer resource. 214*d5c09012SAndroid Build Coastguard Worker InstanceType type = 14 [(google.api.field_behavior) = OPTIONAL]; 215*d5c09012SAndroid Build Coastguard Worker 216*d5c09012SAndroid Build Coastguard Worker // Output only. The hostname or ip address of the exposed AGM endpoints, used 217*d5c09012SAndroid Build Coastguard Worker // by clients to connect to AGM/RD graphical user interface and APIs. 218*d5c09012SAndroid Build Coastguard Worker ManagementURI management_uri = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 219*d5c09012SAndroid Build Coastguard Worker 220*d5c09012SAndroid Build Coastguard Worker // Output only. The hostnames of the exposed AGM endpoints for both types of 221*d5c09012SAndroid Build Coastguard Worker // user i.e. 1p and 3p, used to connect AGM/RM UI. 222*d5c09012SAndroid Build Coastguard Worker WorkforceIdentityBasedManagementURI workforce_identity_based_management_uri = 223*d5c09012SAndroid Build Coastguard Worker 16 [(google.api.field_behavior) = OUTPUT_ONLY]; 224*d5c09012SAndroid Build Coastguard Worker 225*d5c09012SAndroid Build Coastguard Worker // Output only. The ManagementServer state. 226*d5c09012SAndroid Build Coastguard Worker InstanceState state = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 227*d5c09012SAndroid Build Coastguard Worker 228*d5c09012SAndroid Build Coastguard Worker // Required. VPC networks to which the ManagementServer instance is connected. 229*d5c09012SAndroid Build Coastguard Worker // For this version, only a single network is supported. 230*d5c09012SAndroid Build Coastguard Worker repeated NetworkConfig networks = 8 [(google.api.field_behavior) = REQUIRED]; 231*d5c09012SAndroid Build Coastguard Worker 232*d5c09012SAndroid Build Coastguard Worker // Optional. Server specified ETag for the ManagementServer resource to 233*d5c09012SAndroid Build Coastguard Worker // prevent simultaneous updates from overwiting each other. 234*d5c09012SAndroid Build Coastguard Worker string etag = 13 [(google.api.field_behavior) = OPTIONAL]; 235*d5c09012SAndroid Build Coastguard Worker 236*d5c09012SAndroid Build Coastguard Worker // Output only. The OAuth 2.0 client id is required to make API calls to the 237*d5c09012SAndroid Build Coastguard Worker // BackupDR instance API of this ManagementServer. This is the value that 238*d5c09012SAndroid Build Coastguard Worker // should be provided in the ‘aud’ field of the OIDC ID Token (see openid 239*d5c09012SAndroid Build Coastguard Worker // specification 240*d5c09012SAndroid Build Coastguard Worker // https://openid.net/specs/openid-connect-core-1_0.html#IDToken). 241*d5c09012SAndroid Build Coastguard Worker string oauth2_client_id = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; 242*d5c09012SAndroid Build Coastguard Worker 243*d5c09012SAndroid Build Coastguard Worker // Output only. The OAuth client IDs for both types of user i.e. 1p and 3p. 244*d5c09012SAndroid Build Coastguard Worker WorkforceIdentityBasedOAuth2ClientID 245*d5c09012SAndroid Build Coastguard Worker workforce_identity_based_oauth2_client_id = 17 246*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 247*d5c09012SAndroid Build Coastguard Worker 248*d5c09012SAndroid Build Coastguard Worker // Output only. The hostname or ip address of the exposed AGM endpoints, used 249*d5c09012SAndroid Build Coastguard Worker // by BAs to connect to BA proxy. 250*d5c09012SAndroid Build Coastguard Worker repeated string ba_proxy_uri = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; 251*d5c09012SAndroid Build Coastguard Worker} 252*d5c09012SAndroid Build Coastguard Worker 253*d5c09012SAndroid Build Coastguard Worker// Request message for listing management servers. 254*d5c09012SAndroid Build Coastguard Workermessage ListManagementServersRequest { 255*d5c09012SAndroid Build Coastguard Worker // Required. The project and location for which to retrieve management servers 256*d5c09012SAndroid Build Coastguard Worker // information, in the format `projects/{project_id}/locations/{location}`. In 257*d5c09012SAndroid Build Coastguard Worker // Cloud BackupDR, locations map to GCP regions, for example **us-central1**. 258*d5c09012SAndroid Build Coastguard Worker // To retrieve management servers for all locations, use "-" for the 259*d5c09012SAndroid Build Coastguard Worker // `{location}` value. 260*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 261*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 262*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 263*d5c09012SAndroid Build Coastguard Worker child_type: "backupdr.googleapis.com/ManagementServer" 264*d5c09012SAndroid Build Coastguard Worker } 265*d5c09012SAndroid Build Coastguard Worker ]; 266*d5c09012SAndroid Build Coastguard Worker 267*d5c09012SAndroid Build Coastguard Worker // Optional. Requested page size. Server may return fewer items than 268*d5c09012SAndroid Build Coastguard Worker // requested. If unspecified, server will pick an appropriate default. 269*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; 270*d5c09012SAndroid Build Coastguard Worker 271*d5c09012SAndroid Build Coastguard Worker // Optional. A token identifying a page of results the server should return. 272*d5c09012SAndroid Build Coastguard Worker string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; 273*d5c09012SAndroid Build Coastguard Worker 274*d5c09012SAndroid Build Coastguard Worker // Optional. Filtering results. 275*d5c09012SAndroid Build Coastguard Worker optional string filter = 4 [(google.api.field_behavior) = OPTIONAL]; 276*d5c09012SAndroid Build Coastguard Worker 277*d5c09012SAndroid Build Coastguard Worker // Optional. Hint for how to order the results. 278*d5c09012SAndroid Build Coastguard Worker optional string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; 279*d5c09012SAndroid Build Coastguard Worker} 280*d5c09012SAndroid Build Coastguard Worker 281*d5c09012SAndroid Build Coastguard Worker// Response message for listing management servers. 282*d5c09012SAndroid Build Coastguard Workermessage ListManagementServersResponse { 283*d5c09012SAndroid Build Coastguard Worker // The list of ManagementServer instances in the project for the specified 284*d5c09012SAndroid Build Coastguard Worker // location. 285*d5c09012SAndroid Build Coastguard Worker // 286*d5c09012SAndroid Build Coastguard Worker // If the `{location}` value in the request is "-", the response contains a 287*d5c09012SAndroid Build Coastguard Worker // list of instances from all locations. In case any location is unreachable, 288*d5c09012SAndroid Build Coastguard Worker // the response will only return management servers in reachable locations and 289*d5c09012SAndroid Build Coastguard Worker // the 'unreachable' field will be populated with a list of unreachable 290*d5c09012SAndroid Build Coastguard Worker // locations. 291*d5c09012SAndroid Build Coastguard Worker repeated ManagementServer management_servers = 1; 292*d5c09012SAndroid Build Coastguard Worker 293*d5c09012SAndroid Build Coastguard Worker // A token identifying a page of results the server should return. 294*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 295*d5c09012SAndroid Build Coastguard Worker 296*d5c09012SAndroid Build Coastguard Worker // Locations that could not be reached. 297*d5c09012SAndroid Build Coastguard Worker repeated string unreachable = 3; 298*d5c09012SAndroid Build Coastguard Worker} 299*d5c09012SAndroid Build Coastguard Worker 300*d5c09012SAndroid Build Coastguard Worker// Request message for getting a management server instance. 301*d5c09012SAndroid Build Coastguard Workermessage GetManagementServerRequest { 302*d5c09012SAndroid Build Coastguard Worker // Required. Name of the management server resource name, in the format 303*d5c09012SAndroid Build Coastguard Worker // `projects/{project_id}/locations/{location}/managementServers/{resource_name}` 304*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 305*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 306*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 307*d5c09012SAndroid Build Coastguard Worker type: "backupdr.googleapis.com/ManagementServer" 308*d5c09012SAndroid Build Coastguard Worker } 309*d5c09012SAndroid Build Coastguard Worker ]; 310*d5c09012SAndroid Build Coastguard Worker} 311*d5c09012SAndroid Build Coastguard Worker 312*d5c09012SAndroid Build Coastguard Worker// Request message for creating a management server instance. 313*d5c09012SAndroid Build Coastguard Workermessage CreateManagementServerRequest { 314*d5c09012SAndroid Build Coastguard Worker // Required. The management server project and location in the format 315*d5c09012SAndroid Build Coastguard Worker // `projects/{project_id}/locations/{location}`. In Cloud Backup and DR 316*d5c09012SAndroid Build Coastguard Worker // locations map to GCP regions, for example **us-central1**. 317*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 318*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 319*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 320*d5c09012SAndroid Build Coastguard Worker child_type: "backupdr.googleapis.com/ManagementServer" 321*d5c09012SAndroid Build Coastguard Worker } 322*d5c09012SAndroid Build Coastguard Worker ]; 323*d5c09012SAndroid Build Coastguard Worker 324*d5c09012SAndroid Build Coastguard Worker // Required. The name of the management server to create. The name must be 325*d5c09012SAndroid Build Coastguard Worker // unique for the specified project and location. 326*d5c09012SAndroid Build Coastguard Worker string management_server_id = 2 [(google.api.field_behavior) = REQUIRED]; 327*d5c09012SAndroid Build Coastguard Worker 328*d5c09012SAndroid Build Coastguard Worker // Required. A [management server 329*d5c09012SAndroid Build Coastguard Worker // resource][google.cloud.backupdr.v1.ManagementServer] 330*d5c09012SAndroid Build Coastguard Worker ManagementServer management_server = 3 331*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 332*d5c09012SAndroid Build Coastguard Worker 333*d5c09012SAndroid Build Coastguard Worker // Optional. An optional request ID to identify requests. Specify a unique 334*d5c09012SAndroid Build Coastguard Worker // request ID so that if you must retry your request, the server will know to 335*d5c09012SAndroid Build Coastguard Worker // ignore the request if it has already been completed. The server will 336*d5c09012SAndroid Build Coastguard Worker // guarantee that for at least 60 minutes since the first request. 337*d5c09012SAndroid Build Coastguard Worker // 338*d5c09012SAndroid Build Coastguard Worker // For example, consider a situation where you make an initial request and 339*d5c09012SAndroid Build Coastguard Worker // the request times out. If you make the request again with the same request 340*d5c09012SAndroid Build Coastguard Worker // ID, the server can check if original operation with the same request ID 341*d5c09012SAndroid Build Coastguard Worker // was received, and if so, will ignore the second request. This prevents 342*d5c09012SAndroid Build Coastguard Worker // clients from accidentally creating duplicate commitments. 343*d5c09012SAndroid Build Coastguard Worker // 344*d5c09012SAndroid Build Coastguard Worker // The request ID must be a valid UUID with the exception that zero UUID is 345*d5c09012SAndroid Build Coastguard Worker // not supported (00000000-0000-0000-0000-000000000000). 346*d5c09012SAndroid Build Coastguard Worker string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; 347*d5c09012SAndroid Build Coastguard Worker} 348*d5c09012SAndroid Build Coastguard Worker 349*d5c09012SAndroid Build Coastguard Worker// Request message for deleting a management server instance. 350*d5c09012SAndroid Build Coastguard Workermessage DeleteManagementServerRequest { 351*d5c09012SAndroid Build Coastguard Worker // Required. Name of the resource 352*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 353*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 354*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 355*d5c09012SAndroid Build Coastguard Worker type: "backupdr.googleapis.com/ManagementServer" 356*d5c09012SAndroid Build Coastguard Worker } 357*d5c09012SAndroid Build Coastguard Worker ]; 358*d5c09012SAndroid Build Coastguard Worker 359*d5c09012SAndroid Build Coastguard Worker // Optional. An optional request ID to identify requests. Specify a unique 360*d5c09012SAndroid Build Coastguard Worker // request ID so that if you must retry your request, the server will know to 361*d5c09012SAndroid Build Coastguard Worker // ignore the request if it has already been completed. The server will 362*d5c09012SAndroid Build Coastguard Worker // guarantee that for at least 60 minutes after the first request. 363*d5c09012SAndroid Build Coastguard Worker // 364*d5c09012SAndroid Build Coastguard Worker // For example, consider a situation where you make an initial request and 365*d5c09012SAndroid Build Coastguard Worker // the request times out. If you make the request again with the same request 366*d5c09012SAndroid Build Coastguard Worker // ID, the server can check if original operation with the same request ID 367*d5c09012SAndroid Build Coastguard Worker // was received, and if so, will ignore the second request. This prevents 368*d5c09012SAndroid Build Coastguard Worker // clients from accidentally creating duplicate commitments. 369*d5c09012SAndroid Build Coastguard Worker // 370*d5c09012SAndroid Build Coastguard Worker // The request ID must be a valid UUID with the exception that zero UUID is 371*d5c09012SAndroid Build Coastguard Worker // not supported (00000000-0000-0000-0000-000000000000). 372*d5c09012SAndroid Build Coastguard Worker string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; 373*d5c09012SAndroid Build Coastguard Worker} 374*d5c09012SAndroid Build Coastguard Worker 375*d5c09012SAndroid Build Coastguard Worker// Represents the metadata of the long-running operation. 376*d5c09012SAndroid Build Coastguard Workermessage OperationMetadata { 377*d5c09012SAndroid Build Coastguard Worker // Output only. The time the operation was created. 378*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 1 379*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 380*d5c09012SAndroid Build Coastguard Worker 381*d5c09012SAndroid Build Coastguard Worker // Output only. The time the operation finished running. 382*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp end_time = 2 383*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 384*d5c09012SAndroid Build Coastguard Worker 385*d5c09012SAndroid Build Coastguard Worker // Output only. Server-defined resource path for the target of the operation. 386*d5c09012SAndroid Build Coastguard Worker string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; 387*d5c09012SAndroid Build Coastguard Worker 388*d5c09012SAndroid Build Coastguard Worker // Output only. Name of the verb executed by the operation. 389*d5c09012SAndroid Build Coastguard Worker string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 390*d5c09012SAndroid Build Coastguard Worker 391*d5c09012SAndroid Build Coastguard Worker // Output only. Human-readable status of the operation, if any. 392*d5c09012SAndroid Build Coastguard Worker string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 393*d5c09012SAndroid Build Coastguard Worker 394*d5c09012SAndroid Build Coastguard Worker // Output only. Identifies whether the user has requested cancellation 395*d5c09012SAndroid Build Coastguard Worker // of the operation. Operations that have successfully been cancelled 396*d5c09012SAndroid Build Coastguard Worker // have [Operation.error][] value with a 397*d5c09012SAndroid Build Coastguard Worker // [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to 398*d5c09012SAndroid Build Coastguard Worker // `Code.CANCELLED`. 399*d5c09012SAndroid Build Coastguard Worker bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 400*d5c09012SAndroid Build Coastguard Worker 401*d5c09012SAndroid Build Coastguard Worker // Output only. API version used to start the operation. 402*d5c09012SAndroid Build Coastguard Worker string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 403*d5c09012SAndroid Build Coastguard Worker 404*d5c09012SAndroid Build Coastguard Worker // Output only. AdditionalInfo contains additional Info related to backup plan 405*d5c09012SAndroid Build Coastguard Worker // association resource. 406*d5c09012SAndroid Build Coastguard Worker map<string, string> additional_info = 8 407*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 408*d5c09012SAndroid Build Coastguard Worker} 409