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.v2; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/tasks/v2/queue.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/tasks/v2/task.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/iam/v1/iam_policy.proto"; 26*d5c09012SAndroid Build Coastguard Workerimport "google/iam/v1/policy.proto"; 27*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 28*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 29*d5c09012SAndroid Build Coastguard Worker 30*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/cloudtasks/apiv2/cloudtaskspb;cloudtaskspb"; 31*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 32*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "CloudTasksProto"; 33*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.tasks.v2"; 34*d5c09012SAndroid Build Coastguard Workeroption objc_class_prefix = "TASKS"; 35*d5c09012SAndroid Build Coastguard Worker 36*d5c09012SAndroid Build Coastguard Worker// Cloud Tasks allows developers to manage the execution of background 37*d5c09012SAndroid Build Coastguard Worker// work in their applications. 38*d5c09012SAndroid Build Coastguard Workerservice CloudTasks { 39*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "cloudtasks.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 // Lists queues. 44*d5c09012SAndroid Build Coastguard Worker // 45*d5c09012SAndroid Build Coastguard Worker // Queues are returned in lexicographical order. 46*d5c09012SAndroid Build Coastguard Worker rpc ListQueues(ListQueuesRequest) returns (ListQueuesResponse) { 47*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 48*d5c09012SAndroid Build Coastguard Worker get: "/v2/{parent=projects/*/locations/*}/queues" 49*d5c09012SAndroid Build Coastguard Worker }; 50*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 51*d5c09012SAndroid Build Coastguard Worker } 52*d5c09012SAndroid Build Coastguard Worker 53*d5c09012SAndroid Build Coastguard Worker // Gets a queue. 54*d5c09012SAndroid Build Coastguard Worker rpc GetQueue(GetQueueRequest) returns (Queue) { 55*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 56*d5c09012SAndroid Build Coastguard Worker get: "/v2/{name=projects/*/locations/*/queues/*}" 57*d5c09012SAndroid Build Coastguard Worker }; 58*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 59*d5c09012SAndroid Build Coastguard Worker } 60*d5c09012SAndroid Build Coastguard Worker 61*d5c09012SAndroid Build Coastguard Worker // Creates a queue. 62*d5c09012SAndroid Build Coastguard Worker // 63*d5c09012SAndroid Build Coastguard Worker // Queues created with this method allow tasks to live for a maximum of 31 64*d5c09012SAndroid Build Coastguard Worker // days. After a task is 31 days old, the task will be deleted regardless of 65*d5c09012SAndroid Build Coastguard Worker // whether it was dispatched or not. 66*d5c09012SAndroid Build Coastguard Worker // 67*d5c09012SAndroid Build Coastguard Worker // WARNING: Using this method may have unintended side effects if you are 68*d5c09012SAndroid Build Coastguard Worker // using an App Engine `queue.yaml` or `queue.xml` file to manage your queues. 69*d5c09012SAndroid Build Coastguard Worker // Read 70*d5c09012SAndroid Build Coastguard Worker // [Overview of Queue Management and 71*d5c09012SAndroid Build Coastguard Worker // queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using 72*d5c09012SAndroid Build Coastguard Worker // this method. 73*d5c09012SAndroid Build Coastguard Worker rpc CreateQueue(CreateQueueRequest) returns (Queue) { 74*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 75*d5c09012SAndroid Build Coastguard Worker post: "/v2/{parent=projects/*/locations/*}/queues" 76*d5c09012SAndroid Build Coastguard Worker body: "queue" 77*d5c09012SAndroid Build Coastguard Worker }; 78*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,queue"; 79*d5c09012SAndroid Build Coastguard Worker } 80*d5c09012SAndroid Build Coastguard Worker 81*d5c09012SAndroid Build Coastguard Worker // Updates a queue. 82*d5c09012SAndroid Build Coastguard Worker // 83*d5c09012SAndroid Build Coastguard Worker // This method creates the queue if it does not exist and updates 84*d5c09012SAndroid Build Coastguard Worker // the queue if it does exist. 85*d5c09012SAndroid Build Coastguard Worker // 86*d5c09012SAndroid Build Coastguard Worker // Queues created with this method allow tasks to live for a maximum of 31 87*d5c09012SAndroid Build Coastguard Worker // days. After a task is 31 days old, the task will be deleted regardless of 88*d5c09012SAndroid Build Coastguard Worker // whether it was dispatched or not. 89*d5c09012SAndroid Build Coastguard Worker // 90*d5c09012SAndroid Build Coastguard Worker // WARNING: Using this method may have unintended side effects if you are 91*d5c09012SAndroid Build Coastguard Worker // using an App Engine `queue.yaml` or `queue.xml` file to manage your queues. 92*d5c09012SAndroid Build Coastguard Worker // Read 93*d5c09012SAndroid Build Coastguard Worker // [Overview of Queue Management and 94*d5c09012SAndroid Build Coastguard Worker // queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using 95*d5c09012SAndroid Build Coastguard Worker // this method. 96*d5c09012SAndroid Build Coastguard Worker rpc UpdateQueue(UpdateQueueRequest) returns (Queue) { 97*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 98*d5c09012SAndroid Build Coastguard Worker patch: "/v2/{queue.name=projects/*/locations/*/queues/*}" 99*d5c09012SAndroid Build Coastguard Worker body: "queue" 100*d5c09012SAndroid Build Coastguard Worker }; 101*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "queue,update_mask"; 102*d5c09012SAndroid Build Coastguard Worker } 103*d5c09012SAndroid Build Coastguard Worker 104*d5c09012SAndroid Build Coastguard Worker // Deletes a queue. 105*d5c09012SAndroid Build Coastguard Worker // 106*d5c09012SAndroid Build Coastguard Worker // This command will delete the queue even if it has tasks in it. 107*d5c09012SAndroid Build Coastguard Worker // 108*d5c09012SAndroid Build Coastguard Worker // Note: If you delete a queue, a queue with the same name can't be created 109*d5c09012SAndroid Build Coastguard Worker // for 7 days. 110*d5c09012SAndroid Build Coastguard Worker // 111*d5c09012SAndroid Build Coastguard Worker // WARNING: Using this method may have unintended side effects if you are 112*d5c09012SAndroid Build Coastguard Worker // using an App Engine `queue.yaml` or `queue.xml` file to manage your queues. 113*d5c09012SAndroid Build Coastguard Worker // Read 114*d5c09012SAndroid Build Coastguard Worker // [Overview of Queue Management and 115*d5c09012SAndroid Build Coastguard Worker // queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using 116*d5c09012SAndroid Build Coastguard Worker // this method. 117*d5c09012SAndroid Build Coastguard Worker rpc DeleteQueue(DeleteQueueRequest) returns (google.protobuf.Empty) { 118*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 119*d5c09012SAndroid Build Coastguard Worker delete: "/v2/{name=projects/*/locations/*/queues/*}" 120*d5c09012SAndroid Build Coastguard Worker }; 121*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 122*d5c09012SAndroid Build Coastguard Worker } 123*d5c09012SAndroid Build Coastguard Worker 124*d5c09012SAndroid Build Coastguard Worker // Purges a queue by deleting all of its tasks. 125*d5c09012SAndroid Build Coastguard Worker // 126*d5c09012SAndroid Build Coastguard Worker // All tasks created before this method is called are permanently deleted. 127*d5c09012SAndroid Build Coastguard Worker // 128*d5c09012SAndroid Build Coastguard Worker // Purge operations can take up to one minute to take effect. Tasks 129*d5c09012SAndroid Build Coastguard Worker // might be dispatched before the purge takes effect. A purge is irreversible. 130*d5c09012SAndroid Build Coastguard Worker rpc PurgeQueue(PurgeQueueRequest) returns (Queue) { 131*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 132*d5c09012SAndroid Build Coastguard Worker post: "/v2/{name=projects/*/locations/*/queues/*}:purge" 133*d5c09012SAndroid Build Coastguard Worker body: "*" 134*d5c09012SAndroid Build Coastguard Worker }; 135*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 136*d5c09012SAndroid Build Coastguard Worker } 137*d5c09012SAndroid Build Coastguard Worker 138*d5c09012SAndroid Build Coastguard Worker // Pauses the queue. 139*d5c09012SAndroid Build Coastguard Worker // 140*d5c09012SAndroid Build Coastguard Worker // If a queue is paused then the system will stop dispatching tasks 141*d5c09012SAndroid Build Coastguard Worker // until the queue is resumed via 142*d5c09012SAndroid Build Coastguard Worker // [ResumeQueue][google.cloud.tasks.v2.CloudTasks.ResumeQueue]. Tasks can 143*d5c09012SAndroid Build Coastguard Worker // still be added when the queue is paused. A queue is paused if its 144*d5c09012SAndroid Build Coastguard Worker // [state][google.cloud.tasks.v2.Queue.state] is 145*d5c09012SAndroid Build Coastguard Worker // [PAUSED][google.cloud.tasks.v2.Queue.State.PAUSED]. 146*d5c09012SAndroid Build Coastguard Worker rpc PauseQueue(PauseQueueRequest) returns (Queue) { 147*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 148*d5c09012SAndroid Build Coastguard Worker post: "/v2/{name=projects/*/locations/*/queues/*}:pause" 149*d5c09012SAndroid Build Coastguard Worker body: "*" 150*d5c09012SAndroid Build Coastguard Worker }; 151*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 152*d5c09012SAndroid Build Coastguard Worker } 153*d5c09012SAndroid Build Coastguard Worker 154*d5c09012SAndroid Build Coastguard Worker // Resume a queue. 155*d5c09012SAndroid Build Coastguard Worker // 156*d5c09012SAndroid Build Coastguard Worker // This method resumes a queue after it has been 157*d5c09012SAndroid Build Coastguard Worker // [PAUSED][google.cloud.tasks.v2.Queue.State.PAUSED] or 158*d5c09012SAndroid Build Coastguard Worker // [DISABLED][google.cloud.tasks.v2.Queue.State.DISABLED]. The state of a 159*d5c09012SAndroid Build Coastguard Worker // queue is stored in the queue's [state][google.cloud.tasks.v2.Queue.state]; 160*d5c09012SAndroid Build Coastguard Worker // after calling this method it will be set to 161*d5c09012SAndroid Build Coastguard Worker // [RUNNING][google.cloud.tasks.v2.Queue.State.RUNNING]. 162*d5c09012SAndroid Build Coastguard Worker // 163*d5c09012SAndroid Build Coastguard Worker // WARNING: Resuming many high-QPS queues at the same time can 164*d5c09012SAndroid Build Coastguard Worker // lead to target overloading. If you are resuming high-QPS 165*d5c09012SAndroid Build Coastguard Worker // queues, follow the 500/50/5 pattern described in 166*d5c09012SAndroid Build Coastguard Worker // [Managing Cloud Tasks Scaling 167*d5c09012SAndroid Build Coastguard Worker // Risks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling). 168*d5c09012SAndroid Build Coastguard Worker rpc ResumeQueue(ResumeQueueRequest) returns (Queue) { 169*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 170*d5c09012SAndroid Build Coastguard Worker post: "/v2/{name=projects/*/locations/*/queues/*}:resume" 171*d5c09012SAndroid Build Coastguard Worker body: "*" 172*d5c09012SAndroid Build Coastguard Worker }; 173*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 174*d5c09012SAndroid Build Coastguard Worker } 175*d5c09012SAndroid Build Coastguard Worker 176*d5c09012SAndroid Build Coastguard Worker // Gets the access control policy for a [Queue][google.cloud.tasks.v2.Queue]. 177*d5c09012SAndroid Build Coastguard Worker // Returns an empty policy if the resource exists and does not have a policy 178*d5c09012SAndroid Build Coastguard Worker // set. 179*d5c09012SAndroid Build Coastguard Worker // 180*d5c09012SAndroid Build Coastguard Worker // Authorization requires the following 181*d5c09012SAndroid Build Coastguard Worker // [Google IAM](https://cloud.google.com/iam) permission on the specified 182*d5c09012SAndroid Build Coastguard Worker // resource parent: 183*d5c09012SAndroid Build Coastguard Worker // 184*d5c09012SAndroid Build Coastguard Worker // * `cloudtasks.queues.getIamPolicy` 185*d5c09012SAndroid Build Coastguard Worker rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) 186*d5c09012SAndroid Build Coastguard Worker returns (google.iam.v1.Policy) { 187*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 188*d5c09012SAndroid Build Coastguard Worker post: "/v2/{resource=projects/*/locations/*/queues/*}:getIamPolicy" 189*d5c09012SAndroid Build Coastguard Worker body: "*" 190*d5c09012SAndroid Build Coastguard Worker }; 191*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "resource"; 192*d5c09012SAndroid Build Coastguard Worker } 193*d5c09012SAndroid Build Coastguard Worker 194*d5c09012SAndroid Build Coastguard Worker // Sets the access control policy for a [Queue][google.cloud.tasks.v2.Queue]. 195*d5c09012SAndroid Build Coastguard Worker // Replaces any existing policy. 196*d5c09012SAndroid Build Coastguard Worker // 197*d5c09012SAndroid Build Coastguard Worker // Note: The Cloud Console does not check queue-level IAM permissions yet. 198*d5c09012SAndroid Build Coastguard Worker // Project-level permissions are required to use the Cloud Console. 199*d5c09012SAndroid Build Coastguard Worker // 200*d5c09012SAndroid Build Coastguard Worker // Authorization requires the following 201*d5c09012SAndroid Build Coastguard Worker // [Google IAM](https://cloud.google.com/iam) permission on the specified 202*d5c09012SAndroid Build Coastguard Worker // resource parent: 203*d5c09012SAndroid Build Coastguard Worker // 204*d5c09012SAndroid Build Coastguard Worker // * `cloudtasks.queues.setIamPolicy` 205*d5c09012SAndroid Build Coastguard Worker rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) 206*d5c09012SAndroid Build Coastguard Worker returns (google.iam.v1.Policy) { 207*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 208*d5c09012SAndroid Build Coastguard Worker post: "/v2/{resource=projects/*/locations/*/queues/*}:setIamPolicy" 209*d5c09012SAndroid Build Coastguard Worker body: "*" 210*d5c09012SAndroid Build Coastguard Worker }; 211*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "resource,policy"; 212*d5c09012SAndroid Build Coastguard Worker } 213*d5c09012SAndroid Build Coastguard Worker 214*d5c09012SAndroid Build Coastguard Worker // Returns permissions that a caller has on a 215*d5c09012SAndroid Build Coastguard Worker // [Queue][google.cloud.tasks.v2.Queue]. If the resource does not exist, this 216*d5c09012SAndroid Build Coastguard Worker // will return an empty set of permissions, not a 217*d5c09012SAndroid Build Coastguard Worker // [NOT_FOUND][google.rpc.Code.NOT_FOUND] error. 218*d5c09012SAndroid Build Coastguard Worker // 219*d5c09012SAndroid Build Coastguard Worker // Note: This operation is designed to be used for building permission-aware 220*d5c09012SAndroid Build Coastguard Worker // UIs and command-line tools, not for authorization checking. This operation 221*d5c09012SAndroid Build Coastguard Worker // may "fail open" without warning. 222*d5c09012SAndroid Build Coastguard Worker rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) 223*d5c09012SAndroid Build Coastguard Worker returns (google.iam.v1.TestIamPermissionsResponse) { 224*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 225*d5c09012SAndroid Build Coastguard Worker post: "/v2/{resource=projects/*/locations/*/queues/*}:testIamPermissions" 226*d5c09012SAndroid Build Coastguard Worker body: "*" 227*d5c09012SAndroid Build Coastguard Worker }; 228*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "resource,permissions"; 229*d5c09012SAndroid Build Coastguard Worker } 230*d5c09012SAndroid Build Coastguard Worker 231*d5c09012SAndroid Build Coastguard Worker // Lists the tasks in a queue. 232*d5c09012SAndroid Build Coastguard Worker // 233*d5c09012SAndroid Build Coastguard Worker // By default, only the [BASIC][google.cloud.tasks.v2.Task.View.BASIC] view is 234*d5c09012SAndroid Build Coastguard Worker // retrieved due to performance considerations; 235*d5c09012SAndroid Build Coastguard Worker // [response_view][google.cloud.tasks.v2.ListTasksRequest.response_view] 236*d5c09012SAndroid Build Coastguard Worker // controls the subset of information which is returned. 237*d5c09012SAndroid Build Coastguard Worker // 238*d5c09012SAndroid Build Coastguard Worker // The tasks may be returned in any order. The ordering may change at any 239*d5c09012SAndroid Build Coastguard Worker // time. 240*d5c09012SAndroid Build Coastguard Worker rpc ListTasks(ListTasksRequest) returns (ListTasksResponse) { 241*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 242*d5c09012SAndroid Build Coastguard Worker get: "/v2/{parent=projects/*/locations/*/queues/*}/tasks" 243*d5c09012SAndroid Build Coastguard Worker }; 244*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 245*d5c09012SAndroid Build Coastguard Worker } 246*d5c09012SAndroid Build Coastguard Worker 247*d5c09012SAndroid Build Coastguard Worker // Gets a task. 248*d5c09012SAndroid Build Coastguard Worker rpc GetTask(GetTaskRequest) returns (Task) { 249*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 250*d5c09012SAndroid Build Coastguard Worker get: "/v2/{name=projects/*/locations/*/queues/*/tasks/*}" 251*d5c09012SAndroid Build Coastguard Worker }; 252*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 253*d5c09012SAndroid Build Coastguard Worker } 254*d5c09012SAndroid Build Coastguard Worker 255*d5c09012SAndroid Build Coastguard Worker // Creates a task and adds it to a queue. 256*d5c09012SAndroid Build Coastguard Worker // 257*d5c09012SAndroid Build Coastguard Worker // Tasks cannot be updated after creation; there is no UpdateTask command. 258*d5c09012SAndroid Build Coastguard Worker // 259*d5c09012SAndroid Build Coastguard Worker // * The maximum task size is 100KB. 260*d5c09012SAndroid Build Coastguard Worker rpc CreateTask(CreateTaskRequest) returns (Task) { 261*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 262*d5c09012SAndroid Build Coastguard Worker post: "/v2/{parent=projects/*/locations/*/queues/*}/tasks" 263*d5c09012SAndroid Build Coastguard Worker body: "*" 264*d5c09012SAndroid Build Coastguard Worker }; 265*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,task"; 266*d5c09012SAndroid Build Coastguard Worker } 267*d5c09012SAndroid Build Coastguard Worker 268*d5c09012SAndroid Build Coastguard Worker // Deletes a task. 269*d5c09012SAndroid Build Coastguard Worker // 270*d5c09012SAndroid Build Coastguard Worker // A task can be deleted if it is scheduled or dispatched. A task 271*d5c09012SAndroid Build Coastguard Worker // cannot be deleted if it has executed successfully or permanently 272*d5c09012SAndroid Build Coastguard Worker // failed. 273*d5c09012SAndroid Build Coastguard Worker rpc DeleteTask(DeleteTaskRequest) returns (google.protobuf.Empty) { 274*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 275*d5c09012SAndroid Build Coastguard Worker delete: "/v2/{name=projects/*/locations/*/queues/*/tasks/*}" 276*d5c09012SAndroid Build Coastguard Worker }; 277*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 278*d5c09012SAndroid Build Coastguard Worker } 279*d5c09012SAndroid Build Coastguard Worker 280*d5c09012SAndroid Build Coastguard Worker // Forces a task to run now. 281*d5c09012SAndroid Build Coastguard Worker // 282*d5c09012SAndroid Build Coastguard Worker // When this method is called, Cloud Tasks will dispatch the task, even if 283*d5c09012SAndroid Build Coastguard Worker // the task is already running, the queue has reached its 284*d5c09012SAndroid Build Coastguard Worker // [RateLimits][google.cloud.tasks.v2.RateLimits] or is 285*d5c09012SAndroid Build Coastguard Worker // [PAUSED][google.cloud.tasks.v2.Queue.State.PAUSED]. 286*d5c09012SAndroid Build Coastguard Worker // 287*d5c09012SAndroid Build Coastguard Worker // This command is meant to be used for manual debugging. For 288*d5c09012SAndroid Build Coastguard Worker // example, [RunTask][google.cloud.tasks.v2.CloudTasks.RunTask] can be used to 289*d5c09012SAndroid Build Coastguard Worker // retry a failed task after a fix has been made or to manually force a task 290*d5c09012SAndroid Build Coastguard Worker // to be dispatched now. 291*d5c09012SAndroid Build Coastguard Worker // 292*d5c09012SAndroid Build Coastguard Worker // The dispatched task is returned. That is, the task that is returned 293*d5c09012SAndroid Build Coastguard Worker // contains the [status][Task.status] after the task is dispatched but 294*d5c09012SAndroid Build Coastguard Worker // before the task is received by its target. 295*d5c09012SAndroid Build Coastguard Worker // 296*d5c09012SAndroid Build Coastguard Worker // If Cloud Tasks receives a successful response from the task's 297*d5c09012SAndroid Build Coastguard Worker // target, then the task will be deleted; otherwise the task's 298*d5c09012SAndroid Build Coastguard Worker // [schedule_time][google.cloud.tasks.v2.Task.schedule_time] will be reset to 299*d5c09012SAndroid Build Coastguard Worker // the time that [RunTask][google.cloud.tasks.v2.CloudTasks.RunTask] was 300*d5c09012SAndroid Build Coastguard Worker // called plus the retry delay specified in the queue's 301*d5c09012SAndroid Build Coastguard Worker // [RetryConfig][google.cloud.tasks.v2.RetryConfig]. 302*d5c09012SAndroid Build Coastguard Worker // 303*d5c09012SAndroid Build Coastguard Worker // [RunTask][google.cloud.tasks.v2.CloudTasks.RunTask] returns 304*d5c09012SAndroid Build Coastguard Worker // [NOT_FOUND][google.rpc.Code.NOT_FOUND] when it is called on a 305*d5c09012SAndroid Build Coastguard Worker // task that has already succeeded or permanently failed. 306*d5c09012SAndroid Build Coastguard Worker rpc RunTask(RunTaskRequest) returns (Task) { 307*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 308*d5c09012SAndroid Build Coastguard Worker post: "/v2/{name=projects/*/locations/*/queues/*/tasks/*}:run" 309*d5c09012SAndroid Build Coastguard Worker body: "*" 310*d5c09012SAndroid Build Coastguard Worker }; 311*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 312*d5c09012SAndroid Build Coastguard Worker } 313*d5c09012SAndroid Build Coastguard Worker} 314*d5c09012SAndroid Build Coastguard Worker 315*d5c09012SAndroid Build Coastguard Worker// Request message for 316*d5c09012SAndroid Build Coastguard Worker// [ListQueues][google.cloud.tasks.v2.CloudTasks.ListQueues]. 317*d5c09012SAndroid Build Coastguard Workermessage ListQueuesRequest { 318*d5c09012SAndroid Build Coastguard Worker // Required. The location name. 319*d5c09012SAndroid Build Coastguard Worker // For example: `projects/PROJECT_ID/locations/LOCATION_ID` 320*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 321*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 322*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 323*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Queue" 324*d5c09012SAndroid Build Coastguard Worker } 325*d5c09012SAndroid Build Coastguard Worker ]; 326*d5c09012SAndroid Build Coastguard Worker 327*d5c09012SAndroid Build Coastguard Worker // `filter` can be used to specify a subset of queues. Any 328*d5c09012SAndroid Build Coastguard Worker // [Queue][google.cloud.tasks.v2.Queue] field can be used as a filter and 329*d5c09012SAndroid Build Coastguard Worker // several operators as supported. For example: `<=, <, >=, >, !=, =, :`. The 330*d5c09012SAndroid Build Coastguard Worker // filter syntax is the same as described in [Stackdriver's Advanced Logs 331*d5c09012SAndroid Build Coastguard Worker // Filters](https://cloud.google.com/logging/docs/view/advanced_filters). 332*d5c09012SAndroid Build Coastguard Worker // 333*d5c09012SAndroid Build Coastguard Worker // Sample filter "state: PAUSED". 334*d5c09012SAndroid Build Coastguard Worker // 335*d5c09012SAndroid Build Coastguard Worker // Note that using filters might cause fewer queues than the 336*d5c09012SAndroid Build Coastguard Worker // requested page_size to be returned. 337*d5c09012SAndroid Build Coastguard Worker string filter = 2; 338*d5c09012SAndroid Build Coastguard Worker 339*d5c09012SAndroid Build Coastguard Worker // Requested page size. 340*d5c09012SAndroid Build Coastguard Worker // 341*d5c09012SAndroid Build Coastguard Worker // The maximum page size is 9800. If unspecified, the page size will 342*d5c09012SAndroid Build Coastguard Worker // be the maximum. Fewer queues than requested might be returned, 343*d5c09012SAndroid Build Coastguard Worker // even if more queues exist; use the 344*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2.ListQueuesResponse.next_page_token] 345*d5c09012SAndroid Build Coastguard Worker // in the response to determine if more queues exist. 346*d5c09012SAndroid Build Coastguard Worker int32 page_size = 3; 347*d5c09012SAndroid Build Coastguard Worker 348*d5c09012SAndroid Build Coastguard Worker // A token identifying the page of results to return. 349*d5c09012SAndroid Build Coastguard Worker // 350*d5c09012SAndroid Build Coastguard Worker // To request the first page results, page_token must be empty. To 351*d5c09012SAndroid Build Coastguard Worker // request the next page of results, page_token must be the value of 352*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2.ListQueuesResponse.next_page_token] 353*d5c09012SAndroid Build Coastguard Worker // returned from the previous call to 354*d5c09012SAndroid Build Coastguard Worker // [ListQueues][google.cloud.tasks.v2.CloudTasks.ListQueues] method. It is an 355*d5c09012SAndroid Build Coastguard Worker // error to switch the value of the 356*d5c09012SAndroid Build Coastguard Worker // [filter][google.cloud.tasks.v2.ListQueuesRequest.filter] while iterating 357*d5c09012SAndroid Build Coastguard Worker // through pages. 358*d5c09012SAndroid Build Coastguard Worker string page_token = 4; 359*d5c09012SAndroid Build Coastguard Worker} 360*d5c09012SAndroid Build Coastguard Worker 361*d5c09012SAndroid Build Coastguard Worker// Response message for 362*d5c09012SAndroid Build Coastguard Worker// [ListQueues][google.cloud.tasks.v2.CloudTasks.ListQueues]. 363*d5c09012SAndroid Build Coastguard Workermessage ListQueuesResponse { 364*d5c09012SAndroid Build Coastguard Worker // The list of queues. 365*d5c09012SAndroid Build Coastguard Worker repeated Queue queues = 1; 366*d5c09012SAndroid Build Coastguard Worker 367*d5c09012SAndroid Build Coastguard Worker // A token to retrieve next page of results. 368*d5c09012SAndroid Build Coastguard Worker // 369*d5c09012SAndroid Build Coastguard Worker // To return the next page of results, call 370*d5c09012SAndroid Build Coastguard Worker // [ListQueues][google.cloud.tasks.v2.CloudTasks.ListQueues] with this value 371*d5c09012SAndroid Build Coastguard Worker // as the [page_token][google.cloud.tasks.v2.ListQueuesRequest.page_token]. 372*d5c09012SAndroid Build Coastguard Worker // 373*d5c09012SAndroid Build Coastguard Worker // If the next_page_token is empty, there are no more results. 374*d5c09012SAndroid Build Coastguard Worker // 375*d5c09012SAndroid Build Coastguard Worker // The page token is valid for only 2 hours. 376*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 377*d5c09012SAndroid Build Coastguard Worker} 378*d5c09012SAndroid Build Coastguard Worker 379*d5c09012SAndroid Build Coastguard Worker// Request message for [GetQueue][google.cloud.tasks.v2.CloudTasks.GetQueue]. 380*d5c09012SAndroid Build Coastguard Workermessage GetQueueRequest { 381*d5c09012SAndroid Build Coastguard Worker // Required. The resource name of the queue. For example: 382*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 383*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 384*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 385*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 386*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 387*d5c09012SAndroid Build Coastguard Worker } 388*d5c09012SAndroid Build Coastguard Worker ]; 389*d5c09012SAndroid Build Coastguard Worker} 390*d5c09012SAndroid Build Coastguard Worker 391*d5c09012SAndroid Build Coastguard Worker// Request message for 392*d5c09012SAndroid Build Coastguard Worker// [CreateQueue][google.cloud.tasks.v2.CloudTasks.CreateQueue]. 393*d5c09012SAndroid Build Coastguard Workermessage CreateQueueRequest { 394*d5c09012SAndroid Build Coastguard Worker // Required. The location name in which the queue will be created. 395*d5c09012SAndroid Build Coastguard Worker // For example: `projects/PROJECT_ID/locations/LOCATION_ID` 396*d5c09012SAndroid Build Coastguard Worker // 397*d5c09012SAndroid Build Coastguard Worker // The list of allowed locations can be obtained by calling Cloud 398*d5c09012SAndroid Build Coastguard Worker // Tasks' implementation of 399*d5c09012SAndroid Build Coastguard Worker // [ListLocations][google.cloud.location.Locations.ListLocations]. 400*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 401*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 402*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 403*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Queue" 404*d5c09012SAndroid Build Coastguard Worker } 405*d5c09012SAndroid Build Coastguard Worker ]; 406*d5c09012SAndroid Build Coastguard Worker 407*d5c09012SAndroid Build Coastguard Worker // Required. The queue to create. 408*d5c09012SAndroid Build Coastguard Worker // 409*d5c09012SAndroid Build Coastguard Worker // [Queue's name][google.cloud.tasks.v2.Queue.name] cannot be the same as an 410*d5c09012SAndroid Build Coastguard Worker // existing queue. 411*d5c09012SAndroid Build Coastguard Worker Queue queue = 2 [(google.api.field_behavior) = REQUIRED]; 412*d5c09012SAndroid Build Coastguard Worker} 413*d5c09012SAndroid Build Coastguard Worker 414*d5c09012SAndroid Build Coastguard Worker// Request message for 415*d5c09012SAndroid Build Coastguard Worker// [UpdateQueue][google.cloud.tasks.v2.CloudTasks.UpdateQueue]. 416*d5c09012SAndroid Build Coastguard Workermessage UpdateQueueRequest { 417*d5c09012SAndroid Build Coastguard Worker // Required. The queue to create or update. 418*d5c09012SAndroid Build Coastguard Worker // 419*d5c09012SAndroid Build Coastguard Worker // The queue's [name][google.cloud.tasks.v2.Queue.name] must be specified. 420*d5c09012SAndroid Build Coastguard Worker // 421*d5c09012SAndroid Build Coastguard Worker // Output only fields cannot be modified using UpdateQueue. 422*d5c09012SAndroid Build Coastguard Worker // Any value specified for an output only field will be ignored. 423*d5c09012SAndroid Build Coastguard Worker // The queue's [name][google.cloud.tasks.v2.Queue.name] cannot be changed. 424*d5c09012SAndroid Build Coastguard Worker Queue queue = 1 [(google.api.field_behavior) = REQUIRED]; 425*d5c09012SAndroid Build Coastguard Worker 426*d5c09012SAndroid Build Coastguard Worker // A mask used to specify which fields of the queue are being updated. 427*d5c09012SAndroid Build Coastguard Worker // 428*d5c09012SAndroid Build Coastguard Worker // If empty, then all fields will be updated. 429*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2; 430*d5c09012SAndroid Build Coastguard Worker} 431*d5c09012SAndroid Build Coastguard Worker 432*d5c09012SAndroid Build Coastguard Worker// Request message for 433*d5c09012SAndroid Build Coastguard Worker// [DeleteQueue][google.cloud.tasks.v2.CloudTasks.DeleteQueue]. 434*d5c09012SAndroid Build Coastguard Workermessage DeleteQueueRequest { 435*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 436*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 437*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 438*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 439*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 440*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 441*d5c09012SAndroid Build Coastguard Worker } 442*d5c09012SAndroid Build Coastguard Worker ]; 443*d5c09012SAndroid Build Coastguard Worker} 444*d5c09012SAndroid Build Coastguard Worker 445*d5c09012SAndroid Build Coastguard Worker// Request message for 446*d5c09012SAndroid Build Coastguard Worker// [PurgeQueue][google.cloud.tasks.v2.CloudTasks.PurgeQueue]. 447*d5c09012SAndroid Build Coastguard Workermessage PurgeQueueRequest { 448*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 449*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID` 450*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 451*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 452*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 453*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 454*d5c09012SAndroid Build Coastguard Worker } 455*d5c09012SAndroid Build Coastguard Worker ]; 456*d5c09012SAndroid Build Coastguard Worker} 457*d5c09012SAndroid Build Coastguard Worker 458*d5c09012SAndroid Build Coastguard Worker// Request message for 459*d5c09012SAndroid Build Coastguard Worker// [PauseQueue][google.cloud.tasks.v2.CloudTasks.PauseQueue]. 460*d5c09012SAndroid Build Coastguard Workermessage PauseQueueRequest { 461*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 462*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID` 463*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 464*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 465*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 466*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 467*d5c09012SAndroid Build Coastguard Worker } 468*d5c09012SAndroid Build Coastguard Worker ]; 469*d5c09012SAndroid Build Coastguard Worker} 470*d5c09012SAndroid Build Coastguard Worker 471*d5c09012SAndroid Build Coastguard Worker// Request message for 472*d5c09012SAndroid Build Coastguard Worker// [ResumeQueue][google.cloud.tasks.v2.CloudTasks.ResumeQueue]. 473*d5c09012SAndroid Build Coastguard Workermessage ResumeQueueRequest { 474*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 475*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID` 476*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 477*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 478*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 479*d5c09012SAndroid Build Coastguard Worker type: "cloudtasks.googleapis.com/Queue" 480*d5c09012SAndroid Build Coastguard Worker } 481*d5c09012SAndroid Build Coastguard Worker ]; 482*d5c09012SAndroid Build Coastguard Worker} 483*d5c09012SAndroid Build Coastguard Worker 484*d5c09012SAndroid Build Coastguard Worker// Request message for listing tasks using 485*d5c09012SAndroid Build Coastguard Worker// [ListTasks][google.cloud.tasks.v2.CloudTasks.ListTasks]. 486*d5c09012SAndroid Build Coastguard Workermessage ListTasksRequest { 487*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 488*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 489*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 490*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 491*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 492*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Task" 493*d5c09012SAndroid Build Coastguard Worker } 494*d5c09012SAndroid Build Coastguard Worker ]; 495*d5c09012SAndroid Build Coastguard Worker 496*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 497*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2.Task] will be returned. 498*d5c09012SAndroid Build Coastguard Worker // 499*d5c09012SAndroid Build Coastguard Worker // By default response_view is [BASIC][google.cloud.tasks.v2.Task.View.BASIC]; 500*d5c09012SAndroid Build Coastguard Worker // not all information is retrieved by default because some data, such as 501*d5c09012SAndroid Build Coastguard Worker // payloads, might be desirable to return only when needed because 502*d5c09012SAndroid Build Coastguard Worker // of its large size or because of the sensitivity of data that it 503*d5c09012SAndroid Build Coastguard Worker // contains. 504*d5c09012SAndroid Build Coastguard Worker // 505*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2.Task.View.FULL] requires 506*d5c09012SAndroid Build Coastguard Worker // `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/) 507*d5c09012SAndroid Build Coastguard Worker // permission on the [Task][google.cloud.tasks.v2.Task] resource. 508*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 2; 509*d5c09012SAndroid Build Coastguard Worker 510*d5c09012SAndroid Build Coastguard Worker // Maximum page size. 511*d5c09012SAndroid Build Coastguard Worker // 512*d5c09012SAndroid Build Coastguard Worker // Fewer tasks than requested might be returned, even if more tasks exist; use 513*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2.ListTasksResponse.next_page_token] 514*d5c09012SAndroid Build Coastguard Worker // in the response to determine if more tasks exist. 515*d5c09012SAndroid Build Coastguard Worker // 516*d5c09012SAndroid Build Coastguard Worker // The maximum page size is 1000. If unspecified, the page size will be the 517*d5c09012SAndroid Build Coastguard Worker // maximum. 518*d5c09012SAndroid Build Coastguard Worker int32 page_size = 3; 519*d5c09012SAndroid Build Coastguard Worker 520*d5c09012SAndroid Build Coastguard Worker // A token identifying the page of results to return. 521*d5c09012SAndroid Build Coastguard Worker // 522*d5c09012SAndroid Build Coastguard Worker // To request the first page results, page_token must be empty. To 523*d5c09012SAndroid Build Coastguard Worker // request the next page of results, page_token must be the value of 524*d5c09012SAndroid Build Coastguard Worker // [next_page_token][google.cloud.tasks.v2.ListTasksResponse.next_page_token] 525*d5c09012SAndroid Build Coastguard Worker // returned from the previous call to 526*d5c09012SAndroid Build Coastguard Worker // [ListTasks][google.cloud.tasks.v2.CloudTasks.ListTasks] method. 527*d5c09012SAndroid Build Coastguard Worker // 528*d5c09012SAndroid Build Coastguard Worker // The page token is valid for only 2 hours. 529*d5c09012SAndroid Build Coastguard Worker string page_token = 4; 530*d5c09012SAndroid Build Coastguard Worker} 531*d5c09012SAndroid Build Coastguard Worker 532*d5c09012SAndroid Build Coastguard Worker// Response message for listing tasks using 533*d5c09012SAndroid Build Coastguard Worker// [ListTasks][google.cloud.tasks.v2.CloudTasks.ListTasks]. 534*d5c09012SAndroid Build Coastguard Workermessage ListTasksResponse { 535*d5c09012SAndroid Build Coastguard Worker // The list of tasks. 536*d5c09012SAndroid Build Coastguard Worker repeated Task tasks = 1; 537*d5c09012SAndroid Build Coastguard Worker 538*d5c09012SAndroid Build Coastguard Worker // A token to retrieve next page of results. 539*d5c09012SAndroid Build Coastguard Worker // 540*d5c09012SAndroid Build Coastguard Worker // To return the next page of results, call 541*d5c09012SAndroid Build Coastguard Worker // [ListTasks][google.cloud.tasks.v2.CloudTasks.ListTasks] with this value as 542*d5c09012SAndroid Build Coastguard Worker // the [page_token][google.cloud.tasks.v2.ListTasksRequest.page_token]. 543*d5c09012SAndroid Build Coastguard Worker // 544*d5c09012SAndroid Build Coastguard Worker // If the next_page_token is empty, there are no more results. 545*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 546*d5c09012SAndroid Build Coastguard Worker} 547*d5c09012SAndroid Build Coastguard Worker 548*d5c09012SAndroid Build Coastguard Worker// Request message for getting a task using 549*d5c09012SAndroid Build Coastguard Worker// [GetTask][google.cloud.tasks.v2.CloudTasks.GetTask]. 550*d5c09012SAndroid Build Coastguard Workermessage GetTaskRequest { 551*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 552*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 553*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 554*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 555*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 556*d5c09012SAndroid Build Coastguard Worker ]; 557*d5c09012SAndroid Build Coastguard Worker 558*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 559*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2.Task] will be returned. 560*d5c09012SAndroid Build Coastguard Worker // 561*d5c09012SAndroid Build Coastguard Worker // By default response_view is [BASIC][google.cloud.tasks.v2.Task.View.BASIC]; 562*d5c09012SAndroid Build Coastguard Worker // not all information is retrieved by default because some data, such as 563*d5c09012SAndroid Build Coastguard Worker // payloads, might be desirable to return only when needed because 564*d5c09012SAndroid Build Coastguard Worker // of its large size or because of the sensitivity of data that it 565*d5c09012SAndroid Build Coastguard Worker // contains. 566*d5c09012SAndroid Build Coastguard Worker // 567*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2.Task.View.FULL] requires 568*d5c09012SAndroid Build Coastguard Worker // `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/) 569*d5c09012SAndroid Build Coastguard Worker // permission on the [Task][google.cloud.tasks.v2.Task] resource. 570*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 2; 571*d5c09012SAndroid Build Coastguard Worker} 572*d5c09012SAndroid Build Coastguard Worker 573*d5c09012SAndroid Build Coastguard Worker// Request message for 574*d5c09012SAndroid Build Coastguard Worker// [CreateTask][google.cloud.tasks.v2.CloudTasks.CreateTask]. 575*d5c09012SAndroid Build Coastguard Workermessage CreateTaskRequest { 576*d5c09012SAndroid Build Coastguard Worker // Required. The queue name. For example: 577*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID` 578*d5c09012SAndroid Build Coastguard Worker // 579*d5c09012SAndroid Build Coastguard Worker // The queue must already exist. 580*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 581*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 582*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 583*d5c09012SAndroid Build Coastguard Worker child_type: "cloudtasks.googleapis.com/Task" 584*d5c09012SAndroid Build Coastguard Worker } 585*d5c09012SAndroid Build Coastguard Worker ]; 586*d5c09012SAndroid Build Coastguard Worker 587*d5c09012SAndroid Build Coastguard Worker // Required. The task to add. 588*d5c09012SAndroid Build Coastguard Worker // 589*d5c09012SAndroid Build Coastguard Worker // Task names have the following format: 590*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`. 591*d5c09012SAndroid Build Coastguard Worker // The user can optionally specify a task 592*d5c09012SAndroid Build Coastguard Worker // [name][google.cloud.tasks.v2.Task.name]. If a name is not specified then 593*d5c09012SAndroid Build Coastguard Worker // the system will generate a random unique task id, which will be set in the 594*d5c09012SAndroid Build Coastguard Worker // task returned in the [response][google.cloud.tasks.v2.Task.name]. 595*d5c09012SAndroid Build Coastguard Worker // 596*d5c09012SAndroid Build Coastguard Worker // If [schedule_time][google.cloud.tasks.v2.Task.schedule_time] is not set or 597*d5c09012SAndroid Build Coastguard Worker // is in the past then Cloud Tasks will set it to the current time. 598*d5c09012SAndroid Build Coastguard Worker // 599*d5c09012SAndroid Build Coastguard Worker // Task De-duplication: 600*d5c09012SAndroid Build Coastguard Worker // 601*d5c09012SAndroid Build Coastguard Worker // Explicitly specifying a task ID enables task de-duplication. If 602*d5c09012SAndroid Build Coastguard Worker // a task's ID is identical to that of an existing task or a task 603*d5c09012SAndroid Build Coastguard Worker // that was deleted or executed recently then the call will fail 604*d5c09012SAndroid Build Coastguard Worker // with [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS]. 605*d5c09012SAndroid Build Coastguard Worker // If the task's queue was created using Cloud Tasks, then another task with 606*d5c09012SAndroid Build Coastguard Worker // the same name can't be created for ~1hour after the original task was 607*d5c09012SAndroid Build Coastguard Worker // deleted or executed. If the task's queue was created using queue.yaml or 608*d5c09012SAndroid Build Coastguard Worker // queue.xml, then another task with the same name can't be created 609*d5c09012SAndroid Build Coastguard Worker // for ~9days after the original task was deleted or executed. 610*d5c09012SAndroid Build Coastguard Worker // 611*d5c09012SAndroid Build Coastguard Worker // Because there is an extra lookup cost to identify duplicate task 612*d5c09012SAndroid Build Coastguard Worker // names, these [CreateTask][google.cloud.tasks.v2.CloudTasks.CreateTask] 613*d5c09012SAndroid Build Coastguard Worker // calls have significantly increased latency. Using hashed strings for the 614*d5c09012SAndroid Build Coastguard Worker // task id or for the prefix of the task id is recommended. Choosing task ids 615*d5c09012SAndroid Build Coastguard Worker // that are sequential or have sequential prefixes, for example using a 616*d5c09012SAndroid Build Coastguard Worker // timestamp, causes an increase in latency and error rates in all 617*d5c09012SAndroid Build Coastguard Worker // task commands. The infrastructure relies on an approximately 618*d5c09012SAndroid Build Coastguard Worker // uniform distribution of task ids to store and serve tasks 619*d5c09012SAndroid Build Coastguard Worker // efficiently. 620*d5c09012SAndroid Build Coastguard Worker Task task = 2 [(google.api.field_behavior) = REQUIRED]; 621*d5c09012SAndroid Build Coastguard Worker 622*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 623*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2.Task] will be returned. 624*d5c09012SAndroid Build Coastguard Worker // 625*d5c09012SAndroid Build Coastguard Worker // By default response_view is [BASIC][google.cloud.tasks.v2.Task.View.BASIC]; 626*d5c09012SAndroid Build Coastguard Worker // not all information is retrieved by default because some data, such as 627*d5c09012SAndroid Build Coastguard Worker // payloads, might be desirable to return only when needed because 628*d5c09012SAndroid Build Coastguard Worker // of its large size or because of the sensitivity of data that it 629*d5c09012SAndroid Build Coastguard Worker // contains. 630*d5c09012SAndroid Build Coastguard Worker // 631*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2.Task.View.FULL] requires 632*d5c09012SAndroid Build Coastguard Worker // `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/) 633*d5c09012SAndroid Build Coastguard Worker // permission on the [Task][google.cloud.tasks.v2.Task] resource. 634*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 3; 635*d5c09012SAndroid Build Coastguard Worker} 636*d5c09012SAndroid Build Coastguard Worker 637*d5c09012SAndroid Build Coastguard Worker// Request message for deleting a task using 638*d5c09012SAndroid Build Coastguard Worker// [DeleteTask][google.cloud.tasks.v2.CloudTasks.DeleteTask]. 639*d5c09012SAndroid Build Coastguard Workermessage DeleteTaskRequest { 640*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 641*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 642*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 643*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 644*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 645*d5c09012SAndroid Build Coastguard Worker ]; 646*d5c09012SAndroid Build Coastguard Worker} 647*d5c09012SAndroid Build Coastguard Worker 648*d5c09012SAndroid Build Coastguard Worker// Request message for forcing a task to run now using 649*d5c09012SAndroid Build Coastguard Worker// [RunTask][google.cloud.tasks.v2.CloudTasks.RunTask]. 650*d5c09012SAndroid Build Coastguard Workermessage RunTaskRequest { 651*d5c09012SAndroid Build Coastguard Worker // Required. The task name. For example: 652*d5c09012SAndroid Build Coastguard Worker // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID` 653*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 654*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 655*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" } 656*d5c09012SAndroid Build Coastguard Worker ]; 657*d5c09012SAndroid Build Coastguard Worker 658*d5c09012SAndroid Build Coastguard Worker // The response_view specifies which subset of the 659*d5c09012SAndroid Build Coastguard Worker // [Task][google.cloud.tasks.v2.Task] will be returned. 660*d5c09012SAndroid Build Coastguard Worker // 661*d5c09012SAndroid Build Coastguard Worker // By default response_view is [BASIC][google.cloud.tasks.v2.Task.View.BASIC]; 662*d5c09012SAndroid Build Coastguard Worker // not all information is retrieved by default because some data, such as 663*d5c09012SAndroid Build Coastguard Worker // payloads, might be desirable to return only when needed because 664*d5c09012SAndroid Build Coastguard Worker // of its large size or because of the sensitivity of data that it 665*d5c09012SAndroid Build Coastguard Worker // contains. 666*d5c09012SAndroid Build Coastguard Worker // 667*d5c09012SAndroid Build Coastguard Worker // Authorization for [FULL][google.cloud.tasks.v2.Task.View.FULL] requires 668*d5c09012SAndroid Build Coastguard Worker // `cloudtasks.tasks.fullView` [Google IAM](https://cloud.google.com/iam/) 669*d5c09012SAndroid Build Coastguard Worker // permission on the [Task][google.cloud.tasks.v2.Task] resource. 670*d5c09012SAndroid Build Coastguard Worker Task.View response_view = 2; 671*d5c09012SAndroid Build Coastguard Worker} 672