google-api-client 0.13.6 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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