xref: /aosp_15_r20/external/googleapis/google/cloud/tasks/v2beta3/cloudtasks.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.tasks.v2beta3;
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/v2beta3/queue.proto";
24*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/tasks/v2beta3/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/apiv2beta3/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.v2beta3";
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: "/v2beta3/{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: "/v2beta3/{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: "/v2beta3/{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: "/v2beta3/{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: "/v2beta3/{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: "/v2beta3/{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.v2beta3.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.v2beta3.Queue.state] is
145*d5c09012SAndroid Build Coastguard Worker  // [PAUSED][google.cloud.tasks.v2beta3.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: "/v2beta3/{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.v2beta3.Queue.State.PAUSED] or
158*d5c09012SAndroid Build Coastguard Worker  // [DISABLED][google.cloud.tasks.v2beta3.Queue.State.DISABLED]. The state of a
159*d5c09012SAndroid Build Coastguard Worker  // queue is stored in the queue's
160*d5c09012SAndroid Build Coastguard Worker  // [state][google.cloud.tasks.v2beta3.Queue.state]; after calling this method
161*d5c09012SAndroid Build Coastguard Worker  // it will be set to
162*d5c09012SAndroid Build Coastguard Worker  // [RUNNING][google.cloud.tasks.v2beta3.Queue.State.RUNNING].
163*d5c09012SAndroid Build Coastguard Worker  //
164*d5c09012SAndroid Build Coastguard Worker  // WARNING: Resuming many high-QPS queues at the same time can
165*d5c09012SAndroid Build Coastguard Worker  // lead to target overloading. If you are resuming high-QPS
166*d5c09012SAndroid Build Coastguard Worker  // queues, follow the 500/50/5 pattern described in
167*d5c09012SAndroid Build Coastguard Worker  // [Managing Cloud Tasks Scaling
168*d5c09012SAndroid Build Coastguard Worker  // Risks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling).
169*d5c09012SAndroid Build Coastguard Worker  rpc ResumeQueue(ResumeQueueRequest) returns (Queue) {
170*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
171*d5c09012SAndroid Build Coastguard Worker      post: "/v2beta3/{name=projects/*/locations/*/queues/*}:resume"
172*d5c09012SAndroid Build Coastguard Worker      body: "*"
173*d5c09012SAndroid Build Coastguard Worker    };
174*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
175*d5c09012SAndroid Build Coastguard Worker  }
176*d5c09012SAndroid Build Coastguard Worker
177*d5c09012SAndroid Build Coastguard Worker  // Gets the access control policy for a
178*d5c09012SAndroid Build Coastguard Worker  // [Queue][google.cloud.tasks.v2beta3.Queue]. Returns an empty policy if the
179*d5c09012SAndroid Build Coastguard Worker  // resource exists and does not have a policy set.
180*d5c09012SAndroid Build Coastguard Worker  //
181*d5c09012SAndroid Build Coastguard Worker  // Authorization requires the following
182*d5c09012SAndroid Build Coastguard Worker  // [Google IAM](https://cloud.google.com/iam) permission on the specified
183*d5c09012SAndroid Build Coastguard Worker  // resource parent:
184*d5c09012SAndroid Build Coastguard Worker  //
185*d5c09012SAndroid Build Coastguard Worker  // * `cloudtasks.queues.getIamPolicy`
186*d5c09012SAndroid Build Coastguard Worker  rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest)
187*d5c09012SAndroid Build Coastguard Worker      returns (google.iam.v1.Policy) {
188*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
189*d5c09012SAndroid Build Coastguard Worker      post: "/v2beta3/{resource=projects/*/locations/*/queues/*}:getIamPolicy"
190*d5c09012SAndroid Build Coastguard Worker      body: "*"
191*d5c09012SAndroid Build Coastguard Worker    };
192*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "resource";
193*d5c09012SAndroid Build Coastguard Worker  }
194*d5c09012SAndroid Build Coastguard Worker
195*d5c09012SAndroid Build Coastguard Worker  // Sets the access control policy for a
196*d5c09012SAndroid Build Coastguard Worker  // [Queue][google.cloud.tasks.v2beta3.Queue]. Replaces any existing policy.
197*d5c09012SAndroid Build Coastguard Worker  //
198*d5c09012SAndroid Build Coastguard Worker  // Note: The Cloud Console does not check queue-level IAM permissions yet.
199*d5c09012SAndroid Build Coastguard Worker  // Project-level permissions are required to use the Cloud Console.
200*d5c09012SAndroid Build Coastguard Worker  //
201*d5c09012SAndroid Build Coastguard Worker  // Authorization requires the following
202*d5c09012SAndroid Build Coastguard Worker  // [Google IAM](https://cloud.google.com/iam) permission on the specified
203*d5c09012SAndroid Build Coastguard Worker  // resource parent:
204*d5c09012SAndroid Build Coastguard Worker  //
205*d5c09012SAndroid Build Coastguard Worker  // * `cloudtasks.queues.setIamPolicy`
206*d5c09012SAndroid Build Coastguard Worker  rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest)
207*d5c09012SAndroid Build Coastguard Worker      returns (google.iam.v1.Policy) {
208*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
209*d5c09012SAndroid Build Coastguard Worker      post: "/v2beta3/{resource=projects/*/locations/*/queues/*}:setIamPolicy"
210*d5c09012SAndroid Build Coastguard Worker      body: "*"
211*d5c09012SAndroid Build Coastguard Worker    };
212*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "resource,policy";
213*d5c09012SAndroid Build Coastguard Worker  }
214*d5c09012SAndroid Build Coastguard Worker
215*d5c09012SAndroid Build Coastguard Worker  // Returns permissions that a caller has on a
216*d5c09012SAndroid Build Coastguard Worker  // [Queue][google.cloud.tasks.v2beta3.Queue]. If the resource does not exist,
217*d5c09012SAndroid Build Coastguard Worker  // this will return an empty set of permissions, not a
218*d5c09012SAndroid Build Coastguard Worker  // [NOT_FOUND][google.rpc.Code.NOT_FOUND] error.
219*d5c09012SAndroid Build Coastguard Worker  //
220*d5c09012SAndroid Build Coastguard Worker  // Note: This operation is designed to be used for building permission-aware
221*d5c09012SAndroid Build Coastguard Worker  // UIs and command-line tools, not for authorization checking. This operation
222*d5c09012SAndroid Build Coastguard Worker  // may "fail open" without warning.
223*d5c09012SAndroid Build Coastguard Worker  rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest)
224*d5c09012SAndroid Build Coastguard Worker      returns (google.iam.v1.TestIamPermissionsResponse) {
225*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
226*d5c09012SAndroid Build Coastguard Worker      post: "/v2beta3/{resource=projects/*/locations/*/queues/*}:testIamPermissions"
227*d5c09012SAndroid Build Coastguard Worker      body: "*"
228*d5c09012SAndroid Build Coastguard Worker    };
229*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "resource,permissions";
230*d5c09012SAndroid Build Coastguard Worker  }
231*d5c09012SAndroid Build Coastguard Worker
232*d5c09012SAndroid Build Coastguard Worker  // Lists the tasks in a queue.
233*d5c09012SAndroid Build Coastguard Worker  //
234*d5c09012SAndroid Build Coastguard Worker  // By default, only the [BASIC][google.cloud.tasks.v2beta3.Task.View.BASIC]
235*d5c09012SAndroid Build Coastguard Worker  // view is retrieved due to performance considerations;
236*d5c09012SAndroid Build Coastguard Worker  // [response_view][google.cloud.tasks.v2beta3.ListTasksRequest.response_view]
237*d5c09012SAndroid Build Coastguard Worker  // controls the subset of information which is returned.
238*d5c09012SAndroid Build Coastguard Worker  //
239*d5c09012SAndroid Build Coastguard Worker  // The tasks may be returned in any order. The ordering may change at any
240*d5c09012SAndroid Build Coastguard Worker  // time.
241*d5c09012SAndroid Build Coastguard Worker  rpc ListTasks(ListTasksRequest) returns (ListTasksResponse) {
242*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
243*d5c09012SAndroid Build Coastguard Worker      get: "/v2beta3/{parent=projects/*/locations/*/queues/*}/tasks"
244*d5c09012SAndroid Build Coastguard Worker    };
245*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
246*d5c09012SAndroid Build Coastguard Worker  }
247*d5c09012SAndroid Build Coastguard Worker
248*d5c09012SAndroid Build Coastguard Worker  // Gets a task.
249*d5c09012SAndroid Build Coastguard Worker  rpc GetTask(GetTaskRequest) returns (Task) {
250*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
251*d5c09012SAndroid Build Coastguard Worker      get: "/v2beta3/{name=projects/*/locations/*/queues/*/tasks/*}"
252*d5c09012SAndroid Build Coastguard Worker    };
253*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
254*d5c09012SAndroid Build Coastguard Worker  }
255*d5c09012SAndroid Build Coastguard Worker
256*d5c09012SAndroid Build Coastguard Worker  // Creates a task and adds it to a queue.
257*d5c09012SAndroid Build Coastguard Worker  //
258*d5c09012SAndroid Build Coastguard Worker  // Tasks cannot be updated after creation; there is no UpdateTask command.
259*d5c09012SAndroid Build Coastguard Worker  //
260*d5c09012SAndroid Build Coastguard Worker  // * The maximum task size is 100KB.
261*d5c09012SAndroid Build Coastguard Worker  rpc CreateTask(CreateTaskRequest) returns (Task) {
262*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
263*d5c09012SAndroid Build Coastguard Worker      post: "/v2beta3/{parent=projects/*/locations/*/queues/*}/tasks"
264*d5c09012SAndroid Build Coastguard Worker      body: "*"
265*d5c09012SAndroid Build Coastguard Worker    };
266*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,task";
267*d5c09012SAndroid Build Coastguard Worker  }
268*d5c09012SAndroid Build Coastguard Worker
269*d5c09012SAndroid Build Coastguard Worker  // Deletes a task.
270*d5c09012SAndroid Build Coastguard Worker  //
271*d5c09012SAndroid Build Coastguard Worker  // A task can be deleted if it is scheduled or dispatched. A task
272*d5c09012SAndroid Build Coastguard Worker  // cannot be deleted if it has executed successfully or permanently
273*d5c09012SAndroid Build Coastguard Worker  // failed.
274*d5c09012SAndroid Build Coastguard Worker  rpc DeleteTask(DeleteTaskRequest) returns (google.protobuf.Empty) {
275*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
276*d5c09012SAndroid Build Coastguard Worker      delete: "/v2beta3/{name=projects/*/locations/*/queues/*/tasks/*}"
277*d5c09012SAndroid Build Coastguard Worker    };
278*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
279*d5c09012SAndroid Build Coastguard Worker  }
280*d5c09012SAndroid Build Coastguard Worker
281*d5c09012SAndroid Build Coastguard Worker  // Forces a task to run now.
282*d5c09012SAndroid Build Coastguard Worker  //
283*d5c09012SAndroid Build Coastguard Worker  // When this method is called, Cloud Tasks will dispatch the task, even if
284*d5c09012SAndroid Build Coastguard Worker  // the task is already running, the queue has reached its
285*d5c09012SAndroid Build Coastguard Worker  // [RateLimits][google.cloud.tasks.v2beta3.RateLimits] or is
286*d5c09012SAndroid Build Coastguard Worker  // [PAUSED][google.cloud.tasks.v2beta3.Queue.State.PAUSED].
287*d5c09012SAndroid Build Coastguard Worker  //
288*d5c09012SAndroid Build Coastguard Worker  // This command is meant to be used for manual debugging. For
289*d5c09012SAndroid Build Coastguard Worker  // example, [RunTask][google.cloud.tasks.v2beta3.CloudTasks.RunTask] can be
290*d5c09012SAndroid Build Coastguard Worker  // used to retry a failed task after a fix has been made or to manually force
291*d5c09012SAndroid Build Coastguard Worker  // a task to be dispatched now.
292*d5c09012SAndroid Build Coastguard Worker  //
293*d5c09012SAndroid Build Coastguard Worker  // The dispatched task is returned. That is, the task that is returned
294*d5c09012SAndroid Build Coastguard Worker  // contains the [status][Task.status] after the task is dispatched but
295*d5c09012SAndroid Build Coastguard Worker  // before the task is received by its target.
296*d5c09012SAndroid Build Coastguard Worker  //
297*d5c09012SAndroid Build Coastguard Worker  // If Cloud Tasks receives a successful response from the task's
298*d5c09012SAndroid Build Coastguard Worker  // target, then the task will be deleted; otherwise the task's
299*d5c09012SAndroid Build Coastguard Worker  // [schedule_time][google.cloud.tasks.v2beta3.Task.schedule_time] will be
300*d5c09012SAndroid Build Coastguard Worker  // reset to the time that
301*d5c09012SAndroid Build Coastguard Worker  // [RunTask][google.cloud.tasks.v2beta3.CloudTasks.RunTask] was called plus
302*d5c09012SAndroid Build Coastguard Worker  // the retry delay specified in the queue's
303*d5c09012SAndroid Build Coastguard Worker  // [RetryConfig][google.cloud.tasks.v2beta3.RetryConfig].
304*d5c09012SAndroid Build Coastguard Worker  //
305*d5c09012SAndroid Build Coastguard Worker  // [RunTask][google.cloud.tasks.v2beta3.CloudTasks.RunTask] returns
306*d5c09012SAndroid Build Coastguard Worker  // [NOT_FOUND][google.rpc.Code.NOT_FOUND] when it is called on a
307*d5c09012SAndroid Build Coastguard Worker  // task that has already succeeded or permanently failed.
308*d5c09012SAndroid Build Coastguard Worker  rpc RunTask(RunTaskRequest) returns (Task) {
309*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
310*d5c09012SAndroid Build Coastguard Worker      post: "/v2beta3/{name=projects/*/locations/*/queues/*/tasks/*}:run"
311*d5c09012SAndroid Build Coastguard Worker      body: "*"
312*d5c09012SAndroid Build Coastguard Worker    };
313*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
314*d5c09012SAndroid Build Coastguard Worker  }
315*d5c09012SAndroid Build Coastguard Worker}
316*d5c09012SAndroid Build Coastguard Worker
317*d5c09012SAndroid Build Coastguard Worker// Request message for
318*d5c09012SAndroid Build Coastguard Worker// [ListQueues][google.cloud.tasks.v2beta3.CloudTasks.ListQueues].
319*d5c09012SAndroid Build Coastguard Workermessage ListQueuesRequest {
320*d5c09012SAndroid Build Coastguard Worker  // Required. The location name.
321*d5c09012SAndroid Build Coastguard Worker  // For example: `projects/PROJECT_ID/locations/LOCATION_ID`
322*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
323*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
324*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
325*d5c09012SAndroid Build Coastguard Worker      child_type: "cloudtasks.googleapis.com/Queue"
326*d5c09012SAndroid Build Coastguard Worker    }
327*d5c09012SAndroid Build Coastguard Worker  ];
328*d5c09012SAndroid Build Coastguard Worker
329*d5c09012SAndroid Build Coastguard Worker  // `filter` can be used to specify a subset of queues. Any
330*d5c09012SAndroid Build Coastguard Worker  // [Queue][google.cloud.tasks.v2beta3.Queue] field can be used as a filter and
331*d5c09012SAndroid Build Coastguard Worker  // several operators as supported. For example: `<=, <, >=, >, !=, =, :`. The
332*d5c09012SAndroid Build Coastguard Worker  // filter syntax is the same as described in [Stackdriver's Advanced Logs
333*d5c09012SAndroid Build Coastguard Worker  // Filters](https://cloud.google.com/logging/docs/view/advanced_filters).
334*d5c09012SAndroid Build Coastguard Worker  //
335*d5c09012SAndroid Build Coastguard Worker  // Sample filter "state: PAUSED".
336*d5c09012SAndroid Build Coastguard Worker  //
337*d5c09012SAndroid Build Coastguard Worker  // Note that using filters might cause fewer queues than the
338*d5c09012SAndroid Build Coastguard Worker  // requested page_size to be returned.
339*d5c09012SAndroid Build Coastguard Worker  string filter = 2;
340*d5c09012SAndroid Build Coastguard Worker
341*d5c09012SAndroid Build Coastguard Worker  // Requested page size.
342*d5c09012SAndroid Build Coastguard Worker  //
343*d5c09012SAndroid Build Coastguard Worker  // The maximum page size is 9800. If unspecified, the page size will
344*d5c09012SAndroid Build Coastguard Worker  // be the maximum. Fewer queues than requested might be returned,
345*d5c09012SAndroid Build Coastguard Worker  // even if more queues exist; use the
346*d5c09012SAndroid Build Coastguard Worker  // [next_page_token][google.cloud.tasks.v2beta3.ListQueuesResponse.next_page_token]
347*d5c09012SAndroid Build Coastguard Worker  // in the response to determine if more queues exist.
348*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 3;
349*d5c09012SAndroid Build Coastguard Worker
350*d5c09012SAndroid Build Coastguard Worker  // A token identifying the page of results to return.
351*d5c09012SAndroid Build Coastguard Worker  //
352*d5c09012SAndroid Build Coastguard Worker  // To request the first page results, page_token must be empty. To
353*d5c09012SAndroid Build Coastguard Worker  // request the next page of results, page_token must be the value of
354*d5c09012SAndroid Build Coastguard Worker  // [next_page_token][google.cloud.tasks.v2beta3.ListQueuesResponse.next_page_token]
355*d5c09012SAndroid Build Coastguard Worker  // returned from the previous call to
356*d5c09012SAndroid Build Coastguard Worker  // [ListQueues][google.cloud.tasks.v2beta3.CloudTasks.ListQueues] method. It
357*d5c09012SAndroid Build Coastguard Worker  // is an error to switch the value of the
358*d5c09012SAndroid Build Coastguard Worker  // [filter][google.cloud.tasks.v2beta3.ListQueuesRequest.filter] while
359*d5c09012SAndroid Build Coastguard Worker  // iterating through pages.
360*d5c09012SAndroid Build Coastguard Worker  string page_token = 4;
361*d5c09012SAndroid Build Coastguard Worker
362*d5c09012SAndroid Build Coastguard Worker  // Optional. Read mask is used for a more granular control over what the API
363*d5c09012SAndroid Build Coastguard Worker  // returns. If the mask is not present all fields will be returned except
364*d5c09012SAndroid Build Coastguard Worker  // [Queue.stats]. [Queue.stats] will be returned only if it was  explicitly
365*d5c09012SAndroid Build Coastguard Worker  // specified in the mask.
366*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask read_mask = 5
367*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
368*d5c09012SAndroid Build Coastguard Worker}
369*d5c09012SAndroid Build Coastguard Worker
370*d5c09012SAndroid Build Coastguard Worker// Response message for
371*d5c09012SAndroid Build Coastguard Worker// [ListQueues][google.cloud.tasks.v2beta3.CloudTasks.ListQueues].
372*d5c09012SAndroid Build Coastguard Workermessage ListQueuesResponse {
373*d5c09012SAndroid Build Coastguard Worker  // The list of queues.
374*d5c09012SAndroid Build Coastguard Worker  repeated Queue queues = 1;
375*d5c09012SAndroid Build Coastguard Worker
376*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve next page of results.
377*d5c09012SAndroid Build Coastguard Worker  //
378*d5c09012SAndroid Build Coastguard Worker  // To return the next page of results, call
379*d5c09012SAndroid Build Coastguard Worker  // [ListQueues][google.cloud.tasks.v2beta3.CloudTasks.ListQueues] with this
380*d5c09012SAndroid Build Coastguard Worker  // value as the
381*d5c09012SAndroid Build Coastguard Worker  // [page_token][google.cloud.tasks.v2beta3.ListQueuesRequest.page_token].
382*d5c09012SAndroid Build Coastguard Worker  //
383*d5c09012SAndroid Build Coastguard Worker  // If the next_page_token is empty, there are no more results.
384*d5c09012SAndroid Build Coastguard Worker  //
385*d5c09012SAndroid Build Coastguard Worker  // The page token is valid for only 2 hours.
386*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
387*d5c09012SAndroid Build Coastguard Worker}
388*d5c09012SAndroid Build Coastguard Worker
389*d5c09012SAndroid Build Coastguard Worker// Request message for
390*d5c09012SAndroid Build Coastguard Worker// [GetQueue][google.cloud.tasks.v2beta3.CloudTasks.GetQueue].
391*d5c09012SAndroid Build Coastguard Workermessage GetQueueRequest {
392*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the queue. For example:
393*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
394*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
395*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
396*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
397*d5c09012SAndroid Build Coastguard Worker      type: "cloudtasks.googleapis.com/Queue"
398*d5c09012SAndroid Build Coastguard Worker    }
399*d5c09012SAndroid Build Coastguard Worker  ];
400*d5c09012SAndroid Build Coastguard Worker
401*d5c09012SAndroid Build Coastguard Worker  // Optional. Read mask is used for a more granular control over what the API
402*d5c09012SAndroid Build Coastguard Worker  // returns. If the mask is not present all fields will be returned except
403*d5c09012SAndroid Build Coastguard Worker  // [Queue.stats]. [Queue.stats] will be returned only if it was  explicitly
404*d5c09012SAndroid Build Coastguard Worker  // specified in the mask.
405*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask read_mask = 2
406*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OPTIONAL];
407*d5c09012SAndroid Build Coastguard Worker}
408*d5c09012SAndroid Build Coastguard Worker
409*d5c09012SAndroid Build Coastguard Worker// Request message for
410*d5c09012SAndroid Build Coastguard Worker// [CreateQueue][google.cloud.tasks.v2beta3.CloudTasks.CreateQueue].
411*d5c09012SAndroid Build Coastguard Workermessage CreateQueueRequest {
412*d5c09012SAndroid Build Coastguard Worker  // Required. The location name in which the queue will be created.
413*d5c09012SAndroid Build Coastguard Worker  // For example: `projects/PROJECT_ID/locations/LOCATION_ID`
414*d5c09012SAndroid Build Coastguard Worker  //
415*d5c09012SAndroid Build Coastguard Worker  // The list of allowed locations can be obtained by calling Cloud
416*d5c09012SAndroid Build Coastguard Worker  // Tasks' implementation of
417*d5c09012SAndroid Build Coastguard Worker  // [ListLocations][google.cloud.location.Locations.ListLocations].
418*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
419*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
420*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
421*d5c09012SAndroid Build Coastguard Worker      child_type: "cloudtasks.googleapis.com/Queue"
422*d5c09012SAndroid Build Coastguard Worker    }
423*d5c09012SAndroid Build Coastguard Worker  ];
424*d5c09012SAndroid Build Coastguard Worker
425*d5c09012SAndroid Build Coastguard Worker  // Required. The queue to create.
426*d5c09012SAndroid Build Coastguard Worker  //
427*d5c09012SAndroid Build Coastguard Worker  // [Queue's name][google.cloud.tasks.v2beta3.Queue.name] cannot be the same as
428*d5c09012SAndroid Build Coastguard Worker  // an existing queue.
429*d5c09012SAndroid Build Coastguard Worker  Queue queue = 2 [(google.api.field_behavior) = REQUIRED];
430*d5c09012SAndroid Build Coastguard Worker}
431*d5c09012SAndroid Build Coastguard Worker
432*d5c09012SAndroid Build Coastguard Worker// Request message for
433*d5c09012SAndroid Build Coastguard Worker// [UpdateQueue][google.cloud.tasks.v2beta3.CloudTasks.UpdateQueue].
434*d5c09012SAndroid Build Coastguard Workermessage UpdateQueueRequest {
435*d5c09012SAndroid Build Coastguard Worker  // Required. The queue to create or update.
436*d5c09012SAndroid Build Coastguard Worker  //
437*d5c09012SAndroid Build Coastguard Worker  // The queue's [name][google.cloud.tasks.v2beta3.Queue.name] must be
438*d5c09012SAndroid Build Coastguard Worker  // specified.
439*d5c09012SAndroid Build Coastguard Worker  //
440*d5c09012SAndroid Build Coastguard Worker  // Output only fields cannot be modified using UpdateQueue.
441*d5c09012SAndroid Build Coastguard Worker  // Any value specified for an output only field will be ignored.
442*d5c09012SAndroid Build Coastguard Worker  // The queue's [name][google.cloud.tasks.v2beta3.Queue.name] cannot be
443*d5c09012SAndroid Build Coastguard Worker  // changed.
444*d5c09012SAndroid Build Coastguard Worker  Queue queue = 1 [(google.api.field_behavior) = REQUIRED];
445*d5c09012SAndroid Build Coastguard Worker
446*d5c09012SAndroid Build Coastguard Worker  // A mask used to specify which fields of the queue are being updated.
447*d5c09012SAndroid Build Coastguard Worker  //
448*d5c09012SAndroid Build Coastguard Worker  // If empty, then all fields will be updated.
449*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 2;
450*d5c09012SAndroid Build Coastguard Worker}
451*d5c09012SAndroid Build Coastguard Worker
452*d5c09012SAndroid Build Coastguard Worker// Request message for
453*d5c09012SAndroid Build Coastguard Worker// [DeleteQueue][google.cloud.tasks.v2beta3.CloudTasks.DeleteQueue].
454*d5c09012SAndroid Build Coastguard Workermessage DeleteQueueRequest {
455*d5c09012SAndroid Build Coastguard Worker  // Required. The queue name. For example:
456*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
457*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
458*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
459*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
460*d5c09012SAndroid Build Coastguard Worker      type: "cloudtasks.googleapis.com/Queue"
461*d5c09012SAndroid Build Coastguard Worker    }
462*d5c09012SAndroid Build Coastguard Worker  ];
463*d5c09012SAndroid Build Coastguard Worker}
464*d5c09012SAndroid Build Coastguard Worker
465*d5c09012SAndroid Build Coastguard Worker// Request message for
466*d5c09012SAndroid Build Coastguard Worker// [PurgeQueue][google.cloud.tasks.v2beta3.CloudTasks.PurgeQueue].
467*d5c09012SAndroid Build Coastguard Workermessage PurgeQueueRequest {
468*d5c09012SAndroid Build Coastguard Worker  // Required. The queue name. For example:
469*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`
470*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
471*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
472*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
473*d5c09012SAndroid Build Coastguard Worker      type: "cloudtasks.googleapis.com/Queue"
474*d5c09012SAndroid Build Coastguard Worker    }
475*d5c09012SAndroid Build Coastguard Worker  ];
476*d5c09012SAndroid Build Coastguard Worker}
477*d5c09012SAndroid Build Coastguard Worker
478*d5c09012SAndroid Build Coastguard Worker// Request message for
479*d5c09012SAndroid Build Coastguard Worker// [PauseQueue][google.cloud.tasks.v2beta3.CloudTasks.PauseQueue].
480*d5c09012SAndroid Build Coastguard Workermessage PauseQueueRequest {
481*d5c09012SAndroid Build Coastguard Worker  // Required. The queue name. For example:
482*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/location/LOCATION_ID/queues/QUEUE_ID`
483*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
484*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
485*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
486*d5c09012SAndroid Build Coastguard Worker      type: "cloudtasks.googleapis.com/Queue"
487*d5c09012SAndroid Build Coastguard Worker    }
488*d5c09012SAndroid Build Coastguard Worker  ];
489*d5c09012SAndroid Build Coastguard Worker}
490*d5c09012SAndroid Build Coastguard Worker
491*d5c09012SAndroid Build Coastguard Worker// Request message for
492*d5c09012SAndroid Build Coastguard Worker// [ResumeQueue][google.cloud.tasks.v2beta3.CloudTasks.ResumeQueue].
493*d5c09012SAndroid Build Coastguard Workermessage ResumeQueueRequest {
494*d5c09012SAndroid Build Coastguard Worker  // Required. The queue name. For example:
495*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/location/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
504*d5c09012SAndroid Build Coastguard Worker// Request message for listing tasks using
505*d5c09012SAndroid Build Coastguard Worker// [ListTasks][google.cloud.tasks.v2beta3.CloudTasks.ListTasks].
506*d5c09012SAndroid Build Coastguard Workermessage ListTasksRequest {
507*d5c09012SAndroid Build Coastguard Worker  // Required. The queue name. For example:
508*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
509*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
510*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
511*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
512*d5c09012SAndroid Build Coastguard Worker      child_type: "cloudtasks.googleapis.com/Task"
513*d5c09012SAndroid Build Coastguard Worker    }
514*d5c09012SAndroid Build Coastguard Worker  ];
515*d5c09012SAndroid Build Coastguard Worker
516*d5c09012SAndroid Build Coastguard Worker  // The response_view specifies which subset of the
517*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] will be returned.
518*d5c09012SAndroid Build Coastguard Worker  //
519*d5c09012SAndroid Build Coastguard Worker  // By default response_view is
520*d5c09012SAndroid Build Coastguard Worker  // [BASIC][google.cloud.tasks.v2beta3.Task.View.BASIC]; not all information is
521*d5c09012SAndroid Build Coastguard Worker  // retrieved by default because some data, such as payloads, might be
522*d5c09012SAndroid Build Coastguard Worker  // desirable to return only when needed because of its large size or because
523*d5c09012SAndroid Build Coastguard Worker  // of the sensitivity of data that it contains.
524*d5c09012SAndroid Build Coastguard Worker  //
525*d5c09012SAndroid Build Coastguard Worker  // Authorization for [FULL][google.cloud.tasks.v2beta3.Task.View.FULL]
526*d5c09012SAndroid Build Coastguard Worker  // requires `cloudtasks.tasks.fullView` [Google
527*d5c09012SAndroid Build Coastguard Worker  // IAM](https://cloud.google.com/iam/) permission on the
528*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] resource.
529*d5c09012SAndroid Build Coastguard Worker  Task.View response_view = 2;
530*d5c09012SAndroid Build Coastguard Worker
531*d5c09012SAndroid Build Coastguard Worker  // Maximum page size.
532*d5c09012SAndroid Build Coastguard Worker  //
533*d5c09012SAndroid Build Coastguard Worker  // Fewer tasks than requested might be returned, even if more tasks exist; use
534*d5c09012SAndroid Build Coastguard Worker  // [next_page_token][google.cloud.tasks.v2beta3.ListTasksResponse.next_page_token]
535*d5c09012SAndroid Build Coastguard Worker  // in the response to determine if more tasks exist.
536*d5c09012SAndroid Build Coastguard Worker  //
537*d5c09012SAndroid Build Coastguard Worker  // The maximum page size is 1000. If unspecified, the page size will be the
538*d5c09012SAndroid Build Coastguard Worker  // maximum.
539*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 3;
540*d5c09012SAndroid Build Coastguard Worker
541*d5c09012SAndroid Build Coastguard Worker  // A token identifying the page of results to return.
542*d5c09012SAndroid Build Coastguard Worker  //
543*d5c09012SAndroid Build Coastguard Worker  // To request the first page results, page_token must be empty. To
544*d5c09012SAndroid Build Coastguard Worker  // request the next page of results, page_token must be the value of
545*d5c09012SAndroid Build Coastguard Worker  // [next_page_token][google.cloud.tasks.v2beta3.ListTasksResponse.next_page_token]
546*d5c09012SAndroid Build Coastguard Worker  // returned from the previous call to
547*d5c09012SAndroid Build Coastguard Worker  // [ListTasks][google.cloud.tasks.v2beta3.CloudTasks.ListTasks] method.
548*d5c09012SAndroid Build Coastguard Worker  //
549*d5c09012SAndroid Build Coastguard Worker  // The page token is valid for only 2 hours.
550*d5c09012SAndroid Build Coastguard Worker  string page_token = 4;
551*d5c09012SAndroid Build Coastguard Worker}
552*d5c09012SAndroid Build Coastguard Worker
553*d5c09012SAndroid Build Coastguard Worker// Response message for listing tasks using
554*d5c09012SAndroid Build Coastguard Worker// [ListTasks][google.cloud.tasks.v2beta3.CloudTasks.ListTasks].
555*d5c09012SAndroid Build Coastguard Workermessage ListTasksResponse {
556*d5c09012SAndroid Build Coastguard Worker  // The list of tasks.
557*d5c09012SAndroid Build Coastguard Worker  repeated Task tasks = 1;
558*d5c09012SAndroid Build Coastguard Worker
559*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve next page of results.
560*d5c09012SAndroid Build Coastguard Worker  //
561*d5c09012SAndroid Build Coastguard Worker  // To return the next page of results, call
562*d5c09012SAndroid Build Coastguard Worker  // [ListTasks][google.cloud.tasks.v2beta3.CloudTasks.ListTasks] with this
563*d5c09012SAndroid Build Coastguard Worker  // value as the
564*d5c09012SAndroid Build Coastguard Worker  // [page_token][google.cloud.tasks.v2beta3.ListTasksRequest.page_token].
565*d5c09012SAndroid Build Coastguard Worker  //
566*d5c09012SAndroid Build Coastguard Worker  // If the next_page_token is empty, there are no more results.
567*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
568*d5c09012SAndroid Build Coastguard Worker}
569*d5c09012SAndroid Build Coastguard Worker
570*d5c09012SAndroid Build Coastguard Worker// Request message for getting a task using
571*d5c09012SAndroid Build Coastguard Worker// [GetTask][google.cloud.tasks.v2beta3.CloudTasks.GetTask].
572*d5c09012SAndroid Build Coastguard Workermessage GetTaskRequest {
573*d5c09012SAndroid Build Coastguard Worker  // Required. The task name. For example:
574*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`
575*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
576*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
577*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" }
578*d5c09012SAndroid Build Coastguard Worker  ];
579*d5c09012SAndroid Build Coastguard Worker
580*d5c09012SAndroid Build Coastguard Worker  // The response_view specifies which subset of the
581*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] will be returned.
582*d5c09012SAndroid Build Coastguard Worker  //
583*d5c09012SAndroid Build Coastguard Worker  // By default response_view is
584*d5c09012SAndroid Build Coastguard Worker  // [BASIC][google.cloud.tasks.v2beta3.Task.View.BASIC]; not all information is
585*d5c09012SAndroid Build Coastguard Worker  // retrieved by default because some data, such as payloads, might be
586*d5c09012SAndroid Build Coastguard Worker  // desirable to return only when needed because of its large size or because
587*d5c09012SAndroid Build Coastguard Worker  // of the sensitivity of data that it contains.
588*d5c09012SAndroid Build Coastguard Worker  //
589*d5c09012SAndroid Build Coastguard Worker  // Authorization for [FULL][google.cloud.tasks.v2beta3.Task.View.FULL]
590*d5c09012SAndroid Build Coastguard Worker  // requires `cloudtasks.tasks.fullView` [Google
591*d5c09012SAndroid Build Coastguard Worker  // IAM](https://cloud.google.com/iam/) permission on the
592*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] resource.
593*d5c09012SAndroid Build Coastguard Worker  Task.View response_view = 2;
594*d5c09012SAndroid Build Coastguard Worker}
595*d5c09012SAndroid Build Coastguard Worker
596*d5c09012SAndroid Build Coastguard Worker// Request message for
597*d5c09012SAndroid Build Coastguard Worker// [CreateTask][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
598*d5c09012SAndroid Build Coastguard Workermessage CreateTaskRequest {
599*d5c09012SAndroid Build Coastguard Worker  // Required. The queue name. For example:
600*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
601*d5c09012SAndroid Build Coastguard Worker  //
602*d5c09012SAndroid Build Coastguard Worker  // The queue must already exist.
603*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
604*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
605*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
606*d5c09012SAndroid Build Coastguard Worker      child_type: "cloudtasks.googleapis.com/Task"
607*d5c09012SAndroid Build Coastguard Worker    }
608*d5c09012SAndroid Build Coastguard Worker  ];
609*d5c09012SAndroid Build Coastguard Worker
610*d5c09012SAndroid Build Coastguard Worker  // Required. The task to add.
611*d5c09012SAndroid Build Coastguard Worker  //
612*d5c09012SAndroid Build Coastguard Worker  // Task names have the following format:
613*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`.
614*d5c09012SAndroid Build Coastguard Worker  // The user can optionally specify a task
615*d5c09012SAndroid Build Coastguard Worker  // [name][google.cloud.tasks.v2beta3.Task.name]. If a name is not specified
616*d5c09012SAndroid Build Coastguard Worker  // then the system will generate a random unique task id, which will be set in
617*d5c09012SAndroid Build Coastguard Worker  // the task returned in the [response][google.cloud.tasks.v2beta3.Task.name].
618*d5c09012SAndroid Build Coastguard Worker  //
619*d5c09012SAndroid Build Coastguard Worker  // If [schedule_time][google.cloud.tasks.v2beta3.Task.schedule_time] is not
620*d5c09012SAndroid Build Coastguard Worker  // set or is in the past then Cloud Tasks will set it to the current time.
621*d5c09012SAndroid Build Coastguard Worker  //
622*d5c09012SAndroid Build Coastguard Worker  // Task De-duplication:
623*d5c09012SAndroid Build Coastguard Worker  //
624*d5c09012SAndroid Build Coastguard Worker  // Explicitly specifying a task ID enables task de-duplication.  If
625*d5c09012SAndroid Build Coastguard Worker  // a task's ID is identical to that of an existing task or a task
626*d5c09012SAndroid Build Coastguard Worker  // that was deleted or executed recently then the call will fail
627*d5c09012SAndroid Build Coastguard Worker  // with [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS].
628*d5c09012SAndroid Build Coastguard Worker  // If the task's queue was created using Cloud Tasks, then another task with
629*d5c09012SAndroid Build Coastguard Worker  // the same name can't be created for ~1 hour after the original task was
630*d5c09012SAndroid Build Coastguard Worker  // deleted or executed. If the task's queue was created using queue.yaml or
631*d5c09012SAndroid Build Coastguard Worker  // queue.xml, then another task with the same name can't be created
632*d5c09012SAndroid Build Coastguard Worker  // for ~9 days after the original task was deleted or executed.
633*d5c09012SAndroid Build Coastguard Worker  //
634*d5c09012SAndroid Build Coastguard Worker  // Because there is an extra lookup cost to identify duplicate task
635*d5c09012SAndroid Build Coastguard Worker  // names, these [CreateTask][google.cloud.tasks.v2beta3.CloudTasks.CreateTask]
636*d5c09012SAndroid Build Coastguard Worker  // calls have significantly increased latency. Using hashed strings for the
637*d5c09012SAndroid Build Coastguard Worker  // task id or for the prefix of the task id is recommended. Choosing task ids
638*d5c09012SAndroid Build Coastguard Worker  // that are sequential or have sequential prefixes, for example using a
639*d5c09012SAndroid Build Coastguard Worker  // timestamp, causes an increase in latency and error rates in all
640*d5c09012SAndroid Build Coastguard Worker  // task commands. The infrastructure relies on an approximately
641*d5c09012SAndroid Build Coastguard Worker  // uniform distribution of task ids to store and serve tasks
642*d5c09012SAndroid Build Coastguard Worker  // efficiently.
643*d5c09012SAndroid Build Coastguard Worker  Task task = 2 [(google.api.field_behavior) = REQUIRED];
644*d5c09012SAndroid Build Coastguard Worker
645*d5c09012SAndroid Build Coastguard Worker  // The response_view specifies which subset of the
646*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] will be returned.
647*d5c09012SAndroid Build Coastguard Worker  //
648*d5c09012SAndroid Build Coastguard Worker  // By default response_view is
649*d5c09012SAndroid Build Coastguard Worker  // [BASIC][google.cloud.tasks.v2beta3.Task.View.BASIC]; not all information is
650*d5c09012SAndroid Build Coastguard Worker  // retrieved by default because some data, such as payloads, might be
651*d5c09012SAndroid Build Coastguard Worker  // desirable to return only when needed because of its large size or because
652*d5c09012SAndroid Build Coastguard Worker  // of the sensitivity of data that it contains.
653*d5c09012SAndroid Build Coastguard Worker  //
654*d5c09012SAndroid Build Coastguard Worker  // Authorization for [FULL][google.cloud.tasks.v2beta3.Task.View.FULL]
655*d5c09012SAndroid Build Coastguard Worker  // requires `cloudtasks.tasks.fullView` [Google
656*d5c09012SAndroid Build Coastguard Worker  // IAM](https://cloud.google.com/iam/) permission on the
657*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] resource.
658*d5c09012SAndroid Build Coastguard Worker  Task.View response_view = 3;
659*d5c09012SAndroid Build Coastguard Worker}
660*d5c09012SAndroid Build Coastguard Worker
661*d5c09012SAndroid Build Coastguard Worker// Request message for deleting a task using
662*d5c09012SAndroid Build Coastguard Worker// [DeleteTask][google.cloud.tasks.v2beta3.CloudTasks.DeleteTask].
663*d5c09012SAndroid Build Coastguard Workermessage DeleteTaskRequest {
664*d5c09012SAndroid Build Coastguard Worker  // Required. The task name. For example:
665*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`
666*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
667*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
668*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" }
669*d5c09012SAndroid Build Coastguard Worker  ];
670*d5c09012SAndroid Build Coastguard Worker}
671*d5c09012SAndroid Build Coastguard Worker
672*d5c09012SAndroid Build Coastguard Worker// Request message for forcing a task to run now using
673*d5c09012SAndroid Build Coastguard Worker// [RunTask][google.cloud.tasks.v2beta3.CloudTasks.RunTask].
674*d5c09012SAndroid Build Coastguard Workermessage RunTaskRequest {
675*d5c09012SAndroid Build Coastguard Worker  // Required. The task name. For example:
676*d5c09012SAndroid Build Coastguard Worker  // `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`
677*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
678*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
679*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = { type: "cloudtasks.googleapis.com/Task" }
680*d5c09012SAndroid Build Coastguard Worker  ];
681*d5c09012SAndroid Build Coastguard Worker
682*d5c09012SAndroid Build Coastguard Worker  // The response_view specifies which subset of the
683*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] will be returned.
684*d5c09012SAndroid Build Coastguard Worker  //
685*d5c09012SAndroid Build Coastguard Worker  // By default response_view is
686*d5c09012SAndroid Build Coastguard Worker  // [BASIC][google.cloud.tasks.v2beta3.Task.View.BASIC]; not all information is
687*d5c09012SAndroid Build Coastguard Worker  // retrieved by default because some data, such as payloads, might be
688*d5c09012SAndroid Build Coastguard Worker  // desirable to return only when needed because of its large size or because
689*d5c09012SAndroid Build Coastguard Worker  // of the sensitivity of data that it contains.
690*d5c09012SAndroid Build Coastguard Worker  //
691*d5c09012SAndroid Build Coastguard Worker  // Authorization for [FULL][google.cloud.tasks.v2beta3.Task.View.FULL]
692*d5c09012SAndroid Build Coastguard Worker  // requires `cloudtasks.tasks.fullView` [Google
693*d5c09012SAndroid Build Coastguard Worker  // IAM](https://cloud.google.com/iam/) permission on the
694*d5c09012SAndroid Build Coastguard Worker  // [Task][google.cloud.tasks.v2beta3.Task] resource.
695*d5c09012SAndroid Build Coastguard Worker  Task.View response_view = 2;
696*d5c09012SAndroid Build Coastguard Worker}
697