google-api-client 0.13.6 → 0.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +56 -0
  3. data/generated/google/apis/adsense_v1_4.rb +1 -1
  4. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  5. data/generated/google/apis/androiddeviceprovisioning_v1.rb +3 -3
  6. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +3 -3
  7. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  8. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  9. data/generated/google/apis/androidmanagement_v1/classes.rb +8 -0
  10. data/generated/google/apis/androidmanagement_v1/representations.rb +1 -0
  11. data/generated/google/apis/androidpublisher_v1.rb +1 -1
  12. data/generated/google/apis/androidpublisher_v1_1.rb +1 -1
  13. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  14. data/generated/google/apis/androidpublisher_v2/classes.rb +1 -0
  15. data/generated/google/apis/androidpublisher_v2/service.rb +1 -1
  16. data/generated/google/apis/appstate_v1.rb +1 -1
  17. data/generated/google/apis/bigquery_v2.rb +1 -1
  18. data/generated/google/apis/bigquery_v2/classes.rb +6 -0
  19. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  20. data/generated/google/apis/bigquerydatatransfer_v1.rb +2 -2
  21. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +19 -69
  22. data/generated/google/apis/bigquerydatatransfer_v1/representations.rb +3 -41
  23. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +17 -149
  24. data/generated/google/apis/calendar_v3.rb +1 -1
  25. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  26. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  27. data/generated/google/apis/cloudfunctions_v1/classes.rb +7 -0
  28. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  29. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  30. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +30 -0
  31. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +4 -0
  32. data/generated/google/apis/{toolresults_v1beta3firstparty.rb → cloudtasks_v2beta2.rb} +13 -9
  33. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +1709 -0
  34. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +585 -0
  35. data/generated/google/apis/cloudtasks_v2beta2/service.rb +1016 -0
  36. data/generated/google/apis/cloudtrace_v2.rb +1 -4
  37. data/generated/google/apis/cloudtrace_v2/classes.rb +0 -78
  38. data/generated/google/apis/cloudtrace_v2/representations.rb +0 -43
  39. data/generated/google/apis/cloudtrace_v2/service.rb +0 -101
  40. data/generated/google/apis/compute_alpha.rb +1 -1
  41. data/generated/google/apis/compute_alpha/classes.rb +833 -120
  42. data/generated/google/apis/compute_alpha/representations.rb +263 -26
  43. data/generated/google/apis/compute_alpha/service.rb +795 -107
  44. data/generated/google/apis/compute_beta.rb +1 -1
  45. data/generated/google/apis/compute_beta/classes.rb +5329 -524
  46. data/generated/google/apis/compute_beta/representations.rb +2241 -36
  47. data/generated/google/apis/compute_beta/service.rb +5 -5
  48. data/generated/google/apis/compute_v1.rb +1 -1
  49. data/generated/google/apis/compute_v1/classes.rb +4 -5
  50. data/generated/google/apis/container_v1.rb +1 -1
  51. data/generated/google/apis/container_v1/classes.rb +12 -0
  52. data/generated/google/apis/container_v1/representations.rb +1 -0
  53. data/generated/google/apis/container_v1beta1.rb +1 -1
  54. data/generated/google/apis/container_v1beta1/classes.rb +54 -0
  55. data/generated/google/apis/container_v1beta1/representations.rb +18 -0
  56. data/generated/google/apis/content_v2.rb +1 -1
  57. data/generated/google/apis/content_v2sandbox.rb +1 -1
  58. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  59. data/generated/google/apis/dataflow_v1b3/classes.rb +6 -39
  60. data/generated/google/apis/dataflow_v1b3/representations.rb +1 -16
  61. data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
  62. data/generated/google/apis/deploymentmanager_alpha/classes.rb +71 -3
  63. data/generated/google/apis/deploymentmanager_alpha/representations.rb +32 -0
  64. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  65. data/generated/google/apis/deploymentmanager_v2/service.rb +1 -1
  66. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  67. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +39 -3
  68. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +16 -0
  69. data/generated/google/apis/dlp_v2beta1.rb +1 -1
  70. data/generated/google/apis/dlp_v2beta1/classes.rb +1605 -49
  71. data/generated/google/apis/dlp_v2beta1/representations.rb +832 -30
  72. data/generated/google/apis/dlp_v2beta1/service.rb +62 -0
  73. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  74. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  75. data/generated/google/apis/games_management_v1management.rb +1 -1
  76. data/generated/google/apis/games_v1.rb +1 -1
  77. data/generated/google/apis/gmail_v1.rb +1 -1
  78. data/generated/google/apis/gmail_v1/classes.rb +0 -36
  79. data/generated/google/apis/gmail_v1/representations.rb +0 -16
  80. data/generated/google/apis/language_v1.rb +1 -1
  81. data/generated/google/apis/language_v1/classes.rb +74 -0
  82. data/generated/google/apis/language_v1/representations.rb +35 -0
  83. data/generated/google/apis/language_v1/service.rb +31 -0
  84. data/generated/google/apis/language_v1beta1.rb +1 -1
  85. data/generated/google/apis/language_v1beta2.rb +1 -1
  86. data/generated/google/apis/ml_v1.rb +1 -1
  87. data/generated/google/apis/ml_v1/classes.rb +3 -0
  88. data/generated/google/apis/people_v1.rb +1 -1
  89. data/generated/google/apis/people_v1/classes.rb +8 -0
  90. data/generated/google/apis/people_v1/representations.rb +1 -0
  91. data/generated/google/apis/plus_domains_v1/service.rb +1 -1
  92. data/generated/google/apis/plus_v1/service.rb +1 -1
  93. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  94. data/generated/google/apis/servicecontrol_v1/classes.rb +35 -6
  95. data/generated/google/apis/servicecontrol_v1/representations.rb +16 -1
  96. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  97. data/generated/google/apis/servicemanagement_v1/classes.rb +1 -1
  98. data/generated/google/apis/serviceuser_v1.rb +1 -1
  99. data/generated/google/apis/serviceuser_v1/classes.rb +1 -1
  100. data/generated/google/apis/sourcerepo_v1.rb +4 -1
  101. data/generated/google/apis/sourcerepo_v1/classes.rb +45 -204
  102. data/generated/google/apis/sourcerepo_v1/representations.rb +10 -90
  103. data/generated/google/apis/storage_v1beta1.rb +1 -1
  104. data/generated/google/apis/storage_v1beta1/service.rb +1 -1
  105. data/generated/google/apis/storage_v1beta2.rb +1 -1
  106. data/generated/google/apis/storage_v1beta2/service.rb +1 -1
  107. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  108. data/generated/google/apis/streetviewpublish_v1/classes.rb +5 -3
  109. data/generated/google/apis/streetviewpublish_v1/service.rb +6 -4
  110. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  111. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  112. data/generated/google/apis/youtube_analytics_v1beta1.rb +1 -1
  113. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  114. data/generated/google/apis/youtube_v3.rb +1 -1
  115. data/generated/google/apis/youtube_v3/classes.rb +22 -85
  116. data/generated/google/apis/youtube_v3/representations.rb +3 -46
  117. data/generated/google/apis/youtube_v3/service.rb +11 -1
  118. data/lib/google/apis/version.rb +1 -1
  119. metadata +6 -6
  120. data/generated/google/apis/toolresults_v1beta3firstparty/classes.rb +0 -2630
  121. data/generated/google/apis/toolresults_v1beta3firstparty/representations.rb +0 -886
  122. data/generated/google/apis/toolresults_v1beta3firstparty/service.rb +0 -1336
@@ -12,20 +12,24 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
- require 'google/apis/toolresults_v1beta3firstparty/service.rb'
16
- require 'google/apis/toolresults_v1beta3firstparty/classes.rb'
17
- require 'google/apis/toolresults_v1beta3firstparty/representations.rb'
15
+ require 'google/apis/cloudtasks_v2beta2/service.rb'
16
+ require 'google/apis/cloudtasks_v2beta2/classes.rb'
17
+ require 'google/apis/cloudtasks_v2beta2/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # Cloud Tool Results firstparty API
21
+ # Cloud Tasks API
22
22
  #
23
- # Reads and publishes results from Firebase Test Lab.
23
+ # Manages the execution of large numbers of distributed requests. Cloud Tasks is
24
+ # in Alpha.
24
25
  #
25
- # @see https://firebase.google.com/docs/test-lab/
26
- module ToolresultsV1beta3firstparty
27
- VERSION = 'V1beta3firstparty'
28
- REVISION = '20170906'
26
+ # @see https://cloud.google.com/cloud-tasks/
27
+ module CloudtasksV2beta2
28
+ VERSION = 'V2beta2'
29
+ REVISION = '20170915'
30
+
31
+ # View and manage your data across Google Cloud Platform services
32
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
29
33
  end
30
34
  end
31
35
  end
