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.tasks.v2beta2; 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/httpbody.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/tasks/v2beta2/queue.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/tasks/v2beta2/task.proto"; 26*d5c09012SAndroid Build Coastguard Workerimport "google/iam/v1/iam_policy.proto"; 27*d5c09012SAndroid Build Coastguard Workerimport "google/iam/v1/policy.proto"; 28*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/duration.proto"; 29*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 30*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 31*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 32*d5c09012SAndroid Build Coastguard Worker 33*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/cloudtasks/apiv2beta2/cloudtaskspb;cloudtaskspb"; 34*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 35*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "CloudTasksProto"; 36*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.tasks.v2beta2"; 37*d5c09012SAndroid Build Coastguard Workeroption objc_class_prefix = "TASKS"; 38*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 39*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Location" 40*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}" 41*d5c09012SAndroid Build Coastguard Worker}; 42*d5c09012SAndroid Build Coastguard Worker 43*d5c09012SAndroid Build Coastguard Worker// Cloud Tasks allows developers to manage the execution of background 44*d5c09012SAndroid Build Coastguard Worker// work in their applications. 45*d5c09012SAndroid Build Coastguard Workerservice CloudTasks { 46*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "cloudtasks.googleapis.com"; 47*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 48*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 49*d5c09012SAndroid Build Coastguard Worker 50*d5c09012SAndroid Build Coastguard Worker // Lists queues. 51*d5c09012SAndroid Build Coastguard Worker // 52*d5c09012SAndroid Build Coastguard Worker // Queues are returned in lexicographical order. 53*d5c09012SAndroid Build Coastguard Worker rpc ListQueues(ListQueuesRequest) returns (ListQueuesResponse) { 54*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 55*d5c09012SAndroid Build Coastguard Worker get: "/v2beta2/{parent=projects/*/locations/*}/queues" 56*d5c09012SAndroid Build Coastguard Worker }; 57*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 58*d5c09012SAndroid Build Coastguard Worker } 59*d5c09012SAndroid Build Coastguard Worker 60*d5c09012SAndroid Build Coastguard Worker // Gets a queue. 61*d5c09012SAndroid Build Coastguard Worker rpc GetQueue(GetQueueRequest) returns (Queue) { 62*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 63*d5c09012SAndroid Build Coastguard Worker get: "/v2beta2/{name=projects/*/locations/*/queues/*}" 64*d5c09012SAndroid Build Coastguard Worker }; 65*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 66*d5c09012SAndroid Build Coastguard Worker } 67*d5c09012SAndroid Build Coastguard Worker 68*d5c09012SAndroid Build Coastguard Worker // Creates a queue. 69*d5c09012SAndroid Build Coastguard Worker // 70*d5c09012SAndroid Build Coastguard Worker // Queues created with this method allow tasks to live for a maximum of 31 71*d5c09012SAndroid Build Coastguard Worker // days. After a task is 31 days old, the task will be deleted regardless of 72*d5c09012SAndroid Build Coastguard Worker // whether it was dispatched or not. 73*d5c09012SAndroid Build Coastguard Worker // 74*d5c09012SAndroid Build Coastguard Worker // WARNING: Using this method may have unintended side effects if you are 75*d5c09012SAndroid Build Coastguard Worker // using an App Engine `queue.yaml` or `queue.xml` file to manage your queues. 76*d5c09012SAndroid Build Coastguard Worker // Read 77*d5c09012SAndroid Build Coastguard Worker // [Overview of Queue Management and 78*d5c09012SAndroid Build Coastguard Worker // queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using 79*d5c09012SAndroid Build Coastguard Worker // this method. 80*d5c09012SAndroid Build Coastguard Worker rpc CreateQueue(CreateQueueRequest) returns (Queue) { 81*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 82*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{parent=projects/*/locations/*}/queues" 83*d5c09012SAndroid Build Coastguard Worker body: "queue" 84*d5c09012SAndroid Build Coastguard Worker }; 85*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,queue"; 86*d5c09012SAndroid Build Coastguard Worker } 87*d5c09012SAndroid Build Coastguard Worker 88*d5c09012SAndroid Build Coastguard Worker // Updates a queue. 89*d5c09012SAndroid Build Coastguard Worker // 90*d5c09012SAndroid Build Coastguard Worker // This method creates the queue if it does not exist and updates 91*d5c09012SAndroid Build Coastguard Worker // the queue if it does exist. 92*d5c09012SAndroid Build Coastguard Worker // 93*d5c09012SAndroid Build Coastguard Worker // Queues created with this method allow tasks to live for a maximum of 31 94*d5c09012SAndroid Build Coastguard Worker // days. After a task is 31 days old, the task will be deleted regardless of 95*d5c09012SAndroid Build Coastguard Worker // whether it was dispatched or not. 96*d5c09012SAndroid Build Coastguard Worker // 97*d5c09012SAndroid Build Coastguard Worker // WARNING: Using this method may have unintended side effects if you are 98*d5c09012SAndroid Build Coastguard Worker // using an App Engine `queue.yaml` or `queue.xml` file to manage your queues. 99*d5c09012SAndroid Build Coastguard Worker // Read 100*d5c09012SAndroid Build Coastguard Worker // [Overview of Queue Management and 101*d5c09012SAndroid Build Coastguard Worker // queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using 102*d5c09012SAndroid Build Coastguard Worker // this method. 103*d5c09012SAndroid Build Coastguard Worker rpc UpdateQueue(UpdateQueueRequest) returns (Queue) { 104*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 105*d5c09012SAndroid Build Coastguard Worker patch: "/v2beta2/{queue.name=projects/*/locations/*/queues/*}" 106*d5c09012SAndroid Build Coastguard Worker body: "queue" 107*d5c09012SAndroid Build Coastguard Worker }; 108*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "queue,update_mask"; 109*d5c09012SAndroid Build Coastguard Worker } 110*d5c09012SAndroid Build Coastguard Worker 111*d5c09012SAndroid Build Coastguard Worker // Deletes a queue. 112*d5c09012SAndroid Build Coastguard Worker // 113*d5c09012SAndroid Build Coastguard Worker // This command will delete the queue even if it has tasks in it. 114*d5c09012SAndroid Build Coastguard Worker // 115*d5c09012SAndroid Build Coastguard Worker // Note: If you delete a queue, a queue with the same name can't be created 116*d5c09012SAndroid Build Coastguard Worker // for 7 days. 117*d5c09012SAndroid Build Coastguard Worker // 118*d5c09012SAndroid Build Coastguard Worker // WARNING: Using this method may have unintended side effects if you are 119*d5c09012SAndroid Build Coastguard Worker // using an App Engine `queue.yaml` or `queue.xml` file to manage your queues. 120*d5c09012SAndroid Build Coastguard Worker // Read 121*d5c09012SAndroid Build Coastguard Worker // [Overview of Queue Management and 122*d5c09012SAndroid Build Coastguard Worker // queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using 123*d5c09012SAndroid Build Coastguard Worker // this method. 124*d5c09012SAndroid Build Coastguard Worker rpc DeleteQueue(DeleteQueueRequest) returns (google.protobuf.Empty) { 125*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 126*d5c09012SAndroid Build Coastguard Worker delete: "/v2beta2/{name=projects/*/locations/*/queues/*}" 127*d5c09012SAndroid Build Coastguard Worker }; 128*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 129*d5c09012SAndroid Build Coastguard Worker } 130*d5c09012SAndroid Build Coastguard Worker 131*d5c09012SAndroid Build Coastguard Worker // Purges a queue by deleting all of its tasks. 132*d5c09012SAndroid Build Coastguard Worker // 133*d5c09012SAndroid Build Coastguard Worker // All tasks created before this method is called are permanently deleted. 134*d5c09012SAndroid Build Coastguard Worker // 135*d5c09012SAndroid Build Coastguard Worker // Purge operations can take up to one minute to take effect. Tasks 136*d5c09012SAndroid Build Coastguard Worker // might be dispatched before the purge takes effect. A purge is irreversible. 137*d5c09012SAndroid Build Coastguard Worker rpc PurgeQueue(PurgeQueueRequest) returns (Queue) { 138*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 139*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{name=projects/*/locations/*/queues/*}:purge" 140*d5c09012SAndroid Build Coastguard Worker body: "*" 141*d5c09012SAndroid Build Coastguard Worker }; 142*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 143*d5c09012SAndroid Build Coastguard Worker } 144*d5c09012SAndroid Build Coastguard Worker 145*d5c09012SAndroid Build Coastguard Worker // Pauses the queue. 146*d5c09012SAndroid Build Coastguard Worker // 147*d5c09012SAndroid Build Coastguard Worker // If a queue is paused then the system will stop dispatching tasks 148*d5c09012SAndroid Build Coastguard Worker // until the queue is resumed via 149*d5c09012SAndroid Build Coastguard Worker // [ResumeQueue][google.cloud.tasks.v2beta2.CloudTasks.ResumeQueue]. Tasks can 150*d5c09012SAndroid Build Coastguard Worker // still be added when the queue is paused. A queue is paused if its 151*d5c09012SAndroid Build Coastguard Worker // [state][google.cloud.tasks.v2beta2.Queue.state] is 152*d5c09012SAndroid Build Coastguard Worker // [PAUSED][google.cloud.tasks.v2beta2.Queue.State.PAUSED]. 153*d5c09012SAndroid Build Coastguard Worker rpc PauseQueue(PauseQueueRequest) returns (Queue) { 154*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 155*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{name=projects/*/locations/*/queues/*}:pause" 156*d5c09012SAndroid Build Coastguard Worker body: "*" 157*d5c09012SAndroid Build Coastguard Worker }; 158*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 159*d5c09012SAndroid Build Coastguard Worker } 160*d5c09012SAndroid Build Coastguard Worker 161*d5c09012SAndroid Build Coastguard Worker // Resume a queue. 162*d5c09012SAndroid Build Coastguard Worker // 163*d5c09012SAndroid Build Coastguard Worker // This method resumes a queue after it has been 164*d5c09012SAndroid Build Coastguard Worker // [PAUSED][google.cloud.tasks.v2beta2.Queue.State.PAUSED] or 165*d5c09012SAndroid Build Coastguard Worker // [DISABLED][google.cloud.tasks.v2beta2.Queue.State.DISABLED]. The state of a 166*d5c09012SAndroid Build Coastguard Worker // queue is stored in the queue's 167*d5c09012SAndroid Build Coastguard Worker // [state][google.cloud.tasks.v2beta2.Queue.state]; after calling this method 168*d5c09012SAndroid Build Coastguard Worker // it will be set to 169*d5c09012SAndroid Build Coastguard Worker // [RUNNING][google.cloud.tasks.v2beta2.Queue.State.RUNNING]. 170*d5c09012SAndroid Build Coastguard Worker // 171*d5c09012SAndroid Build Coastguard Worker // WARNING: Resuming many high-QPS queues at the same time can 172*d5c09012SAndroid Build Coastguard Worker // lead to target overloading. If you are resuming high-QPS 173*d5c09012SAndroid Build Coastguard Worker // queues, follow the 500/50/5 pattern described in 174*d5c09012SAndroid Build Coastguard Worker // [Managing Cloud Tasks Scaling 175*d5c09012SAndroid Build Coastguard Worker // Risks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling). 176*d5c09012SAndroid Build Coastguard Worker rpc ResumeQueue(ResumeQueueRequest) returns (Queue) { 177*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 178*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{name=projects/*/locations/*/queues/*}:resume" 179*d5c09012SAndroid Build Coastguard Worker body: "*" 180*d5c09012SAndroid Build Coastguard Worker }; 181*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 182*d5c09012SAndroid Build Coastguard Worker } 183*d5c09012SAndroid Build Coastguard Worker 184*d5c09012SAndroid Build Coastguard Worker // Update queue list by uploading a queue.yaml file. 185*d5c09012SAndroid Build Coastguard Worker // 186*d5c09012SAndroid Build Coastguard Worker // The queue.yaml file is supplied in the request body as a YAML encoded 187*d5c09012SAndroid Build Coastguard Worker // string. This method was added to support gcloud clients versions before 188*d5c09012SAndroid Build Coastguard Worker // 322.0.0. New clients should use CreateQueue instead of this method. 189*d5c09012SAndroid Build Coastguard Worker rpc UploadQueueYaml(UploadQueueYamlRequest) returns (google.protobuf.Empty) {} 190*d5c09012SAndroid Build Coastguard Worker 191*d5c09012SAndroid Build Coastguard Worker // Gets the access control policy for a 192*d5c09012SAndroid Build Coastguard Worker // [Queue][google.cloud.tasks.v2beta2.Queue]. Returns an empty policy if the 193*d5c09012SAndroid Build Coastguard Worker // resource exists and does not have a policy set. 194*d5c09012SAndroid Build Coastguard Worker // 195*d5c09012SAndroid Build Coastguard Worker // Authorization requires the following 196*d5c09012SAndroid Build Coastguard Worker // [Google IAM](https://cloud.google.com/iam) permission on the specified 197*d5c09012SAndroid Build Coastguard Worker // resource parent: 198*d5c09012SAndroid Build Coastguard Worker // 199*d5c09012SAndroid Build Coastguard Worker // * `cloudtasks.queues.getIamPolicy` 200*d5c09012SAndroid Build Coastguard Worker rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) 201*d5c09012SAndroid Build Coastguard Worker returns (google.iam.v1.Policy) { 202*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 203*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{resource=projects/*/locations/*/queues/*}:getIamPolicy" 204*d5c09012SAndroid Build Coastguard Worker body: "*" 205*d5c09012SAndroid Build Coastguard Worker }; 206*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "resource"; 207*d5c09012SAndroid Build Coastguard Worker } 208*d5c09012SAndroid Build Coastguard Worker 209*d5c09012SAndroid Build Coastguard Worker // Sets the access control policy for a 210*d5c09012SAndroid Build Coastguard Worker // [Queue][google.cloud.tasks.v2beta2.Queue]. Replaces any existing policy. 211*d5c09012SAndroid Build Coastguard Worker // 212*d5c09012SAndroid Build Coastguard Worker // Note: The Cloud Console does not check queue-level IAM permissions yet. 213*d5c09012SAndroid Build Coastguard Worker // Project-level permissions are required to use the Cloud Console. 214*d5c09012SAndroid Build Coastguard Worker // 215*d5c09012SAndroid Build Coastguard Worker // Authorization requires the following 216*d5c09012SAndroid Build Coastguard Worker // [Google IAM](https://cloud.google.com/iam) permission on the specified 217*d5c09012SAndroid Build Coastguard Worker // resource parent: 218*d5c09012SAndroid Build Coastguard Worker // 219*d5c09012SAndroid Build Coastguard Worker // * `cloudtasks.queues.setIamPolicy` 220*d5c09012SAndroid Build Coastguard Worker rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) 221*d5c09012SAndroid Build Coastguard Worker returns (google.iam.v1.Policy) { 222*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 223*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{resource=projects/*/locations/*/queues/*}:setIamPolicy" 224*d5c09012SAndroid Build Coastguard Worker body: "*" 225*d5c09012SAndroid Build Coastguard Worker }; 226*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "resource,policy"; 227*d5c09012SAndroid Build Coastguard Worker } 228*d5c09012SAndroid Build Coastguard Worker 229*d5c09012SAndroid Build Coastguard Worker // Returns permissions that a caller has on a 230*d5c09012SAndroid Build Coastguard Worker // [Queue][google.cloud.tasks.v2beta2.Queue]. If the resource does not exist, 231*d5c09012SAndroid Build Coastguard Worker // this will return an empty set of permissions, not a 232*d5c09012SAndroid Build Coastguard Worker // [NOT_FOUND][google.rpc.Code.NOT_FOUND] error. 233*d5c09012SAndroid Build Coastguard Worker // 234*d5c09012SAndroid Build Coastguard Worker // Note: This operation is designed to be used for building permission-aware 235*d5c09012SAndroid Build Coastguard Worker // UIs and command-line tools, not for authorization checking. This operation 236*d5c09012SAndroid Build Coastguard Worker // may "fail open" without warning. 237*d5c09012SAndroid Build Coastguard Worker rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) 238*d5c09012SAndroid Build Coastguard Worker returns (google.iam.v1.TestIamPermissionsResponse) { 239*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 240*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{resource=projects/*/locations/*/queues/*}:testIamPermissions" 241*d5c09012SAndroid Build Coastguard Worker body: "*" 242*d5c09012SAndroid Build Coastguard Worker }; 243*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "resource,permissions"; 244*d5c09012SAndroid Build Coastguard Worker } 245*d5c09012SAndroid Build Coastguard Worker 246*d5c09012SAndroid Build Coastguard Worker // Lists the tasks in a queue. 247*d5c09012SAndroid Build Coastguard Worker // 248*d5c09012SAndroid Build Coastguard Worker // By default, only the [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC] 249*d5c09012SAndroid Build Coastguard Worker // view is retrieved due to performance considerations; 250*d5c09012SAndroid Build Coastguard Worker // [response_view][google.cloud.tasks.v2beta2.ListTasksRequest.response_view] 251*d5c09012SAndroid Build Coastguard Worker // controls the subset of information which is returned. 252*d5c09012SAndroid Build Coastguard Worker // 253*d5c09012SAndroid Build Coastguard Worker // The tasks may be returned in any order. The ordering may change at any 254*d5c09012SAndroid Build Coastguard Worker // time. 255*d5c09012SAndroid Build Coastguard Worker rpc ListTasks(ListTasksRequest) returns (ListTasksResponse) { 256*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 257*d5c09012SAndroid Build Coastguard Worker get: "/v2beta2/{parent=projects/*/locations/*/queues/*}/tasks" 258*d5c09012SAndroid Build Coastguard Worker }; 259*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 260*d5c09012SAndroid Build Coastguard Worker } 261*d5c09012SAndroid Build Coastguard Worker 262*d5c09012SAndroid Build Coastguard Worker // Gets a task. 263*d5c09012SAndroid Build Coastguard Worker rpc GetTask(GetTaskRequest) returns (Task) { 264*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 265*d5c09012SAndroid Build Coastguard Worker get: "/v2beta2/{name=projects/*/locations/*/queues/*/tasks/*}" 266*d5c09012SAndroid Build Coastguard Worker }; 267*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 268*d5c09012SAndroid Build Coastguard Worker } 269*d5c09012SAndroid Build Coastguard Worker 270*d5c09012SAndroid Build Coastguard Worker // Creates a task and adds it to a queue. 271*d5c09012SAndroid Build Coastguard Worker // 272*d5c09012SAndroid Build Coastguard Worker // Tasks cannot be updated after creation; there is no UpdateTask command. 273*d5c09012SAndroid Build Coastguard Worker // 274*d5c09012SAndroid Build Coastguard Worker // * For [App Engine queues][google.cloud.tasks.v2beta2.AppEngineHttpTarget], 275*d5c09012SAndroid Build Coastguard Worker // the maximum task size is 276*d5c09012SAndroid Build Coastguard Worker // 100KB. 277*d5c09012SAndroid Build Coastguard Worker // * For [pull queues][google.cloud.tasks.v2beta2.PullTarget], the maximum 278*d5c09012SAndroid Build Coastguard Worker // task size is 1MB. 279*d5c09012SAndroid Build Coastguard Worker rpc CreateTask(CreateTaskRequest) returns (Task) { 280*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 281*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{parent=projects/*/locations/*/queues/*}/tasks" 282*d5c09012SAndroid Build Coastguard Worker body: "*" 283*d5c09012SAndroid Build Coastguard Worker }; 284*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,task"; 285*d5c09012SAndroid Build Coastguard Worker } 286*d5c09012SAndroid Build Coastguard Worker 287*d5c09012SAndroid Build Coastguard Worker // Deletes a task. 288*d5c09012SAndroid Build Coastguard Worker // 289*d5c09012SAndroid Build Coastguard Worker // A task can be deleted if it is scheduled or dispatched. A task 290*d5c09012SAndroid Build Coastguard Worker // cannot be deleted if it has completed successfully or permanently 291*d5c09012SAndroid Build Coastguard Worker // failed. 292*d5c09012SAndroid Build Coastguard Worker rpc DeleteTask(DeleteTaskRequest) returns (google.protobuf.Empty) { 293*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 294*d5c09012SAndroid Build Coastguard Worker delete: "/v2beta2/{name=projects/*/locations/*/queues/*/tasks/*}" 295*d5c09012SAndroid Build Coastguard Worker }; 296*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 297*d5c09012SAndroid Build Coastguard Worker } 298*d5c09012SAndroid Build Coastguard Worker 299*d5c09012SAndroid Build Coastguard Worker // Leases tasks from a pull queue for 300*d5c09012SAndroid Build Coastguard Worker // [lease_duration][google.cloud.tasks.v2beta2.LeaseTasksRequest.lease_duration]. 301*d5c09012SAndroid Build Coastguard Worker // 302*d5c09012SAndroid Build Coastguard Worker // This method is invoked by the worker to obtain a lease. The 303*d5c09012SAndroid Build Coastguard Worker // worker must acknowledge the task via 304*d5c09012SAndroid Build Coastguard Worker // [AcknowledgeTask][google.cloud.tasks.v2beta2.CloudTasks.AcknowledgeTask] 305*d5c09012SAndroid Build Coastguard Worker // after they have performed the work associated with the task. 306*d5c09012SAndroid Build Coastguard Worker // 307*d5c09012SAndroid Build Coastguard Worker // The [payload][google.cloud.tasks.v2beta2.PullMessage.payload] is intended 308*d5c09012SAndroid Build Coastguard Worker // to store data that the worker needs to perform the work associated with the 309*d5c09012SAndroid Build Coastguard Worker // task. To return the payloads in the 310*d5c09012SAndroid Build Coastguard Worker // [response][google.cloud.tasks.v2beta2.LeaseTasksResponse], set 311*d5c09012SAndroid Build Coastguard Worker // [response_view][google.cloud.tasks.v2beta2.LeaseTasksRequest.response_view] 312*d5c09012SAndroid Build Coastguard Worker // to [FULL][google.cloud.tasks.v2beta2.Task.View.FULL]. 313*d5c09012SAndroid Build Coastguard Worker // 314*d5c09012SAndroid Build Coastguard Worker // A maximum of 10 qps of 315*d5c09012SAndroid Build Coastguard Worker // [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] requests are 316*d5c09012SAndroid Build Coastguard Worker // allowed per queue. [RESOURCE_EXHAUSTED][google.rpc.Code.RESOURCE_EXHAUSTED] 317*d5c09012SAndroid Build Coastguard Worker // is returned when this limit is 318*d5c09012SAndroid Build Coastguard Worker // exceeded. [RESOURCE_EXHAUSTED][google.rpc.Code.RESOURCE_EXHAUSTED] 319*d5c09012SAndroid Build Coastguard Worker // is also returned when 320*d5c09012SAndroid Build Coastguard Worker // [max_tasks_dispatched_per_second][google.cloud.tasks.v2beta2.RateLimits.max_tasks_dispatched_per_second] 321*d5c09012SAndroid Build Coastguard Worker // is exceeded. 322*d5c09012SAndroid Build Coastguard Worker rpc LeaseTasks(LeaseTasksRequest) returns (LeaseTasksResponse) { 323*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 324*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{parent=projects/*/locations/*/queues/*}/tasks:lease" 325*d5c09012SAndroid Build Coastguard Worker body: "*" 326*d5c09012SAndroid Build Coastguard Worker }; 327*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,lease_duration"; 328*d5c09012SAndroid Build Coastguard Worker } 329*d5c09012SAndroid Build Coastguard Worker 330*d5c09012SAndroid Build Coastguard Worker // Acknowledges a pull task. 331*d5c09012SAndroid Build Coastguard Worker // 332*d5c09012SAndroid Build Coastguard Worker // The worker, that is, the entity that 333*d5c09012SAndroid Build Coastguard Worker // [leased][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] this task must 334*d5c09012SAndroid Build Coastguard Worker // call this method to indicate that the work associated with the task has 335*d5c09012SAndroid Build Coastguard Worker // finished. 336*d5c09012SAndroid Build Coastguard Worker // 337*d5c09012SAndroid Build Coastguard Worker // The worker must acknowledge a task within the 338*d5c09012SAndroid Build Coastguard Worker // [lease_duration][google.cloud.tasks.v2beta2.LeaseTasksRequest.lease_duration] 339*d5c09012SAndroid Build Coastguard Worker // or the lease will expire and the task will become available to be leased 340*d5c09012SAndroid Build Coastguard Worker // again. After the task is acknowledged, it will not be returned 341*d5c09012SAndroid Build Coastguard Worker // by a later [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks], 342*d5c09012SAndroid Build Coastguard Worker // [GetTask][google.cloud.tasks.v2beta2.CloudTasks.GetTask], or 343*d5c09012SAndroid Build Coastguard Worker // [ListTasks][google.cloud.tasks.v2beta2.CloudTasks.ListTasks]. 344*d5c09012SAndroid Build Coastguard Worker rpc AcknowledgeTask(AcknowledgeTaskRequest) returns (google.protobuf.Empty) { 345*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 346*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{name=projects/*/locations/*/queues/*/tasks/*}:acknowledge" 347*d5c09012SAndroid Build Coastguard Worker body: "*" 348*d5c09012SAndroid Build Coastguard Worker }; 349*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name,schedule_time"; 350*d5c09012SAndroid Build Coastguard Worker } 351*d5c09012SAndroid Build Coastguard Worker 352*d5c09012SAndroid Build Coastguard Worker // Renew the current lease of a pull task. 353*d5c09012SAndroid Build Coastguard Worker // 354*d5c09012SAndroid Build Coastguard Worker // The worker can use this method to extend the lease by a new 355*d5c09012SAndroid Build Coastguard Worker // duration, starting from now. The new task lease will be 356*d5c09012SAndroid Build Coastguard Worker // returned in the task's 357*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time]. 358*d5c09012SAndroid Build Coastguard Worker rpc RenewLease(RenewLeaseRequest) returns (Task) { 359*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 360*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{name=projects/*/locations/*/queues/*/tasks/*}:renewLease" 361*d5c09012SAndroid Build Coastguard Worker body: "*" 362*d5c09012SAndroid Build Coastguard Worker }; 363*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name,schedule_time,lease_duration"; 364*d5c09012SAndroid Build Coastguard Worker } 365*d5c09012SAndroid Build Coastguard Worker 366*d5c09012SAndroid Build Coastguard Worker // Cancel a pull task's lease. 367*d5c09012SAndroid Build Coastguard Worker // 368*d5c09012SAndroid Build Coastguard Worker // The worker can use this method to cancel a task's lease by 369*d5c09012SAndroid Build Coastguard Worker // setting its [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] 370*d5c09012SAndroid Build Coastguard Worker // to now. This will make the task available to be leased to the next caller 371*d5c09012SAndroid Build Coastguard Worker // of [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks]. 372*d5c09012SAndroid Build Coastguard Worker rpc CancelLease(CancelLeaseRequest) returns (Task) { 373*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 374*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{name=projects/*/locations/*/queues/*/tasks/*}:cancelLease" 375*d5c09012SAndroid Build Coastguard Worker body: "*" 376*d5c09012SAndroid Build Coastguard Worker }; 377*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name,schedule_time"; 378*d5c09012SAndroid Build Coastguard Worker } 379*d5c09012SAndroid Build Coastguard Worker 380*d5c09012SAndroid Build Coastguard Worker // Forces a task to run now. 381*d5c09012SAndroid Build Coastguard Worker // 382*d5c09012SAndroid Build Coastguard Worker // When this method is called, Cloud Tasks will dispatch the task, even if 383*d5c09012SAndroid Build Coastguard Worker // the task is already running, the queue has reached its 384*d5c09012SAndroid Build Coastguard Worker // [RateLimits][google.cloud.tasks.v2beta2.RateLimits] or is 385*d5c09012SAndroid Build Coastguard Worker // [PAUSED][google.cloud.tasks.v2beta2.Queue.State.PAUSED]. 386*d5c09012SAndroid Build Coastguard Worker // 387*d5c09012SAndroid Build Coastguard Worker // This command is meant to be used for manual debugging. For 388*d5c09012SAndroid Build Coastguard Worker // example, [RunTask][google.cloud.tasks.v2beta2.CloudTasks.RunTask] can be 389*d5c09012SAndroid Build Coastguard Worker // used to retry a failed task after a fix has been made or to manually force 390*d5c09012SAndroid Build Coastguard Worker // a task to be dispatched now. 391*d5c09012SAndroid Build Coastguard Worker // 392*d5c09012SAndroid Build Coastguard Worker // The dispatched task is returned. That is, the task that is returned 393*d5c09012SAndroid Build Coastguard Worker // contains the [status][google.cloud.tasks.v2beta2.Task.status] after the 394*d5c09012SAndroid Build Coastguard Worker // task is dispatched but before the task is received by its target. 395*d5c09012SAndroid Build Coastguard Worker // 396*d5c09012SAndroid Build Coastguard Worker // If Cloud Tasks receives a successful response from the task's 397*d5c09012SAndroid Build Coastguard Worker // target, then the task will be deleted; otherwise the task's 398*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] will be 399*d5c09012SAndroid Build Coastguard Worker // reset to the time that 400*d5c09012SAndroid Build Coastguard Worker // [RunTask][google.cloud.tasks.v2beta2.CloudTasks.RunTask] was called plus 401*d5c09012SAndroid Build Coastguard Worker // the retry delay specified in the queue's 402*d5c09012SAndroid Build Coastguard Worker // [RetryConfig][google.cloud.tasks.v2beta2.RetryConfig]. 403*d5c09012SAndroid Build Coastguard Worker // 404*d5c09012SAndroid Build Coastguard Worker // [RunTask][google.cloud.tasks.v2beta2.CloudTasks.RunTask] returns 405*d5c09012SAndroid Build Coastguard Worker // [NOT_FOUND][google.rpc.Code.NOT_FOUND] when it is called on a 406*d5c09012SAndroid Build Coastguard Worker // task that has already succeeded or permanently failed. 407*d5c09012SAndroid Build Coastguard Worker // 408*d5c09012SAndroid Build Coastguard Worker // [RunTask][google.cloud.tasks.v2beta2.CloudTasks.RunTask] cannot be called 409*d5c09012SAndroid Build Coastguard Worker // on a [pull task][google.cloud.tasks.v2beta2.PullMessage]. 410*d5c09012SAndroid Build Coastguard Worker rpc RunTask(RunTaskRequest) returns (Task) { 411*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 412*d5c09012SAndroid Build Coastguard Worker post: "/v2beta2/{name=projects/*/locations/*/queues/*/tasks/*}:run" 413*d5c09012SAndroid Build Coastguard Worker body: "*" 414*d5c09012SAndroid Build Coastguard Worker }; 415*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 416*d5c09012SAndroid Build Coastguard Worker } 417*d5c09012SAndroid Build Coastguard Worker} 418*d5c09012SAndroid Build Coastguard Worker 419*d5c09012SAndroid Build Coastguard Worker// Request message for 420*d5c09012SAndroid Build Coastguard Worker// [ListQueues][google.cloud.tasks.v2beta2.CloudTasks.ListQueues]. 421*d5c09012SAndroid Build Coastguard Workermessage ListQueuesRequest { 422*d5c09012SAndroid Build Coastguard Worker // Required. The location name. 423*d5c09012SAndroid Build Coastguard Worker // For example: `projects/PROJECT_ID/locations/LOCATION_ID` 424*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 425*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 426*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 427*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Queue" 428*d5c09012SAndroid Build Coastguard Worker } 429*d5c09012SAndroid Build Coastguard Worker ]; 430*d5c09012SAndroid Build Coastguard Worker 431*d5c09012SAndroid Build Coastguard Worker // `filter` can be used to specify a subset of queues. Any 432*d5c09012SAndroid Build Coastguard Worker // [Queue][google.cloud.tasks.v2beta2.Queue] field can be used as a filter and 433*d5c09012SAndroid Build Coastguard Worker // several operators as supported. For example: `<=, <, >=, >, !=, =, :`. The 434*d5c09012SAndroid Build Coastguard Worker // filter syntax is the same as described in [Stackdriver's Advanced Logs 435*d5c09012SAndroid Build Coastguard Worker // Filters](https://cloud.google.com/logging/docs/view/advanced_filters). 436*d5c09012SAndroid Build Coastguard Worker // 437*d5c09012SAndroid Build Coastguard Worker // Sample filter "app_engine_http_target: *". 438*d5c09012SAndroid Build Coastguard Worker // 439*d5c09012SAndroid Build Coastguard Worker // Note that using filters might cause fewer queues than the 440*d5c09012SAndroid Build Coastguard Worker // requested_page size to be returned. 441*d5c09012SAndroid Build Coastguard Worker string filter = 2; 442*d5c09012SAndroid Build Coastguard Worker 443*d5c09012SAndroid Build Coastguard Worker // Requested page size. 444*d5c09012SAndroid Build Coastguard Worker // 445*d5c09012SAndroid Build Coastguard Worker // The maximum page size is 9800. If unspecified, the page size will 446*d5c09012SAndroid Build Coastguard Worker // be the maximum. Fewer queues than requested might be returned, 447*d5c09012SAndroid Build Coastguard Worker // even if more queues exist; use the 448*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2beta2.ListQueuesResponse.next_page_token] 449*d5c09012SAndroid Build Coastguard Worker // in the response to determine if more queues exist. 450*d5c09012SAndroid Build Coastguard Worker int32 page_size = 3; 451*d5c09012SAndroid Build Coastguard Worker 452*d5c09012SAndroid Build Coastguard Worker // A token identifying the page of results to return. 453*d5c09012SAndroid Build Coastguard Worker // 454*d5c09012SAndroid Build Coastguard Worker // To request the first page results, page_token must be empty. To 455*d5c09012SAndroid Build Coastguard Worker // request the next page of results, page_token must be the value of 456*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2beta2.ListQueuesResponse.next_page_token] 457*d5c09012SAndroid Build Coastguard Worker // returned from the previous call to 458*d5c09012SAndroid Build Coastguard Worker // [ListQueues][google.cloud.tasks.v2beta2.CloudTasks.ListQueues] method. It 459*d5c09012SAndroid Build Coastguard Worker // is an error to switch the value of the 460*d5c09012SAndroid Build Coastguard Worker // [filter][google.cloud.tasks.v2beta2.ListQueuesRequest.filter] while 461*d5c09012SAndroid Build Coastguard Worker // iterating through pages. 462*d5c09012SAndroid Build Coastguard Worker string page_token = 4; 463*d5c09012SAndroid Build Coastguard Worker 464*d5c09012SAndroid Build Coastguard Worker // Optional. Read mask is used for a more granular control over what the API 465*d5c09012SAndroid Build Coastguard Worker // returns. If the mask is not present all fields will be returned except 466*d5c09012SAndroid Build Coastguard Worker // [Queue.stats]. [Queue.stats] will be returned only if it was explicitly 467*d5c09012SAndroid Build Coastguard Worker // specified in the mask. 468*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask read_mask = 5 469*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 470*d5c09012SAndroid Build Coastguard Worker} 471*d5c09012SAndroid Build Coastguard Worker 472*d5c09012SAndroid Build Coastguard Worker// Response message for 473*d5c09012SAndroid Build Coastguard Worker// [ListQueues][google.cloud.tasks.v2beta2.CloudTasks.ListQueues]. 474*d5c09012SAndroid Build Coastguard Workermessage ListQueuesResponse { 475*d5c09012SAndroid Build Coastguard Worker // The list of queues. 476*d5c09012SAndroid Build Coastguard Worker repeated Queue queues = 1; 477*d5c09012SAndroid Build Coastguard Worker 478*d5c09012SAndroid Build Coastguard Worker // A token to retrieve next page of results. 479*d5c09012SAndroid Build Coastguard Worker // 480*d5c09012SAndroid Build Coastguard Worker // To return the next page of results, call 481*d5c09012SAndroid Build Coastguard Worker // [ListQueues][google.cloud.tasks.v2beta2.CloudTasks.ListQueues] with this 482*d5c09012SAndroid Build Coastguard Worker // value as the 483*d5c09012SAndroid Build Coastguard Worker // [page_token][google.cloud.tasks.v2beta2.ListQueuesRequest.page_token]. 484*d5c09012SAndroid Build Coastguard Worker // 485*d5c09012SAndroid Build Coastguard Worker // If the next_page_token is empty, there are no more results. 486*d5c09012SAndroid Build Coastguard Worker // 487*d5c09012SAndroid Build Coastguard Worker // The page token is valid for only 2 hours. 488*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 489*d5c09012SAndroid Build Coastguard Worker} 490*d5c09012SAndroid Build Coastguard Worker 491*d5c09012SAndroid Build Coastguard Worker// Request message for 492*d5c09012SAndroid Build Coastguard Worker// [GetQueue][google.cloud.tasks.v2beta2.CloudTasks.GetQueue]. 493*d5c09012SAndroid Build Coastguard Workermessage GetQueueRequest { 494*d5c09012SAndroid Build Coastguard Worker // Required. The resource name of the queue. For example: 495*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 496*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 497*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 498*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 499*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 500*d5c09012SAndroid Build Coastguard Worker } 501*d5c09012SAndroid Build Coastguard Worker ]; 502*d5c09012SAndroid Build Coastguard Worker 503*d5c09012SAndroid Build Coastguard Worker // Optional. Read mask is used for a more granular control over what the API 504*d5c09012SAndroid Build Coastguard Worker // returns. If the mask is not present all fields will be returned except 505*d5c09012SAndroid Build Coastguard Worker // [Queue.stats]. [Queue.stats] will be returned only if it was explicitly 506*d5c09012SAndroid Build Coastguard Worker // specified in the mask. 507*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask read_mask = 2 508*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 509*d5c09012SAndroid Build Coastguard Worker} 510*d5c09012SAndroid Build Coastguard Worker 511*d5c09012SAndroid Build Coastguard Worker// Request message for 512*d5c09012SAndroid Build Coastguard Worker// [CreateQueue][google.cloud.tasks.v2beta2.CloudTasks.CreateQueue]. 513*d5c09012SAndroid Build Coastguard Workermessage CreateQueueRequest { 514*d5c09012SAndroid Build Coastguard Worker // Required. The location name in which the queue will be created. 515*d5c09012SAndroid Build Coastguard Worker // For example: `projects/PROJECT_ID/locations/LOCATION_ID` 516*d5c09012SAndroid Build Coastguard Worker // 517*d5c09012SAndroid Build Coastguard Worker // The list of allowed locations can be obtained by calling Cloud 518*d5c09012SAndroid Build Coastguard Worker // Tasks' implementation of 519*d5c09012SAndroid Build Coastguard Worker // [ListLocations][google.cloud.location.Locations.ListLocations]. 520*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 521*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 522*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 523*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Queue" 524*d5c09012SAndroid Build Coastguard Worker } 525*d5c09012SAndroid Build Coastguard Worker ]; 526*d5c09012SAndroid Build Coastguard Worker 527*d5c09012SAndroid Build Coastguard Worker // Required. The queue to create. 528*d5c09012SAndroid Build Coastguard Worker // 529*d5c09012SAndroid Build Coastguard Worker // [Queue's name][google.cloud.tasks.v2beta2.Queue.name] cannot be the same as 530*d5c09012SAndroid Build Coastguard Worker // an existing queue. 531*d5c09012SAndroid Build Coastguard Worker Queue queue = 2 [(google.api.field_behavior) = REQUIRED]; 532*d5c09012SAndroid Build Coastguard Worker} 533*d5c09012SAndroid Build Coastguard Worker 534*d5c09012SAndroid Build Coastguard Worker// Request message for 535*d5c09012SAndroid Build Coastguard Worker// [UpdateQueue][google.cloud.tasks.v2beta2.CloudTasks.UpdateQueue]. 536*d5c09012SAndroid Build Coastguard Workermessage UpdateQueueRequest { 537*d5c09012SAndroid Build Coastguard Worker // Required. The queue to create or update. 538*d5c09012SAndroid Build Coastguard Worker // 539*d5c09012SAndroid Build Coastguard Worker // The queue's [name][google.cloud.tasks.v2beta2.Queue.name] must be 540*d5c09012SAndroid Build Coastguard Worker // specified. 541*d5c09012SAndroid Build Coastguard Worker // 542*d5c09012SAndroid Build Coastguard Worker // Output only fields cannot be modified using UpdateQueue. 543*d5c09012SAndroid Build Coastguard Worker // Any value specified for an output only field will be ignored. 544*d5c09012SAndroid Build Coastguard Worker // The queue's [name][google.cloud.tasks.v2beta2.Queue.name] cannot be 545*d5c09012SAndroid Build Coastguard Worker // changed. 546*d5c09012SAndroid Build Coastguard Worker Queue queue = 1 [(google.api.field_behavior) = REQUIRED]; 547*d5c09012SAndroid Build Coastguard Worker 548*d5c09012SAndroid Build Coastguard Worker // A mask used to specify which fields of the queue are being updated. 549*d5c09012SAndroid Build Coastguard Worker // 550*d5c09012SAndroid Build Coastguard Worker // If empty, then all fields will be updated. 551*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2; 552*d5c09012SAndroid Build Coastguard Worker} 553*d5c09012SAndroid Build Coastguard Worker 554*d5c09012SAndroid Build Coastguard Worker// Request message for 555*d5c09012SAndroid Build Coastguard Worker// [DeleteQueue][google.cloud.tasks.v2beta2.CloudTasks.DeleteQueue]. 556*d5c09012SAndroid Build Coastguard Workermessage DeleteQueueRequest { 557*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 558*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 559*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 560*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 561*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 562*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 563*d5c09012SAndroid Build Coastguard Worker } 564*d5c09012SAndroid Build Coastguard Worker ]; 565*d5c09012SAndroid Build Coastguard Worker} 566*d5c09012SAndroid Build Coastguard Worker 567*d5c09012SAndroid Build Coastguard Worker// Request message for 568*d5c09012SAndroid Build Coastguard Worker// [PurgeQueue][google.cloud.tasks.v2beta2.CloudTasks.PurgeQueue]. 569*d5c09012SAndroid Build Coastguard Workermessage PurgeQueueRequest { 570*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 571*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID` 572*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 573*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 574*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 575*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 576*d5c09012SAndroid Build Coastguard Worker } 577*d5c09012SAndroid Build Coastguard Worker ]; 578*d5c09012SAndroid Build Coastguard Worker} 579*d5c09012SAndroid Build Coastguard Worker 580*d5c09012SAndroid Build Coastguard Worker// Request message for 581*d5c09012SAndroid Build Coastguard Worker// [PauseQueue][google.cloud.tasks.v2beta2.CloudTasks.PauseQueue]. 582*d5c09012SAndroid Build Coastguard Workermessage PauseQueueRequest { 583*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 584*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID` 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) = { 588*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 589*d5c09012SAndroid Build Coastguard Worker } 590*d5c09012SAndroid Build Coastguard Worker ]; 591*d5c09012SAndroid Build Coastguard Worker} 592*d5c09012SAndroid Build Coastguard Worker 593*d5c09012SAndroid Build Coastguard Worker// Request message for 594*d5c09012SAndroid Build Coastguard Worker// [ResumeQueue][google.cloud.tasks.v2beta2.CloudTasks.ResumeQueue]. 595*d5c09012SAndroid Build Coastguard Workermessage ResumeQueueRequest { 596*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 597*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID` 598*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 599*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 600*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 601*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 602*d5c09012SAndroid Build Coastguard Worker } 603*d5c09012SAndroid Build Coastguard Worker ]; 604*d5c09012SAndroid Build Coastguard Worker} 605*d5c09012SAndroid Build Coastguard Worker 606*d5c09012SAndroid Build Coastguard Worker// Request message for 607*d5c09012SAndroid Build Coastguard Worker// [UploadQueueYaml][google.cloud.tasks.v2beta2.CloudTasks.UploadQueueYaml]. 608*d5c09012SAndroid Build Coastguard Workermessage UploadQueueYamlRequest { 609*d5c09012SAndroid Build Coastguard Worker // Required. The App ID is supplied as an HTTP parameter. Unlike internal 610*d5c09012SAndroid Build Coastguard Worker // usage of App ID, it does not include a region prefix. Rather, the App ID 611*d5c09012SAndroid Build Coastguard Worker // represents the Project ID against which to make the request. 612*d5c09012SAndroid Build Coastguard Worker string app_id = 1 [(google.api.field_behavior) = REQUIRED]; 613*d5c09012SAndroid Build Coastguard Worker 614*d5c09012SAndroid Build Coastguard Worker // The http body contains the queue.yaml file which used to update queue lists 615*d5c09012SAndroid Build Coastguard Worker optional google.api.HttpBody http_body = 2; 616*d5c09012SAndroid Build Coastguard Worker} 617*d5c09012SAndroid Build Coastguard Worker 618*d5c09012SAndroid Build Coastguard Worker// Request message for listing tasks using 619*d5c09012SAndroid Build Coastguard Worker// [ListTasks][google.cloud.tasks.v2beta2.CloudTasks.ListTasks]. 620*d5c09012SAndroid Build Coastguard Workermessage ListTasksRequest { 621*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 622*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 623*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 624*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 625*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 626*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Task" 627*d5c09012SAndroid Build Coastguard Worker } 628*d5c09012SAndroid Build Coastguard Worker ]; 629*d5c09012SAndroid Build Coastguard Worker 630*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 631*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] will be returned. 632*d5c09012SAndroid Build Coastguard Worker // 633*d5c09012SAndroid Build Coastguard Worker // By default response_view is 634*d5c09012SAndroid Build Coastguard Worker // [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC]; not all information is 635*d5c09012SAndroid Build Coastguard Worker // retrieved by default because some data, such as payloads, might be 636*d5c09012SAndroid Build Coastguard Worker // desirable to return only when needed because of its large size or because 637*d5c09012SAndroid Build Coastguard Worker // of the sensitivity of data that it contains. 638*d5c09012SAndroid Build Coastguard Worker // 639*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2beta2.Task.View.FULL] 640*d5c09012SAndroid Build Coastguard Worker // requires `cloudtasks.tasks.fullView` [Google 641*d5c09012SAndroid Build Coastguard Worker // IAM](https://cloud.google.com/iam/) permission on the 642*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] resource. 643*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 2; 644*d5c09012SAndroid Build Coastguard Worker 645*d5c09012SAndroid Build Coastguard Worker // Maximum page size. 646*d5c09012SAndroid Build Coastguard Worker // 647*d5c09012SAndroid Build Coastguard Worker // Fewer tasks than requested might be returned, even if more tasks exist; use 648*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2beta2.ListTasksResponse.next_page_token] 649*d5c09012SAndroid Build Coastguard Worker // in the response to determine if more tasks exist. 650*d5c09012SAndroid Build Coastguard Worker // 651*d5c09012SAndroid Build Coastguard Worker // The maximum page size is 1000. If unspecified, the page size will be the 652*d5c09012SAndroid Build Coastguard Worker // maximum. 653*d5c09012SAndroid Build Coastguard Worker int32 page_size = 4; 654*d5c09012SAndroid Build Coastguard Worker 655*d5c09012SAndroid Build Coastguard Worker // A token identifying the page of results to return. 656*d5c09012SAndroid Build Coastguard Worker // 657*d5c09012SAndroid Build Coastguard Worker // To request the first page results, page_token must be empty. To 658*d5c09012SAndroid Build Coastguard Worker // request the next page of results, page_token must be the value of 659*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2beta2.ListTasksResponse.next_page_token] 660*d5c09012SAndroid Build Coastguard Worker // returned from the previous call to 661*d5c09012SAndroid Build Coastguard Worker // [ListTasks][google.cloud.tasks.v2beta2.CloudTasks.ListTasks] method. 662*d5c09012SAndroid Build Coastguard Worker // 663*d5c09012SAndroid Build Coastguard Worker // The page token is valid for only 2 hours. 664*d5c09012SAndroid Build Coastguard Worker string page_token = 5; 665*d5c09012SAndroid Build Coastguard Worker} 666*d5c09012SAndroid Build Coastguard Worker 667*d5c09012SAndroid Build Coastguard Worker// Response message for listing tasks using 668*d5c09012SAndroid Build Coastguard Worker// [ListTasks][google.cloud.tasks.v2beta2.CloudTasks.ListTasks]. 669*d5c09012SAndroid Build Coastguard Workermessage ListTasksResponse { 670*d5c09012SAndroid Build Coastguard Worker // The list of tasks. 671*d5c09012SAndroid Build Coastguard Worker repeated Task tasks = 1; 672*d5c09012SAndroid Build Coastguard Worker 673*d5c09012SAndroid Build Coastguard Worker // A token to retrieve next page of results. 674*d5c09012SAndroid Build Coastguard Worker // 675*d5c09012SAndroid Build Coastguard Worker // To return the next page of results, call 676*d5c09012SAndroid Build Coastguard Worker // [ListTasks][google.cloud.tasks.v2beta2.CloudTasks.ListTasks] with this 677*d5c09012SAndroid Build Coastguard Worker // value as the 678*d5c09012SAndroid Build Coastguard Worker // [page_token][google.cloud.tasks.v2beta2.ListTasksRequest.page_token]. 679*d5c09012SAndroid Build Coastguard Worker // 680*d5c09012SAndroid Build Coastguard Worker // If the next_page_token is empty, there are no more results. 681*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 682*d5c09012SAndroid Build Coastguard Worker} 683*d5c09012SAndroid Build Coastguard Worker 684*d5c09012SAndroid Build Coastguard Worker// Request message for getting a task using 685*d5c09012SAndroid Build Coastguard Worker// [GetTask][google.cloud.tasks.v2beta2.CloudTasks.GetTask]. 686*d5c09012SAndroid Build Coastguard Workermessage GetTaskRequest { 687*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 688*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 689*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 690*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 691*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 692*d5c09012SAndroid Build Coastguard Worker ]; 693*d5c09012SAndroid Build Coastguard Worker 694*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 695*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] will be returned. 696*d5c09012SAndroid Build Coastguard Worker // 697*d5c09012SAndroid Build Coastguard Worker // By default response_view is 698*d5c09012SAndroid Build Coastguard Worker // [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC]; not all information is 699*d5c09012SAndroid Build Coastguard Worker // retrieved by default because some data, such as payloads, might be 700*d5c09012SAndroid Build Coastguard Worker // desirable to return only when needed because of its large size or because 701*d5c09012SAndroid Build Coastguard Worker // of the sensitivity of data that it contains. 702*d5c09012SAndroid Build Coastguard Worker // 703*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2beta2.Task.View.FULL] 704*d5c09012SAndroid Build Coastguard Worker // requires `cloudtasks.tasks.fullView` [Google 705*d5c09012SAndroid Build Coastguard Worker // IAM](https://cloud.google.com/iam/) permission on the 706*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] resource. 707*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 2; 708*d5c09012SAndroid Build Coastguard Worker} 709*d5c09012SAndroid Build Coastguard Worker 710*d5c09012SAndroid Build Coastguard Worker// Request message for 711*d5c09012SAndroid Build Coastguard Worker// [CreateTask][google.cloud.tasks.v2beta2.CloudTasks.CreateTask]. 712*d5c09012SAndroid Build Coastguard Workermessage CreateTaskRequest { 713*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 714*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 715*d5c09012SAndroid Build Coastguard Worker // 716*d5c09012SAndroid Build Coastguard Worker // The queue must already exist. 717*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 718*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 719*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 720*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Task" 721*d5c09012SAndroid Build Coastguard Worker } 722*d5c09012SAndroid Build Coastguard Worker ]; 723*d5c09012SAndroid Build Coastguard Worker 724*d5c09012SAndroid Build Coastguard Worker // Required. The task to add. 725*d5c09012SAndroid Build Coastguard Worker // 726*d5c09012SAndroid Build Coastguard Worker // Task names have the following format: 727*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`. 728*d5c09012SAndroid Build Coastguard Worker // The user can optionally specify a task 729*d5c09012SAndroid Build Coastguard Worker // [name][google.cloud.tasks.v2beta2.Task.name]. If a name is not specified 730*d5c09012SAndroid Build Coastguard Worker // then the system will generate a random unique task id, which will be set in 731*d5c09012SAndroid Build Coastguard Worker // the task returned in the [response][google.cloud.tasks.v2beta2.Task.name]. 732*d5c09012SAndroid Build Coastguard Worker // 733*d5c09012SAndroid Build Coastguard Worker // If [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] is not 734*d5c09012SAndroid Build Coastguard Worker // set or is in the past then Cloud Tasks will set it to the current time. 735*d5c09012SAndroid Build Coastguard Worker // 736*d5c09012SAndroid Build Coastguard Worker // Task De-duplication: 737*d5c09012SAndroid Build Coastguard Worker // 738*d5c09012SAndroid Build Coastguard Worker // Explicitly specifying a task ID enables task de-duplication. If 739*d5c09012SAndroid Build Coastguard Worker // a task's ID is identical to that of an existing task or a task 740*d5c09012SAndroid Build Coastguard Worker // that was deleted or completed recently then the call will fail 741*d5c09012SAndroid Build Coastguard Worker // with [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS]. 742*d5c09012SAndroid Build Coastguard Worker // If the task's queue was created using Cloud Tasks, then another task with 743*d5c09012SAndroid Build Coastguard Worker // the same name can't be created for ~1 hour after the original task was 744*d5c09012SAndroid Build Coastguard Worker // deleted or completed. If the task's queue was created using queue.yaml or 745*d5c09012SAndroid Build Coastguard Worker // queue.xml, then another task with the same name can't be created 746*d5c09012SAndroid Build Coastguard Worker // for ~9 days after the original task was deleted or completed. 747*d5c09012SAndroid Build Coastguard Worker // 748*d5c09012SAndroid Build Coastguard Worker // Because there is an extra lookup cost to identify duplicate task 749*d5c09012SAndroid Build Coastguard Worker // names, these [CreateTask][google.cloud.tasks.v2beta2.CloudTasks.CreateTask] 750*d5c09012SAndroid Build Coastguard Worker // calls have significantly increased latency. Using hashed strings for the 751*d5c09012SAndroid Build Coastguard Worker // task id or for the prefix of the task id is recommended. Choosing task ids 752*d5c09012SAndroid Build Coastguard Worker // that are sequential or have sequential prefixes, for example using a 753*d5c09012SAndroid Build Coastguard Worker // timestamp, causes an increase in latency and error rates in all 754*d5c09012SAndroid Build Coastguard Worker // task commands. The infrastructure relies on an approximately 755*d5c09012SAndroid Build Coastguard Worker // uniform distribution of task ids to store and serve tasks 756*d5c09012SAndroid Build Coastguard Worker // efficiently. 757*d5c09012SAndroid Build Coastguard Worker Task task = 2 [(google.api.field_behavior) = REQUIRED]; 758*d5c09012SAndroid Build Coastguard Worker 759*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 760*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] will be returned. 761*d5c09012SAndroid Build Coastguard Worker // 762*d5c09012SAndroid Build Coastguard Worker // By default response_view is 763*d5c09012SAndroid Build Coastguard Worker // [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC]; not all information is 764*d5c09012SAndroid Build Coastguard Worker // retrieved by default because some data, such as payloads, might be 765*d5c09012SAndroid Build Coastguard Worker // desirable to return only when needed because of its large size or because 766*d5c09012SAndroid Build Coastguard Worker // of the sensitivity of data that it contains. 767*d5c09012SAndroid Build Coastguard Worker // 768*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2beta2.Task.View.FULL] 769*d5c09012SAndroid Build Coastguard Worker // requires `cloudtasks.tasks.fullView` [Google 770*d5c09012SAndroid Build Coastguard Worker // IAM](https://cloud.google.com/iam/) permission on the 771*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] resource. 772*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 3; 773*d5c09012SAndroid Build Coastguard Worker} 774*d5c09012SAndroid Build Coastguard Worker 775*d5c09012SAndroid Build Coastguard Worker// Request message for deleting a task using 776*d5c09012SAndroid Build Coastguard Worker// [DeleteTask][google.cloud.tasks.v2beta2.CloudTasks.DeleteTask]. 777*d5c09012SAndroid Build Coastguard Workermessage DeleteTaskRequest { 778*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 779*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 780*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 781*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 782*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 783*d5c09012SAndroid Build Coastguard Worker ]; 784*d5c09012SAndroid Build Coastguard Worker} 785*d5c09012SAndroid Build Coastguard Worker 786*d5c09012SAndroid Build Coastguard Worker// Request message for leasing tasks using 787*d5c09012SAndroid Build Coastguard Worker// [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks]. 788*d5c09012SAndroid Build Coastguard Workermessage LeaseTasksRequest { 789*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 790*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 791*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 792*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 793*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 794*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Task" 795*d5c09012SAndroid Build Coastguard Worker } 796*d5c09012SAndroid Build Coastguard Worker ]; 797*d5c09012SAndroid Build Coastguard Worker 798*d5c09012SAndroid Build Coastguard Worker // The maximum number of tasks to lease. 799*d5c09012SAndroid Build Coastguard Worker // 800*d5c09012SAndroid Build Coastguard Worker // The system will make a best effort to return as close to as 801*d5c09012SAndroid Build Coastguard Worker // `max_tasks` as possible. 802*d5c09012SAndroid Build Coastguard Worker // 803*d5c09012SAndroid Build Coastguard Worker // The largest that `max_tasks` can be is 1000. 804*d5c09012SAndroid Build Coastguard Worker // 805*d5c09012SAndroid Build Coastguard Worker // The maximum total size of a [lease tasks 806*d5c09012SAndroid Build Coastguard Worker // response][google.cloud.tasks.v2beta2.LeaseTasksResponse] is 32 MB. If the 807*d5c09012SAndroid Build Coastguard Worker // sum of all task sizes requested reaches this limit, fewer tasks than 808*d5c09012SAndroid Build Coastguard Worker // requested are returned. 809*d5c09012SAndroid Build Coastguard Worker int32 max_tasks = 2; 810*d5c09012SAndroid Build Coastguard Worker 811*d5c09012SAndroid Build Coastguard Worker // Required. The duration of the lease. 812*d5c09012SAndroid Build Coastguard Worker // 813*d5c09012SAndroid Build Coastguard Worker // Each task returned in the 814*d5c09012SAndroid Build Coastguard Worker // [response][google.cloud.tasks.v2beta2.LeaseTasksResponse] will have its 815*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] set to the 816*d5c09012SAndroid Build Coastguard Worker // current time plus the `lease_duration`. The task is leased until its 817*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time]; thus, the 818*d5c09012SAndroid Build Coastguard Worker // task will not be returned to another 819*d5c09012SAndroid Build Coastguard Worker // [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] call before 820*d5c09012SAndroid Build Coastguard Worker // its [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time]. 821*d5c09012SAndroid Build Coastguard Worker // 822*d5c09012SAndroid Build Coastguard Worker // 823*d5c09012SAndroid Build Coastguard Worker // After the worker has successfully finished the work associated 824*d5c09012SAndroid Build Coastguard Worker // with the task, the worker must call via 825*d5c09012SAndroid Build Coastguard Worker // [AcknowledgeTask][google.cloud.tasks.v2beta2.CloudTasks.AcknowledgeTask] 826*d5c09012SAndroid Build Coastguard Worker // before the [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time]. 827*d5c09012SAndroid Build Coastguard Worker // Otherwise the task will be returned to a later 828*d5c09012SAndroid Build Coastguard Worker // [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] call so that 829*d5c09012SAndroid Build Coastguard Worker // another worker can retry it. 830*d5c09012SAndroid Build Coastguard Worker // 831*d5c09012SAndroid Build Coastguard Worker // The maximum lease duration is 1 week. 832*d5c09012SAndroid Build Coastguard Worker // `lease_duration` will be truncated to the nearest second. 833*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration lease_duration = 3 834*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 835*d5c09012SAndroid Build Coastguard Worker 836*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 837*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] will be returned. 838*d5c09012SAndroid Build Coastguard Worker // 839*d5c09012SAndroid Build Coastguard Worker // By default response_view is 840*d5c09012SAndroid Build Coastguard Worker // [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC]; not all information is 841*d5c09012SAndroid Build Coastguard Worker // retrieved by default because some data, such as payloads, might be 842*d5c09012SAndroid Build Coastguard Worker // desirable to return only when needed because of its large size or because 843*d5c09012SAndroid Build Coastguard Worker // of the sensitivity of data that it contains. 844*d5c09012SAndroid Build Coastguard Worker // 845*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2beta2.Task.View.FULL] 846*d5c09012SAndroid Build Coastguard Worker // requires `cloudtasks.tasks.fullView` [Google 847*d5c09012SAndroid Build Coastguard Worker // IAM](https://cloud.google.com/iam/) permission on the 848*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] resource. 849*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 4; 850*d5c09012SAndroid Build Coastguard Worker 851*d5c09012SAndroid Build Coastguard Worker // `filter` can be used to specify a subset of tasks to lease. 852*d5c09012SAndroid Build Coastguard Worker // 853*d5c09012SAndroid Build Coastguard Worker // When `filter` is set to `tag=<my-tag>` then the 854*d5c09012SAndroid Build Coastguard Worker // [response][google.cloud.tasks.v2beta2.LeaseTasksResponse] will contain only 855*d5c09012SAndroid Build Coastguard Worker // tasks whose [tag][google.cloud.tasks.v2beta2.PullMessage.tag] is equal to 856*d5c09012SAndroid Build Coastguard Worker // `<my-tag>`. `<my-tag>` must be less than 500 characters. 857*d5c09012SAndroid Build Coastguard Worker // 858*d5c09012SAndroid Build Coastguard Worker // When `filter` is set to `tag_function=oldest_tag()`, only tasks which have 859*d5c09012SAndroid Build Coastguard Worker // the same tag as the task with the oldest 860*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] will be 861*d5c09012SAndroid Build Coastguard Worker // returned. 862*d5c09012SAndroid Build Coastguard Worker // 863*d5c09012SAndroid Build Coastguard Worker // Grammar Syntax: 864*d5c09012SAndroid Build Coastguard Worker // 865*d5c09012SAndroid Build Coastguard Worker // * `filter = "tag=" tag | "tag_function=" function` 866*d5c09012SAndroid Build Coastguard Worker // 867*d5c09012SAndroid Build Coastguard Worker // * `tag = string` 868*d5c09012SAndroid Build Coastguard Worker // 869*d5c09012SAndroid Build Coastguard Worker // * `function = "oldest_tag()"` 870*d5c09012SAndroid Build Coastguard Worker // 871*d5c09012SAndroid Build Coastguard Worker // The `oldest_tag()` function returns tasks which have the same tag as the 872*d5c09012SAndroid Build Coastguard Worker // oldest task (ordered by schedule time). 873*d5c09012SAndroid Build Coastguard Worker // 874*d5c09012SAndroid Build Coastguard Worker // SDK compatibility: Although the SDK allows tags to be either 875*d5c09012SAndroid Build Coastguard Worker // string or 876*d5c09012SAndroid Build Coastguard Worker // [bytes](https://cloud.google.com/appengine/docs/standard/java/javadoc/com/google/appengine/api/taskqueue/TaskOptions.html#tag-byte:A-), 877*d5c09012SAndroid Build Coastguard Worker // only UTF-8 encoded tags can be used in Cloud Tasks. Tag which 878*d5c09012SAndroid Build Coastguard Worker // aren't UTF-8 encoded can't be used in the 879*d5c09012SAndroid Build Coastguard Worker // [filter][google.cloud.tasks.v2beta2.LeaseTasksRequest.filter] and the 880*d5c09012SAndroid Build Coastguard Worker // task's [tag][google.cloud.tasks.v2beta2.PullMessage.tag] will be displayed 881*d5c09012SAndroid Build Coastguard Worker // as empty in Cloud Tasks. 882*d5c09012SAndroid Build Coastguard Worker string filter = 5; 883*d5c09012SAndroid Build Coastguard Worker} 884*d5c09012SAndroid Build Coastguard Worker 885*d5c09012SAndroid Build Coastguard Worker// Response message for leasing tasks using 886*d5c09012SAndroid Build Coastguard Worker// [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks]. 887*d5c09012SAndroid Build Coastguard Workermessage LeaseTasksResponse { 888*d5c09012SAndroid Build Coastguard Worker // The leased tasks. 889*d5c09012SAndroid Build Coastguard Worker repeated Task tasks = 1; 890*d5c09012SAndroid Build Coastguard Worker} 891*d5c09012SAndroid Build Coastguard Worker 892*d5c09012SAndroid Build Coastguard Worker// Request message for acknowledging a task using 893*d5c09012SAndroid Build Coastguard Worker// [AcknowledgeTask][google.cloud.tasks.v2beta2.CloudTasks.AcknowledgeTask]. 894*d5c09012SAndroid Build Coastguard Workermessage AcknowledgeTaskRequest { 895*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 896*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 897*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 898*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 899*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 900*d5c09012SAndroid Build Coastguard Worker ]; 901*d5c09012SAndroid Build Coastguard Worker 902*d5c09012SAndroid Build Coastguard Worker // Required. The task's current schedule time, available in the 903*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] returned by 904*d5c09012SAndroid Build Coastguard Worker // [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] response or 905*d5c09012SAndroid Build Coastguard Worker // [RenewLease][google.cloud.tasks.v2beta2.CloudTasks.RenewLease] response. 906*d5c09012SAndroid Build Coastguard Worker // This restriction is to ensure that your worker currently holds the lease. 907*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp schedule_time = 2 908*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 909*d5c09012SAndroid Build Coastguard Worker} 910*d5c09012SAndroid Build Coastguard Worker 911*d5c09012SAndroid Build Coastguard Worker// Request message for renewing a lease using 912*d5c09012SAndroid Build Coastguard Worker// [RenewLease][google.cloud.tasks.v2beta2.CloudTasks.RenewLease]. 913*d5c09012SAndroid Build Coastguard Workermessage RenewLeaseRequest { 914*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 915*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 916*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 917*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 918*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 919*d5c09012SAndroid Build Coastguard Worker ]; 920*d5c09012SAndroid Build Coastguard Worker 921*d5c09012SAndroid Build Coastguard Worker // Required. The task's current schedule time, available in the 922*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] returned by 923*d5c09012SAndroid Build Coastguard Worker // [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] response or 924*d5c09012SAndroid Build Coastguard Worker // [RenewLease][google.cloud.tasks.v2beta2.CloudTasks.RenewLease] response. 925*d5c09012SAndroid Build Coastguard Worker // This restriction is to ensure that your worker currently holds the lease. 926*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp schedule_time = 2 927*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 928*d5c09012SAndroid Build Coastguard Worker 929*d5c09012SAndroid Build Coastguard Worker // Required. The desired new lease duration, starting from now. 930*d5c09012SAndroid Build Coastguard Worker // 931*d5c09012SAndroid Build Coastguard Worker // 932*d5c09012SAndroid Build Coastguard Worker // The maximum lease duration is 1 week. 933*d5c09012SAndroid Build Coastguard Worker // `lease_duration` will be truncated to the nearest second. 934*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration lease_duration = 3 935*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 936*d5c09012SAndroid Build Coastguard Worker 937*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 938*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] will be returned. 939*d5c09012SAndroid Build Coastguard Worker // 940*d5c09012SAndroid Build Coastguard Worker // By default response_view is 941*d5c09012SAndroid Build Coastguard Worker // [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC]; not all information is 942*d5c09012SAndroid Build Coastguard Worker // retrieved by default because some data, such as payloads, might be 943*d5c09012SAndroid Build Coastguard Worker // desirable to return only when needed because of its large size or because 944*d5c09012SAndroid Build Coastguard Worker // of the sensitivity of data that it contains. 945*d5c09012SAndroid Build Coastguard Worker // 946*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2beta2.Task.View.FULL] 947*d5c09012SAndroid Build Coastguard Worker // requires `cloudtasks.tasks.fullView` [Google 948*d5c09012SAndroid Build Coastguard Worker // IAM](https://cloud.google.com/iam/) permission on the 949*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] resource. 950*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 4; 951*d5c09012SAndroid Build Coastguard Worker} 952*d5c09012SAndroid Build Coastguard Worker 953*d5c09012SAndroid Build Coastguard Worker// Request message for canceling a lease using 954*d5c09012SAndroid Build Coastguard Worker// [CancelLease][google.cloud.tasks.v2beta2.CloudTasks.CancelLease]. 955*d5c09012SAndroid Build Coastguard Workermessage CancelLeaseRequest { 956*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 957*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 958*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 959*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 960*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 961*d5c09012SAndroid Build Coastguard Worker ]; 962*d5c09012SAndroid Build Coastguard Worker 963*d5c09012SAndroid Build Coastguard Worker // Required. The task's current schedule time, available in the 964*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2beta2.Task.schedule_time] returned by 965*d5c09012SAndroid Build Coastguard Worker // [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] response or 966*d5c09012SAndroid Build Coastguard Worker // [RenewLease][google.cloud.tasks.v2beta2.CloudTasks.RenewLease] response. 967*d5c09012SAndroid Build Coastguard Worker // This restriction is to ensure that your worker currently holds the lease. 968*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp schedule_time = 2 969*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 970*d5c09012SAndroid Build Coastguard Worker 971*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 972*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] will be returned. 973*d5c09012SAndroid Build Coastguard Worker // 974*d5c09012SAndroid Build Coastguard Worker // By default response_view is 975*d5c09012SAndroid Build Coastguard Worker // [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC]; not all information is 976*d5c09012SAndroid Build Coastguard Worker // retrieved by default because some data, such as payloads, might be 977*d5c09012SAndroid Build Coastguard Worker // desirable to return only when needed because of its large size or because 978*d5c09012SAndroid Build Coastguard Worker // of the sensitivity of data that it contains. 979*d5c09012SAndroid Build Coastguard Worker // 980*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2beta2.Task.View.FULL] 981*d5c09012SAndroid Build Coastguard Worker // requires `cloudtasks.tasks.fullView` [Google 982*d5c09012SAndroid Build Coastguard Worker // IAM](https://cloud.google.com/iam/) permission on the 983*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] resource. 984*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 3; 985*d5c09012SAndroid Build Coastguard Worker} 986*d5c09012SAndroid Build Coastguard Worker 987*d5c09012SAndroid Build Coastguard Worker// Request message for forcing a task to run now using 988*d5c09012SAndroid Build Coastguard Worker// [RunTask][google.cloud.tasks.v2beta2.CloudTasks.RunTask]. 989*d5c09012SAndroid Build Coastguard Workermessage RunTaskRequest { 990*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 991*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 992*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 993*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 994*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 995*d5c09012SAndroid Build Coastguard Worker ]; 996*d5c09012SAndroid Build Coastguard Worker 997*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 998*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] will be returned. 999*d5c09012SAndroid Build Coastguard Worker // 1000*d5c09012SAndroid Build Coastguard Worker // By default response_view is 1001*d5c09012SAndroid Build Coastguard Worker // [BASIC][google.cloud.tasks.v2beta2.Task.View.BASIC]; not all information is 1002*d5c09012SAndroid Build Coastguard Worker // retrieved by default because some data, such as payloads, might be 1003*d5c09012SAndroid Build Coastguard Worker // desirable to return only when needed because of its large size or because 1004*d5c09012SAndroid Build Coastguard Worker // of the sensitivity of data that it contains. 1005*d5c09012SAndroid Build Coastguard Worker // 1006*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2beta2.Task.View.FULL] 1007*d5c09012SAndroid Build Coastguard Worker // requires `cloudtasks.tasks.fullView` [Google 1008*d5c09012SAndroid Build Coastguard Worker // IAM](https://cloud.google.com/iam/) permission on the 1009*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2beta2.Task] resource. 1010*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 2; 1011*d5c09012SAndroid Build Coastguard Worker} 1012