google-api-client 0.25.0 → 0.26.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (265) hide show
  1. checksums.yaml +4 -4
  2. data/{CONTRIBUTING.md → .github/CONTRIBUTING.md} +0 -0
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +36 -0
  4. data/.github/ISSUE_TEMPLATE/feature_request.md +21 -0
  5. data/.github/ISSUE_TEMPLATE/support_request.md +7 -0
  6. data/.kokoro/build.bat +8 -0
  7. data/.kokoro/build.sh +36 -0
  8. data/.kokoro/common.cfg +22 -0
  9. data/.kokoro/continuous/common.cfg +20 -0
  10. data/.kokoro/continuous/linux.cfg +15 -0
  11. data/.kokoro/continuous/osx.cfg +3 -0
  12. data/.kokoro/continuous/windows.cfg +3 -0
  13. data/.kokoro/osx.sh +35 -0
  14. data/.kokoro/presubmit/common.cfg +19 -0
  15. data/.kokoro/presubmit/linux.cfg +14 -0
  16. data/.kokoro/presubmit/osx.cfg +3 -0
  17. data/.kokoro/presubmit/windows.cfg +3 -0
  18. data/.kokoro/trampoline.sh +24 -0
  19. data/.kokoro/windows.sh +32 -0
  20. data/CHANGELOG.md +83 -0
  21. data/Gemfile +2 -2
  22. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  23. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +3 -1
  24. data/generated/google/apis/alertcenter_v1beta1.rb +5 -3
  25. data/generated/google/apis/alertcenter_v1beta1/classes.rb +110 -101
  26. data/generated/google/apis/alertcenter_v1beta1/representations.rb +13 -0
  27. data/generated/google/apis/alertcenter_v1beta1/service.rb +83 -76
  28. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  29. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +7 -0
  30. data/generated/google/apis/androiddeviceprovisioning_v1/representations.rb +2 -0
  31. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +1 -1
  32. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  33. data/generated/google/apis/androidenterprise_v1/classes.rb +129 -44
  34. data/generated/google/apis/androidenterprise_v1/representations.rb +48 -0
  35. data/generated/google/apis/androidenterprise_v1/service.rb +218 -0
  36. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  37. data/generated/google/apis/androidmanagement_v1/classes.rb +1 -1
  38. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  39. data/generated/google/apis/androidpublisher_v3/classes.rb +8 -0
  40. data/generated/google/apis/androidpublisher_v3/representations.rb +1 -0
  41. data/generated/google/apis/appengine_v1.rb +1 -1
  42. data/generated/google/apis/appengine_v1beta.rb +1 -1
  43. data/generated/google/apis/bigquery_v2.rb +1 -1
  44. data/generated/google/apis/bigquery_v2/classes.rb +87 -29
  45. data/generated/google/apis/bigquery_v2/representations.rb +21 -0
  46. data/generated/google/apis/bigquery_v2/service.rb +7 -9
  47. data/generated/google/apis/calendar_v3.rb +2 -2
  48. data/generated/google/apis/calendar_v3/classes.rb +14 -6
  49. data/generated/google/apis/classroom_v1.rb +1 -1
  50. data/generated/google/apis/classroom_v1/service.rb +1 -1
  51. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  52. data/generated/google/apis/cloudasset_v1beta1/classes.rb +14 -10
  53. data/generated/google/apis/cloudasset_v1beta1/service.rb +4 -4
  54. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  55. data/generated/google/apis/clouddebugger_v2/classes.rb +2 -2
  56. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  57. data/generated/google/apis/cloudfunctions_v1/classes.rb +2 -3
  58. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  59. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +2 -3
  60. data/generated/google/apis/cloudiot_v1.rb +1 -1
  61. data/generated/google/apis/cloudiot_v1/classes.rb +127 -0
  62. data/generated/google/apis/cloudiot_v1/representations.rb +70 -0
  63. data/generated/google/apis/cloudiot_v1/service.rb +172 -2
  64. data/generated/google/apis/cloudkms_v1.rb +1 -1
  65. data/generated/google/apis/cloudkms_v1/service.rb +107 -0
  66. data/generated/google/apis/{cloudiot_v1beta1.rb → cloudscheduler_v1beta1.rb} +8 -12
  67. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +882 -0
  68. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +264 -0
  69. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +445 -0
  70. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  71. data/generated/google/apis/cloudsearch_v1/classes.rb +79 -1
  72. data/generated/google/apis/cloudsearch_v1/representations.rb +44 -0
  73. data/generated/google/apis/cloudsearch_v1/service.rb +88 -3
  74. data/generated/google/apis/composer_v1.rb +1 -1
  75. data/generated/google/apis/composer_v1/classes.rb +9 -0
  76. data/generated/google/apis/composer_v1/representations.rb +1 -0
  77. data/generated/google/apis/compute_alpha.rb +1 -1
  78. data/generated/google/apis/compute_alpha/classes.rb +938 -117
  79. data/generated/google/apis/compute_alpha/representations.rb +310 -2
  80. data/generated/google/apis/compute_alpha/service.rb +1203 -245
  81. data/generated/google/apis/compute_beta.rb +1 -1
  82. data/generated/google/apis/compute_beta/classes.rb +1175 -219
  83. data/generated/google/apis/compute_beta/representations.rb +375 -2
  84. data/generated/google/apis/compute_beta/service.rb +907 -139
  85. data/generated/google/apis/compute_v1.rb +1 -1
  86. data/generated/google/apis/compute_v1/classes.rb +1485 -143
  87. data/generated/google/apis/compute_v1/representations.rb +503 -0
  88. data/generated/google/apis/compute_v1/service.rb +1375 -85
  89. data/generated/google/apis/container_v1.rb +3 -3
  90. data/generated/google/apis/container_v1/classes.rb +99 -6
  91. data/generated/google/apis/container_v1/representations.rb +39 -0
  92. data/generated/google/apis/container_v1/service.rb +2 -2
  93. data/generated/google/apis/container_v1beta1.rb +3 -3
  94. data/generated/google/apis/container_v1beta1/classes.rb +162 -9
  95. data/generated/google/apis/container_v1beta1/representations.rb +80 -0
  96. data/generated/google/apis/container_v1beta1/service.rb +3 -3
  97. data/generated/google/apis/content_v2.rb +1 -1
  98. data/generated/google/apis/content_v2/classes.rb +40 -32
  99. data/generated/google/apis/content_v2/representations.rb +0 -1
  100. data/generated/google/apis/content_v2/service.rb +3 -3
  101. data/generated/google/apis/content_v2_1.rb +35 -0
  102. data/generated/google/apis/content_v2_1/classes.rb +9104 -0
  103. data/generated/google/apis/content_v2_1/representations.rb +3967 -0
  104. data/generated/google/apis/content_v2_1/service.rb +3463 -0
  105. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  106. data/generated/google/apis/dataflow_v1b3/classes.rb +82 -0
  107. data/generated/google/apis/dataflow_v1b3/representations.rb +33 -0
  108. data/generated/google/apis/dataflow_v1b3/service.rb +97 -6
  109. data/generated/google/apis/dataproc_v1.rb +1 -1
  110. data/generated/google/apis/dataproc_v1/classes.rb +15 -1
  111. data/generated/google/apis/dataproc_v1/representations.rb +2 -0
  112. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  113. data/generated/google/apis/dataproc_v1beta2/classes.rb +125 -1
  114. data/generated/google/apis/dataproc_v1beta2/representations.rb +41 -0
  115. data/generated/google/apis/dialogflow_v2.rb +1 -1
  116. data/generated/google/apis/dialogflow_v2/classes.rb +13 -6
  117. data/generated/google/apis/dialogflow_v2/service.rb +2 -0
  118. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  119. data/generated/google/apis/dialogflow_v2beta1/classes.rb +26 -6
  120. data/generated/google/apis/dialogflow_v2beta1/representations.rb +12 -0
  121. data/generated/google/apis/dialogflow_v2beta1/service.rb +261 -12
  122. data/generated/google/apis/dlp_v2.rb +1 -1
  123. data/generated/google/apis/dlp_v2/classes.rb +4 -4
  124. data/generated/google/apis/dns_v1beta2.rb +1 -1
  125. data/generated/google/apis/dns_v1beta2/classes.rb +326 -0
  126. data/generated/google/apis/dns_v1beta2/representations.rb +149 -0
  127. data/generated/google/apis/dns_v1beta2/service.rb +246 -0
  128. data/generated/google/apis/drive_v2.rb +3 -3
  129. data/generated/google/apis/drive_v3.rb +3 -3
  130. data/generated/google/apis/driveactivity_v2.rb +37 -0
  131. data/generated/google/apis/driveactivity_v2/classes.rb +1388 -0
  132. data/generated/google/apis/driveactivity_v2/representations.rb +799 -0
  133. data/generated/google/apis/driveactivity_v2/service.rb +89 -0
  134. data/generated/google/apis/firebasedynamiclinks_v1.rb +1 -1
  135. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +8 -1
  136. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +1 -0
  137. data/generated/google/apis/firebasehosting_v1beta1.rb +3 -2
  138. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +43 -17
  139. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +13 -0
  140. data/generated/google/apis/firebasehosting_v1beta1/service.rb +74 -1
  141. data/generated/google/apis/firestore_v1.rb +1 -1
  142. data/generated/google/apis/firestore_v1/classes.rb +2225 -520
  143. data/generated/google/apis/firestore_v1/representations.rb +800 -33
  144. data/generated/google/apis/firestore_v1/service.rb +526 -0
  145. data/generated/google/apis/fitness_v1.rb +1 -1
  146. data/generated/google/apis/fitness_v1/classes.rb +1 -2
  147. data/generated/google/apis/fitness_v1/service.rb +7 -3
  148. data/generated/google/apis/games_management_v1management.rb +1 -4
  149. data/generated/google/apis/games_v1.rb +1 -4
  150. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  151. data/generated/google/apis/genomics_v2alpha1/classes.rb +6 -1
  152. data/generated/google/apis/gmail_v1.rb +2 -2
  153. data/generated/google/apis/iap_v1.rb +34 -0
  154. data/generated/google/apis/iap_v1/classes.rb +308 -0
  155. data/generated/google/apis/iap_v1/representations.rb +126 -0
  156. data/generated/google/apis/iap_v1/service.rb +725 -0
  157. data/generated/google/apis/iap_v1beta1.rb +1 -1
  158. data/generated/google/apis/iap_v1beta1/classes.rb +0 -132
  159. data/generated/google/apis/iap_v1beta1/representations.rb +0 -32
  160. data/generated/google/apis/jobs_v2.rb +1 -1
  161. data/generated/google/apis/jobs_v2/classes.rb +8 -9
  162. data/generated/google/apis/jobs_v3.rb +1 -1
  163. data/generated/google/apis/jobs_v3/classes.rb +6 -6
  164. data/generated/google/apis/jobs_v3/service.rb +8 -8
  165. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  166. data/generated/google/apis/jobs_v3p1beta1/classes.rb +9 -9
  167. data/generated/google/apis/jobs_v3p1beta1/service.rb +8 -8
  168. data/generated/google/apis/monitoring_v3.rb +1 -1
  169. data/generated/google/apis/monitoring_v3/classes.rb +20 -7
  170. data/generated/google/apis/monitoring_v3/representations.rb +1 -0
  171. data/generated/google/apis/monitoring_v3/service.rb +0 -365
  172. data/generated/google/apis/pagespeedonline_v5.rb +32 -0
  173. data/generated/google/apis/pagespeedonline_v5/classes.rb +724 -0
  174. data/generated/google/apis/pagespeedonline_v5/representations.rb +315 -0
  175. data/generated/google/apis/pagespeedonline_v5/service.rb +116 -0
  176. data/generated/google/apis/people_v1.rb +3 -3
  177. data/generated/google/apis/pubsub_v1.rb +1 -1
  178. data/generated/google/apis/pubsub_v1/classes.rb +63 -12
  179. data/generated/google/apis/pubsub_v1/representations.rb +15 -0
  180. data/generated/google/apis/pubsub_v1/service.rb +26 -18
  181. data/generated/google/apis/redis_v1.rb +2 -3
  182. data/generated/google/apis/redis_v1/service.rb +1 -2
  183. data/generated/google/apis/redis_v1beta1.rb +2 -3
  184. data/generated/google/apis/redis_v1beta1/service.rb +1 -2
  185. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  186. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +2 -2
  187. data/generated/google/apis/script_v1.rb +24 -6
  188. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  189. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +66 -1
  190. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +30 -0
  191. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +89 -0
  192. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  193. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  194. data/generated/google/apis/servicemanagement_v1/classes.rb +7 -0
  195. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -0
  196. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  197. data/generated/google/apis/servicenetworking_v1beta/classes.rb +84 -37
  198. data/generated/google/apis/servicenetworking_v1beta/representations.rb +15 -0
  199. data/generated/google/apis/servicenetworking_v1beta/service.rb +132 -43
  200. data/generated/google/apis/serviceusage_v1.rb +1 -1
  201. data/generated/google/apis/serviceusage_v1/classes.rb +1 -1
  202. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  203. data/generated/google/apis/serviceusage_v1beta1/classes.rb +1 -1
  204. data/generated/google/apis/sheets_v4.rb +4 -4
  205. data/generated/google/apis/slides_v1.rb +4 -4
  206. data/generated/google/apis/slides_v1/classes.rb +187 -2
  207. data/generated/google/apis/slides_v1/representations.rb +67 -0
  208. data/generated/google/apis/slides_v1/service.rb +4 -3
  209. data/generated/google/apis/sourcerepo_v1.rb +2 -2
  210. data/generated/google/apis/sourcerepo_v1/service.rb +1 -1
  211. data/generated/google/apis/speech_v1.rb +1 -1
  212. data/generated/google/apis/speech_v1/classes.rb +58 -10
  213. data/generated/google/apis/speech_v1/representations.rb +29 -1
  214. data/generated/google/apis/{speech_v1beta1.rb → speech_v1p1beta1.rb} +6 -6
  215. data/generated/google/apis/speech_v1p1beta1/classes.rb +922 -0
  216. data/generated/google/apis/speech_v1p1beta1/representations.rb +294 -0
  217. data/generated/google/apis/{speech_v1beta1 → speech_v1p1beta1}/service.rb +33 -35
  218. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  219. data/generated/google/apis/sqladmin_v1beta4/classes.rb +64 -3
  220. data/generated/google/apis/sqladmin_v1beta4/representations.rb +31 -0
  221. data/generated/google/apis/storage_v1.rb +1 -1
  222. data/generated/google/apis/storage_v1/classes.rb +54 -0
  223. data/generated/google/apis/storage_v1/representations.rb +31 -0
  224. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  225. data/generated/google/apis/streetviewpublish_v1/classes.rb +26 -0
  226. data/generated/google/apis/streetviewpublish_v1/representations.rb +4 -0
  227. data/generated/google/apis/streetviewpublish_v1/service.rb +29 -3
  228. data/generated/google/apis/tasks_v1.rb +1 -1
  229. data/generated/google/apis/testing_v1.rb +1 -1
  230. data/generated/google/apis/testing_v1/classes.rb +49 -19
  231. data/generated/google/apis/testing_v1/representations.rb +20 -2
  232. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  233. data/generated/google/apis/toolresults_v1beta3/classes.rb +77 -70
  234. data/generated/google/apis/vault_v1.rb +1 -1
  235. data/generated/google/apis/vault_v1/classes.rb +78 -7
  236. data/generated/google/apis/vault_v1/representations.rb +34 -1
  237. data/generated/google/apis/vault_v1/service.rb +141 -0
  238. data/generated/google/apis/vision_v1.rb +1 -1
  239. data/generated/google/apis/vision_v1/classes.rb +33 -0
  240. data/generated/google/apis/vision_v1/representations.rb +16 -0
  241. data/generated/google/apis/vision_v1/service.rb +2 -2
  242. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  243. data/generated/google/apis/vision_v1p1beta1/classes.rb +33 -0
  244. data/generated/google/apis/vision_v1p1beta1/representations.rb +16 -0
  245. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  246. data/generated/google/apis/vision_v1p2beta1/classes.rb +33 -0
  247. data/generated/google/apis/vision_v1p2beta1/representations.rb +16 -0
  248. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  249. data/google-api-client.gemspec +1 -1
  250. data/lib/google/api_client/auth/installed_app.rb +17 -2
  251. data/lib/google/api_client/client_secrets.rb +1 -1
  252. data/lib/google/apis/core/download.rb +2 -2
  253. data/lib/google/apis/errors.rb +9 -0
  254. data/lib/google/apis/generator/annotator.rb +2 -2
  255. data/lib/google/apis/version.rb +1 -1
  256. metadata +46 -17
  257. data/generated/google/apis/cloudiot_v1beta1/classes.rb +0 -959
  258. data/generated/google/apis/cloudiot_v1beta1/representations.rb +0 -375
  259. data/generated/google/apis/cloudiot_v1beta1/service.rb +0 -618
  260. data/generated/google/apis/dfareporting_v3_0.rb +0 -40
  261. data/generated/google/apis/dfareporting_v3_0/classes.rb +0 -12119
  262. data/generated/google/apis/dfareporting_v3_0/representations.rb +0 -4336
  263. data/generated/google/apis/dfareporting_v3_0/service.rb +0 -8701
  264. data/generated/google/apis/speech_v1beta1/classes.rb +0 -480
  265. data/generated/google/apis/speech_v1beta1/representations.rb +0 -194
