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.storagetransfer.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/longrunning/operations.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/storagetransfer/v1/transfer_types.proto"; 26*d5c09012SAndroid Build Coastguard Worker 27*d5c09012SAndroid Build Coastguard Workeroption cc_enable_arenas = true; 28*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.StorageTransfer.V1"; 29*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/storagetransfer/apiv1/storagetransferpb;storagetransferpb"; 30*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "TransferProto"; 31*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.storagetransfer.v1.proto"; 32*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\StorageTransfer\\V1"; 33*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::StorageTransfer::V1"; 34*d5c09012SAndroid Build Coastguard Worker 35*d5c09012SAndroid Build Coastguard Worker// Storage Transfer Service and its protos. 36*d5c09012SAndroid Build Coastguard Worker// Transfers data between between Google Cloud Storage buckets or from a data 37*d5c09012SAndroid Build Coastguard Worker// source external to Google to a Cloud Storage bucket. 38*d5c09012SAndroid Build Coastguard Workerservice StorageTransferService { 39*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "storagetransfer.googleapis.com"; 40*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 41*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 42*d5c09012SAndroid Build Coastguard Worker 43*d5c09012SAndroid Build Coastguard Worker // Returns the Google service account that is used by Storage Transfer 44*d5c09012SAndroid Build Coastguard Worker // Service to access buckets in the project where transfers 45*d5c09012SAndroid Build Coastguard Worker // run or in other projects. Each Google service account is associated 46*d5c09012SAndroid Build Coastguard Worker // with one Google Cloud project. Users 47*d5c09012SAndroid Build Coastguard Worker // should add this service account to the Google Cloud Storage bucket 48*d5c09012SAndroid Build Coastguard Worker // ACLs to grant access to Storage Transfer Service. This service 49*d5c09012SAndroid Build Coastguard Worker // account is created and owned by Storage Transfer Service and can 50*d5c09012SAndroid Build Coastguard Worker // only be used by Storage Transfer Service. 51*d5c09012SAndroid Build Coastguard Worker rpc GetGoogleServiceAccount(GetGoogleServiceAccountRequest) 52*d5c09012SAndroid Build Coastguard Worker returns (GoogleServiceAccount) { 53*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 54*d5c09012SAndroid Build Coastguard Worker get: "/v1/googleServiceAccounts/{project_id}" 55*d5c09012SAndroid Build Coastguard Worker }; 56*d5c09012SAndroid Build Coastguard Worker } 57*d5c09012SAndroid Build Coastguard Worker 58*d5c09012SAndroid Build Coastguard Worker // Creates a transfer job that runs periodically. 59*d5c09012SAndroid Build Coastguard Worker rpc CreateTransferJob(CreateTransferJobRequest) returns (TransferJob) { 60*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 61*d5c09012SAndroid Build Coastguard Worker post: "/v1/transferJobs" 62*d5c09012SAndroid Build Coastguard Worker body: "transfer_job" 63*d5c09012SAndroid Build Coastguard Worker }; 64*d5c09012SAndroid Build Coastguard Worker } 65*d5c09012SAndroid Build Coastguard Worker 66*d5c09012SAndroid Build Coastguard Worker // Updates a transfer job. Updating a job's transfer spec does not affect 67*d5c09012SAndroid Build Coastguard Worker // transfer operations that are running already. 68*d5c09012SAndroid Build Coastguard Worker // 69*d5c09012SAndroid Build Coastguard Worker // **Note:** The job's [status][google.storagetransfer.v1.TransferJob.status] 70*d5c09012SAndroid Build Coastguard Worker // field can be modified using this RPC (for example, to set a job's status to 71*d5c09012SAndroid Build Coastguard Worker // [DELETED][google.storagetransfer.v1.TransferJob.Status.DELETED], 72*d5c09012SAndroid Build Coastguard Worker // [DISABLED][google.storagetransfer.v1.TransferJob.Status.DISABLED], or 73*d5c09012SAndroid Build Coastguard Worker // [ENABLED][google.storagetransfer.v1.TransferJob.Status.ENABLED]). 74*d5c09012SAndroid Build Coastguard Worker rpc UpdateTransferJob(UpdateTransferJobRequest) returns (TransferJob) { 75*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 76*d5c09012SAndroid Build Coastguard Worker patch: "/v1/{job_name=transferJobs/**}" 77*d5c09012SAndroid Build Coastguard Worker body: "*" 78*d5c09012SAndroid Build Coastguard Worker }; 79*d5c09012SAndroid Build Coastguard Worker } 80*d5c09012SAndroid Build Coastguard Worker 81*d5c09012SAndroid Build Coastguard Worker // Gets a transfer job. 82*d5c09012SAndroid Build Coastguard Worker rpc GetTransferJob(GetTransferJobRequest) returns (TransferJob) { 83*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 84*d5c09012SAndroid Build Coastguard Worker get: "/v1/{job_name=transferJobs/**}" 85*d5c09012SAndroid Build Coastguard Worker }; 86*d5c09012SAndroid Build Coastguard Worker } 87*d5c09012SAndroid Build Coastguard Worker 88*d5c09012SAndroid Build Coastguard Worker // Lists transfer jobs. 89*d5c09012SAndroid Build Coastguard Worker rpc ListTransferJobs(ListTransferJobsRequest) 90*d5c09012SAndroid Build Coastguard Worker returns (ListTransferJobsResponse) { 91*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 92*d5c09012SAndroid Build Coastguard Worker get: "/v1/transferJobs" 93*d5c09012SAndroid Build Coastguard Worker }; 94*d5c09012SAndroid Build Coastguard Worker } 95*d5c09012SAndroid Build Coastguard Worker 96*d5c09012SAndroid Build Coastguard Worker // Pauses a transfer operation. 97*d5c09012SAndroid Build Coastguard Worker rpc PauseTransferOperation(PauseTransferOperationRequest) 98*d5c09012SAndroid Build Coastguard Worker returns (google.protobuf.Empty) { 99*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 100*d5c09012SAndroid Build Coastguard Worker post: "/v1/{name=transferOperations/**}:pause" 101*d5c09012SAndroid Build Coastguard Worker body: "*" 102*d5c09012SAndroid Build Coastguard Worker }; 103*d5c09012SAndroid Build Coastguard Worker } 104*d5c09012SAndroid Build Coastguard Worker 105*d5c09012SAndroid Build Coastguard Worker // Resumes a transfer operation that is paused. 106*d5c09012SAndroid Build Coastguard Worker rpc ResumeTransferOperation(ResumeTransferOperationRequest) 107*d5c09012SAndroid Build Coastguard Worker returns (google.protobuf.Empty) { 108*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 109*d5c09012SAndroid Build Coastguard Worker post: "/v1/{name=transferOperations/**}:resume" 110*d5c09012SAndroid Build Coastguard Worker body: "*" 111*d5c09012SAndroid Build Coastguard Worker }; 112*d5c09012SAndroid Build Coastguard Worker } 113*d5c09012SAndroid Build Coastguard Worker 114*d5c09012SAndroid Build Coastguard Worker // Starts a new operation for the specified transfer job. 115*d5c09012SAndroid Build Coastguard Worker // A `TransferJob` has a maximum of one active `TransferOperation`. If this 116*d5c09012SAndroid Build Coastguard Worker // method is called while a `TransferOperation` is active, an error is 117*d5c09012SAndroid Build Coastguard Worker // returned. 118*d5c09012SAndroid Build Coastguard Worker rpc RunTransferJob(RunTransferJobRequest) 119*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 120*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 121*d5c09012SAndroid Build Coastguard Worker post: "/v1/{job_name=transferJobs/**}:run" 122*d5c09012SAndroid Build Coastguard Worker body: "*" 123*d5c09012SAndroid Build Coastguard Worker }; 124*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 125*d5c09012SAndroid Build Coastguard Worker response_type: "google.protobuf.Empty" 126*d5c09012SAndroid Build Coastguard Worker metadata_type: "TransferOperation" 127*d5c09012SAndroid Build Coastguard Worker }; 128*d5c09012SAndroid Build Coastguard Worker } 129*d5c09012SAndroid Build Coastguard Worker 130*d5c09012SAndroid Build Coastguard Worker // Deletes a transfer job. Deleting a transfer job sets its status to 131*d5c09012SAndroid Build Coastguard Worker // [DELETED][google.storagetransfer.v1.TransferJob.Status.DELETED]. 132*d5c09012SAndroid Build Coastguard Worker rpc DeleteTransferJob(DeleteTransferJobRequest) 133*d5c09012SAndroid Build Coastguard Worker returns (google.protobuf.Empty) { 134*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 135*d5c09012SAndroid Build Coastguard Worker delete: "/v1/{job_name=transferJobs/**}" 136*d5c09012SAndroid Build Coastguard Worker }; 137*d5c09012SAndroid Build Coastguard Worker } 138*d5c09012SAndroid Build Coastguard Worker 139*d5c09012SAndroid Build Coastguard Worker // Creates an agent pool resource. 140*d5c09012SAndroid Build Coastguard Worker rpc CreateAgentPool(CreateAgentPoolRequest) returns (AgentPool) { 141*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 142*d5c09012SAndroid Build Coastguard Worker post: "/v1/projects/{project_id=*}/agentPools" 143*d5c09012SAndroid Build Coastguard Worker body: "agent_pool" 144*d5c09012SAndroid Build Coastguard Worker }; 145*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 146*d5c09012SAndroid Build Coastguard Worker "project_id,agent_pool,agent_pool_id"; 147*d5c09012SAndroid Build Coastguard Worker } 148*d5c09012SAndroid Build Coastguard Worker 149*d5c09012SAndroid Build Coastguard Worker // Updates an existing agent pool resource. 150*d5c09012SAndroid Build Coastguard Worker rpc UpdateAgentPool(UpdateAgentPoolRequest) returns (AgentPool) { 151*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 152*d5c09012SAndroid Build Coastguard Worker patch: "/v1/{agent_pool.name=projects/*/agentPools/*}" 153*d5c09012SAndroid Build Coastguard Worker body: "agent_pool" 154*d5c09012SAndroid Build Coastguard Worker }; 155*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "agent_pool,update_mask"; 156*d5c09012SAndroid Build Coastguard Worker } 157*d5c09012SAndroid Build Coastguard Worker 158*d5c09012SAndroid Build Coastguard Worker // Gets an agent pool. 159*d5c09012SAndroid Build Coastguard Worker rpc GetAgentPool(GetAgentPoolRequest) returns (AgentPool) { 160*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 161*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/agentPools/*}" 162*d5c09012SAndroid Build Coastguard Worker }; 163*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 164*d5c09012SAndroid Build Coastguard Worker } 165*d5c09012SAndroid Build Coastguard Worker 166*d5c09012SAndroid Build Coastguard Worker // Lists agent pools. 167*d5c09012SAndroid Build Coastguard Worker rpc ListAgentPools(ListAgentPoolsRequest) returns (ListAgentPoolsResponse) { 168*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 169*d5c09012SAndroid Build Coastguard Worker get: "/v1/projects/{project_id=*}/agentPools" 170*d5c09012SAndroid Build Coastguard Worker }; 171*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id"; 172*d5c09012SAndroid Build Coastguard Worker } 173*d5c09012SAndroid Build Coastguard Worker 174*d5c09012SAndroid Build Coastguard Worker // Deletes an agent pool. 175*d5c09012SAndroid Build Coastguard Worker rpc DeleteAgentPool(DeleteAgentPoolRequest) returns (google.protobuf.Empty) { 176*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 177*d5c09012SAndroid Build Coastguard Worker delete: "/v1/{name=projects/*/agentPools/*}" 178*d5c09012SAndroid Build Coastguard Worker }; 179*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 180*d5c09012SAndroid Build Coastguard Worker } 181*d5c09012SAndroid Build Coastguard Worker} 182*d5c09012SAndroid Build Coastguard Worker 183*d5c09012SAndroid Build Coastguard Worker// Request passed to GetGoogleServiceAccount. 184*d5c09012SAndroid Build Coastguard Workermessage GetGoogleServiceAccountRequest { 185*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud project that the Google service 186*d5c09012SAndroid Build Coastguard Worker // account is associated with. 187*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 188*d5c09012SAndroid Build Coastguard Worker} 189*d5c09012SAndroid Build Coastguard Worker 190*d5c09012SAndroid Build Coastguard Worker// Request passed to CreateTransferJob. 191*d5c09012SAndroid Build Coastguard Workermessage CreateTransferJobRequest { 192*d5c09012SAndroid Build Coastguard Worker // Required. The job to create. 193*d5c09012SAndroid Build Coastguard Worker TransferJob transfer_job = 1 [(google.api.field_behavior) = REQUIRED]; 194*d5c09012SAndroid Build Coastguard Worker} 195*d5c09012SAndroid Build Coastguard Worker 196*d5c09012SAndroid Build Coastguard Worker// Request passed to UpdateTransferJob. 197*d5c09012SAndroid Build Coastguard Workermessage UpdateTransferJobRequest { 198*d5c09012SAndroid Build Coastguard Worker // Required. The name of job to update. 199*d5c09012SAndroid Build Coastguard Worker string job_name = 1 [(google.api.field_behavior) = REQUIRED]; 200*d5c09012SAndroid Build Coastguard Worker 201*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud project that owns the 202*d5c09012SAndroid Build Coastguard Worker // job. 203*d5c09012SAndroid Build Coastguard Worker string project_id = 2 [(google.api.field_behavior) = REQUIRED]; 204*d5c09012SAndroid Build Coastguard Worker 205*d5c09012SAndroid Build Coastguard Worker // Required. The job to update. `transferJob` is expected to specify one or 206*d5c09012SAndroid Build Coastguard Worker // more of five fields: 207*d5c09012SAndroid Build Coastguard Worker // [description][google.storagetransfer.v1.TransferJob.description], 208*d5c09012SAndroid Build Coastguard Worker // [transfer_spec][google.storagetransfer.v1.TransferJob.transfer_spec], 209*d5c09012SAndroid Build Coastguard Worker // [notification_config][google.storagetransfer.v1.TransferJob.notification_config], 210*d5c09012SAndroid Build Coastguard Worker // [logging_config][google.storagetransfer.v1.TransferJob.logging_config], and 211*d5c09012SAndroid Build Coastguard Worker // [status][google.storagetransfer.v1.TransferJob.status]. An 212*d5c09012SAndroid Build Coastguard Worker // `UpdateTransferJobRequest` that specifies other fields are rejected with 213*d5c09012SAndroid Build Coastguard Worker // the error [INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]. Updating a 214*d5c09012SAndroid Build Coastguard Worker // job status to 215*d5c09012SAndroid Build Coastguard Worker // [DELETED][google.storagetransfer.v1.TransferJob.Status.DELETED] requires 216*d5c09012SAndroid Build Coastguard Worker // `storagetransfer.jobs.delete` permission. 217*d5c09012SAndroid Build Coastguard Worker TransferJob transfer_job = 3 [(google.api.field_behavior) = REQUIRED]; 218*d5c09012SAndroid Build Coastguard Worker 219*d5c09012SAndroid Build Coastguard Worker // The field mask of the fields in `transferJob` that are to be updated in 220*d5c09012SAndroid Build Coastguard Worker // this request. Fields in `transferJob` that can be updated are: 221*d5c09012SAndroid Build Coastguard Worker // [description][google.storagetransfer.v1.TransferJob.description], 222*d5c09012SAndroid Build Coastguard Worker // [transfer_spec][google.storagetransfer.v1.TransferJob.transfer_spec], 223*d5c09012SAndroid Build Coastguard Worker // [notification_config][google.storagetransfer.v1.TransferJob.notification_config], 224*d5c09012SAndroid Build Coastguard Worker // [logging_config][google.storagetransfer.v1.TransferJob.logging_config], and 225*d5c09012SAndroid Build Coastguard Worker // [status][google.storagetransfer.v1.TransferJob.status]. To update the 226*d5c09012SAndroid Build Coastguard Worker // `transfer_spec` of the job, a complete transfer specification must be 227*d5c09012SAndroid Build Coastguard Worker // provided. An incomplete specification missing any required fields is 228*d5c09012SAndroid Build Coastguard Worker // rejected with the error 229*d5c09012SAndroid Build Coastguard Worker // [INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]. 230*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_transfer_job_field_mask = 4; 231*d5c09012SAndroid Build Coastguard Worker} 232*d5c09012SAndroid Build Coastguard Worker 233*d5c09012SAndroid Build Coastguard Worker// Request passed to GetTransferJob. 234*d5c09012SAndroid Build Coastguard Workermessage GetTransferJobRequest { 235*d5c09012SAndroid Build Coastguard Worker // Required. The job to get. 236*d5c09012SAndroid Build Coastguard Worker string job_name = 1 [(google.api.field_behavior) = REQUIRED]; 237*d5c09012SAndroid Build Coastguard Worker 238*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud project that owns the 239*d5c09012SAndroid Build Coastguard Worker // job. 240*d5c09012SAndroid Build Coastguard Worker string project_id = 2 [(google.api.field_behavior) = REQUIRED]; 241*d5c09012SAndroid Build Coastguard Worker} 242*d5c09012SAndroid Build Coastguard Worker 243*d5c09012SAndroid Build Coastguard Worker// Request passed to DeleteTransferJob. 244*d5c09012SAndroid Build Coastguard Workermessage DeleteTransferJobRequest { 245*d5c09012SAndroid Build Coastguard Worker // Required. The job to delete. 246*d5c09012SAndroid Build Coastguard Worker string job_name = 1 [(google.api.field_behavior) = REQUIRED]; 247*d5c09012SAndroid Build Coastguard Worker 248*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud project that owns the 249*d5c09012SAndroid Build Coastguard Worker // job. 250*d5c09012SAndroid Build Coastguard Worker string project_id = 2 [(google.api.field_behavior) = REQUIRED]; 251*d5c09012SAndroid Build Coastguard Worker} 252*d5c09012SAndroid Build Coastguard Worker 253*d5c09012SAndroid Build Coastguard Worker// `projectId`, `jobNames`, and `jobStatuses` are query parameters that can 254*d5c09012SAndroid Build Coastguard Worker// be specified when listing transfer jobs. 255*d5c09012SAndroid Build Coastguard Workermessage ListTransferJobsRequest { 256*d5c09012SAndroid Build Coastguard Worker // Required. A list of query parameters specified as JSON text in the form of: 257*d5c09012SAndroid Build Coastguard Worker // `{"projectId":"my_project_id", 258*d5c09012SAndroid Build Coastguard Worker // "jobNames":["jobid1","jobid2",...], 259*d5c09012SAndroid Build Coastguard Worker // "jobStatuses":["status1","status2",...]}` 260*d5c09012SAndroid Build Coastguard Worker // 261*d5c09012SAndroid Build Coastguard Worker // Since `jobNames` and `jobStatuses` support multiple values, their values 262*d5c09012SAndroid Build Coastguard Worker // must be specified with array notation. `projectId` is required. 263*d5c09012SAndroid Build Coastguard Worker // `jobNames` and `jobStatuses` are optional. The valid values for 264*d5c09012SAndroid Build Coastguard Worker // `jobStatuses` are case-insensitive: 265*d5c09012SAndroid Build Coastguard Worker // [ENABLED][google.storagetransfer.v1.TransferJob.Status.ENABLED], 266*d5c09012SAndroid Build Coastguard Worker // [DISABLED][google.storagetransfer.v1.TransferJob.Status.DISABLED], and 267*d5c09012SAndroid Build Coastguard Worker // [DELETED][google.storagetransfer.v1.TransferJob.Status.DELETED]. 268*d5c09012SAndroid Build Coastguard Worker string filter = 1 [(google.api.field_behavior) = REQUIRED]; 269*d5c09012SAndroid Build Coastguard Worker 270*d5c09012SAndroid Build Coastguard Worker // The list page size. The max allowed value is 256. 271*d5c09012SAndroid Build Coastguard Worker int32 page_size = 4; 272*d5c09012SAndroid Build Coastguard Worker 273*d5c09012SAndroid Build Coastguard Worker // The list page token. 274*d5c09012SAndroid Build Coastguard Worker string page_token = 5; 275*d5c09012SAndroid Build Coastguard Worker} 276*d5c09012SAndroid Build Coastguard Worker 277*d5c09012SAndroid Build Coastguard Worker// Response from ListTransferJobs. 278*d5c09012SAndroid Build Coastguard Workermessage ListTransferJobsResponse { 279*d5c09012SAndroid Build Coastguard Worker // A list of transfer jobs. 280*d5c09012SAndroid Build Coastguard Worker repeated TransferJob transfer_jobs = 1; 281*d5c09012SAndroid Build Coastguard Worker 282*d5c09012SAndroid Build Coastguard Worker // The list next page token. 283*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 284*d5c09012SAndroid Build Coastguard Worker} 285*d5c09012SAndroid Build Coastguard Worker 286*d5c09012SAndroid Build Coastguard Worker// Request passed to PauseTransferOperation. 287*d5c09012SAndroid Build Coastguard Workermessage PauseTransferOperationRequest { 288*d5c09012SAndroid Build Coastguard Worker // Required. The name of the transfer operation. 289*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = REQUIRED]; 290*d5c09012SAndroid Build Coastguard Worker} 291*d5c09012SAndroid Build Coastguard Worker 292*d5c09012SAndroid Build Coastguard Worker// Request passed to ResumeTransferOperation. 293*d5c09012SAndroid Build Coastguard Workermessage ResumeTransferOperationRequest { 294*d5c09012SAndroid Build Coastguard Worker // Required. The name of the transfer operation. 295*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = REQUIRED]; 296*d5c09012SAndroid Build Coastguard Worker} 297*d5c09012SAndroid Build Coastguard Worker 298*d5c09012SAndroid Build Coastguard Worker// Request passed to RunTransferJob. 299*d5c09012SAndroid Build Coastguard Workermessage RunTransferJobRequest { 300*d5c09012SAndroid Build Coastguard Worker // Required. The name of the transfer job. 301*d5c09012SAndroid Build Coastguard Worker string job_name = 1 [(google.api.field_behavior) = REQUIRED]; 302*d5c09012SAndroid Build Coastguard Worker 303*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud project that owns the transfer 304*d5c09012SAndroid Build Coastguard Worker // job. 305*d5c09012SAndroid Build Coastguard Worker string project_id = 2 [(google.api.field_behavior) = REQUIRED]; 306*d5c09012SAndroid Build Coastguard Worker} 307*d5c09012SAndroid Build Coastguard Worker 308*d5c09012SAndroid Build Coastguard Worker// Specifies the request passed to CreateAgentPool. 309*d5c09012SAndroid Build Coastguard Workermessage CreateAgentPoolRequest { 310*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud project that owns the 311*d5c09012SAndroid Build Coastguard Worker // agent pool. 312*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 313*d5c09012SAndroid Build Coastguard Worker 314*d5c09012SAndroid Build Coastguard Worker // Required. The agent pool to create. 315*d5c09012SAndroid Build Coastguard Worker AgentPool agent_pool = 2 [(google.api.field_behavior) = REQUIRED]; 316*d5c09012SAndroid Build Coastguard Worker 317*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the agent pool to create. 318*d5c09012SAndroid Build Coastguard Worker // 319*d5c09012SAndroid Build Coastguard Worker // The `agent_pool_id` must meet the following requirements: 320*d5c09012SAndroid Build Coastguard Worker // 321*d5c09012SAndroid Build Coastguard Worker // * Length of 128 characters or less. 322*d5c09012SAndroid Build Coastguard Worker // * Not start with the string `goog`. 323*d5c09012SAndroid Build Coastguard Worker // * Start with a lowercase ASCII character, followed by: 324*d5c09012SAndroid Build Coastguard Worker // * Zero or more: lowercase Latin alphabet characters, numerals, 325*d5c09012SAndroid Build Coastguard Worker // hyphens (`-`), periods (`.`), underscores (`_`), or tildes (`~`). 326*d5c09012SAndroid Build Coastguard Worker // * One or more numerals or lowercase ASCII characters. 327*d5c09012SAndroid Build Coastguard Worker // 328*d5c09012SAndroid Build Coastguard Worker // As expressed by the regular expression: 329*d5c09012SAndroid Build Coastguard Worker // `^(?!goog)[a-z]([a-z0-9-._~]*[a-z0-9])?$`. 330*d5c09012SAndroid Build Coastguard Worker string agent_pool_id = 3 [(google.api.field_behavior) = REQUIRED]; 331*d5c09012SAndroid Build Coastguard Worker} 332*d5c09012SAndroid Build Coastguard Worker 333*d5c09012SAndroid Build Coastguard Worker// Specifies the request passed to UpdateAgentPool. 334*d5c09012SAndroid Build Coastguard Workermessage UpdateAgentPoolRequest { 335*d5c09012SAndroid Build Coastguard Worker // Required. The agent pool to update. `agent_pool` is expected to specify 336*d5c09012SAndroid Build Coastguard Worker // following fields: 337*d5c09012SAndroid Build Coastguard Worker // 338*d5c09012SAndroid Build Coastguard Worker // * [name][google.storagetransfer.v1.AgentPool.name] 339*d5c09012SAndroid Build Coastguard Worker // 340*d5c09012SAndroid Build Coastguard Worker // * [display_name][google.storagetransfer.v1.AgentPool.display_name] 341*d5c09012SAndroid Build Coastguard Worker // 342*d5c09012SAndroid Build Coastguard Worker // * [bandwidth_limit][google.storagetransfer.v1.AgentPool.bandwidth_limit] 343*d5c09012SAndroid Build Coastguard Worker // An `UpdateAgentPoolRequest` with any other fields is rejected 344*d5c09012SAndroid Build Coastguard Worker // with the error [INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]. 345*d5c09012SAndroid Build Coastguard Worker AgentPool agent_pool = 1 [(google.api.field_behavior) = REQUIRED]; 346*d5c09012SAndroid Build Coastguard Worker 347*d5c09012SAndroid Build Coastguard Worker // The [field mask] 348*d5c09012SAndroid Build Coastguard Worker // (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf) 349*d5c09012SAndroid Build Coastguard Worker // of the fields in `agentPool` to update in this request. 350*d5c09012SAndroid Build Coastguard Worker // The following `agentPool` fields can be updated: 351*d5c09012SAndroid Build Coastguard Worker // 352*d5c09012SAndroid Build Coastguard Worker // * [display_name][google.storagetransfer.v1.AgentPool.display_name] 353*d5c09012SAndroid Build Coastguard Worker // 354*d5c09012SAndroid Build Coastguard Worker // * [bandwidth_limit][google.storagetransfer.v1.AgentPool.bandwidth_limit] 355*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2; 356*d5c09012SAndroid Build Coastguard Worker} 357*d5c09012SAndroid Build Coastguard Worker 358*d5c09012SAndroid Build Coastguard Worker// Specifies the request passed to GetAgentPool. 359*d5c09012SAndroid Build Coastguard Workermessage GetAgentPoolRequest { 360*d5c09012SAndroid Build Coastguard Worker // Required. The name of the agent pool to get. 361*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = REQUIRED]; 362*d5c09012SAndroid Build Coastguard Worker} 363*d5c09012SAndroid Build Coastguard Worker 364*d5c09012SAndroid Build Coastguard Worker// Specifies the request passed to DeleteAgentPool. 365*d5c09012SAndroid Build Coastguard Workermessage DeleteAgentPoolRequest { 366*d5c09012SAndroid Build Coastguard Worker // Required. The name of the agent pool to delete. 367*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = REQUIRED]; 368*d5c09012SAndroid Build Coastguard Worker} 369*d5c09012SAndroid Build Coastguard Worker 370*d5c09012SAndroid Build Coastguard Worker// The request passed to ListAgentPools. 371*d5c09012SAndroid Build Coastguard Workermessage ListAgentPoolsRequest { 372*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud project that owns the job. 373*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 374*d5c09012SAndroid Build Coastguard Worker 375*d5c09012SAndroid Build Coastguard Worker // An optional list of query parameters specified as JSON text in the 376*d5c09012SAndroid Build Coastguard Worker // form of: 377*d5c09012SAndroid Build Coastguard Worker // 378*d5c09012SAndroid Build Coastguard Worker // `{"agentPoolNames":["agentpool1","agentpool2",...]}` 379*d5c09012SAndroid Build Coastguard Worker // 380*d5c09012SAndroid Build Coastguard Worker // Since `agentPoolNames` support multiple values, its values must be 381*d5c09012SAndroid Build Coastguard Worker // specified with array notation. When the filter is either empty or not 382*d5c09012SAndroid Build Coastguard Worker // provided, the list returns all agent pools for the project. 383*d5c09012SAndroid Build Coastguard Worker string filter = 2; 384*d5c09012SAndroid Build Coastguard Worker 385*d5c09012SAndroid Build Coastguard Worker // The list page size. The max allowed value is `256`. 386*d5c09012SAndroid Build Coastguard Worker int32 page_size = 3; 387*d5c09012SAndroid Build Coastguard Worker 388*d5c09012SAndroid Build Coastguard Worker // The list page token. 389*d5c09012SAndroid Build Coastguard Worker string page_token = 4; 390*d5c09012SAndroid Build Coastguard Worker} 391*d5c09012SAndroid Build Coastguard Worker 392*d5c09012SAndroid Build Coastguard Worker// Response from ListAgentPools. 393*d5c09012SAndroid Build Coastguard Workermessage ListAgentPoolsResponse { 394*d5c09012SAndroid Build Coastguard Worker // A list of agent pools. 395*d5c09012SAndroid Build Coastguard Worker repeated AgentPool agent_pools = 1; 396*d5c09012SAndroid Build Coastguard Worker 397*d5c09012SAndroid Build Coastguard Worker // The list next page token. 398*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 399*d5c09012SAndroid Build Coastguard Worker} 400