@@ -0,0 +1,1709 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module CloudtasksV2beta2
24
+
25
+ # Request message for acknowledging a task using
26
+ # CloudTasks.AcknowledgeTask.
27
+ class AcknowledgeTaskRequest
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # Required.
31
+ # The task's current schedule time, available in the Task.schedule_time
32
+ # returned in PullTasksResponse.tasks or
33
+ # CloudTasks.RenewLease. This restriction is to check that
34
+ # the caller is acknowledging the correct task.
35
+ # Corresponds to the JSON property `scheduleTime`
36
+ # @return [String]
37
+ attr_accessor :schedule_time
38
+
39
+ def initialize(**args)
40
+ update!(**args)
41
+ end
42
+
43
+ # Update properties of this object
44
+ def update!(**args)
45
+ @schedule_time = args[:schedule_time] if args.key?(:schedule_time)
46
+ end
47
+ end
48
+
49
+ # App Engine HTTP request.
50
+ # The message defines the HTTP request that is sent to an App Engine app when
51
+ # the task is dispatched.
52
+ # This proto can only be used for tasks in a queue which has
53
+ # Queue.app_engine_http_target set.
54
+ # Using this type of target requires
55
+ # [`appengine.applications.get`](/appengine/docs/admin-api/access-control)
56
+ # Google IAM permission for the project
57
+ # and the following scope:
58
+ # `https://www.googleapis.com/auth/cloud-platform`
59
+ # The task will be delivered to the App Engine app which belongs to the same
60
+ # project as the queue. For more information, see
61
+ # [How Requests are Routed](/appengine/docs/standard/python/how-requests-are-
62
+ # routed)
63
+ # and how routing is affected by
64
+ # [dispatch files](/appengine/docs/python/config/dispatchref).
65
+ # The AppEngineRouting used to construct the URL that the task is
66
+ # delivered to can be set at the queue-level or task-level:
67
+ # * If set, AppEngineHttpTarget.app_engine_routing_override is used for
68
+ # all tasks in the queue, no matter what the setting is for the
69
+ # task-level app_engine_routing.
70
+ # The `url` that the task will be sent to is:
71
+ # * `url =` AppEngineRouting.host `+` AppEngineHttpRequest.relative_url
72
+ # The task will be sent to a task handler by an HTTP
73
+ # request using the specified AppEngineHttpRequest.http_method (for example
74
+ # POST, HTTP GET, etc). The task attempt has succeeded if the task handler
75
+ # returns an HTTP response code in the range [200 - 299]. Error 503 is
76
+ # considered an App Engine system error instead of an application error.
77
+ # Requests returning error 503 will be retried regardless of retry
78
+ # configuration and not counted against retry counts.
79
+ # Any other response code or a failure to receive a response before the
80
+ # deadline is a failed attempt.
81
+ class AppEngineHttpRequest
82
+ include Google::Apis::Core::Hashable
83
+
84
+ # App Engine Routing.
85
+ # For more information about services, versions, and instances see
86
+ # [An Overview of App Engine](/appengine/docs/python/an-overview-of-app-engine),
87
+ # [Microservices Architecture on Google App Engine](/appengine/docs/python/
88
+ # microservices-on-app-engine),
89
+ # [App Engine Standard request routing](/appengine/docs/standard/python/how-
90
+ # requests-are-routed),
91
+ # and [App Engine Flex request routing](/appengine/docs/flexible/python/how-
92
+ # requests-are-routed).
93
+ # Corresponds to the JSON property `appEngineRouting`
94
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineRouting]
95
+ attr_accessor :app_engine_routing
96
+
97
+ # HTTP request headers.
98
+ # This map contains the header field names and values.
99
+ # Headers can be set when the
100
+ # [task is created](google.cloud.tasks.v2beta2.CloudTasks.CreateTask).
101
+ # Repeated headers are not supported but a header value can contain commas.
102
+ # Cloud Tasks sets some headers to default values:
103
+ # * `User-Agent`: By default, this header is
104
+ # `"AppEngine-Google; (+http://code.google.com/appengine)"`.
105
+ # This header can be modified, but Cloud Tasks will append
106
+ # `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
107
+ # modified `User-Agent`.
108
+ # If the task has an AppEngineHttpRequest.payload, Cloud Tasks sets the
109
+ # following headers:
110
+ # * `Content-Type`: By default, the `Content-Type` header is set to
111
+ # `"application/octet-stream"`. The default can be overridden by explictly
112
+ # setting `Content-Type` to a particular media type when the
113
+ # [task is created](google.cloud.tasks.v2beta2.CloudTasks.CreateTask).
114
+ # For example, `Content-Type` can be set to `"application/json"`.
115
+ # * `Content-Length`: This is computed by Cloud Tasks. This value is
116
+ # output only. It cannot be changed.
117
+ # The headers below cannot be set or overridden:
118
+ # * `Host`
119
+ # * `X-Google-*`
120
+ # * `X-AppEngine-*`
121
+ # In addition, some App Engine headers, which contain
122
+ # task-specific information, are also be sent to the task handler; see
123
+ # [request headers](/appengine/docs/python/taskqueue/push/creating-handlers#
124
+ # reading_request_headers).
125
+ # Corresponds to the JSON property `headers`
126
+ # @return [Hash<String,String>]
127
+ attr_accessor :headers
128
+
129
+ # The HTTP method to use for the request. The default is POST.
130
+ # The app's request handler for the task's target URL must be able to handle
131
+ # HTTP requests with this http_method, otherwise the task attempt will fail
132
+ # with error code 405 "Method Not Allowed" because "the method specified in
133
+ # the Request-Line is not allowed for the resource identified by the
134
+ # Request-URI". See
135
+ # [Writing a push task request handler](/appengine/docs/java/taskqueue/push/
136
+ # creating-handlers#writing_a_push_task_request_handler)
137
+ # and the documentation for the request handlers in the language your app is
138
+ # written in e.g.
139
+ # [python RequestHandler](/appengine/docs/python/tools/webapp/
140
+ # requesthandlerclass).
141
+ # Corresponds to the JSON property `httpMethod`
142
+ # @return [String]
143
+ attr_accessor :http_method
144
+
145
+ # Payload.
146
+ # The payload will be sent as the HTTP message body. A message
147
+ # body, and thus a payload, is allowed only if the HTTP method is
148
+ # POST or PUT. It is an error to set a data payload on a task with
149
+ # an incompatible HttpMethod.
150
+ # Corresponds to the JSON property `payload`
151
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
152
+ # @return [String]
153
+ attr_accessor :payload
154
+
155
+ # The relative URL.
156
+ # The relative URL must begin with "/" and must be a valid HTTP relative URL.
157
+ # It can contain a path, query string arguments, and `#` fragments.
158
+ # If the relative URL is empty, then the root path "/" will be used.
159
+ # No spaces are allowed, and the maximum length allowed is 2083 characters.
160
+ # Corresponds to the JSON property `relativeUrl`
161
+ # @return [String]
162
+ attr_accessor :relative_url
163
+
164
+ def initialize(**args)
165
+ update!(**args)
166
+ end
167
+
168
+ # Update properties of this object
169
+ def update!(**args)
170
+ @app_engine_routing = args[:app_engine_routing] if args.key?(:app_engine_routing)
171
+ @headers = args[:headers] if args.key?(:headers)
172
+ @http_method = args[:http_method] if args.key?(:http_method)
173
+ @payload = args[:payload] if args.key?(:payload)
174
+ @relative_url = args[:relative_url] if args.key?(:relative_url)
175
+ end
176
+ end
177
+
178
+ # App Engine HTTP target.
179
+ # The task will be delivered to the App Engine application hostname
180
+ # specified by its AppEngineHttpTarget and AppEngineHttpRequest.
181
+ # The documentation for AppEngineHttpRequest explains how the
182
+ # task's host URL is constructed.
183
+ # Using this type of queue configuration requires
184
+ # [`appengine.applications.get`](/appengine/docs/admin-api/access-control)
185
+ # Google IAM permission for the project
186
+ # and the following scope:
187
+ # `https://www.googleapis.com/auth/cloud-platform`
188
+ class AppEngineHttpTarget
189
+ include Google::Apis::Core::Hashable
190
+
191
+ # App Engine Routing.
192
+ # For more information about services, versions, and instances see
193
+ # [An Overview of App Engine](/appengine/docs/python/an-overview-of-app-engine),
194
+ # [Microservices Architecture on Google App Engine](/appengine/docs/python/
195
+ # microservices-on-app-engine),
196
+ # [App Engine Standard request routing](/appengine/docs/standard/python/how-
197
+ # requests-are-routed),
198
+ # and [App Engine Flex request routing](/appengine/docs/flexible/python/how-
199
+ # requests-are-routed).
200
+ # Corresponds to the JSON property `appEngineRoutingOverride`
201
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineRouting]
202
+ attr_accessor :app_engine_routing_override
203
+
204
+ def initialize(**args)
205
+ update!(**args)
206
+ end
207
+
208
+ # Update properties of this object
209
+ def update!(**args)
210
+ @app_engine_routing_override = args[:app_engine_routing_override] if args.key?(:app_engine_routing_override)
211
+ end
212
+ end
213
+
214
+ # Deprecated. Use AppEngineTarget.
215
+ class AppEngineQueueConfig
216
+ include Google::Apis::Core::Hashable
217
+
218
+ # App Engine Routing.
219
+ # For more information about services, versions, and instances see
220
+ # [An Overview of App Engine](/appengine/docs/python/an-overview-of-app-engine),
221
+ # [Microservices Architecture on Google App Engine](/appengine/docs/python/
222
+ # microservices-on-app-engine),
223
+ # [App Engine Standard request routing](/appengine/docs/standard/python/how-
224
+ # requests-are-routed),
225
+ # and [App Engine Flex request routing](/appengine/docs/flexible/python/how-
226
+ # requests-are-routed).
227
+ # Corresponds to the JSON property `appEngineRoutingOverride`
228
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineRouting]
229
+ attr_accessor :app_engine_routing_override
230
+
231
+ def initialize(**args)
232
+ update!(**args)
233
+ end
234
+
235
+ # Update properties of this object
236
+ def update!(**args)
237
+ @app_engine_routing_override = args[:app_engine_routing_override] if args.key?(:app_engine_routing_override)
238
+ end
239
+ end
240
+
241
+ # App Engine Routing.
242
+ # For more information about services, versions, and instances see
243
+ # [An Overview of App Engine](/appengine/docs/python/an-overview-of-app-engine),
244
+ # [Microservices Architecture on Google App Engine](/appengine/docs/python/
245
+ # microservices-on-app-engine),
246
+ # [App Engine Standard request routing](/appengine/docs/standard/python/how-
247
+ # requests-are-routed),
248
+ # and [App Engine Flex request routing](/appengine/docs/flexible/python/how-
249
+ # requests-are-routed).
250
+ class AppEngineRouting
251
+ include Google::Apis::Core::Hashable
252
+
253
+ # Output only.
254
+ # The host that the task is sent to. For more information, see
255
+ # [How Requests are Routed](/appengine/docs/standard/python/how-requests-are-
256
+ # routed).
257
+ # The host is constructed as:
258
+ # * `host = [application_domain_name]`</br>
259
+ # `| [service] + '.' + [application_domain_name]`</br>
260
+ # `| [version] + '.' + [application_domain_name]`</br>
261
+ # `| [version_dot_service]+ '.' + [application_domain_name]`</br>
262
+ # `| [instance] + '.' + [application_domain_name]`</br>
263
+ # `| [instance_dot_service] + '.' + [application_domain_name]`</br>
264
+ # `| [instance_dot_version] + '.' + [application_domain_name]`</br>
265
+ # `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
266
+ # * `application_domain_name` = The domain name of the app, for
267
+ # example <app-id>.appspot.com, which is associated with the
268
+ # queue's project ID. Some tasks which were created using the App Engine
269
+ # SDK use a custom domain name.
270
+ # * `service =` AppEngineRouting.service
271
+ # * `version =` AppEngineRouting.version
272
+ # * `version_dot_service =`
273
+ # AppEngineRouting.version `+ '.' +` AppEngineRouting.service
274
+ # * `instance =` AppEngineRouting.instance
275
+ # * `instance_dot_service =`
276
+ # AppEngineRouting.instance `+ '.' +` AppEngineRouting.service
277
+ # * `instance_dot_version =`
278
+ # AppEngineRouting.instance `+ '.' +` AppEngineRouting.version
279
+ # * `instance_dot_version_dot_service =`
280
+ # AppEngineRouting.instance `+ '.' +`
281
+ # AppEngineRouting.version `+ '.' +` AppEngineRouting.service
282
+ # If AppEngineRouting.service is empty, then the task will be sent
283
+ # to the service which is the default service when the task is attempted.
284
+ # If AppEngineRouting.version is empty, then the task will be sent
285
+ # to the version which is the default version when the task is attempted.
286
+ # If AppEngineRouting.instance is empty, then the task will be sent
287
+ # to an instance which is available when the task is attempted.
288
+ # When AppEngineRouting.service is "default",
289
+ # AppEngineRouting.version is "default", and
290
+ # AppEngineRouting.instance is empty, AppEngineRouting.host is
291
+ # shortened to just the `application_domain_name`.
292
+ # If AppEngineRouting.service, AppEngineRouting.version, or
293
+ # AppEngineRouting.instance is invalid, then the task will be sent
294
+ # to the default version of the default service when the task is attempted.
295
+ # Corresponds to the JSON property `host`
296
+ # @return [String]
297
+ attr_accessor :host
298
+
299
+ # App instance.
300
+ # By default, the task is sent to an instance which is available when
301
+ # the task is attempted.
302
+ # Requests can only be sent to a specific instance if
303
+ # [manual scaling is used in App Engine Standard](/appengine/docs/python/an-
304
+ # overview-of-app-engine?hl=en_US#scaling_types_and_instance_classes).
305
+ # App Engine Flex does not support instances. For more information, see
306
+ # [App Engine Standard request routing](/appengine/docs/standard/python/how-
307
+ # requests-are-routed)
308
+ # and [App Engine Flex request routing](/appengine/docs/flexible/python/how-
309
+ # requests-are-routed).
310
+ # Corresponds to the JSON property `instance`
311
+ # @return [String]
312
+ attr_accessor :instance
313
+
314
+ # App service.
315
+ # By default, the task is sent to the service which is the default
316
+ # service when the task is attempted ("default").
317
+ # For some queues or tasks which were created using the App Engine Task Queue
318
+ # API, AppEngineRouting.host is not parsable into
319
+ # AppEngineRouting.service, AppEngineRouting.version, and
320
+ # AppEngineRouting.instance. For example, some tasks which were created
321
+ # using the App Engine SDK use a custom domain name; custom domains are not
322
+ # parsed by Cloud Tasks. If AppEngineRouting.host is not parsable, then
323
+ # AppEngineRouting.service, AppEngineRouting.version, and
324
+ # AppEngineRouting.instance are the empty string.
325
+ # Corresponds to the JSON property `service`
326
+ # @return [String]
327
+ attr_accessor :service
328
+
329
+ # App version.
330
+ # By default, the task is sent to the version which is the default
331
+ # version when the task is attempted ("default").
332
+ # For some queues or tasks which were created using the App Engine Task Queue
333
+ # API, AppEngineRouting.host is not parsable into
334
+ # AppEngineRouting.service, AppEngineRouting.version, and
335
+ # AppEngineRouting.instance. For example, some tasks which were created
336
+ # using the App Engine SDK use a custom domain name; custom domains are not
337
+ # parsed by Cloud Tasks. If AppEngineRouting.host is not parsable, then
338
+ # AppEngineRouting.service, AppEngineRouting.version, and
339
+ # AppEngineRouting.instance are the empty string.
340
+ # Corresponds to the JSON property `version`
341
+ # @return [String]
342
+ attr_accessor :version
343
+
344
+ def initialize(**args)
345
+ update!(**args)
346
+ end
347
+
348
+ # Update properties of this object
349
+ def update!(**args)
350
+ @host = args[:host] if args.key?(:host)
351
+ @instance = args[:instance] if args.key?(:instance)
352
+ @service = args[:service] if args.key?(:service)
353
+ @version = args[:version] if args.key?(:version)
354
+ end
355
+ end
356
+
357
+ # Deprecated. Use AppEngineHttpRequest.
358
+ class AppEngineTaskTarget
359
+ include Google::Apis::Core::Hashable
360
+
361
+ # App Engine Routing.
362
+ # For more information about services, versions, and instances see
363
+ # [An Overview of App Engine](/appengine/docs/python/an-overview-of-app-engine),
364
+ # [Microservices Architecture on Google App Engine](/appengine/docs/python/
365
+ # microservices-on-app-engine),
366
+ # [App Engine Standard request routing](/appengine/docs/standard/python/how-
367
+ # requests-are-routed),
368
+ # and [App Engine Flex request routing](/appengine/docs/flexible/python/how-
369
+ # requests-are-routed).
370
+ # Corresponds to the JSON property `appEngineRouting`
371
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineRouting]
372
+ attr_accessor :app_engine_routing
373
+
374
+ # Deprecated. Use AppEngineHttpRequest.headers.
375
+ # Corresponds to the JSON property `headers`
376
+ # @return [Hash<String,String>]
377
+ attr_accessor :headers
378
+
379
+ # Deprecated. Use AppEngineHttpRequest.http_method.
380
+ # Corresponds to the JSON property `httpMethod`
381
+ # @return [String]
382
+ attr_accessor :http_method
383
+
384
+ # Deprecated. Use AppEngineHttpRequest.payload.
385
+ # Corresponds to the JSON property `payload`
386
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
387
+ # @return [String]
388
+ attr_accessor :payload
389
+
390
+ # Deprecated. Use AppEngineHttpRequest.relative_url.
391
+ # Corresponds to the JSON property `relativeUrl`
392
+ # @return [String]
393
+ attr_accessor :relative_url
394
+
395
+ def initialize(**args)
396
+ update!(**args)
397
+ end
398
+
399
+ # Update properties of this object
400
+ def update!(**args)
401
+ @app_engine_routing = args[:app_engine_routing] if args.key?(:app_engine_routing)
402
+ @headers = args[:headers] if args.key?(:headers)
403
+ @http_method = args[:http_method] if args.key?(:http_method)
404
+ @payload = args[:payload] if args.key?(:payload)
405
+ @relative_url = args[:relative_url] if args.key?(:relative_url)
406
+ end
407
+ end
408
+
409
+ # The status of a task attempt.
410
+ class AttemptStatus
411
+ include Google::Apis::Core::Hashable
412
+
413
+ # Output only.
414
+ # The time that this attempt was dispatched.
415
+ # `dispatch_time` will be truncated to the nearest microsecond.
416
+ # Corresponds to the JSON property `dispatchTime`
417
+ # @return [String]
418
+ attr_accessor :dispatch_time
419
+
420
+ # The `Status` type defines a logical error model that is suitable for different
421
+ # programming environments, including REST APIs and RPC APIs. It is used by
422
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
423
+ # - Simple to use and understand for most users
424
+ # - Flexible enough to meet unexpected needs
425
+ # # Overview
426
+ # The `Status` message contains three pieces of data: error code, error message,
427
+ # and error details. The error code should be an enum value of
428
+ # google.rpc.Code, but it may accept additional error codes if needed. The
429
+ # error message should be a developer-facing English message that helps
430
+ # developers *understand* and *resolve* the error. If a localized user-facing
431
+ # error message is needed, put the localized message in the error details or
432
+ # localize it in the client. The optional error details may contain arbitrary
433
+ # information about the error. There is a predefined set of error detail types
434
+ # in the package `google.rpc` that can be used for common error conditions.
435
+ # # Language mapping
436
+ # The `Status` message is the logical representation of the error model, but it
437
+ # is not necessarily the actual wire format. When the `Status` message is
438
+ # exposed in different client libraries and different wire protocols, it can be
439
+ # mapped differently. For example, it will likely be mapped to some exceptions
440
+ # in Java, but more likely mapped to some error codes in C.
441
+ # # Other uses
442
+ # The error model and the `Status` message can be used in a variety of
443
+ # environments, either with or without APIs, to provide a
444
+ # consistent developer experience across different environments.
445
+ # Example uses of this error model include:
446
+ # - Partial errors. If a service needs to return partial errors to the client,
447
+ # it may embed the `Status` in the normal response to indicate the partial
448
+ # errors.
449
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
450
+ # have a `Status` message for error reporting.
451
+ # - Batch operations. If a client uses batch request and batch response, the
452
+ # `Status` message should be used directly inside batch response, one for
453
+ # each error sub-response.
454
+ # - Asynchronous operations. If an API call embeds asynchronous operation
455
+ # results in its response, the status of those operations should be
456
+ # represented directly using the `Status` message.
457
+ # - Logging. If some API errors are stored in logs, the message `Status` could
458
+ # be used directly after any stripping needed for security/privacy reasons.
459
+ # Corresponds to the JSON property `responseStatus`
460
+ # @return [Google::Apis::CloudtasksV2beta2::Status]
461
+ attr_accessor :response_status
462
+
463
+ # Output only.
464
+ # The time that this attempt response was received.
465
+ # `response_time` will be truncated to the nearest microsecond.
466
+ # Corresponds to the JSON property `responseTime`
467
+ # @return [String]
468
+ attr_accessor :response_time
469
+
470
+ # Output only.
471
+ # The time that this attempt was scheduled.
472
+ # `schedule_time` will be truncated to the nearest microsecond.
473
+ # Corresponds to the JSON property `scheduleTime`
474
+ # @return [String]
475
+ attr_accessor :schedule_time
476
+
477
+ def initialize(**args)
478
+ update!(**args)
479
+ end
480
+
481
+ # Update properties of this object
482
+ def update!(**args)
483
+ @dispatch_time = args[:dispatch_time] if args.key?(:dispatch_time)
484
+ @response_status = args[:response_status] if args.key?(:response_status)
485
+ @response_time = args[:response_time] if args.key?(:response_time)
486
+ @schedule_time = args[:schedule_time] if args.key?(:schedule_time)
487
+ end
488
+ end
489
+
490
+ # Associates `members` with a `role`.
491
+ class Binding
492
+ include Google::Apis::Core::Hashable
493
+
494
+ # Specifies the identities requesting access for a Cloud Platform resource.
495
+ # `members` can have the following values:
496
+ # * `allUsers`: A special identifier that represents anyone who is
497
+ # on the internet; with or without a Google account.
498
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
499
+ # who is authenticated with a Google account or a service account.
500
+ # * `user:`emailid``: An email address that represents a specific Google
501
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
502
+ # * `serviceAccount:`emailid``: An email address that represents a service
503
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
504
+ # * `group:`emailid``: An email address that represents a Google group.
505
+ # For example, `admins@example.com`.
506
+ # * `domain:`domain``: A Google Apps domain name that represents all the
507
+ # users of that domain. For example, `google.com` or `example.com`.
508
+ # Corresponds to the JSON property `members`
509
+ # @return [Array<String>]
510
+ attr_accessor :members
511
+
512
+ # Role that is assigned to `members`.
513
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
514
+ # Required
515
+ # Corresponds to the JSON property `role`
516
+ # @return [String]
517
+ attr_accessor :role
518
+
519
+ def initialize(**args)
520
+ update!(**args)
521
+ end
522
+
523
+ # Update properties of this object
524
+ def update!(**args)
525
+ @members = args[:members] if args.key?(:members)
526
+ @role = args[:role] if args.key?(:role)
527
+ end
528
+ end
529
+
530
+ # Request message for canceling a lease using
531
+ # CloudTasks.CancelLease.
532
+ class CancelLeaseRequest
533
+ include Google::Apis::Core::Hashable
534
+
535
+ # The response_view specifies which subset of the Task will be
536
+ # returned.
537
+ # By default response_view is Task.View.BASIC; not all
538
+ # information is retrieved by default because some data, such as
539
+ # payloads, might be desirable to return only when needed because
540
+ # of its large size or because of the sensitivity of data that it
541
+ # contains.
542
+ # Authorization for Task.View.FULL requires `cloudtasks.tasks.fullView`
543
+ # [Google IAM](/iam/) permission on the
544
+ # Task.name resource.
545
+ # Corresponds to the JSON property `responseView`
546
+ # @return [String]
547
+ attr_accessor :response_view
548
+
549
+ # Required.
550
+ # The task's current schedule time, available in the Task.schedule_time
551
+ # returned in PullTasksResponse.tasks or
552
+ # CloudTasks.RenewLease. This restriction is to check that
553
+ # the caller is canceling the correct task.
554
+ # Corresponds to the JSON property `scheduleTime`
555
+ # @return [String]
556
+ attr_accessor :schedule_time
557
+
558
+ def initialize(**args)
559
+ update!(**args)
560
+ end
561
+
562
+ # Update properties of this object
563
+ def update!(**args)
564
+ @response_view = args[:response_view] if args.key?(:response_view)
565
+ @schedule_time = args[:schedule_time] if args.key?(:schedule_time)
566
+ end
567
+ end
568
+
569
+ # Request message for CloudTasks.CreateTask.
570
+ class CreateTaskRequest
571
+ include Google::Apis::Core::Hashable
572
+
573
+ # The response_view specifies which subset of the Task will be
574
+ # returned.
575
+ # By default response_view is Task.View.BASIC; not all
576
+ # information is retrieved by default because some data, such as
577
+ # payloads, might be desirable to return only when needed because
578
+ # of its large size or because of the sensitivity of data that it
579
+ # contains.
580
+ # Authorization for Task.View.FULL requires `cloudtasks.tasks.fullView`
581
+ # [Google IAM](/iam/) permission on the
582
+ # Task.name resource.
583
+ # Corresponds to the JSON property `responseView`
584
+ # @return [String]
585
+ attr_accessor :response_view
586
+
587
+ # A unit of scheduled work.
588
+ # Corresponds to the JSON property `task`
589
+ # @return [Google::Apis::CloudtasksV2beta2::Task]
590
+ attr_accessor :task
591
+
592
+ def initialize(**args)
593
+ update!(**args)
594
+ end
595
+
596
+ # Update properties of this object
597
+ def update!(**args)
598
+ @response_view = args[:response_view] if args.key?(:response_view)
599
+ @task = args[:task] if args.key?(:task)
600
+ end
601
+ end
602
+
603
+ # A generic empty message that you can re-use to avoid defining duplicated
604
+ # empty messages in your APIs. A typical example is to use it as the request
605
+ # or the response type of an API method. For instance:
606
+ # service Foo `
607
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
608
+ # `
609
+ # The JSON representation for `Empty` is empty JSON object ````.
610
+ class Empty
611
+ include Google::Apis::Core::Hashable
612
+
613
+ def initialize(**args)
614
+ update!(**args)
615
+ end
616
+
617
+ # Update properties of this object
618
+ def update!(**args)
619
+ end
620
+ end
621
+
622
+ # Request message for `GetIamPolicy` method.
623
+ class GetIamPolicyRequest
624
+ include Google::Apis::Core::Hashable
625
+
626
+ def initialize(**args)
627
+ update!(**args)
628
+ end
629
+
630
+ # Update properties of this object
631
+ def update!(**args)
632
+ end
633
+ end
634
+
635
+ # The response message for Locations.ListLocations.
636
+ class ListLocationsResponse
637
+ include Google::Apis::Core::Hashable
638
+
639
+ # A list of locations that matches the specified filter in the request.
640
+ # Corresponds to the JSON property `locations`
641
+ # @return [Array<Google::Apis::CloudtasksV2beta2::Location>]
642
+ attr_accessor :locations
643
+
644
+ # The standard List next-page token.
645
+ # Corresponds to the JSON property `nextPageToken`
646
+ # @return [String]
647
+ attr_accessor :next_page_token
648
+
649
+ def initialize(**args)
650
+ update!(**args)
651
+ end
652
+
653
+ # Update properties of this object
654
+ def update!(**args)
655
+ @locations = args[:locations] if args.key?(:locations)
656
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
657
+ end
658
+ end
659
+
660
+ # Response message for CloudTasks.ListQueues.
661
+ class ListQueuesResponse
662
+ include Google::Apis::Core::Hashable
663
+
664
+ # A token to retrieve next page of results.
665
+ # To return the next page of results, call
666
+ # CloudTasks.ListQueues with this value as the
667
+ # ListQueuesRequest.page_token.
668
+ # If the next_page_token is empty, there are no more results.
669
+ # The page token is valid for only 2 hours.
670
+ # Corresponds to the JSON property `nextPageToken`
671
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
672
+ # @return [String]
673
+ attr_accessor :next_page_token
674
+
675
+ # The list of queues.
676
+ # Corresponds to the JSON property `queues`
677
+ # @return [Array<Google::Apis::CloudtasksV2beta2::Queue>]
678
+ attr_accessor :queues
679
+
680
+ def initialize(**args)
681
+ update!(**args)
682
+ end
683
+
684
+ # Update properties of this object
685
+ def update!(**args)
686
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
687
+ @queues = args[:queues] if args.key?(:queues)
688
+ end
689
+ end
690
+
691
+ # Response message for listing tasks using CloudTasks.ListTasks.
692
+ class ListTasksResponse
693
+ include Google::Apis::Core::Hashable
694
+
695
+ # A token to retrieve next page of results.
696
+ # To return the next page of results, call
697
+ # CloudTasks.ListTasks with this value as the
698
+ # ListTasksRequest.page_token.
699
+ # If the next_page_token is empty, there are no more results.
700
+ # Corresponds to the JSON property `nextPageToken`
701
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
702
+ # @return [String]
703
+ attr_accessor :next_page_token
704
+
705
+ # The list of tasks.
706
+ # Corresponds to the JSON property `tasks`
707
+ # @return [Array<Google::Apis::CloudtasksV2beta2::Task>]
708
+ attr_accessor :tasks
709
+
710
+ def initialize(**args)
711
+ update!(**args)
712
+ end
713
+
714
+ # Update properties of this object
715
+ def update!(**args)
716
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
717
+ @tasks = args[:tasks] if args.key?(:tasks)
718
+ end
719
+ end
720
+
721
+ # A resource that represents Google Cloud Platform location.
722
+ class Location
723
+ include Google::Apis::Core::Hashable
724
+
725
+ # Cross-service attributes for the location. For example
726
+ # `"cloud.googleapis.com/region": "us-east1"`
727
+ # Corresponds to the JSON property `labels`
728
+ # @return [Hash<String,String>]
729
+ attr_accessor :labels
730
+
731
+ # The canonical id for this location. For example: `"us-east1"`.
732
+ # Corresponds to the JSON property `locationId`
733
+ # @return [String]
734
+ attr_accessor :location_id
735
+
736
+ # Service-specific metadata. For example the available capacity at the given
737
+ # location.
738
+ # Corresponds to the JSON property `metadata`
739
+ # @return [Hash<String,Object>]
740
+ attr_accessor :metadata
741
+
742
+ # Resource name for the location, which may vary between implementations.
743
+ # For example: `"projects/example-project/locations/us-east1"`
744
+ # Corresponds to the JSON property `name`
745
+ # @return [String]
746
+ attr_accessor :name
747
+
748
+ def initialize(**args)
749
+ update!(**args)
750
+ end
751
+
752
+ # Update properties of this object
753
+ def update!(**args)
754
+ @labels = args[:labels] if args.key?(:labels)
755
+ @location_id = args[:location_id] if args.key?(:location_id)
756
+ @metadata = args[:metadata] if args.key?(:metadata)
757
+ @name = args[:name] if args.key?(:name)
758
+ end
759
+ end
760
+
761
+ # Request message for CloudTasks.PauseQueue.
762
+ class PauseQueueRequest
763
+ include Google::Apis::Core::Hashable
764
+
765
+ def initialize(**args)
766
+ update!(**args)
767
+ end
768
+
769
+ # Update properties of this object
770
+ def update!(**args)
771
+ end
772
+ end
773
+
774
+ # Defines an Identity and Access Management (IAM) policy. It is used to
775
+ # specify access control policies for Cloud Platform resources.
776
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
777
+ # `members` to a `role`, where the members can be user accounts, Google groups,
778
+ # Google domains, and service accounts. A `role` is a named list of permissions
779
+ # defined by IAM.
780
+ # **Example**
781
+ # `
782
+ # "bindings": [
783
+ # `
784
+ # "role": "roles/owner",
785
+ # "members": [
786
+ # "user:mike@example.com",
787
+ # "group:admins@example.com",
788
+ # "domain:google.com",
789
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
790
+ # ]
791
+ # `,
792
+ # `
793
+ # "role": "roles/viewer",
794
+ # "members": ["user:sean@example.com"]
795
+ # `
796
+ # ]
797
+ # `
798
+ # For a description of IAM and its features, see the
799
+ # [IAM developer's guide](https://cloud.google.com/iam).
800
+ class Policy
801
+ include Google::Apis::Core::Hashable
802
+
803
+ # Associates a list of `members` to a `role`.
804
+ # `bindings` with no members will result in an error.
805
+ # Corresponds to the JSON property `bindings`
806
+ # @return [Array<Google::Apis::CloudtasksV2beta2::Binding>]
807
+ attr_accessor :bindings
808
+
809
+ # `etag` is used for optimistic concurrency control as a way to help
810
+ # prevent simultaneous updates of a policy from overwriting each other.
811
+ # It is strongly suggested that systems make use of the `etag` in the
812
+ # read-modify-write cycle to perform policy updates in order to avoid race
813
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
814
+ # systems are expected to put that etag in the request to `setIamPolicy` to
815
+ # ensure that their change will be applied to the same version of the policy.
816
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
817
+ # policy is overwritten blindly.
818
+ # Corresponds to the JSON property `etag`
819
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
820
+ # @return [String]
821
+ attr_accessor :etag
822
+
823
+ # Version of the `Policy`. The default version is 0.
824
+ # Corresponds to the JSON property `version`
825
+ # @return [Fixnum]
826
+ attr_accessor :version
827
+
828
+ def initialize(**args)
829
+ update!(**args)
830
+ end
831
+
832
+ # Update properties of this object
833
+ def update!(**args)
834
+ @bindings = args[:bindings] if args.key?(:bindings)
835
+ @etag = args[:etag] if args.key?(:etag)
836
+ @version = args[:version] if args.key?(:version)
837
+ end
838
+ end
839
+
840
+ # The pull message contains data that can be used by the caller of
841
+ # CloudTasks.PullTasks to process the task.
842
+ # This proto can only be used for tasks in a queue which has
843
+ # Queue.pull_target set.
844
+ class PullMessage
845
+ include Google::Apis::Core::Hashable
846
+
847
+ # A data payload consumed by the task worker to execute the task.
848
+ # Corresponds to the JSON property `payload`
849
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
850
+ # @return [String]
851
+ attr_accessor :payload
852
+
853
+ # A meta-data tag for this task.
854
+ # This value is used by CloudTasks.PullTasks calls when
855
+ # PullTasksRequest.filter is `tag=<tag>`.
856
+ # The tag must be less than 500 bytes.
857
+ # Corresponds to the JSON property `tag`
858
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
859
+ # @return [String]
860
+ attr_accessor :tag
861
+
862
+ def initialize(**args)
863
+ update!(**args)
864
+ end
865
+
866
+ # Update properties of this object
867
+ def update!(**args)
868
+ @payload = args[:payload] if args.key?(:payload)
869
+ @tag = args[:tag] if args.key?(:tag)
870
+ end
871
+ end
872
+
873
+ # Deprecated. Use PullTarget.
874
+ class PullQueueConfig
875
+ include Google::Apis::Core::Hashable
876
+
877
+ def initialize(**args)
878
+ update!(**args)
879
+ end
880
+
881
+ # Update properties of this object
882
+ def update!(**args)
883
+ end
884
+ end
885
+
886
+ # Pull target.
887
+ class PullTarget
888
+ include Google::Apis::Core::Hashable
889
+
890
+ def initialize(**args)
891
+ update!(**args)
892
+ end
893
+
894
+ # Update properties of this object
895
+ def update!(**args)
896
+ end
897
+ end
898
+
899
+ # Deprecated. Use PullMessage.
900
+ class PullTaskTarget
901
+ include Google::Apis::Core::Hashable
902
+
903
+ # Deprecated. Use PullMessage.payload.
904
+ # Corresponds to the JSON property `payload`
905
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
906
+ # @return [String]
907
+ attr_accessor :payload
908
+
909
+ # Deprecated. Use PullMessage.tag.
910
+ # Corresponds to the JSON property `tag`
911
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
912
+ # @return [String]
913
+ attr_accessor :tag
914
+
915
+ def initialize(**args)
916
+ update!(**args)
917
+ end
918
+
919
+ # Update properties of this object
920
+ def update!(**args)
921
+ @payload = args[:payload] if args.key?(:payload)
922
+ @tag = args[:tag] if args.key?(:tag)
923
+ end
924
+ end
925
+
926
+ # Request message for pulling tasks using CloudTasks.PullTasks.
927
+ class PullTasksRequest
928
+ include Google::Apis::Core::Hashable
929
+
930
+ # `filter` can be used to specify a subset of tasks to lease.
931
+ # When `filter` is set to `tag=<my-tag>` then the
932
+ # PullTasksResponse will contain only tasks whose
933
+ # PullMessage.tag is equal to `<my-tag>`. `<my-tag>` can be
934
+ # a bytes encoded as a string and must be less than 500 bytes.
935
+ # If `<my-tag>` includes whitespace or special characters (characters which
936
+ # aren't letters, numbers, or underscores), then it must be double-quoted.
937
+ # Double quotes and backslashes in quoted strings must be escaped by
938
+ # preceding it with a backslash (`\`).
939
+ # When `filter` is set to `tag=oldest_tag()`, only tasks which have the same
940
+ # tag as the task with the oldest schedule_time will be returned.
941
+ # Grammar Syntax:
942
+ # * `filter = "tag=" comparable`
943
+ # * `comparable = tag | function`
944
+ # * `tag = string | bytes`
945
+ # * `function = "oldest_tag()"`
946
+ # The `oldest_tag()` function returns tasks which have the same tag as the
947
+ # oldest task (ordered by schedule time).
948
+ # Corresponds to the JSON property `filter`
949
+ # @return [String]
950
+ attr_accessor :filter
951
+
952
+ # The duration of the lease.
953
+ # Each task returned in the PullTasksResponse will have its
954
+ # Task.schedule_time set to the current time plus the
955
+ # `lease_duration`. A task that has been returned in a
956
+ # PullTasksResponse is leased -- that task will not be
957
+ # returned in a different PullTasksResponse before the
958
+ # Task.schedule_time.
959
+ # After the lease holder has successfully finished the work
960
+ # associated with the task, the lease holder must call
961
+ # CloudTasks.AcknowledgeTask. If the task is not acknowledged
962
+ # via CloudTasks.AcknowledgeTask before the
963
+ # Task.schedule_time then it will be returned in a later
964
+ # PullTasksResponse so that another lease holder can process
965
+ # it.
966
+ # The maximum lease duration is 1 week.
967
+ # `lease_duration` will be truncated to the nearest second.
968
+ # Corresponds to the JSON property `leaseDuration`
969
+ # @return [String]
970
+ attr_accessor :lease_duration
971
+
972
+ # The maximum number of tasks to lease. The maximum that can be
973
+ # requested is 1000.
974
+ # Corresponds to the JSON property `maxTasks`
975
+ # @return [Fixnum]
976
+ attr_accessor :max_tasks
977
+
978
+ # The response_view specifies which subset of the Task will be
979
+ # returned.
980
+ # By default response_view is Task.View.BASIC; not all
981
+ # information is retrieved by default because some data, such as
982
+ # payloads, might be desirable to return only when needed because
983
+ # of its large size or because of the sensitivity of data that it
984
+ # contains.
985
+ # Authorization for Task.View.FULL requires `cloudtasks.tasks.fullView`
986
+ # [Google IAM](/iam/) permission on the
987
+ # Task.name resource.
988
+ # Corresponds to the JSON property `responseView`
989
+ # @return [String]
990
+ attr_accessor :response_view
991
+
992
+ def initialize(**args)
993
+ update!(**args)
994
+ end
995
+
996
+ # Update properties of this object
997
+ def update!(**args)
998
+ @filter = args[:filter] if args.key?(:filter)
999
+ @lease_duration = args[:lease_duration] if args.key?(:lease_duration)
1000
+ @max_tasks = args[:max_tasks] if args.key?(:max_tasks)
1001
+ @response_view = args[:response_view] if args.key?(:response_view)
1002
+ end
1003
+ end
1004
+
1005
+ # Response message for pulling tasks using CloudTasks.PullTasks.
1006
+ class PullTasksResponse
1007
+ include Google::Apis::Core::Hashable
1008
+
1009
+ # The leased tasks.
1010
+ # Corresponds to the JSON property `tasks`
1011
+ # @return [Array<Google::Apis::CloudtasksV2beta2::Task>]
1012
+ attr_accessor :tasks
1013
+
1014
+ def initialize(**args)
1015
+ update!(**args)
1016
+ end
1017
+
1018
+ # Update properties of this object
1019
+ def update!(**args)
1020
+ @tasks = args[:tasks] if args.key?(:tasks)
1021
+ end
1022
+ end
1023
+
1024
+ # Request message for CloudTasks.PurgeQueue.
1025
+ class PurgeQueueRequest
1026
+ include Google::Apis::Core::Hashable
1027
+
1028
+ def initialize(**args)
1029
+ update!(**args)
1030
+ end
1031
+
1032
+ # Update properties of this object
1033
+ def update!(**args)
1034
+ end
1035
+ end
1036
+
1037
+ # A queue is a container of related tasks. Queues are configured to manage
1038
+ # how those tasks are dispatched. Configurable properties include rate limits,
1039
+ # retry options, target types, and others.
1040
+ class Queue
1041
+ include Google::Apis::Core::Hashable
1042
+
1043
+ # App Engine HTTP target.
1044
+ # The task will be delivered to the App Engine application hostname
1045
+ # specified by its AppEngineHttpTarget and AppEngineHttpRequest.
1046
+ # The documentation for AppEngineHttpRequest explains how the
1047
+ # task's host URL is constructed.
1048
+ # Using this type of queue configuration requires
1049
+ # [`appengine.applications.get`](/appengine/docs/admin-api/access-control)
1050
+ # Google IAM permission for the project
1051
+ # and the following scope:
1052
+ # `https://www.googleapis.com/auth/cloud-platform`
1053
+ # Corresponds to the JSON property `appEngineHttpTarget`
1054
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineHttpTarget]
1055
+ attr_accessor :app_engine_http_target
1056
+
1057
+ # Deprecated. Use AppEngineTarget.
1058
+ # Corresponds to the JSON property `appEngineQueueConfig`
1059
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineQueueConfig]
1060
+ attr_accessor :app_engine_queue_config
1061
+
1062
+ # The queue name.
1063
+ # The queue name must have the following format:
1064
+ # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
1065
+ # * `PROJECT_ID` can contain uppercase and lowercase letters,
1066
+ # numbers, hyphens, colons, and periods; that is, it must match
1067
+ # the regular expression: `[a-zA-Z\\d-:\\.]+`.
1068
+ # * `QUEUE_ID` can contain uppercase and lowercase letters,
1069
+ # numbers, and hyphens; that is, it must match the regular
1070
+ # expression: `[a-zA-Z\\d-]+`. The maximum length is 100
1071
+ # characters.
1072
+ # Caller-specified and required in CreateQueueRequest, after which
1073
+ # it becomes output only.
1074
+ # Corresponds to the JSON property `name`
1075
+ # @return [String]
1076
+ attr_accessor :name
1077
+
1078
+ # Deprecated. Use PullTarget.
1079
+ # Corresponds to the JSON property `pullQueueConfig`
1080
+ # @return [Google::Apis::CloudtasksV2beta2::PullQueueConfig]
1081
+ attr_accessor :pull_queue_config
1082
+
1083
+ # Pull target.
1084
+ # Corresponds to the JSON property `pullTarget`
1085
+ # @return [Google::Apis::CloudtasksV2beta2::PullTarget]
1086
+ attr_accessor :pull_target
1087
+
1088
+ # Output only.
1089
+ # The last time this queue was purged. All tasks that were
1090
+ # created before this time were purged.
1091
+ # A queue can be purged using CloudTasks.PurgeQueue, the
1092
+ # [App Engine Task Queue SDK, or the Cloud Console](/appengine/docs/standard/
1093
+ # python/taskqueue/push/deleting-tasks-and-queues#purging_all_tasks_from_a_queue)
1094
+ # .
1095
+ # Purge time will be truncated to the nearest microsecond. Purge
1096
+ # time will be zero if the queue has never been purged.
1097
+ # Corresponds to the JSON property `purgeTime`
1098
+ # @return [String]
1099
+ attr_accessor :purge_time
1100
+
1101
+ # Output only.
1102
+ # The state of the queue.
1103
+ # `queue_state` can only be changed by called
1104
+ # CloudTasks.PauseQueue, CloudTasks.ResumeQueue, or uploading
1105
+ # [queue.yaml](/appengine/docs/python/config/queueref).
1106
+ # CloudTasks.UpdateQueue cannot be used to change `queue_state`.
1107
+ # Corresponds to the JSON property `queueState`
1108
+ # @return [String]
1109
+ attr_accessor :queue_state
1110
+
1111
+ # Retry config.
1112
+ # These settings determine retry behavior.
1113
+ # If a task does not complete successfully, meaning that an
1114
+ # acknowledgement is not received from the handler before the
1115
+ # [deadline](/appengine/docs/python/taskqueue/push/#the_task_deadline),
1116
+ # then it will be retried with exponential backoff according to the
1117
+ # settings in RetryConfig.
1118
+ # Corresponds to the JSON property `retryConfig`
1119
+ # @return [Google::Apis::CloudtasksV2beta2::RetryConfig]
1120
+ attr_accessor :retry_config
1121
+
1122
+ # Throttle config.
1123
+ # These settings determine the throttling behavior.
1124
+ # Corresponds to the JSON property `throttleConfig`
1125
+ # @return [Google::Apis::CloudtasksV2beta2::ThrottleConfig]
1126
+ attr_accessor :throttle_config
1127
+
1128
+ def initialize(**args)
1129
+ update!(**args)
1130
+ end
1131
+
1132
+ # Update properties of this object
1133
+ def update!(**args)
1134
+ @app_engine_http_target = args[:app_engine_http_target] if args.key?(:app_engine_http_target)
1135
+ @app_engine_queue_config = args[:app_engine_queue_config] if args.key?(:app_engine_queue_config)
1136
+ @name = args[:name] if args.key?(:name)
1137
+ @pull_queue_config = args[:pull_queue_config] if args.key?(:pull_queue_config)
1138
+ @pull_target = args[:pull_target] if args.key?(:pull_target)
1139
+ @purge_time = args[:purge_time] if args.key?(:purge_time)
1140
+ @queue_state = args[:queue_state] if args.key?(:queue_state)
1141
+ @retry_config = args[:retry_config] if args.key?(:retry_config)
1142
+ @throttle_config = args[:throttle_config] if args.key?(:throttle_config)
1143
+ end
1144
+ end
1145
+
1146
+ # Request message for renewing a lease using CloudTasks.RenewLease.
1147
+ class RenewLeaseRequest
1148
+ include Google::Apis::Core::Hashable
1149
+
1150
+ # Required.
1151
+ # The desired new lease duration, starting from now.
1152
+ # The maximum lease duration is 1 week.
1153
+ # `new_lease_duration` will be truncated to the nearest second.
1154
+ # Corresponds to the JSON property `newLeaseDuration`
1155
+ # @return [String]
1156
+ attr_accessor :new_lease_duration
1157
+
1158
+ # The response_view specifies which subset of the Task will be
1159
+ # returned.
1160
+ # By default response_view is Task.View.BASIC; not all
1161
+ # information is retrieved by default because some data, such as
1162
+ # payloads, might be desirable to return only when needed because
1163
+ # of its large size or because of the sensitivity of data that it
1164
+ # contains.
1165
+ # Authorization for Task.View.FULL requires `cloudtasks.tasks.fullView`
1166
+ # [Google IAM](/iam/) permission on the
1167
+ # Task.name resource.
1168
+ # Corresponds to the JSON property `responseView`
1169
+ # @return [String]
1170
+ attr_accessor :response_view
1171
+
1172
+ # Required.
1173
+ # The task's current schedule time, available in the Task.schedule_time
1174
+ # returned in PullTasksResponse.tasks or
1175
+ # CloudTasks.RenewLease. This restriction is to check that
1176
+ # the caller is renewing the correct task.
1177
+ # Corresponds to the JSON property `scheduleTime`
1178
+ # @return [String]
1179
+ attr_accessor :schedule_time
1180
+
1181
+ def initialize(**args)
1182
+ update!(**args)
1183
+ end
1184
+
1185
+ # Update properties of this object
1186
+ def update!(**args)
1187
+ @new_lease_duration = args[:new_lease_duration] if args.key?(:new_lease_duration)
1188
+ @response_view = args[:response_view] if args.key?(:response_view)
1189
+ @schedule_time = args[:schedule_time] if args.key?(:schedule_time)
1190
+ end
1191
+ end
1192
+
1193
+ # Request message for CloudTasks.ResumeQueue.
1194
+ class ResumeQueueRequest
1195
+ include Google::Apis::Core::Hashable
1196
+
1197
+ def initialize(**args)
1198
+ update!(**args)
1199
+ end
1200
+
1201
+ # Update properties of this object
1202
+ def update!(**args)
1203
+ end
1204
+ end
1205
+
1206
+ # Retry config.
1207
+ # These settings determine retry behavior.
1208
+ # If a task does not complete successfully, meaning that an
1209
+ # acknowledgement is not received from the handler before the
1210
+ # [deadline](/appengine/docs/python/taskqueue/push/#the_task_deadline),
1211
+ # then it will be retried with exponential backoff according to the
1212
+ # settings in RetryConfig.
1213
+ class RetryConfig
1214
+ include Google::Apis::Core::Hashable
1215
+
1216
+ # The maximum number of attempts for a task.
1217
+ # Cloud Tasks will attempt the task `max_attempts` times (that
1218
+ # is, if the first attempt fails, then there will be
1219
+ # `max_attempts - 1` retries). Must be > 0.
1220
+ # Corresponds to the JSON property `maxAttempts`
1221
+ # @return [Fixnum]
1222
+ attr_accessor :max_attempts
1223
+
1224
+ # The maximum amount of time to wait before retrying a task after
1225
+ # it fails. The default is 1 hour.
1226
+ # * For [App Engine queues](google.cloud.tasks.v2beta2.AppEngineHttpTarget),
1227
+ # this field is 1 hour by default.
1228
+ # * For [pull queues](google.cloud.tasks.v2beta2.PullTarget), this field
1229
+ # is output only and always 0.
1230
+ # `max_backoff` will be truncated to the nearest second.
1231
+ # Corresponds to the JSON property `maxBackoff`
1232
+ # @return [String]
1233
+ attr_accessor :max_backoff
1234
+
1235
+ # The maximum number of times that the interval between failed task
1236
+ # retries will be doubled before the increase becomes constant. The
1237
+ # constant is: 2**(max_doublings - 1) *
1238
+ # RetryConfig.min_backoff.
1239
+ # * For [App Engine queues](google.cloud.tasks.v2beta2.AppEngineHttpTarget),
1240
+ # this field is 16 by default.
1241
+ # * For [pull queues](google.cloud.tasks.v2beta2.PullTarget), this field
1242
+ # is output only and always 0.
1243
+ # Corresponds to the JSON property `maxDoublings`
1244
+ # @return [Fixnum]
1245
+ attr_accessor :max_doublings
1246
+
1247
+ # The minimum amount of time to wait before retrying a task after
1248
+ # it fails.
1249
+ # * For [App Engine queues](google.cloud.tasks.v2beta2.AppEngineHttpTarget),
1250
+ # this field is 0.1 seconds by default.
1251
+ # * For [pull queues](google.cloud.tasks.v2beta2.PullTarget), this
1252
+ # field is output only and always 0.
1253
+ # `min_backoff` will be truncated to the nearest second.
1254
+ # Corresponds to the JSON property `minBackoff`
1255
+ # @return [String]
1256
+ attr_accessor :min_backoff
1257
+
1258
+ # If positive, task_age_limit specifies the time limit for retrying a failed
1259
+ # task, measured from when the task was first run. If specified with
1260
+ # RetryConfig.max_attempts, the task will be retried until both
1261
+ # limits are reached.
1262
+ # If zero, then the task age is unlimited. This field is zero by default.
1263
+ # `task_age_limit` will be truncated to the nearest second.
1264
+ # Corresponds to the JSON property `taskAgeLimit`
1265
+ # @return [String]
1266
+ attr_accessor :task_age_limit
1267
+
1268
+ # If true, then the number of attempts is unlimited.
1269
+ # Corresponds to the JSON property `unlimitedAttempts`
1270
+ # @return [Boolean]
1271
+ attr_accessor :unlimited_attempts
1272
+ alias_method :unlimited_attempts?, :unlimited_attempts
1273
+
1274
+ def initialize(**args)
1275
+ update!(**args)
1276
+ end
1277
+
1278
+ # Update properties of this object
1279
+ def update!(**args)
1280
+ @max_attempts = args[:max_attempts] if args.key?(:max_attempts)
1281
+ @max_backoff = args[:max_backoff] if args.key?(:max_backoff)
1282
+ @max_doublings = args[:max_doublings] if args.key?(:max_doublings)
1283
+ @min_backoff = args[:min_backoff] if args.key?(:min_backoff)
1284
+ @task_age_limit = args[:task_age_limit] if args.key?(:task_age_limit)
1285
+ @unlimited_attempts = args[:unlimited_attempts] if args.key?(:unlimited_attempts)
1286
+ end
1287
+ end
1288
+
1289
+ # Request message for forcing a task to run now using
1290
+ # CloudTasks.RunTask.
1291
+ class RunTaskRequest
1292
+ include Google::Apis::Core::Hashable
1293
+
1294
+ # The response_view specifies which subset of the Task will be
1295
+ # returned.
1296
+ # By default response_view is Task.View.BASIC; not all
1297
+ # information is retrieved by default because some data, such as
1298
+ # payloads, might be desirable to return only when needed because
1299
+ # of its large size or because of the sensitivity of data that it
1300
+ # contains.
1301
+ # Authorization for Task.View.FULL requires `cloudtasks.tasks.fullView`
1302
+ # [Google IAM](/iam/) permission on the
1303
+ # Task.name resource.
1304
+ # Corresponds to the JSON property `responseView`
1305
+ # @return [String]
1306
+ attr_accessor :response_view
1307
+
1308
+ def initialize(**args)
1309
+ update!(**args)
1310
+ end
1311
+
1312
+ # Update properties of this object
1313
+ def update!(**args)
1314
+ @response_view = args[:response_view] if args.key?(:response_view)
1315
+ end
1316
+ end
1317
+
1318
+ # Request message for `SetIamPolicy` method.
1319
+ class SetIamPolicyRequest
1320
+ include Google::Apis::Core::Hashable
1321
+
1322
+ # Defines an Identity and Access Management (IAM) policy. It is used to
1323
+ # specify access control policies for Cloud Platform resources.
1324
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
1325
+ # `members` to a `role`, where the members can be user accounts, Google groups,
1326
+ # Google domains, and service accounts. A `role` is a named list of permissions
1327
+ # defined by IAM.
1328
+ # **Example**
1329
+ # `
1330
+ # "bindings": [
1331
+ # `
1332
+ # "role": "roles/owner",
1333
+ # "members": [
1334
+ # "user:mike@example.com",
1335
+ # "group:admins@example.com",
1336
+ # "domain:google.com",
1337
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
1338
+ # ]
1339
+ # `,
1340
+ # `
1341
+ # "role": "roles/viewer",
1342
+ # "members": ["user:sean@example.com"]
1343
+ # `
1344
+ # ]
1345
+ # `
1346
+ # For a description of IAM and its features, see the
1347
+ # [IAM developer's guide](https://cloud.google.com/iam).
1348
+ # Corresponds to the JSON property `policy`
1349
+ # @return [Google::Apis::CloudtasksV2beta2::Policy]
1350
+ attr_accessor :policy
1351
+
1352
+ def initialize(**args)
1353
+ update!(**args)
1354
+ end
1355
+
1356
+ # Update properties of this object
1357
+ def update!(**args)
1358
+ @policy = args[:policy] if args.key?(:policy)
1359
+ end
1360
+ end
1361
+
1362
+ # The `Status` type defines a logical error model that is suitable for different
1363
+ # programming environments, including REST APIs and RPC APIs. It is used by
1364
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
1365
+ # - Simple to use and understand for most users
1366
+ # - Flexible enough to meet unexpected needs
1367
+ # # Overview
1368
+ # The `Status` message contains three pieces of data: error code, error message,
1369
+ # and error details. The error code should be an enum value of
1370
+ # google.rpc.Code, but it may accept additional error codes if needed. The
1371
+ # error message should be a developer-facing English message that helps
1372
+ # developers *understand* and *resolve* the error. If a localized user-facing
1373
+ # error message is needed, put the localized message in the error details or
1374
+ # localize it in the client. The optional error details may contain arbitrary
1375
+ # information about the error. There is a predefined set of error detail types
1376
+ # in the package `google.rpc` that can be used for common error conditions.
1377
+ # # Language mapping
1378
+ # The `Status` message is the logical representation of the error model, but it
1379
+ # is not necessarily the actual wire format. When the `Status` message is
1380
+ # exposed in different client libraries and different wire protocols, it can be
1381
+ # mapped differently. For example, it will likely be mapped to some exceptions
1382
+ # in Java, but more likely mapped to some error codes in C.
1383
+ # # Other uses
1384
+ # The error model and the `Status` message can be used in a variety of
1385
+ # environments, either with or without APIs, to provide a
1386
+ # consistent developer experience across different environments.
1387
+ # Example uses of this error model include:
1388
+ # - Partial errors. If a service needs to return partial errors to the client,
1389
+ # it may embed the `Status` in the normal response to indicate the partial
1390
+ # errors.
1391
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
1392
+ # have a `Status` message for error reporting.
1393
+ # - Batch operations. If a client uses batch request and batch response, the
1394
+ # `Status` message should be used directly inside batch response, one for
1395
+ # each error sub-response.
1396
+ # - Asynchronous operations. If an API call embeds asynchronous operation
1397
+ # results in its response, the status of those operations should be
1398
+ # represented directly using the `Status` message.
1399
+ # - Logging. If some API errors are stored in logs, the message `Status` could
1400
+ # be used directly after any stripping needed for security/privacy reasons.
1401
+ class Status
1402
+ include Google::Apis::Core::Hashable
1403
+
1404
+ # The status code, which should be an enum value of google.rpc.Code.
1405
+ # Corresponds to the JSON property `code`
1406
+ # @return [Fixnum]
1407
+ attr_accessor :code
1408
+
1409
+ # A list of messages that carry the error details. There is a common set of
1410
+ # message types for APIs to use.
1411
+ # Corresponds to the JSON property `details`
1412
+ # @return [Array<Hash<String,Object>>]
1413
+ attr_accessor :details
1414
+
1415
+ # A developer-facing error message, which should be in English. Any
1416
+ # user-facing error message should be localized and sent in the
1417
+ # google.rpc.Status.details field, or localized by the client.
1418
+ # Corresponds to the JSON property `message`
1419
+ # @return [String]
1420
+ attr_accessor :message
1421
+
1422
+ def initialize(**args)
1423
+ update!(**args)
1424
+ end
1425
+
1426
+ # Update properties of this object
1427
+ def update!(**args)
1428
+ @code = args[:code] if args.key?(:code)
1429
+ @details = args[:details] if args.key?(:details)
1430
+ @message = args[:message] if args.key?(:message)
1431
+ end
1432
+ end
1433
+
1434
+ # A unit of scheduled work.
1435
+ class Task
1436
+ include Google::Apis::Core::Hashable
1437
+
1438
+ # App Engine HTTP request.
1439
+ # The message defines the HTTP request that is sent to an App Engine app when
1440
+ # the task is dispatched.
1441
+ # This proto can only be used for tasks in a queue which has
1442
+ # Queue.app_engine_http_target set.
1443
+ # Using this type of target requires
1444
+ # [`appengine.applications.get`](/appengine/docs/admin-api/access-control)
1445
+ # Google IAM permission for the project
1446
+ # and the following scope:
1447
+ # `https://www.googleapis.com/auth/cloud-platform`
1448
+ # The task will be delivered to the App Engine app which belongs to the same
1449
+ # project as the queue. For more information, see
1450
+ # [How Requests are Routed](/appengine/docs/standard/python/how-requests-are-
1451
+ # routed)
1452
+ # and how routing is affected by
1453
+ # [dispatch files](/appengine/docs/python/config/dispatchref).
1454
+ # The AppEngineRouting used to construct the URL that the task is
1455
+ # delivered to can be set at the queue-level or task-level:
1456
+ # * If set, AppEngineHttpTarget.app_engine_routing_override is used for
1457
+ # all tasks in the queue, no matter what the setting is for the
1458
+ # task-level app_engine_routing.
1459
+ # The `url` that the task will be sent to is:
1460
+ # * `url =` AppEngineRouting.host `+` AppEngineHttpRequest.relative_url
1461
+ # The task will be sent to a task handler by an HTTP
1462
+ # request using the specified AppEngineHttpRequest.http_method (for example
1463
+ # POST, HTTP GET, etc). The task attempt has succeeded if the task handler
1464
+ # returns an HTTP response code in the range [200 - 299]. Error 503 is
1465
+ # considered an App Engine system error instead of an application error.
1466
+ # Requests returning error 503 will be retried regardless of retry
1467
+ # configuration and not counted against retry counts.
1468
+ # Any other response code or a failure to receive a response before the
1469
+ # deadline is a failed attempt.
1470
+ # Corresponds to the JSON property `appEngineHttpRequest`
1471
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineHttpRequest]
1472
+ attr_accessor :app_engine_http_request
1473
+
1474
+ # Deprecated. Use AppEngineHttpRequest.
1475
+ # Corresponds to the JSON property `appEngineTaskTarget`
1476
+ # @return [Google::Apis::CloudtasksV2beta2::AppEngineTaskTarget]
1477
+ attr_accessor :app_engine_task_target
1478
+
1479
+ # Output only.
1480
+ # The time that the task was created.
1481
+ # `create_time` will be truncated to the nearest second.
1482
+ # Corresponds to the JSON property `createTime`
1483
+ # @return [String]
1484
+ attr_accessor :create_time
1485
+
1486
+ # The task name.
1487
+ # The task name must have the following format:
1488
+ # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`
1489
+ # * `PROJECT_ID` can contain uppercase and lowercase letters,
1490
+ # numbers, hyphens, colons, and periods; that is, it must match
1491
+ # the regular expression: `[a-zA-Z\\d-:\\.]+`.
1492
+ # * `QUEUE_ID` can contain uppercase and lowercase letters,
1493
+ # numbers, and hyphens; that is, it must match the regular
1494
+ # expression: `[a-zA-Z\\d-]+`. The maximum length is 100
1495
+ # characters.
1496
+ # * `TASK_ID` contain uppercase and lowercase letters, numbers,
1497
+ # underscores, and hyphens; that is, it must match the regular
1498
+ # expression: `[a-zA-Z\\d_-]+`. The maximum length is 500
1499
+ # characters.
1500
+ # Optionally caller-specified in CreateTaskRequest.
1501
+ # Corresponds to the JSON property `name`
1502
+ # @return [String]
1503
+ attr_accessor :name
1504
+
1505
+ # The pull message contains data that can be used by the caller of
1506
+ # CloudTasks.PullTasks to process the task.
1507
+ # This proto can only be used for tasks in a queue which has
1508
+ # Queue.pull_target set.
1509
+ # Corresponds to the JSON property `pullMessage`
1510
+ # @return [Google::Apis::CloudtasksV2beta2::PullMessage]
1511
+ attr_accessor :pull_message
1512
+
1513
+ # Deprecated. Use PullMessage.
1514
+ # Corresponds to the JSON property `pullTaskTarget`
1515
+ # @return [Google::Apis::CloudtasksV2beta2::PullTaskTarget]
1516
+ attr_accessor :pull_task_target
1517
+
1518
+ # The time when the task is scheduled to be attempted.
1519
+ # For pull queues, this is the time when the task is available to
1520
+ # be leased; if a task is currently leased, this is the time when
1521
+ # the current lease expires, that is, the time that the task was
1522
+ # leased plus the PullTasksRequest.lease_duration.
1523
+ # For App Engine queues, this is when the task will be attempted or retried.
1524
+ # `schedule_time` will be truncated to the nearest microsecond.
1525
+ # Corresponds to the JSON property `scheduleTime`
1526
+ # @return [String]
1527
+ attr_accessor :schedule_time
1528
+
1529
+ # Status of the task.
1530
+ # Corresponds to the JSON property `taskStatus`
1531
+ # @return [Google::Apis::CloudtasksV2beta2::TaskStatus]
1532
+ attr_accessor :task_status
1533
+
1534
+ # Output only.
1535
+ # The view specifies which subset of the Task has been
1536
+ # returned.
1537
+ # Corresponds to the JSON property `view`
1538
+ # @return [String]
1539
+ attr_accessor :view
1540
+
1541
+ def initialize(**args)
1542
+ update!(**args)
1543
+ end
1544
+
1545
+ # Update properties of this object
1546
+ def update!(**args)
1547
+ @app_engine_http_request = args[:app_engine_http_request] if args.key?(:app_engine_http_request)
1548
+ @app_engine_task_target = args[:app_engine_task_target] if args.key?(:app_engine_task_target)
1549
+ @create_time = args[:create_time] if args.key?(:create_time)
1550
+ @name = args[:name] if args.key?(:name)
1551
+ @pull_message = args[:pull_message] if args.key?(:pull_message)
1552
+ @pull_task_target = args[:pull_task_target] if args.key?(:pull_task_target)
1553
+ @schedule_time = args[:schedule_time] if args.key?(:schedule_time)
1554
+ @task_status = args[:task_status] if args.key?(:task_status)
1555
+ @view = args[:view] if args.key?(:view)
1556
+ end
1557
+ end
1558
+
1559
+ # Status of the task.
1560
+ class TaskStatus
1561
+ include Google::Apis::Core::Hashable
1562
+
1563
+ # Output only.
1564
+ # The number of attempts dispatched. This count includes tasks which have
1565
+ # been dispatched but haven't received a response.
1566
+ # Corresponds to the JSON property `attemptDispatchCount`
1567
+ # @return [Fixnum]
1568
+ attr_accessor :attempt_dispatch_count
1569
+
1570
+ # Output only.
1571
+ # The number of attempts which have received a response.
1572
+ # This field is not calculated for
1573
+ # [pull tasks](google.cloud.tasks.v2beta2.PullTaskTarget).
1574
+ # Corresponds to the JSON property `attemptResponseCount`
1575
+ # @return [Fixnum]
1576
+ attr_accessor :attempt_response_count
1577
+
1578
+ # The status of a task attempt.
1579
+ # Corresponds to the JSON property `firstAttemptStatus`
1580
+ # @return [Google::Apis::CloudtasksV2beta2::AttemptStatus]
1581
+ attr_accessor :first_attempt_status
1582
+
1583
+ # The status of a task attempt.
1584
+ # Corresponds to the JSON property `lastAttemptStatus`
1585
+ # @return [Google::Apis::CloudtasksV2beta2::AttemptStatus]
1586
+ attr_accessor :last_attempt_status
1587
+
1588
+ def initialize(**args)
1589
+ update!(**args)
1590
+ end
1591
+
1592
+ # Update properties of this object
1593
+ def update!(**args)
1594
+ @attempt_dispatch_count = args[:attempt_dispatch_count] if args.key?(:attempt_dispatch_count)
1595
+ @attempt_response_count = args[:attempt_response_count] if args.key?(:attempt_response_count)
1596
+ @first_attempt_status = args[:first_attempt_status] if args.key?(:first_attempt_status)
1597
+ @last_attempt_status = args[:last_attempt_status] if args.key?(:last_attempt_status)
1598
+ end
1599
+ end
1600
+
1601
+ # Request message for `TestIamPermissions` method.
1602
+ class TestIamPermissionsRequest
1603
+ include Google::Apis::Core::Hashable
1604
+
1605
+ # The set of permissions to check for the `resource`. Permissions with
1606
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
1607
+ # information see
1608
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1609
+ # Corresponds to the JSON property `permissions`
1610
+ # @return [Array<String>]
1611
+ attr_accessor :permissions
1612
+
1613
+ def initialize(**args)
1614
+ update!(**args)
1615
+ end
1616
+
1617
+ # Update properties of this object
1618
+ def update!(**args)
1619
+ @permissions = args[:permissions] if args.key?(:permissions)
1620
+ end
1621
+ end
1622
+
1623
+ # Response message for `TestIamPermissions` method.
1624
+ class TestIamPermissionsResponse
1625
+ include Google::Apis::Core::Hashable
1626
+
1627
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
1628
+ # allowed.
1629
+ # Corresponds to the JSON property `permissions`
1630
+ # @return [Array<String>]
1631
+ attr_accessor :permissions
1632
+
1633
+ def initialize(**args)
1634
+ update!(**args)
1635
+ end
1636
+
1637
+ # Update properties of this object
1638
+ def update!(**args)
1639
+ @permissions = args[:permissions] if args.key?(:permissions)
1640
+ end
1641
+ end
1642
+
1643
+ # Throttle config.
1644
+ # These settings determine the throttling behavior.
1645
+ class ThrottleConfig
1646
+ include Google::Apis::Core::Hashable
1647
+
1648
+ # Output only.
1649
+ # The max burst size limits how fast the queue is processed when
1650
+ # many tasks are in the queue and the rate is high. This field
1651
+ # allows the queue to have a high rate so processing starts shortly
1652
+ # after a task is enqueued, but still limits resource usage when
1653
+ # many tasks are enqueued in a short period of time.
1654
+ # * For App Engine queues, if
1655
+ # ThrottleConfig.max_tasks_dispatched_per_second is 1, this
1656
+ # field is 10; otherwise this field is
1657
+ # ThrottleConfig.max_tasks_dispatched_per_second / 5.
1658
+ # * For pull queues, this field is output only and always 10,000.
1659
+ # Note: For App Engine queues that were created through
1660
+ # `queue.yaml/xml`, `max_burst_size` might not have the same
1661
+ # settings as specified above; CloudTasks.UpdateQueue can be
1662
+ # used to set `max_burst_size` only to the values specified above.
1663
+ # This field has the same meaning as
1664
+ # [bucket_size in queue.yaml](/appengine/docs/standard/python/config/queueref#
1665
+ # bucket_size).
1666
+ # Corresponds to the JSON property `maxBurstSize`
1667
+ # @return [Fixnum]
1668
+ attr_accessor :max_burst_size
1669
+
1670
+ # The maximum number of outstanding tasks that Cloud Tasks allows
1671
+ # to be dispatched for this queue. After this threshold has been
1672
+ # reached, Cloud Tasks stops dispatching tasks until the number of
1673
+ # outstanding requests decreases.
1674
+ # The maximum allowed value is 5,000.
1675
+ # * For App Engine queues, this field is 10 by default.
1676
+ # * For pull queues, this field is output only and always -1, which
1677
+ # indicates no limit.
1678
+ # This field has the same meaning as
1679
+ # [max_concurrent_requests in queue.yaml](/appengine/docs/standard/python/config/
1680
+ # queueref#max_concurrent_requests).
1681
+ # Corresponds to the JSON property `maxOutstandingTasks`
1682
+ # @return [Fixnum]
1683
+ attr_accessor :max_outstanding_tasks
1684
+
1685
+ # The maximum rate at which tasks are dispatched from this
1686
+ # queue.
1687
+ # The maximum allowed value is 500.
1688
+ # * For App Engine queues, this field is 1 by default.
1689
+ # * For pull queues, this field is output only and always 10,000.
1690
+ # This field has the same meaning as
1691
+ # [rate in queue.yaml](/appengine/docs/standard/python/config/queueref#rate).
1692
+ # Corresponds to the JSON property `maxTasksDispatchedPerSecond`
1693
+ # @return [Float]
1694
+ attr_accessor :max_tasks_dispatched_per_second
1695
+
1696
+ def initialize(**args)
1697
+ update!(**args)
1698
+ end
1699
+
1700
+ # Update properties of this object
1701
+ def update!(**args)
1702
+ @max_burst_size = args[:max_burst_size] if args.key?(:max_burst_size)
1703
+ @max_outstanding_tasks = args[:max_outstanding_tasks] if args.key?(:max_outstanding_tasks)
1704
+ @max_tasks_dispatched_per_second = args[:max_tasks_dispatched_per_second] if args.key?(:max_tasks_dispatched_per_second)
1705
+ end
1706
+ end
1707
+ end
1708
+ end
1709
+ end