@@ -12,27 +12,23 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
- require 'google/apis/cloudiot_v1beta1/service.rb'
16
- require 'google/apis/cloudiot_v1beta1/classes.rb'
17
- require 'google/apis/cloudiot_v1beta1/representations.rb'
15
+ require 'google/apis/cloudscheduler_v1beta1/service.rb'
16
+ require 'google/apis/cloudscheduler_v1beta1/classes.rb'
17
+ require 'google/apis/cloudscheduler_v1beta1/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # Google Cloud IoT API
21
+ # Cloud Scheduler API
22
22
  #
23
- # Registers and manages IoT (Internet of Things) devices that connect to the
24
- # Google Cloud Platform.
23
+ # Creates and manages jobs run on a regular recurring schedule.
25
24
  #
26
- # @see https://cloud.google.com/iot
27
- module CloudiotV1beta1
25
+ # @see https://cloud.google.com/scheduler/
26
+ module CloudschedulerV1beta1
28
27
  VERSION = 'V1beta1'
29
- REVISION = '20171227'
28
+ REVISION = '20181120'
30
29
 
31
30
  # View and manage your data across Google Cloud Platform services
32
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
33
-
34
- # Register and manage devices in the Google Cloud IoT service
35
- AUTH_CLOUDIOT = 'https://www.googleapis.com/auth/cloudiot'
36
32
  end
