google-api-client 0.25.0 → 0.26.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 (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