37
33
  end
38
34
  end
@@ -0,0 +1,882 @@
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 CloudschedulerV1beta1
24
+
25
+ # App Engine target. The job will be pushed to a job handler by means
26
+ # of an HTTP request via an http_method such
27
+ # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
28
+ # HTTP response code in the range [200 - 299]. Error 503 is
29
+ # considered an App Engine system error instead of an application
30
+ # error. Requests returning error 503 will be retried regardless of
31
+ # retry configuration and not counted against retry counts. Any other
32
+ # response code, or a failure to receive a response before the
33
+ # deadline, constitutes a failed attempt.
34
+ class AppEngineHttpTarget
35
+ include Google::Apis::Core::Hashable
36
+
37
+ # App Engine Routing.
38
+ # For more information about services, versions, and instances see
39
+ # [An Overview of App Engine](https://cloud.google.com/appengine/docs/python/an-
40
+ # overview-of-app-engine),
41
+ # [Microservices Architecture on Google App Engine](https://cloud.google.com/
42
+ # appengine/docs/python/microservices-on-app-engine),
43
+ # [App Engine Standard request routing](https://cloud.google.com/appengine/docs/
44
+ # standard/python/how-requests-are-routed), and
45
+ # [App Engine Flex request routing](https://cloud.google.com/appengine/docs/
46
+ # flexible/python/how-requests-are-routed).
47
+ # Corresponds to the JSON property `appEngineRouting`
48
+ # @return [Google::Apis::CloudschedulerV1beta1::AppEngineRouting]
49
+ attr_accessor :app_engine_routing
50
+
51
+ # Body.
52
+ # HTTP request body. A request body is allowed only if the HTTP method is
53
+ # POST or PUT. It will result in invalid argument error to set a body on a
54
+ # job with an incompatible HttpMethod.
55
+ # Corresponds to the JSON property `body`
56
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
57
+ # @return [String]
58
+ attr_accessor :body
59
+
60
+ # HTTP request headers.
61
+ # This map contains the header field names and values. Headers can be set
62
+ # when the job is created.
63
+ # Cloud Scheduler sets some headers to default values:
64
+ # * `User-Agent`: By default, this header is
65
+ # `"AppEngine-Google; (+http://code.google.com/appengine)"`.
66
+ # This header can be modified, but Cloud Scheduler will append
67
+ # `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
68
+ # modified `User-Agent`.
69
+ # If the job has an body, Cloud Scheduler sets the
70
+ # following headers:
71
+ # * `Content-Type`: By default, the `Content-Type` header is set to
72
+ # `"application/octet-stream"`. The default can be overridden by explictly
73
+ # setting `Content-Type` to a particular media type when the job is
74
+ # created.
75
+ # For example, `Content-Type` can be set to `"application/json"`.
76
+ # * `Content-Length`: This is computed by Cloud Scheduler. This value is
77
+ # output only. It cannot be changed.
78
+ # The headers below are output only. They cannot be set or overridden:
79
+ # * `X-Google-*`: For Google internal use only.
80
+ # * `X-AppEngine-*`: For Google internal use only. See
81
+ # [Reading request headers](https://cloud.google.com/appengine/docs/python/
82
+ # taskqueue/push/creating-handlers#reading_request_headers).
83
+ # In addition, some App Engine headers, which contain
84
+ # job-specific information, are also be sent to the job handler; see
85
+ # [request headers](https://cloud.google.comappengine/docs/standard/python/
86
+ # config/cron#securing_urls_for_cron).
87
+ # Corresponds to the JSON property `headers`
88
+ # @return [Hash<String,String>]
89
+ attr_accessor :headers
90
+
91
+ # The HTTP method to use for the request. PATCH and OPTIONS are not
92
+ # permitted.
93
+ # Corresponds to the JSON property `httpMethod`
94
+ # @return [String]
95
+ attr_accessor :http_method
96
+
97
+ # The relative URI.
98
+ # The relative URL must begin with "/" and must be a valid HTTP relative URL.
99
+ # It can contain a path, query string arguments, and `#` fragments.
100
+ # If the relative URL is empty, then the root path "/" will be used.
101
+ # No spaces are allowed, and the maximum length allowed is 2083 characters.
102
+ # Corresponds to the JSON property `relativeUri`
103
+ # @return [String]
104
+ attr_accessor :relative_uri
105
+
106
+ def initialize(**args)
107
+ update!(**args)
108
+ end
109
+
110
+ # Update properties of this object
111
+ def update!(**args)
112
+ @app_engine_routing = args[:app_engine_routing] if args.key?(:app_engine_routing)
113
+ @body = args[:body] if args.key?(:body)
114
+ @headers = args[:headers] if args.key?(:headers)
115
+ @http_method = args[:http_method] if args.key?(:http_method)
116
+ @relative_uri = args[:relative_uri] if args.key?(:relative_uri)
117
+ end
118
+ end
119
+
120
+ # App Engine Routing.
121
+ # For more information about services, versions, and instances see
122
+ # [An Overview of App Engine](https://cloud.google.com/appengine/docs/python/an-
123
+ # overview-of-app-engine),
124
+ # [Microservices Architecture on Google App Engine](https://cloud.google.com/
125
+ # appengine/docs/python/microservices-on-app-engine),
126
+ # [App Engine Standard request routing](https://cloud.google.com/appengine/docs/
127
+ # standard/python/how-requests-are-routed), and
128
+ # [App Engine Flex request routing](https://cloud.google.com/appengine/docs/
129
+ # flexible/python/how-requests-are-routed).
130
+ class AppEngineRouting
131
+ include Google::Apis::Core::Hashable
132
+
133
+ # Output only. The host that the job is sent to.
134
+ # For more information about how App Engine requests are routed, see
135
+ # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-
136
+ # are-routed).
137
+ # The host is constructed as:
138
+ # * `host = [application_domain_name]`</br>
139
+ # `| [service] + '.' + [application_domain_name]`</br>
140
+ # `| [version] + '.' + [application_domain_name]`</br>
141
+ # `| [version_dot_service]+ '.' + [application_domain_name]`</br>
142
+ # `| [instance] + '.' + [application_domain_name]`</br>
143
+ # `| [instance_dot_service] + '.' + [application_domain_name]`</br>
144
+ # `| [instance_dot_version] + '.' + [application_domain_name]`</br>
145
+ # `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
146
+ # * `application_domain_name` = The domain name of the app, for
147
+ # example <app-id>.appspot.com, which is associated with the
148
+ # job's project ID.
149
+ # * `service =` service
150
+ # * `version =` version
151
+ # * `version_dot_service =`
152
+ # version `+ '.' +`
153
+ # service
154
+ # * `instance =` instance
155
+ # * `instance_dot_service =`
156
+ # instance `+ '.' +`
157
+ # service
158
+ # * `instance_dot_version =`
159
+ # instance `+ '.' +`
160
+ # version
161
+ # * `instance_dot_version_dot_service =`
162
+ # instance `+ '.' +`
163
+ # version `+ '.' +`
164
+ # service
165
+ # If service is empty, then the job will be sent
166
+ # to the service which is the default service when the job is attempted.
167
+ # If version is empty, then the job will be sent
168
+ # to the version which is the default version when the job is attempted.
169
+ # If instance is empty, then the job will be
170
+ # sent to an instance which is available when the job is attempted.
171
+ # If service,
172
+ # version, or
173
+ # instance is invalid, then the job will be sent
174
+ # to the default version of the default service when the job is attempted.
175
+ # Corresponds to the JSON property `host`
176
+ # @return [String]
177
+ attr_accessor :host
178
+
179
+ # App instance.
180
+ # By default, the job is sent to an instance which is available when
181
+ # the job is attempted.
182
+ # Requests can only be sent to a specific instance if
183
+ # [manual scaling is used in App Engine Standard](https://cloud.google.com/
184
+ # appengine/docs/python/an-overview-of-app-engine?hl=en_US#
185
+ # scaling_types_and_instance_classes).
186
+ # App Engine Flex does not support instances. For more information, see
187
+ # [App Engine Standard request routing](https://cloud.google.com/appengine/docs/
188
+ # standard/python/how-requests-are-routed) and
189
+ # [App Engine Flex request routing](https://cloud.google.com/appengine/docs/
190
+ # flexible/python/how-requests-are-routed).
191
+ # Corresponds to the JSON property `instance`
192
+ # @return [String]
193
+ attr_accessor :instance
194
+
195
+ # App service.
196
+ # By default, the job is sent to the service which is the default
197
+ # service when the job is attempted.
198
+ # Corresponds to the JSON property `service`
199
+ # @return [String]
200
+ attr_accessor :service
201
+
202
+ # App version.
203
+ # By default, the job is sent to the version which is the default
204
+ # version when the job is attempted.
205
+ # Corresponds to the JSON property `version`
206
+ # @return [String]
207
+ attr_accessor :version
208
+
209
+ def initialize(**args)
210
+ update!(**args)
211
+ end
212
+
213
+ # Update properties of this object
214
+ def update!(**args)
215
+ @host = args[:host] if args.key?(:host)
216
+ @instance = args[:instance] if args.key?(:instance)
217
+ @service = args[:service] if args.key?(:service)
218
+ @version = args[:version] if args.key?(:version)
219
+ end
220
+ end
221
+
222
+ # A generic empty message that you can re-use to avoid defining duplicated
223
+ # empty messages in your APIs. A typical example is to use it as the request
224
+ # or the response type of an API method. For instance:
225
+ # service Foo `
226
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
227
+ # `
228
+ # The JSON representation for `Empty` is empty JSON object ````.
229
+ class Empty
230
+ include Google::Apis::Core::Hashable
231
+
232
+ def initialize(**args)
233
+ update!(**args)
234
+ end
235
+
236
+ # Update properties of this object
237
+ def update!(**args)
238
+ end
239
+ end
240
+
241
+ # Http target. The job will be pushed to the job handler by means of
242
+ # an HTTP request via an http_method such as HTTP
243
+ # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
244
+ # response code in the range [200 - 299]. A failure to receive a response
245
+ # constitutes a failed execution. For a redirected request, the response
246
+ # returned by the redirected request is considered.
247
+ class HttpTarget
248
+ include Google::Apis::Core::Hashable
249
+
250
+ # HTTP request body. A request body is allowed only if the HTTP
251
+ # method is POST, PUT, or PATCH. It is an error to set body on a job with an
252
+ # incompatible HttpMethod.
253
+ # Corresponds to the JSON property `body`
254
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
255
+ # @return [String]
256
+ attr_accessor :body
257
+
258
+ # The user can specify HTTP request headers to send with the job's
259
+ # HTTP request. This map contains the header field names and
260
+ # values. Repeated headers are not supported, but a header value can
261
+ # contain commas. These headers represent a subset of the headers
262
+ # that will accompany the job's HTTP request. Some HTTP request
263
+ # headers will be ignored or replaced. A partial list of headers that
264
+ # will be ignored or replaced is below:
265
+ # - Host: This will be computed by Cloud Scheduler and derived from
266
+ # uri.
267
+ # * `Content-Length`: This will be computed by Cloud Scheduler.
268
+ # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
269
+ # * `X-Google-*`: Google internal use only.
270
+ # * `X-AppEngine-*`: Google internal use only.
271
+ # The total size of headers must be less than 80KB.
272
+ # Corresponds to the JSON property `headers`
273
+ # @return [Hash<String,String>]
274
+ attr_accessor :headers
275
+
276
+ # Which HTTP method to use for the request.
277
+ # Corresponds to the JSON property `httpMethod`
278
+ # @return [String]
279
+ attr_accessor :http_method
280
+
281
+ # Required.
282
+ # The full URI path that the request will be sent to. This string
283
+ # must begin with either "http://" or "https://". Some examples of
284
+ # valid values for uri are:
285
+ # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
286
+ # encode some characters for safety and compatibility. The maximum allowed
287
+ # URL length is 2083 characters after encoding.
288
+ # Corresponds to the JSON property `uri`
289
+ # @return [String]
290
+ attr_accessor :uri
291
+
292
+ def initialize(**args)
293
+ update!(**args)
294
+ end
295
+
296
+ # Update properties of this object
297
+ def update!(**args)
298
+ @body = args[:body] if args.key?(:body)
299
+ @headers = args[:headers] if args.key?(:headers)
300
+ @http_method = args[:http_method] if args.key?(:http_method)
301
+ @uri = args[:uri] if args.key?(:uri)
302
+ end
303
+ end
304
+
305
+ # Configuration for a job.
306
+ # The maximum allowed size for a job is 100KB.
307
+ class Job
308
+ include Google::Apis::Core::Hashable
309
+
310
+ # App Engine target. The job will be pushed to a job handler by means
311
+ # of an HTTP request via an http_method such
312
+ # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
313
+ # HTTP response code in the range [200 - 299]. Error 503 is
314
+ # considered an App Engine system error instead of an application
315
+ # error. Requests returning error 503 will be retried regardless of
316
+ # retry configuration and not counted against retry counts. Any other
317
+ # response code, or a failure to receive a response before the
318
+ # deadline, constitutes a failed attempt.
319
+ # Corresponds to the JSON property `appEngineHttpTarget`
320
+ # @return [Google::Apis::CloudschedulerV1beta1::AppEngineHttpTarget]
321
+ attr_accessor :app_engine_http_target
322
+
323
+ # A human-readable description for the job. This string must not contain
324
+ # more than 500 characters.
325
+ # Corresponds to the JSON property `description`
326
+ # @return [String]
327
+ attr_accessor :description
328
+
329
+ # Http target. The job will be pushed to the job handler by means of
330
+ # an HTTP request via an http_method such as HTTP
331
+ # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
332
+ # response code in the range [200 - 299]. A failure to receive a response
333
+ # constitutes a failed execution. For a redirected request, the response
334
+ # returned by the redirected request is considered.
335
+ # Corresponds to the JSON property `httpTarget`
336
+ # @return [Google::Apis::CloudschedulerV1beta1::HttpTarget]
337
+ attr_accessor :http_target
338
+
339
+ # Output only. The time the last job attempt started.
340
+ # Corresponds to the JSON property `lastAttemptTime`
341
+ # @return [String]
342
+ attr_accessor :last_attempt_time
343
+
344
+ # The job name. For example:
345
+ # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
346
+ # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
347
+ # hyphens (-), colons (:), or periods (.).
348
+ # For more information, see
349
+ # [Identifying projects](https://cloud.google.com/resource-manager/docs/
350
+ # creating-managing-projects#identifying_projects)
351
+ # * `LOCATION_ID` is the canonical ID for the job's location.
352
+ # The list of available locations can be obtained by calling
353
+ # ListLocations.
354
+ # For more information, see https://cloud.google.com/about/locations/.
355
+ # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
356
+ # hyphens (-), or underscores (_). The maximum length is 500 characters.
357
+ # Corresponds to the JSON property `name`
358
+ # @return [String]
359
+ attr_accessor :name
360
+
361
+ # Pub/Sub target. The job will be delivered by publishing a message to
362
+ # the given Pub/Sub topic.
363
+ # Corresponds to the JSON property `pubsubTarget`
364
+ # @return [Google::Apis::CloudschedulerV1beta1::PubsubTarget]
365
+ attr_accessor :pubsub_target
366
+
367
+ # Settings that determine the retry behavior.
368
+ # By default, if a job does not complete successfully (meaning that
369
+ # an acknowledgement is not received from the handler, then it will be retried
370
+ # with exponential backoff according to the settings in RetryConfig.
371
+ # Corresponds to the JSON property `retryConfig`
372
+ # @return [Google::Apis::CloudschedulerV1beta1::RetryConfig]
373
+ attr_accessor :retry_config
374
+
375
+ # Required.
376
+ # Describes the schedule on which the job will be executed.
377
+ # As a general rule, execution `n + 1` of a job will not begin
378
+ # until execution `n` has finished. Cloud Scheduler will never
379
+ # allow two simultaneously outstanding executions. For example,
380
+ # this implies that if the `n+1`th execution is scheduled to run at
381
+ # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
382
+ # execution will not start until `16:15`.
383
+ # A scheduled start time will be delayed if the previous
384
+ # execution has not ended when its scheduled time occurs.
385
+ # If retry_count > 0 and a job attempt fails,
386
+ # the job will be tried a total of retry_count
387
+ # times, with exponential backoff, until the next scheduled start
388
+ # time.
389
+ # The schedule can be either of the following types:
390
+ # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
391
+ # * English-like [schedule](https://cloud.google.com/scheduler/docs/configuring/
392
+ # cron-job-schedules)
393
+ # Corresponds to the JSON property `schedule`
394
+ # @return [String]
395
+ attr_accessor :schedule
396
+
397
+ # Output only. The next time the job is scheduled. Note that this may be a
398
+ # retry of a previously failed attempt or the next execution time
399
+ # according to the schedule.
400
+ # Corresponds to the JSON property `scheduleTime`
401
+ # @return [String]
402
+ attr_accessor :schedule_time
403
+
404
+ # Output only. State of the job.
405
+ # Corresponds to the JSON property `state`
406
+ # @return [String]
407
+ attr_accessor :state
408
+
409
+ # The `Status` type defines a logical error model that is suitable for different
410
+ # programming environments, including REST APIs and RPC APIs. It is used by
411
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
412
+ # - Simple to use and understand for most users
413
+ # - Flexible enough to meet unexpected needs
414
+ # # Overview
415
+ # The `Status` message contains three pieces of data: error code, error message,
416
+ # and error details. The error code should be an enum value of
417
+ # google.rpc.Code, but it may accept additional error codes if needed. The
418
+ # error message should be a developer-facing English message that helps
419
+ # developers *understand* and *resolve* the error. If a localized user-facing
420
+ # error message is needed, put the localized message in the error details or
421
+ # localize it in the client. The optional error details may contain arbitrary
422
+ # information about the error. There is a predefined set of error detail types
423
+ # in the package `google.rpc` that can be used for common error conditions.
424
+ # # Language mapping
425
+ # The `Status` message is the logical representation of the error model, but it
426
+ # is not necessarily the actual wire format. When the `Status` message is
427
+ # exposed in different client libraries and different wire protocols, it can be
428
+ # mapped differently. For example, it will likely be mapped to some exceptions
429
+ # in Java, but more likely mapped to some error codes in C.
430
+ # # Other uses
431
+ # The error model and the `Status` message can be used in a variety of
432
+ # environments, either with or without APIs, to provide a
433
+ # consistent developer experience across different environments.
434
+ # Example uses of this error model include:
435
+ # - Partial errors. If a service needs to return partial errors to the client,
436
+ # it may embed the `Status` in the normal response to indicate the partial
437
+ # errors.
438
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
439
+ # have a `Status` message for error reporting.
440
+ # - Batch operations. If a client uses batch request and batch response, the
441
+ # `Status` message should be used directly inside batch response, one for
442
+ # each error sub-response.
443
+ # - Asynchronous operations. If an API call embeds asynchronous operation
444
+ # results in its response, the status of those operations should be
445
+ # represented directly using the `Status` message.
446
+ # - Logging. If some API errors are stored in logs, the message `Status` could
447
+ # be used directly after any stripping needed for security/privacy reasons.
448
+ # Corresponds to the JSON property `status`
449
+ # @return [Google::Apis::CloudschedulerV1beta1::Status]
450
+ attr_accessor :status
451
+
452
+ # Specifies the time zone to be used in interpreting
453
+ # schedule. The value of this field must be a time
454
+ # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
455
+ # Note that some time zones include a provision for
456
+ # daylight savings time. The rules for daylight saving time are
457
+ # determined by the chosen tz. For UTC use the string "utc". If a
458
+ # time zone is not specified, the default will be in UTC (also known
459
+ # as GMT).
460
+ # Corresponds to the JSON property `timeZone`
461
+ # @return [String]
462
+ attr_accessor :time_zone
463
+
464
+ # Output only. The creation time of the job.
465
+ # Corresponds to the JSON property `userUpdateTime`
466
+ # @return [String]
467
+ attr_accessor :user_update_time
468
+
469
+ def initialize(**args)
470
+ update!(**args)
471
+ end
472
+
473
+ # Update properties of this object
474
+ def update!(**args)
475
+ @app_engine_http_target = args[:app_engine_http_target] if args.key?(:app_engine_http_target)
476
+ @description = args[:description] if args.key?(:description)
477
+ @http_target = args[:http_target] if args.key?(:http_target)
478
+ @last_attempt_time = args[:last_attempt_time] if args.key?(:last_attempt_time)
479
+ @name = args[:name] if args.key?(:name)
480
+ @pubsub_target = args[:pubsub_target] if args.key?(:pubsub_target)
481
+ @retry_config = args[:retry_config] if args.key?(:retry_config)
482
+ @schedule = args[:schedule] if args.key?(:schedule)
483
+ @schedule_time = args[:schedule_time] if args.key?(:schedule_time)
484
+ @state = args[:state] if args.key?(:state)
485
+ @status = args[:status] if args.key?(:status)
486
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
487
+ @user_update_time = args[:user_update_time] if args.key?(:user_update_time)
488
+ end
489
+ end
490
+
491
+ # Response message for listing jobs using ListJobs.
492
+ class ListJobsResponse
493
+ include Google::Apis::Core::Hashable
494
+
495
+ # The list of jobs.
496
+ # Corresponds to the JSON property `jobs`
497
+ # @return [Array<Google::Apis::CloudschedulerV1beta1::Job>]
498
+ attr_accessor :jobs
499
+
500
+ # A token to retrieve next page of results. Pass this value in the
501
+ # page_token field in the subsequent call to
502
+ # ListJobs to retrieve the next page of results.
503
+ # If this is empty it indicates that there are no more results
504
+ # through which to paginate.
505
+ # The page token is valid for only 2 hours.
506
+ # Corresponds to the JSON property `nextPageToken`
507
+ # @return [String]
508
+ attr_accessor :next_page_token
509
+
510
+ def initialize(**args)
511
+ update!(**args)
512
+ end
513
+
514
+ # Update properties of this object
515
+ def update!(**args)
516
+ @jobs = args[:jobs] if args.key?(:jobs)
517
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
518
+ end
519
+ end
520
+
521
+ # The response message for Locations.ListLocations.
522
+ class ListLocationsResponse
523
+ include Google::Apis::Core::Hashable
524
+
525
+ # A list of locations that matches the specified filter in the request.
526
+ # Corresponds to the JSON property `locations`
527
+ # @return [Array<Google::Apis::CloudschedulerV1beta1::Location>]
528
+ attr_accessor :locations
529
+
530
+ # The standard List next-page token.
531
+ # Corresponds to the JSON property `nextPageToken`
532
+ # @return [String]
533
+ attr_accessor :next_page_token
534
+
535
+ def initialize(**args)
536
+ update!(**args)
537
+ end
538
+
539
+ # Update properties of this object
540
+ def update!(**args)
541
+ @locations = args[:locations] if args.key?(:locations)
542
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
543
+ end
544
+ end
545
+
546
+ # A resource that represents Google Cloud Platform location.
547
+ class Location
548
+ include Google::Apis::Core::Hashable
549
+
550
+ # The friendly name for this location, typically a nearby city name.
551
+ # For example, "Tokyo".
552
+ # Corresponds to the JSON property `displayName`
553
+ # @return [String]
554
+ attr_accessor :display_name
555
+
556
+ # Cross-service attributes for the location. For example
557
+ # `"cloud.googleapis.com/region": "us-east1"`
558
+ # Corresponds to the JSON property `labels`
559
+ # @return [Hash<String,String>]
560
+ attr_accessor :labels
561
+
562
+ # The canonical id for this location. For example: `"us-east1"`.
563
+ # Corresponds to the JSON property `locationId`
564
+ # @return [String]
565
+ attr_accessor :location_id
566
+
567
+ # Service-specific metadata. For example the available capacity at the given
568
+ # location.
569
+ # Corresponds to the JSON property `metadata`
570
+ # @return [Hash<String,Object>]
571
+ attr_accessor :metadata
572
+
573
+ # Resource name for the location, which may vary between implementations.
574
+ # For example: `"projects/example-project/locations/us-east1"`
575
+ # Corresponds to the JSON property `name`
576
+ # @return [String]
577
+ attr_accessor :name
578
+
579
+ def initialize(**args)
580
+ update!(**args)
581
+ end
582
+
583
+ # Update properties of this object
584
+ def update!(**args)
585
+ @display_name = args[:display_name] if args.key?(:display_name)
586
+ @labels = args[:labels] if args.key?(:labels)
587
+ @location_id = args[:location_id] if args.key?(:location_id)
588
+ @metadata = args[:metadata] if args.key?(:metadata)
589
+ @name = args[:name] if args.key?(:name)
590
+ end
591
+ end
592
+
593
+ # Request message for PauseJob.
594
+ class PauseJobRequest
595
+ include Google::Apis::Core::Hashable
596
+
597
+ def initialize(**args)
598
+ update!(**args)
599
+ end
600
+
601
+ # Update properties of this object
602
+ def update!(**args)
603
+ end
604
+ end
605
+
606
+ # A message that is published by publishers and consumed by subscribers. The
607
+ # message must contain either a non-empty data field or at least one attribute.
608
+ # Note that client libraries represent this object differently
609
+ # depending on the language. See the corresponding
610
+ # <a href="https://cloud.google.com/pubsub/docs/reference/libraries">client
611
+ # library documentation</a> for more information. See
612
+ # <a href="https://cloud.google.com/pubsub/quotas">Quotas and limits</a>
613
+ # for more information about message limits.
614
+ class PubsubMessage
615
+ include Google::Apis::Core::Hashable
616
+
617
+ # Optional attributes for this message.
618
+ # Corresponds to the JSON property `attributes`
619
+ # @return [Hash<String,String>]
620
+ attr_accessor :attributes
621
+
622
+ # The message data field. If this field is empty, the message must contain
623
+ # at least one attribute.
624
+ # Corresponds to the JSON property `data`
625
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
626
+ # @return [String]
627
+ attr_accessor :data
628
+
629
+ # ID of this message, assigned by the server when the message is published.
630
+ # Guaranteed to be unique within the topic. This value may be read by a
631
+ # subscriber that receives a `PubsubMessage` via a `Pull` call or a push
632
+ # delivery. It must not be populated by the publisher in a `Publish` call.
633
+ # Corresponds to the JSON property `messageId`
634
+ # @return [String]
635
+ attr_accessor :message_id
636
+
637
+ # The time at which the message was published, populated by the server when
638
+ # it receives the `Publish` call. It must not be populated by the
639
+ # publisher in a `Publish` call.
640
+ # Corresponds to the JSON property `publishTime`
641
+ # @return [String]
642
+ attr_accessor :publish_time
643
+
644
+ def initialize(**args)
645
+ update!(**args)
646
+ end
647
+
648
+ # Update properties of this object
649
+ def update!(**args)
650
+ @attributes = args[:attributes] if args.key?(:attributes)
651
+ @data = args[:data] if args.key?(:data)
652
+ @message_id = args[:message_id] if args.key?(:message_id)
653
+ @publish_time = args[:publish_time] if args.key?(:publish_time)
654
+ end
655
+ end
656
+
657
+ # Pub/Sub target. The job will be delivered by publishing a message to
658
+ # the given Pub/Sub topic.
659
+ class PubsubTarget
660
+ include Google::Apis::Core::Hashable
661
+
662
+ # Attributes for PubsubMessage.
663
+ # Pubsub message must contain either non-empty data, or at least one
664
+ # attribute.
665
+ # Corresponds to the JSON property `attributes`
666
+ # @return [Hash<String,String>]
667
+ attr_accessor :attributes
668
+
669
+ # The message payload for PubsubMessage.
670
+ # Pubsub message must contain either non-empty data, or at least one
671
+ # attribute.
672
+ # Corresponds to the JSON property `data`
673
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
674
+ # @return [String]
675
+ attr_accessor :data
676
+
677
+ # Required.
678
+ # The name of the Cloud Pub/Sub topic to which messages will
679
+ # be published when a job is delivered. The topic name must be in the
680
+ # same format as required by PubSub's
681
+ # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/
682
+ # google.pubsub.v1#publishrequest),
683
+ # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
684
+ # The topic must be in the same project as the Cloud Scheduler job.
685
+ # Corresponds to the JSON property `topicName`
686
+ # @return [String]
687
+ attr_accessor :topic_name
688
+
689
+ def initialize(**args)
690
+ update!(**args)
691
+ end
692
+
693
+ # Update properties of this object
694
+ def update!(**args)
695
+ @attributes = args[:attributes] if args.key?(:attributes)
696
+ @data = args[:data] if args.key?(:data)
697
+ @topic_name = args[:topic_name] if args.key?(:topic_name)
698
+ end
699
+ end
700
+
701
+ # Request message for ResumeJob.
702
+ class ResumeJobRequest
703
+ include Google::Apis::Core::Hashable
704
+
705
+ def initialize(**args)
706
+ update!(**args)
707
+ end
708
+
709
+ # Update properties of this object
710
+ def update!(**args)
711
+ end
712
+ end
713
+
714
+ # Settings that determine the retry behavior.
715
+ # By default, if a job does not complete successfully (meaning that
716
+ # an acknowledgement is not received from the handler, then it will be retried
717
+ # with exponential backoff according to the settings in RetryConfig.
718
+ class RetryConfig
719
+ include Google::Apis::Core::Hashable
720
+
721
+ # The maximum amount of time to wait before retrying a job after
722
+ # it fails.
723
+ # The default value of this field is 1 hour.
724
+ # Corresponds to the JSON property `maxBackoffDuration`
725
+ # @return [String]
726
+ attr_accessor :max_backoff_duration
727
+
728
+ # The time between retries will double `max_doublings` times.
729
+ # A job's retry interval starts at
730
+ # min_backoff_duration, then doubles
731
+ # `max_doublings` times, then increases linearly, and finally
732
+ # retries retries at intervals of
733
+ # max_backoff_duration up to
734
+ # retry_count times.
735
+ # For example, if min_backoff_duration is
736
+ # 10s, max_backoff_duration is 300s, and
737
+ # `max_doublings` is 3, then the a job will first be retried in 10s. The
738
+ # retry interval will double three times, and then increase linearly by
739
+ # 2^3 * 10s. Finally, the job will retry at intervals of
740
+ # max_backoff_duration until the job has
741
+ # been attempted retry_count times. Thus, the
742
+ # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
743
+ # The default value of this field is 5.
744
+ # Corresponds to the JSON property `maxDoublings`
745
+ # @return [Fixnum]
746
+ attr_accessor :max_doublings
747
+
748
+ # The time limit for retrying a failed job, measured from time when an
749
+ # execution was first attempted. If specified with
750
+ # retry_count, the job will be retried until both limits are
751
+ # reached.
752
+ # The default value for max_retry_duration is zero, which means retry
753
+ # duration is unlimited.
754
+ # Corresponds to the JSON property `maxRetryDuration`
755
+ # @return [String]
756
+ attr_accessor :max_retry_duration
757
+
758
+ # The minimum amount of time to wait before retrying a job after
759
+ # it fails.
760
+ # The default value of this field is 5 seconds.
761
+ # Corresponds to the JSON property `minBackoffDuration`
762
+ # @return [String]
763
+ attr_accessor :min_backoff_duration
764
+
765
+ # The number of attempts that the system will make to run a job using the
766
+ # exponential backoff procedure described by
767
+ # max_doublings.
768
+ # The default value of retry_count is zero.
769
+ # If retry_count is zero, a job attempt will *not* be retried if
770
+ # it fails. Instead the Cloud Scheduler system will wait for the
771
+ # next scheduled execution time.
772
+ # If retry_count is set to a non-zero number then Cloud Scheduler
773
+ # will retry failed attempts, using exponential backoff,
774
+ # retry_count times, or until the next scheduled execution time,
775
+ # whichever comes first.
776
+ # Values greater than 5 and negative values are not allowed.
777
+ # Corresponds to the JSON property `retryCount`
778
+ # @return [Fixnum]
779
+ attr_accessor :retry_count
780
+
781
+ def initialize(**args)
782
+ update!(**args)
783
+ end
784
+
785
+ # Update properties of this object
786
+ def update!(**args)
787
+ @max_backoff_duration = args[:max_backoff_duration] if args.key?(:max_backoff_duration)
788
+ @max_doublings = args[:max_doublings] if args.key?(:max_doublings)
789
+ @max_retry_duration = args[:max_retry_duration] if args.key?(:max_retry_duration)
790
+ @min_backoff_duration = args[:min_backoff_duration] if args.key?(:min_backoff_duration)
791
+ @retry_count = args[:retry_count] if args.key?(:retry_count)
792
+ end
793
+ end
794
+
795
+ # Request message for forcing a job to run now using
796
+ # RunJob.
797
+ class RunJobRequest
798
+ include Google::Apis::Core::Hashable
799
+
800
+ def initialize(**args)
801
+ update!(**args)
802
+ end
803
+
804
+ # Update properties of this object
805
+ def update!(**args)
806
+ end
807
+ end
808
+
809
+ # The `Status` type defines a logical error model that is suitable for different
810
+ # programming environments, including REST APIs and RPC APIs. It is used by
811
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
812
+ # - Simple to use and understand for most users
813
+ # - Flexible enough to meet unexpected needs
814
+ # # Overview
815
+ # The `Status` message contains three pieces of data: error code, error message,
816
+ # and error details. The error code should be an enum value of
817
+ # google.rpc.Code, but it may accept additional error codes if needed. The
818
+ # error message should be a developer-facing English message that helps
819
+ # developers *understand* and *resolve* the error. If a localized user-facing
820
+ # error message is needed, put the localized message in the error details or
821
+ # localize it in the client. The optional error details may contain arbitrary
822
+ # information about the error. There is a predefined set of error detail types
823
+ # in the package `google.rpc` that can be used for common error conditions.
824
+ # # Language mapping
825
+ # The `Status` message is the logical representation of the error model, but it
826
+ # is not necessarily the actual wire format. When the `Status` message is
827
+ # exposed in different client libraries and different wire protocols, it can be
828
+ # mapped differently. For example, it will likely be mapped to some exceptions
829
+ # in Java, but more likely mapped to some error codes in C.
830
+ # # Other uses
831
+ # The error model and the `Status` message can be used in a variety of
832
+ # environments, either with or without APIs, to provide a
833
+ # consistent developer experience across different environments.
834
+ # Example uses of this error model include:
835
+ # - Partial errors. If a service needs to return partial errors to the client,
836
+ # it may embed the `Status` in the normal response to indicate the partial
837
+ # errors.
838
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
839
+ # have a `Status` message for error reporting.
840
+ # - Batch operations. If a client uses batch request and batch response, the
841
+ # `Status` message should be used directly inside batch response, one for
842
+ # each error sub-response.
843
+ # - Asynchronous operations. If an API call embeds asynchronous operation
844
+ # results in its response, the status of those operations should be
845
+ # represented directly using the `Status` message.
846
+ # - Logging. If some API errors are stored in logs, the message `Status` could
847
+ # be used directly after any stripping needed for security/privacy reasons.
848
+ class Status
849
+ include Google::Apis::Core::Hashable
850
+
851
+ # The status code, which should be an enum value of google.rpc.Code.
852
+ # Corresponds to the JSON property `code`
853
+ # @return [Fixnum]
854
+ attr_accessor :code
855
+
856
+ # A list of messages that carry the error details. There is a common set of
857
+ # message types for APIs to use.
858
+ # Corresponds to the JSON property `details`
859
+ # @return [Array<Hash<String,Object>>]
860
+ attr_accessor :details
861
+
862
+ # A developer-facing error message, which should be in English. Any
863
+ # user-facing error message should be localized and sent in the
864
+ # google.rpc.Status.details field, or localized by the client.
865
+ # Corresponds to the JSON property `message`
866
+ # @return [String]
867
+ attr_accessor :message
868
+
869
+ def initialize(**args)
870
+ update!(**args)
871
+ end
872
+
873
+ # Update properties of this object
874
+ def update!(**args)
875
+ @code = args[:code] if args.key?(:code)
876
+ @details = args[:details] if args.key?(:details)
877
+ @message = args[:message] if args.key?(:message)
878
+ end
879
+ end
880
+ end
881
+ end
882
+ end