google-api-client 0.9.8 → 0.9.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (238) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/Gemfile +9 -1
  4. data/README.md +10 -2
  5. data/api_names.yaml +63 -110
  6. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  10. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  11. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +260 -13
  12. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +81 -0
  13. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +60 -8
  14. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  15. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  16. data/generated/google/apis/admin_directory_v1.rb +1 -1
  17. data/generated/google/apis/admin_directory_v1/classes.rb +86 -0
  18. data/generated/google/apis/admin_directory_v1/representations.rb +24 -0
  19. data/generated/google/apis/admin_directory_v1/service.rb +41 -2
  20. data/generated/google/apis/admin_reports_v1.rb +3 -3
  21. data/generated/google/apis/admin_reports_v1/service.rb +2 -2
  22. data/generated/google/apis/adsense_v1_4.rb +1 -1
  23. data/generated/google/apis/adsense_v1_4/classes.rb +1 -1
  24. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  25. data/generated/google/apis/adsensehost_v4_1/classes.rb +1 -2
  26. data/generated/google/apis/analytics_v3.rb +1 -1
  27. data/generated/google/apis/analytics_v3/classes.rb +379 -3
  28. data/generated/google/apis/analytics_v3/representations.rb +136 -0
  29. data/generated/google/apis/analytics_v3/service.rb +217 -0
  30. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  31. data/generated/google/apis/analyticsreporting_v4/classes.rb +50 -22
  32. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  33. data/generated/google/apis/androidenterprise_v1/classes.rb +813 -49
  34. data/generated/google/apis/androidenterprise_v1/representations.rb +336 -0
  35. data/generated/google/apis/androidenterprise_v1/service.rb +1234 -145
  36. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  37. data/generated/google/apis/androidpublisher_v2/classes.rb +47 -8
  38. data/generated/google/apis/androidpublisher_v2/representations.rb +27 -0
  39. data/generated/google/apis/androidpublisher_v2/service.rb +55 -0
  40. data/generated/google/apis/appengine_v1beta5.rb +7 -1
  41. data/generated/google/apis/appengine_v1beta5/classes.rb +516 -313
  42. data/generated/google/apis/appengine_v1beta5/representations.rb +115 -22
  43. data/generated/google/apis/appengine_v1beta5/service.rb +329 -33
  44. data/generated/google/apis/appsactivity_v1.rb +1 -1
  45. data/generated/google/apis/appsactivity_v1/classes.rb +7 -0
  46. data/generated/google/apis/appsactivity_v1/representations.rb +1 -0
  47. data/generated/google/apis/appstate_v1.rb +1 -1
  48. data/generated/google/apis/bigquery_v2.rb +1 -1
  49. data/generated/google/apis/bigquery_v2/classes.rb +277 -20
  50. data/generated/google/apis/bigquery_v2/representations.rb +86 -0
  51. data/generated/google/apis/bigquery_v2/service.rb +8 -2
  52. data/generated/google/apis/books_v1.rb +2 -2
  53. data/generated/google/apis/books_v1/classes.rb +79 -1
  54. data/generated/google/apis/books_v1/representations.rb +34 -0
  55. data/generated/google/apis/books_v1/service.rb +7 -3
  56. data/generated/google/apis/calendar_v3.rb +1 -1
  57. data/generated/google/apis/civicinfo_v2.rb +3 -2
  58. data/generated/google/apis/civicinfo_v2/classes.rb +377 -5
  59. data/generated/google/apis/civicinfo_v2/representations.rb +149 -0
  60. data/generated/google/apis/civicinfo_v2/service.rb +27 -6
  61. data/generated/google/apis/classroom_v1.rb +1 -1
  62. data/generated/google/apis/classroom_v1/classes.rb +183 -37
  63. data/generated/google/apis/classroom_v1/representations.rb +74 -9
  64. data/generated/google/apis/classroom_v1/service.rb +403 -38
  65. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  66. data/generated/google/apis/cloudbuild_v1/classes.rb +381 -17
  67. data/generated/google/apis/cloudbuild_v1/representations.rb +137 -2
  68. data/generated/google/apis/cloudbuild_v1/service.rb +174 -1
  69. data/generated/google/apis/clouddebugger_v2.rb +3 -6
  70. data/generated/google/apis/clouddebugger_v2/service.rb +4 -4
  71. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  72. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  73. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +502 -111
  74. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +162 -24
  75. data/generated/google/apis/cloudresourcemanager_v1/service.rb +274 -30
  76. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  77. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +121 -9
  78. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +46 -0
  79. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +71 -58
  80. data/generated/google/apis/compute_beta.rb +1 -1
  81. data/generated/google/apis/compute_beta/classes.rb +2299 -434
  82. data/generated/google/apis/compute_beta/representations.rb +752 -33
  83. data/generated/google/apis/compute_beta/service.rb +6067 -3153
  84. data/generated/google/apis/compute_v1.rb +1 -1
  85. data/generated/google/apis/compute_v1/classes.rb +1681 -207
  86. data/generated/google/apis/compute_v1/representations.rb +552 -0
  87. data/generated/google/apis/compute_v1/service.rb +2797 -1171
  88. data/generated/google/apis/content_v2.rb +1 -1
  89. data/generated/google/apis/content_v2/classes.rb +757 -1
  90. data/generated/google/apis/content_v2/representations.rb +337 -0
  91. data/generated/google/apis/content_v2/service.rb +244 -0
  92. data/generated/google/apis/dataflow_v1b3.rb +38 -0
  93. data/generated/google/apis/dataflow_v1b3/classes.rb +4053 -0
  94. data/generated/google/apis/dataflow_v1b3/representations.rb +1736 -0
  95. data/generated/google/apis/dataflow_v1b3/service.rb +875 -0
  96. data/generated/google/apis/dataproc_v1.rb +2 -2
  97. data/generated/google/apis/dataproc_v1/classes.rb +213 -68
  98. data/generated/google/apis/dataproc_v1/representations.rb +38 -0
  99. data/generated/google/apis/dataproc_v1/service.rb +78 -48
  100. data/generated/google/apis/datastore_v1.rb +38 -0
  101. data/generated/google/apis/datastore_v1/classes.rb +1284 -0
  102. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  103. data/generated/google/apis/datastore_v1/service.rb +259 -0
  104. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  105. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  106. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  107. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  108. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  109. data/generated/google/apis/deploymentmanager_v2/classes.rb +384 -2
  110. data/generated/google/apis/deploymentmanager_v2/representations.rb +161 -0
  111. data/generated/google/apis/deploymentmanager_v2/service.rb +217 -55
  112. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  113. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  114. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  115. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  116. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  117. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  118. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  119. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  120. data/generated/google/apis/dns_v1.rb +1 -1
  121. data/generated/google/apis/dns_v1/classes.rb +1 -1
  122. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  123. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +79 -86
  124. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +25 -28
  125. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +10 -8
  126. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  127. data/generated/google/apis/drive_v2.rb +1 -1
  128. data/generated/google/apis/drive_v2/classes.rb +27 -3
  129. data/generated/google/apis/drive_v2/representations.rb +4 -0
  130. data/generated/google/apis/drive_v2/service.rb +16 -3
  131. data/generated/google/apis/drive_v3.rb +1 -1
  132. data/generated/google/apis/drive_v3/classes.rb +50 -16
  133. data/generated/google/apis/drive_v3/representations.rb +4 -0
  134. data/generated/google/apis/drive_v3/service.rb +12 -2
  135. data/generated/google/apis/fitness_v1.rb +8 -2
  136. data/generated/google/apis/fitness_v1/classes.rb +64 -6
  137. data/generated/google/apis/fitness_v1/representations.rb +20 -0
  138. data/generated/google/apis/fitness_v1/service.rb +17 -18
  139. data/generated/google/apis/fusiontables_v2.rb +1 -1
  140. data/generated/google/apis/fusiontables_v2/classes.rb +4 -3
  141. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  142. data/generated/google/apis/games_management_v1management.rb +1 -1
  143. data/generated/google/apis/games_v1.rb +1 -1
  144. data/generated/google/apis/genomics_v1.rb +2 -4
  145. data/generated/google/apis/genomics_v1/classes.rb +143 -34
  146. data/generated/google/apis/genomics_v1/representations.rb +48 -11
  147. data/generated/google/apis/genomics_v1/service.rb +35 -37
  148. data/generated/google/apis/gmail_v1.rb +10 -1
  149. data/generated/google/apis/gmail_v1/classes.rb +542 -4
  150. data/generated/google/apis/gmail_v1/representations.rb +213 -0
  151. data/generated/google/apis/gmail_v1/service.rb +898 -1
  152. data/generated/google/apis/groupssettings_v1.rb +1 -1
  153. data/generated/google/apis/groupssettings_v1/classes.rb +12 -0
  154. data/generated/google/apis/groupssettings_v1/representations.rb +2 -0
  155. data/generated/google/apis/iam_v1.rb +2 -2
  156. data/generated/google/apis/iam_v1/classes.rb +181 -206
  157. data/generated/google/apis/iam_v1/representations.rb +36 -45
  158. data/generated/google/apis/iam_v1/service.rb +101 -67
  159. data/generated/google/apis/identitytoolkit_v3.rb +4 -1
  160. data/generated/google/apis/identitytoolkit_v3/classes.rb +171 -1
  161. data/generated/google/apis/identitytoolkit_v3/representations.rb +26 -0
  162. data/generated/google/apis/language_v1beta1.rb +36 -0
  163. data/generated/google/apis/language_v1beta1/classes.rb +599 -0
  164. data/generated/google/apis/language_v1beta1/representations.rb +289 -0
  165. data/generated/google/apis/language_v1beta1/service.rb +152 -0
  166. data/generated/google/apis/logging_v2beta1.rb +6 -6
  167. data/generated/google/apis/logging_v2beta1/classes.rb +760 -731
  168. data/generated/google/apis/logging_v2beta1/representations.rb +136 -147
  169. data/generated/google/apis/logging_v2beta1/service.rb +290 -209
  170. data/generated/google/apis/mirror_v1.rb +2 -2
  171. data/generated/google/apis/mirror_v1/service.rb +1 -1
  172. data/generated/google/apis/monitoring_v3.rb +45 -0
  173. data/generated/google/apis/monitoring_v3/classes.rb +1337 -0
  174. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  175. data/generated/google/apis/monitoring_v3/service.rb +711 -0
  176. data/generated/google/apis/oauth2_v2.rb +1 -1
  177. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  178. data/generated/google/apis/plus_domains_v1.rb +1 -1
  179. data/generated/google/apis/plus_v1.rb +1 -1
  180. data/generated/google/apis/pubsub_v1.rb +1 -1
  181. data/generated/google/apis/pubsub_v1/classes.rb +10 -9
  182. data/generated/google/apis/pubsub_v1/service.rb +128 -27
  183. data/generated/google/apis/qpx_express_v1.rb +1 -1
  184. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  185. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  186. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  187. data/generated/google/apis/replicapoolupdater_v1beta1.rb +4 -2
  188. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +3 -1
  189. data/generated/google/apis/script_v1.rb +1 -1
  190. data/generated/google/apis/script_v1/classes.rb +6 -0
  191. data/generated/google/apis/script_v1/representations.rb +1 -0
  192. data/generated/google/apis/sheets_v4.rb +1 -1
  193. data/generated/google/apis/sheets_v4/classes.rb +910 -89
  194. data/generated/google/apis/sheets_v4/representations.rb +194 -10
  195. data/generated/google/apis/sheets_v4/service.rb +216 -49
  196. data/generated/google/apis/slides_v1.rb +49 -0
  197. data/generated/google/apis/slides_v1/classes.rb +3926 -0
  198. data/generated/google/apis/slides_v1/representations.rb +1722 -0
  199. data/generated/google/apis/slides_v1/service.rb +202 -0
  200. data/generated/google/apis/speech_v1beta1.rb +34 -0
  201. data/generated/google/apis/speech_v1beta1/classes.rb +511 -0
  202. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  203. data/generated/google/apis/speech_v1beta1/service.rb +271 -0
  204. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  205. data/generated/google/apis/sqladmin_v1beta4/classes.rb +32 -8
  206. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  207. data/generated/google/apis/sqladmin_v1beta4/service.rb +42 -0
  208. data/generated/google/apis/storage_v1.rb +1 -1
  209. data/generated/google/apis/storage_v1/classes.rb +43 -18
  210. data/generated/google/apis/storage_v1/representations.rb +4 -1
  211. data/generated/google/apis/storage_v1/service.rb +5 -2
  212. data/generated/google/apis/translate_v2.rb +2 -2
  213. data/generated/google/apis/translate_v2/service.rb +1 -1
  214. data/generated/google/apis/vision_v1.rb +1 -1
  215. data/generated/google/apis/vision_v1/classes.rb +12 -11
  216. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  217. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  218. data/generated/google/apis/youtube_partner_v1/classes.rb +6 -0
  219. data/generated/google/apis/youtube_partner_v1/representations.rb +2 -0
  220. data/generated/google/apis/youtube_partner_v1/service.rb +15 -3
  221. data/generated/google/apis/youtube_v3.rb +1 -1
  222. data/generated/google/apis/youtube_v3/classes.rb +183 -21
  223. data/generated/google/apis/youtube_v3/representations.rb +85 -4
  224. data/generated/google/apis/youtube_v3/service.rb +41 -5
  225. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  226. data/google-api-client.gemspec +2 -1
  227. data/lib/google/apis/core/api_command.rb +4 -0
  228. data/lib/google/apis/core/base_service.rb +10 -4
  229. data/lib/google/apis/core/download.rb +7 -2
  230. data/lib/google/apis/core/http_command.rb +5 -1
  231. data/lib/google/apis/core/upload.rb +7 -1
  232. data/lib/google/apis/errors.rb +2 -2
  233. data/lib/google/apis/generator/annotator.rb +6 -0
  234. data/lib/google/apis/version.rb +1 -1
  235. data/samples/cli/lib/samples/bigquery.rb +101 -0
  236. data/samples/cli/lib/samples/sheets.rb +61 -0
  237. data/sync.rb +71 -0
  238. metadata +55 -13
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/accounts/docs/OAuth2
26
26
  module Oauth2V2
27
27
  VERSION = 'V2'
28
- REVISION = '20160330'
28
+ REVISION = '20161103'
29
29
 
30
30
  # Know the list of people in your circles, your age range, and language
31
31
  AUTH_PLUS_LOGIN = 'https://www.googleapis.com/auth/plus.login'
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/speed/docs/insights/v2/getting-started
27
27
  module PagespeedonlineV2
28
28
  VERSION = 'V2'
29
- REVISION = '20160516'
29
+ REVISION = '20161101'
30
30
  end
31
31
  end
32
32
  end
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/+/domains/
26
26
  module PlusDomainsV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160523'
28
+ REVISION = '20161107'
29
29
 
30
30
  # View your circles and the people and pages in them
31
31
  AUTH_PLUS_CIRCLES_READ = 'https://www.googleapis.com/auth/plus.circles.read'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/+/api/
26
26
  module PlusV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160523'
28
+ REVISION = '20161107'
29
29
 
30
30
  # Know the list of people in your circles, your age range, and language
31
31
  AUTH_PLUS_LOGIN = 'https://www.googleapis.com/auth/plus.login'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/pubsub/docs
26
26
  module PubsubV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160317'
28
+ REVISION = '20161003'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -141,8 +141,8 @@ module Google
141
141
  include Google::Apis::Core::Hashable
142
142
 
143
143
  # The set of permissions to check for the `resource`. Permissions with wildcards
144
- # (such as '*' or 'storage.*') are not allowed. For more information see IAM
145
- # Overview.
144
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
145
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
146
146
  # Corresponds to the JSON property `permissions`
147
147
  # @return [Array<String>]
148
148
  attr_accessor :permissions
@@ -223,8 +223,8 @@ module Google
223
223
  class Message
224
224
  include Google::Apis::Core::Hashable
225
225
 
226
- # The message payload. For JSON requests, the value of this field must be base64-
227
- # encoded.
226
+ # The message payload. For JSON requests, the value of this field must be [
227
+ # base64-encoded](https://tools.ietf.org/html/rfc4648).
228
228
  # Corresponds to the JSON property `data`
229
229
  # @return [String]
230
230
  attr_accessor :data
@@ -383,11 +383,12 @@ module Google
383
383
  # an outstanding message and will not be delivered again during that time (on a
384
384
  # best-effort basis). For pull subscriptions, this value is used as the initial
385
385
  # value for the ack deadline. To override this value for a given message, call `
386
- # ModifyAckDeadline` with the corresponding `ack_id` if using pull. For push
387
- # delivery, this value is also used to set the request timeout for the call to
388
- # the push endpoint. If the subscriber never acknowledges the message, the Pub/
389
- # Sub system will eventually redeliver the message. If this parameter is not set,
390
- # the default value of 10 seconds is used.
386
+ # ModifyAckDeadline` with the corresponding `ack_id` if using pull. The maximum
387
+ # custom deadline you can specify is 600 seconds (10 minutes). For push delivery,
388
+ # this value is also used to set the request timeout for the call to the push
389
+ # endpoint. If the subscriber never acknowledges the message, the Pub/Sub system
390
+ # will eventually redeliver the message. If this parameter is 0, a default value
391
+ # of 10 seconds is used.
391
392
  # Corresponds to the JSON property `ackDeadlineSeconds`
392
393
  # @return [Fixnum]
393
394
  attr_accessor :ack_deadline_seconds
@@ -50,9 +50,8 @@ module Google
50
50
  # existing policy.
51
51
  # @param [String] resource
52
52
  # REQUIRED: The resource for which the policy is being specified. `resource` is
53
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
54
- # disk*`. The format for the path specified in this value is resource specific
55
- # and is specified in the `setIamPolicy` documentation.
53
+ # usually specified as a path. For example, a Project resource is specified as `
54
+ # projects/`project``.
56
55
  # @param [Google::Apis::PubsubV1::SetIamPolicyRequest] set_iam_policy_request_object
57
56
  # @param [String] fields
58
57
  # Selector specifying which fields to include in a partial response.
@@ -83,13 +82,12 @@ module Google
83
82
  execute_or_queue_command(command, &block)
84
83
  end
85
84
 
86
- # Gets the access control policy for a `resource`. Returns an empty policy if
87
- # the resource exists and does not have a policy set.
85
+ # Gets the access control policy for a resource. Returns an empty policy if the
86
+ # resource exists and does not have a policy set.
88
87
  # @param [String] resource
89
88
  # REQUIRED: The resource for which the policy is being requested. `resource` is
90
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
91
- # disk*`. The format for the path specified in this value is resource specific
92
- # and is specified in the `getIamPolicy` documentation.
89
+ # usually specified as a path. For example, a Project resource is specified as `
90
+ # projects/`project``.
93
91
  # @param [String] fields
94
92
  # Selector specifying which fields to include in a partial response.
95
93
  # @param [String] quota_user
@@ -120,9 +118,8 @@ module Google
120
118
  # Returns permissions that a caller has on the specified resource.
121
119
  # @param [String] resource
122
120
  # REQUIRED: The resource for which the policy detail is being requested. `
123
- # resource` is usually specified as a path, such as `projects/*project*/zones/*
124
- # zone*/disks/*disk*`. The format for the path specified in this value is
125
- # resource specific and is specified in the `testIamPermissions` documentation.
121
+ # resource` is usually specified as a path. For example, a Project resource is
122
+ # specified as `projects/`project``.
126
123
  # @param [Google::Apis::PubsubV1::TestIamPermissionsRequest] test_iam_permissions_request_object
127
124
  # @param [String] fields
128
125
  # Selector specifying which fields to include in a partial response.
@@ -369,9 +366,8 @@ module Google
369
366
  # existing policy.
370
367
  # @param [String] resource
371
368
  # REQUIRED: The resource for which the policy is being specified. `resource` is
372
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
373
- # disk*`. The format for the path specified in this value is resource specific
374
- # and is specified in the `setIamPolicy` documentation.
369
+ # usually specified as a path. For example, a Project resource is specified as `
370
+ # projects/`project``.
375
371
  # @param [Google::Apis::PubsubV1::SetIamPolicyRequest] set_iam_policy_request_object
376
372
  # @param [String] fields
377
373
  # Selector specifying which fields to include in a partial response.
@@ -402,13 +398,12 @@ module Google
402
398
  execute_or_queue_command(command, &block)
403
399
  end
404
400
 
405
- # Gets the access control policy for a `resource`. Returns an empty policy if
406
- # the resource exists and does not have a policy set.
401
+ # Gets the access control policy for a resource. Returns an empty policy if the
402
+ # resource exists and does not have a policy set.
407
403
  # @param [String] resource
408
404
  # REQUIRED: The resource for which the policy is being requested. `resource` is
409
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
410
- # disk*`. The format for the path specified in this value is resource specific
411
- # and is specified in the `getIamPolicy` documentation.
405
+ # usually specified as a path. For example, a Project resource is specified as `
406
+ # projects/`project``.
412
407
  # @param [String] fields
413
408
  # Selector specifying which fields to include in a partial response.
414
409
  # @param [String] quota_user
@@ -439,9 +434,8 @@ module Google
439
434
  # Returns permissions that a caller has on the specified resource.
440
435
  # @param [String] resource
441
436
  # REQUIRED: The resource for which the policy detail is being requested. `
442
- # resource` is usually specified as a path, such as `projects/*project*/zones/*
443
- # zone*/disks/*disk*`. The format for the path specified in this value is
444
- # resource specific and is specified in the `testIamPermissions` documentation.
437
+ # resource` is usually specified as a path. For example, a Project resource is
438
+ # specified as `projects/`project``.
445
439
  # @param [Google::Apis::PubsubV1::TestIamPermissionsRequest] test_iam_permissions_request_object
446
440
  # @param [String] fields
447
441
  # Selector specifying which fields to include in a partial response.
@@ -475,7 +469,8 @@ module Google
475
469
  # Creates a subscription to a given topic. If the subscription already exists,
476
470
  # returns `ALREADY_EXISTS`. If the corresponding topic doesn't exist, returns `
477
471
  # NOT_FOUND`. If the name is not provided in the request, the server will assign
478
- # a random name for this subscription on the same project as the topic.
472
+ # a random name for this subscription on the same project as the topic. Note
473
+ # that for REST API requests, you must specify a name.
479
474
  # @param [String] name
480
475
  # The name of the subscription. It must have the format `"projects/`project`/
481
476
  # subscriptions/`subscription`"`. ``subscription`` must start with a letter, and
@@ -581,10 +576,10 @@ module Google
581
576
  execute_or_queue_command(command, &block)
582
577
  end
583
578
 
584
- # Deletes an existing subscription. All pending messages in the subscription are
585
- # immediately dropped. Calls to `Pull` after deletion will return `NOT_FOUND`.
586
- # After a subscription is deleted, a new one may be created with the same name,
587
- # but the new one has no association with the old subscription, or its topic
579
+ # Deletes an existing subscription. All messages retained in the subscription
580
+ # are immediately dropped. Calls to `Pull` after deletion will return `NOT_FOUND`
581
+ # . After a subscription is deleted, a new one may be created with the same name,
582
+ # but the new one has no association with the old subscription or its topic
588
583
  # unless the same topic is specified.
589
584
  # @param [String] subscription
590
585
  # The subscription to delete.
@@ -618,6 +613,8 @@ module Google
618
613
  # Modifies the ack deadline for a specific message. This method is useful to
619
614
  # indicate that more time is needed to process a message by the subscriber, or
620
615
  # to make the message available for redelivery if the processing was interrupted.
616
+ # Note that this does not modify the subscription-level `ackDeadlineSeconds`
617
+ # used for subsequent messages.
621
618
  # @param [String] subscription
622
619
  # The name of the subscription.
623
620
  # @param [Google::Apis::PubsubV1::ModifyAckDeadlineRequest] modify_ack_deadline_request_object
@@ -758,6 +755,110 @@ module Google
758
755
  command.query['quotaUser'] = quota_user unless quota_user.nil?
759
756
  execute_or_queue_command(command, &block)
760
757
  end
758
+
759
+ # Sets the access control policy on the specified resource. Replaces any
760
+ # existing policy.
761
+ # @param [String] resource
762
+ # REQUIRED: The resource for which the policy is being specified. `resource` is
763
+ # usually specified as a path. For example, a Project resource is specified as `
764
+ # projects/`project``.
765
+ # @param [Google::Apis::PubsubV1::SetIamPolicyRequest] set_iam_policy_request_object
766
+ # @param [String] fields
767
+ # Selector specifying which fields to include in a partial response.
768
+ # @param [String] quota_user
769
+ # Available to use for quota purposes for server-side applications. Can be any
770
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
771
+ # @param [Google::Apis::RequestOptions] options
772
+ # Request-specific options
773
+ #
774
+ # @yield [result, err] Result & error if block supplied
775
+ # @yieldparam result [Google::Apis::PubsubV1::Policy] parsed result object
776
+ # @yieldparam err [StandardError] error object if request failed
777
+ #
778
+ # @return [Google::Apis::PubsubV1::Policy]
779
+ #
780
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
781
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
782
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
783
+ def set_snapshot_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
784
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
785
+ command.request_representation = Google::Apis::PubsubV1::SetIamPolicyRequest::Representation
786
+ command.request_object = set_iam_policy_request_object
787
+ command.response_representation = Google::Apis::PubsubV1::Policy::Representation
788
+ command.response_class = Google::Apis::PubsubV1::Policy
789
+ command.params['resource'] = resource unless resource.nil?
790
+ command.query['fields'] = fields unless fields.nil?
791
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
792
+ execute_or_queue_command(command, &block)
793
+ end
794
+
795
+ # Gets the access control policy for a resource. Returns an empty policy if the
796
+ # resource exists and does not have a policy set.
797
+ # @param [String] resource
798
+ # REQUIRED: The resource for which the policy is being requested. `resource` is
799
+ # usually specified as a path. For example, a Project resource is specified as `
800
+ # projects/`project``.
801
+ # @param [String] fields
802
+ # Selector specifying which fields to include in a partial response.
803
+ # @param [String] quota_user
804
+ # Available to use for quota purposes for server-side applications. Can be any
805
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
806
+ # @param [Google::Apis::RequestOptions] options
807
+ # Request-specific options
808
+ #
809
+ # @yield [result, err] Result & error if block supplied
810
+ # @yieldparam result [Google::Apis::PubsubV1::Policy] parsed result object
811
+ # @yieldparam err [StandardError] error object if request failed
812
+ #
813
+ # @return [Google::Apis::PubsubV1::Policy]
814
+ #
815
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
816
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
817
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
818
+ def get_project_snapshot_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block)
819
+ command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options)
820
+ command.response_representation = Google::Apis::PubsubV1::Policy::Representation
821
+ command.response_class = Google::Apis::PubsubV1::Policy
822
+ command.params['resource'] = resource unless resource.nil?
823
+ command.query['fields'] = fields unless fields.nil?
824
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
825
+ execute_or_queue_command(command, &block)
826
+ end
827
+
828
+ # Returns permissions that a caller has on the specified resource.
829
+ # @param [String] resource
830
+ # REQUIRED: The resource for which the policy detail is being requested. `
831
+ # resource` is usually specified as a path. For example, a Project resource is
832
+ # specified as `projects/`project``.
833
+ # @param [Google::Apis::PubsubV1::TestIamPermissionsRequest] test_iam_permissions_request_object
834
+ # @param [String] fields
835
+ # Selector specifying which fields to include in a partial response.
836
+ # @param [String] quota_user
837
+ # Available to use for quota purposes for server-side applications. Can be any
838
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
839
+ # @param [Google::Apis::RequestOptions] options
840
+ # Request-specific options
841
+ #
842
+ # @yield [result, err] Result & error if block supplied
843
+ # @yieldparam result [Google::Apis::PubsubV1::TestIamPermissionsResponse] parsed result object
844
+ # @yieldparam err [StandardError] error object if request failed
845
+ #
846
+ # @return [Google::Apis::PubsubV1::TestIamPermissionsResponse]
847
+ #
848
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
849
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
850
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
851
+ def test_snapshot_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
852
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
853
+ command.request_representation = Google::Apis::PubsubV1::TestIamPermissionsRequest::Representation
854
+ command.request_object = test_iam_permissions_request_object
855
+ command.response_representation = Google::Apis::PubsubV1::TestIamPermissionsResponse::Representation
856
+ command.response_class = Google::Apis::PubsubV1::TestIamPermissionsResponse
857
+ command.params['resource'] = resource unless resource.nil?
858
+ command.query['fields'] = fields unless fields.nil?
859
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
860
+ execute_or_queue_command(command, &block)
861
+ end
761
862
 
762
863
  protected
763
864
 
@@ -25,7 +25,7 @@ module Google
25
25
  # @see http://developers.google.com/qpx-express
26
26
  module QpxExpressV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160307'
28
+ REVISION = '20160708'
29
29
  end
30
30
  end
31
31
  end
@@ -1165,6 +1165,11 @@ module Google
1165
1165
  # @return [Fixnum]
1166
1166
  attr_accessor :solutions
1167
1167
 
1168
+ # IATA country code representing the point of ticketing.
1169
+ # Corresponds to the JSON property `ticketingCountry`
1170
+ # @return [String]
1171
+ attr_accessor :ticketing_country
1172
+
1168
1173
  def initialize(**args)
1169
1174
  update!(**args)
1170
1175
  end
@@ -1177,6 +1182,7 @@ module Google
1177
1182
  @sale_country = args[:sale_country] if args.key?(:sale_country)
1178
1183
  @slice = args[:slice] if args.key?(:slice)
1179
1184
  @solutions = args[:solutions] if args.key?(:solutions)
1185
+ @ticketing_country = args[:ticketing_country] if args.key?(:ticketing_country)
1180
1186
  end
1181
1187
  end
1182
1188
 
@@ -436,6 +436,7 @@ module Google
436
436
  collection :slice, as: 'slice', class: Google::Apis::QpxExpressV1::SliceInput, decorator: Google::Apis::QpxExpressV1::SliceInput::Representation
437
437
 
438
438
  property :solutions, as: 'solutions'
439
+ property :ticketing_country, as: 'ticketingCountry'
439
440
  end
440
441
  end
441
442
 
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/compute/docs/instance-groups/manager/v1beta2
27
27
  module ReplicapoolV1beta2
28
28
  VERSION = 'V1beta2'
29
- REVISION = '20160509'
29
+ REVISION = '20160512'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -20,12 +20,14 @@ module Google
20
20
  module Apis
21
21
  # Google Compute Engine Instance Group Updater API
22
22
  #
23
- # Updates groups of Compute Engine instances.
23
+ # [Deprecated. Please use compute.instanceGroupManagers.update method.
24
+ # replicapoolupdater API will be disabled after December 30th, 2016] Updates
25
+ # groups of Compute Engine instances.
24
26
  #
25
27
  # @see https://cloud.google.com/compute/docs/instance-groups/manager/#applying_rolling_updates_using_the_updater_service
26
28
  module ReplicapoolupdaterV1beta1
27
29
  VERSION = 'V1beta1'
28
- REVISION = '20160229'
30
+ REVISION = '20161003'
29
31
 
30
32
  # View and manage your data across Google Cloud Platform services
31
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,7 +22,9 @@ module Google
22
22
  module ReplicapoolupdaterV1beta1
23
23
  # Google Compute Engine Instance Group Updater API
24
24
  #
25
- # Updates groups of Compute Engine instances.
25
+ # [Deprecated. Please use compute.instanceGroupManagers.update method.
26
+ # replicapoolupdater API will be disabled after December 30th, 2016] Updates
27
+ # groups of Compute Engine instances.
26
28
  #
27
29
  # @example
28
30
  # require 'google/apis/replicapoolupdater_v1beta1'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/apps-script/execution/rest/v1/scripts/run
26
26
  module ScriptV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160426'
28
+ REVISION = '20160801'
29
29
 
30
30
  # View and manage your mail
31
31
  AUTH_SCOPE = 'https://mail.google.com/'
@@ -245,6 +245,11 @@ module Google
245
245
  # @return [Object]
246
246
  attr_accessor :result
247
247
 
248
+ #
249
+ # Corresponds to the JSON property `status`
250
+ # @return [String]
251
+ attr_accessor :status
252
+
248
253
  def initialize(**args)
249
254
  update!(**args)
250
255
  end
@@ -252,6 +257,7 @@ module Google
252
257
  # Update properties of this object
253
258
  def update!(**args)
254
259
  @result = args[:result] if args.key?(:result)
260
+ @status = args[:status] if args.key?(:status)
255
261
  end
256
262
  end
257
263
  end
@@ -111,6 +111,7 @@ module Google
111
111
  # @private
112
112
  class Representation < Google::Apis::Core::JsonRepresentation
113
113
  property :result, as: 'result'
114
+ property :status, as: 'status'
114
115
  end
115
116
  end
116
117
  end
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/sheets/
26
26
  module SheetsV4
27
27
  VERSION = 'V4'
28
- REVISION = '20160519'
28
+ REVISION = '20161105'
29
29
 
30
30
  # View the files in your Google Drive
31
31
  AUTH_DRIVE_READONLY = 'https://www.googleapis.com/auth/drive.readonly'
@@ -217,6 +217,34 @@ module Google
217
217
  end
218
218
  end
219
219
 
220
+ # The response when clearing a range of values in a spreadsheet.
221
+ class ClearValuesResponse
222
+ include Google::Apis::Core::Hashable
223
+
224
+ # The spreadsheet the updates were applied to.
225
+ # Corresponds to the JSON property `spreadsheetId`
226
+ # @return [String]
227
+ attr_accessor :spreadsheet_id
228
+
229
+ # The range (in A1 notation) that was cleared.
230
+ # (If the request was for an unbounded range or a ranger larger
231
+ # than the bounds of the sheet, this will be the actual range
232
+ # that was cleared, bounded to the sheet's limits.)
233
+ # Corresponds to the JSON property `clearedRange`
234
+ # @return [String]
235
+ attr_accessor :cleared_range
236
+
237
+ def initialize(**args)
238
+ update!(**args)
239
+ end
240
+
241
+ # Update properties of this object
242
+ def update!(**args)
243
+ @spreadsheet_id = args[:spreadsheet_id] if args.key?(:spreadsheet_id)
244
+ @cleared_range = args[:cleared_range] if args.key?(:cleared_range)
245
+ end
246
+ end
247
+
220
248
  # Updates a conditional format rule at the given index,
221
249
  # or moves a conditional format rule to another index.
222
250
  class UpdateConditionalFormatRuleRequest
@@ -576,16 +604,26 @@ module Google
576
604
  class UpdateValuesResponse
577
605
  include Google::Apis::Core::Hashable
578
606
 
579
- # The range (in A1 notation) that updates were applied to.
580
- # Corresponds to the JSON property `updatedRange`
581
- # @return [String]
582
- attr_accessor :updated_range
583
-
584
607
  # The number of columns where at least one cell in the column was updated.
585
608
  # Corresponds to the JSON property `updatedColumns`
586
609
  # @return [Fixnum]
587
610
  attr_accessor :updated_columns
588
611
 
612
+ # The number of cells updated.
613
+ # Corresponds to the JSON property `updatedCells`
614
+ # @return [Fixnum]
615
+ attr_accessor :updated_cells
616
+
617
+ # Data within a range of the spreadsheet.
618
+ # Corresponds to the JSON property `updatedData`
619
+ # @return [Google::Apis::SheetsV4::ValueRange]
620
+ attr_accessor :updated_data
621
+
622
+ # The range (in A1 notation) that updates were applied to.
623
+ # Corresponds to the JSON property `updatedRange`
624
+ # @return [String]
625
+ attr_accessor :updated_range
626
+
589
627
  # The spreadsheet the updates were applied to.
590
628
  # Corresponds to the JSON property `spreadsheetId`
591
629
  # @return [String]
@@ -596,22 +634,18 @@ module Google
596
634
  # @return [Fixnum]
597
635
  attr_accessor :updated_rows
598
636
 
599
- # The number of cells updated.
600
- # Corresponds to the JSON property `updatedCells`
601
- # @return [Fixnum]
602
- attr_accessor :updated_cells
603
-
604
637
  def initialize(**args)
605
638
  update!(**args)
606
639
  end
607
640
 
608
641
  # Update properties of this object
609
642
  def update!(**args)
610
- @updated_range = args[:updated_range] if args.key?(:updated_range)
611
643
  @updated_columns = args[:updated_columns] if args.key?(:updated_columns)
644
+ @updated_cells = args[:updated_cells] if args.key?(:updated_cells)
645
+ @updated_data = args[:updated_data] if args.key?(:updated_data)
646
+ @updated_range = args[:updated_range] if args.key?(:updated_range)
612
647
  @spreadsheet_id = args[:spreadsheet_id] if args.key?(:spreadsheet_id)
613
648
  @updated_rows = args[:updated_rows] if args.key?(:updated_rows)
614
- @updated_cells = args[:updated_cells] if args.key?(:updated_cells)
615
649
  end
616
650
  end
617
651
 
@@ -1014,6 +1048,11 @@ module Google
1014
1048
  # @return [Google::Apis::SheetsV4::DeleteConditionalFormatRuleResponse]
1015
1049
  attr_accessor :delete_conditional_format_rule
1016
1050
 
1051
+ # The result of adding a banded range.
1052
+ # Corresponds to the JSON property `addBanding`
1053
+ # @return [Google::Apis::SheetsV4::AddBandingResponse]
1054
+ attr_accessor :add_banding
1055
+
1017
1056
  # The result of duplicating a sheet.
1018
1057
  # Corresponds to the JSON property `duplicateSheet`
1019
1058
  # @return [Google::Apis::SheetsV4::DuplicateSheetResponse]
@@ -1043,6 +1082,7 @@ module Google
1043
1082
  @update_conditional_format_rule = args[:update_conditional_format_rule] if args.key?(:update_conditional_format_rule)
1044
1083
  @add_chart = args[:add_chart] if args.key?(:add_chart)
1045
1084
  @delete_conditional_format_rule = args[:delete_conditional_format_rule] if args.key?(:delete_conditional_format_rule)
1085
+ @add_banding = args[:add_banding] if args.key?(:add_banding)
1046
1086
  @duplicate_sheet = args[:duplicate_sheet] if args.key?(:duplicate_sheet)
1047
1087
  @duplicate_filter_view = args[:duplicate_filter_view] if args.key?(:duplicate_filter_view)
1048
1088
  @add_named_range = args[:add_named_range] if args.key?(:add_named_range)
@@ -1197,6 +1237,25 @@ module Google
1197
1237
  end
1198
1238
  end
1199
1239
 
1240
+ # The result of adding a banded range.
1241
+ class AddBandingResponse
1242
+ include Google::Apis::Core::Hashable
1243
+
1244
+ # A banded (alternating colors) range in a sheet.
1245
+ # Corresponds to the JSON property `bandedRange`
1246
+ # @return [Google::Apis::SheetsV4::BandedRange]
1247
+ attr_accessor :banded_range
1248
+
1249
+ def initialize(**args)
1250
+ update!(**args)
1251
+ end
1252
+
1253
+ # Update properties of this object
1254
+ def update!(**args)
1255
+ @banded_range = args[:banded_range] if args.key?(:banded_range)
1256
+ end
1257
+ end
1258
+
1200
1259
  # A run of a text format. The format of this run continues until the start
1201
1260
  # index of the next run.
1202
1261
  # When updating, all fields must be set.
@@ -1531,6 +1590,32 @@ module Google
1531
1590
  # @return [Array<Google::Apis::SheetsV4::ValueRange>]
1532
1591
  attr_accessor :data
1533
1592
 
1593
+ # Determines how values in the response should be rendered.
1594
+ # The default render option is ValueRenderOption.FORMATTED_VALUE.
1595
+ # Corresponds to the JSON property `responseValueRenderOption`
1596
+ # @return [String]
1597
+ attr_accessor :response_value_render_option
1598
+
1599
+ # Determines how dates, times, and durations in the response should be
1600
+ # rendered. This is ignored if response_value_render_option is
1601
+ # FORMATTED_VALUE.
1602
+ # The default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].
1603
+ # Corresponds to the JSON property `responseDateTimeRenderOption`
1604
+ # @return [String]
1605
+ attr_accessor :response_date_time_render_option
1606
+
1607
+ # Determines if the update response should include the values
1608
+ # of the cells that were updated. By default, responses
1609
+ # do not include the updated values. The `updatedData` field within
1610
+ # each of the BatchUpdateValuesResponse.responses will contain
1611
+ # the updated values. If the range to write was larger than than the range
1612
+ # actually written, the response will include all values in the requested
1613
+ # range (excluding trailing empty rows and columns).
1614
+ # Corresponds to the JSON property `includeValuesInResponse`
1615
+ # @return [Boolean]
1616
+ attr_accessor :include_values_in_response
1617
+ alias_method :include_values_in_response?, :include_values_in_response
1618
+
1534
1619
  def initialize(**args)
1535
1620
  update!(**args)
1536
1621
  end
@@ -1539,6 +1624,9 @@ module Google
1539
1624
  def update!(**args)
1540
1625
  @value_input_option = args[:value_input_option] if args.key?(:value_input_option)
1541
1626
  @data = args[:data] if args.key?(:data)
1627
+ @response_value_render_option = args[:response_value_render_option] if args.key?(:response_value_render_option)
1628
+ @response_date_time_render_option = args[:response_date_time_render_option] if args.key?(:response_date_time_render_option)
1629
+ @include_values_in_response = args[:include_values_in_response] if args.key?(:include_values_in_response)
1542
1630
  end
1543
1631
  end
1544
1632
 
@@ -1561,6 +1649,34 @@ module Google
1561
1649
  end
1562
1650
  end
1563
1651
 
1652
+ # The response when updating a range of values in a spreadsheet.
1653
+ class BatchClearValuesResponse
1654
+ include Google::Apis::Core::Hashable
1655
+
1656
+ # The spreadsheet the updates were applied to.
1657
+ # Corresponds to the JSON property `spreadsheetId`
1658
+ # @return [String]
1659
+ attr_accessor :spreadsheet_id
1660
+
1661
+ # The ranges that were cleared, in A1 notation.
1662
+ # (If the requests were for an unbounded range or a ranger larger
1663
+ # than the bounds of the sheet, this will be the actual ranges
1664
+ # that were cleared, bounded to the sheet's limits.)
1665
+ # Corresponds to the JSON property `clearedRanges`
1666
+ # @return [Array<String>]
1667
+ attr_accessor :cleared_ranges
1668
+
1669
+ def initialize(**args)
1670
+ update!(**args)
1671
+ end
1672
+
1673
+ # Update properties of this object
1674
+ def update!(**args)
1675
+ @spreadsheet_id = args[:spreadsheet_id] if args.key?(:spreadsheet_id)
1676
+ @cleared_ranges = args[:cleared_ranges] if args.key?(:cleared_ranges)
1677
+ end
1678
+ end
1679
+
1564
1680
  # A rule describing a conditional format.
1565
1681
  class ConditionalFormatRule
1566
1682
  include Google::Apis::Core::Hashable
@@ -1972,6 +2088,8 @@ module Google
1972
2088
  # The range the values cover, in A1 notation.
1973
2089
  # For output, this range indicates the entire requested range,
1974
2090
  # even though the values will exclude trailing rows and columns.
2091
+ # When appending values, this field represents the range to search for a
2092
+ # table, after which values will be appended.
1975
2093
  # Corresponds to the JSON property `range`
1976
2094
  # @return [String]
1977
2095
  attr_accessor :range
@@ -2047,6 +2165,39 @@ module Google
2047
2165
  end
2048
2166
  end
2049
2167
 
2168
+ # The response when updating a range of values in a spreadsheet.
2169
+ class AppendValuesResponse
2170
+ include Google::Apis::Core::Hashable
2171
+
2172
+ # The spreadsheet the updates were applied to.
2173
+ # Corresponds to the JSON property `spreadsheetId`
2174
+ # @return [String]
2175
+ attr_accessor :spreadsheet_id
2176
+
2177
+ # The range (in A1 notation) of the table that values are being appended to
2178
+ # (before the values were appended).
2179
+ # Empty if no table was found.
2180
+ # Corresponds to the JSON property `tableRange`
2181
+ # @return [String]
2182
+ attr_accessor :table_range
2183
+
2184
+ # The response when updating a range of values in a spreadsheet.
2185
+ # Corresponds to the JSON property `updates`
2186
+ # @return [Google::Apis::SheetsV4::UpdateValuesResponse]
2187
+ attr_accessor :updates
2188
+
2189
+ def initialize(**args)
2190
+ update!(**args)
2191
+ end
2192
+
2193
+ # Update properties of this object
2194
+ def update!(**args)
2195
+ @spreadsheet_id = args[:spreadsheet_id] if args.key?(:spreadsheet_id)
2196
+ @table_range = args[:table_range] if args.key?(:table_range)
2197
+ @updates = args[:updates] if args.key?(:updates)
2198
+ end
2199
+ end
2200
+
2050
2201
  # The format of a cell.
2051
2202
  class CellFormat
2052
2203
  include Google::Apis::Core::Hashable
@@ -2577,18 +2728,42 @@ module Google
2577
2728
  class BatchUpdateSpreadsheetRequest
2578
2729
  include Google::Apis::Core::Hashable
2579
2730
 
2731
+ # Determines if the update response should include the spreadsheet
2732
+ # resource.
2733
+ # Corresponds to the JSON property `includeSpreadsheetInResponse`
2734
+ # @return [Boolean]
2735
+ attr_accessor :include_spreadsheet_in_response
2736
+ alias_method :include_spreadsheet_in_response?, :include_spreadsheet_in_response
2737
+
2580
2738
  # A list of updates to apply to the spreadsheet.
2581
2739
  # Corresponds to the JSON property `requests`
2582
2740
  # @return [Array<Google::Apis::SheetsV4::Request>]
2583
2741
  attr_accessor :requests
2584
2742
 
2743
+ # Limits the ranges included in the response spreadsheet.
2744
+ # Meaningful only if include_spreadsheet_response is 'true'.
2745
+ # Corresponds to the JSON property `responseRanges`
2746
+ # @return [Array<String>]
2747
+ attr_accessor :response_ranges
2748
+
2749
+ # True if grid data should be returned. Meaningful only if
2750
+ # if include_spreadsheet_response is 'true'.
2751
+ # This parameter is ignored if a field mask was set in the request.
2752
+ # Corresponds to the JSON property `responseIncludeGridData`
2753
+ # @return [Boolean]
2754
+ attr_accessor :response_include_grid_data
2755
+ alias_method :response_include_grid_data?, :response_include_grid_data
2756
+
2585
2757
  def initialize(**args)
2586
2758
  update!(**args)
2587
2759
  end
2588
2760
 
2589
2761
  # Update properties of this object
2590
2762
  def update!(**args)
2763
+ @include_spreadsheet_in_response = args[:include_spreadsheet_in_response] if args.key?(:include_spreadsheet_in_response)
2591
2764
  @requests = args[:requests] if args.key?(:requests)
2765
+ @response_ranges = args[:response_ranges] if args.key?(:response_ranges)
2766
+ @response_include_grid_data = args[:response_include_grid_data] if args.key?(:response_include_grid_data)
2592
2767
  end
2593
2768
  end
2594
2769
 
@@ -2758,6 +2933,19 @@ module Google
2758
2933
  end
2759
2934
  end
2760
2935
 
2936
+ # The request for clearing a range of values in a spreadsheet.
2937
+ class ClearValuesRequest
2938
+ include Google::Apis::Core::Hashable
2939
+
2940
+ def initialize(**args)
2941
+ update!(**args)
2942
+ end
2943
+
2944
+ # Update properties of this object
2945
+ def update!(**args)
2946
+ end
2947
+ end
2948
+
2761
2949
  # A protected range.
2762
2950
  class ProtectedRange
2763
2951
  include Google::Apis::Core::Hashable
@@ -3205,6 +3393,8 @@ module Google
3205
3393
 
3206
3394
  # Pattern string used for formatting. If not set, a default pattern based on
3207
3395
  # the user's locale will be used if necessary for the given type.
3396
+ # See the [Date and Number Formats guide](/sheets/guides/formats) for more
3397
+ # information about the supported patterns.
3208
3398
  # Corresponds to the JSON property `pattern`
3209
3399
  # @return [String]
3210
3400
  attr_accessor :pattern
@@ -3226,6 +3416,25 @@ module Google
3226
3416
  end
3227
3417
  end
3228
3418
 
3419
+ # The request for clearing more than one range of values in a spreadsheet.
3420
+ class BatchClearValuesRequest
3421
+ include Google::Apis::Core::Hashable
3422
+
3423
+ # The ranges to clear, in A1 notation.
3424
+ # Corresponds to the JSON property `ranges`
3425
+ # @return [Array<String>]
3426
+ attr_accessor :ranges
3427
+
3428
+ def initialize(**args)
3429
+ update!(**args)
3430
+ end
3431
+
3432
+ # Update properties of this object
3433
+ def update!(**args)
3434
+ @ranges = args[:ranges] if args.key?(:ranges)
3435
+ end
3436
+ end
3437
+
3229
3438
  # Updates properties of dimensions within the specified range.
3230
3439
  class UpdateDimensionPropertiesRequest
3231
3440
  include Google::Apis::Core::Hashable
@@ -3429,6 +3638,25 @@ module Google
3429
3638
  end
3430
3639
  end
3431
3640
 
3641
+ # Removes the banded range with the given ID from the spreadsheet.
3642
+ class DeleteBandingRequest
3643
+ include Google::Apis::Core::Hashable
3644
+
3645
+ # The ID of the banded range to delete.
3646
+ # Corresponds to the JSON property `bandedRangeId`
3647
+ # @return [Fixnum]
3648
+ attr_accessor :banded_range_id
3649
+
3650
+ def initialize(**args)
3651
+ update!(**args)
3652
+ end
3653
+
3654
+ # Update properties of this object
3655
+ def update!(**args)
3656
+ @banded_range_id = args[:banded_range_id] if args.key?(:banded_range_id)
3657
+ end
3658
+ end
3659
+
3432
3660
  # The default filter associated with a sheet.
3433
3661
  class BasicFilter
3434
3662
  include Google::Apis::Core::Hashable
@@ -3572,7 +3800,7 @@ module Google
3572
3800
  attr_accessor :style
3573
3801
 
3574
3802
  # The width of the border, in pixels.
3575
- # Border widths must be between 0 and 3 pixels, inclusive.
3803
+ # Deprecated; the width is determined by the "style" field.
3576
3804
  # Corresponds to the JSON property `width`
3577
3805
  # @return [Fixnum]
3578
3806
  attr_accessor :width
@@ -3730,6 +3958,25 @@ module Google
3730
3958
  end
3731
3959
  end
3732
3960
 
3961
+ # Adds a new banded range to the spreadsheet.
3962
+ class AddBandingRequest
3963
+ include Google::Apis::Core::Hashable
3964
+
3965
+ # A banded (alternating colors) range in a sheet.
3966
+ # Corresponds to the JSON property `bandedRange`
3967
+ # @return [Google::Apis::SheetsV4::BandedRange]
3968
+ attr_accessor :banded_range
3969
+
3970
+ def initialize(**args)
3971
+ update!(**args)
3972
+ end
3973
+
3974
+ # Update properties of this object
3975
+ def update!(**args)
3976
+ @banded_range = args[:banded_range] if args.key?(:banded_range)
3977
+ end
3978
+ end
3979
+
3733
3980
  # Adds new cells after the last row with data in a sheet,
3734
3981
  # inserting new rows into the sheet if necessary.
3735
3982
  class AppendCellsRequest
@@ -3999,25 +4246,6 @@ module Google
3999
4246
  end
4000
4247
  end
4001
4248
 
4002
- # Sets the basic filter associated with a sheet.
4003
- class SetBasicFilterRequest
4004
- include Google::Apis::Core::Hashable
4005
-
4006
- # The default filter associated with a sheet.
4007
- # Corresponds to the JSON property `filter`
4008
- # @return [Google::Apis::SheetsV4::BasicFilter]
4009
- attr_accessor :filter
4010
-
4011
- def initialize(**args)
4012
- update!(**args)
4013
- end
4014
-
4015
- # Update properties of this object
4016
- def update!(**args)
4017
- @filter = args[:filter] if args.key?(:filter)
4018
- end
4019
- end
4020
-
4021
4249
  # Update an embedded object's position (such as a moving or resizing a
4022
4250
  # chart or image).
4023
4251
  class UpdateEmbeddedObjectPositionRequest
@@ -4056,6 +4284,25 @@ module Google
4056
4284
  end
4057
4285
  end
4058
4286
 
4287
+ # Sets the basic filter associated with a sheet.
4288
+ class SetBasicFilterRequest
4289
+ include Google::Apis::Core::Hashable
4290
+
4291
+ # The default filter associated with a sheet.
4292
+ # Corresponds to the JSON property `filter`
4293
+ # @return [Google::Apis::SheetsV4::BasicFilter]
4294
+ attr_accessor :filter
4295
+
4296
+ def initialize(**args)
4297
+ update!(**args)
4298
+ end
4299
+
4300
+ # Update properties of this object
4301
+ def update!(**args)
4302
+ @filter = args[:filter] if args.key?(:filter)
4303
+ end
4304
+ end
4305
+
4059
4306
  # Automatically resizes one or more dimensions based on the contents
4060
4307
  # of the cells in that dimension.
4061
4308
  class AutoResizeDimensionsRequest
@@ -4099,65 +4346,504 @@ module Google
4099
4346
  end
4100
4347
  end
4101
4348
 
4102
- # A single grouping (either row or column) in a pivot table.
4103
- class PivotGroup
4349
+ # Properties referring a single dimension (either row or column). If both
4350
+ # BandedRange.row_properties and BandedRange.column_properties are
4351
+ # set, the fill colors are applied to cells according to the following rules:
4352
+ # * header_color and footer_color take priority over band colors.
4353
+ # * first_band_color takes priority over second_band_color.
4354
+ # * row_properties takes priority over column_properties.
4355
+ # For example, the first row color takes priority over the first column
4356
+ # color, but the first column color takes priority over the second row color.
4357
+ # Similarly, the row header takes priority over the column header in the
4358
+ # top left cell, but the column header takes priority over the first row
4359
+ # color if the row header is not set.
4360
+ class BandingProperties
4104
4361
  include Google::Apis::Core::Hashable
4105
4362
 
4106
- # The order the values in this group should be sorted.
4107
- # Corresponds to the JSON property `sortOrder`
4108
- # @return [String]
4109
- attr_accessor :sort_order
4110
-
4111
- # The column offset of the source range that this grouping is based on.
4112
- # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
4113
- # means this group refers to column `C`, whereas the offset `1` would refer
4114
- # to column `D`.
4115
- # Corresponds to the JSON property `sourceColumnOffset`
4116
- # @return [Fixnum]
4117
- attr_accessor :source_column_offset
4118
-
4119
- # True if the pivot table should include the totals for this grouping.
4120
- # Corresponds to the JSON property `showTotals`
4121
- # @return [Boolean]
4122
- attr_accessor :show_totals
4123
- alias_method :show_totals?, :show_totals
4124
-
4125
- # Information about which values in a pivot group should be used for sorting.
4126
- # Corresponds to the JSON property `valueBucket`
4127
- # @return [Google::Apis::SheetsV4::PivotGroupSortValueBucket]
4128
- attr_accessor :value_bucket
4129
-
4130
- # Metadata about values in the grouping.
4131
- # Corresponds to the JSON property `valueMetadata`
4132
- # @return [Array<Google::Apis::SheetsV4::PivotGroupValueMetadata>]
4133
- attr_accessor :value_metadata
4134
-
4135
- def initialize(**args)
4136
- update!(**args)
4137
- end
4138
-
4139
- # Update properties of this object
4140
- def update!(**args)
4141
- @sort_order = args[:sort_order] if args.key?(:sort_order)
4142
- @source_column_offset = args[:source_column_offset] if args.key?(:source_column_offset)
4143
- @show_totals = args[:show_totals] if args.key?(:show_totals)
4144
- @value_bucket = args[:value_bucket] if args.key?(:value_bucket)
4145
- @value_metadata = args[:value_metadata] if args.key?(:value_metadata)
4146
- end
4147
- end
4148
-
4149
- # A range on a sheet.
4150
- # All indexes are zero-based.
4151
- # Indexes are half open, e.g the start index is inclusive
4152
- # and the end index is exclusive -- [start_index, end_index).
4153
- # Missing indexes indicate the range is unbounded on that side.
4154
- # For example, if `"Sheet1"` is sheet ID 0, then:
4155
- # `Sheet1!A1:A1 == sheet_id: 0,
4156
- # start_row_index: 0, end_row_index: 1,
4157
- # start_column_index: 0, end_column_index: 1`
4158
- # `Sheet1!A3:B4 == sheet_id: 0,
4159
- # start_row_index: 2, end_row_index: 4,
4160
- # start_column_index: 0, end_column_index: 2`
4363
+ # Represents a color in the RGBA color space. This representation is designed
4364
+ # for simplicity of conversion to/from color representations in various
4365
+ # languages over compactness; for example, the fields of this representation
4366
+ # can be trivially provided to the constructor of "java.awt.Color" in Java; it
4367
+ # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
4368
+ # method in iOS; and, with just a little work, it can be easily formatted into
4369
+ # a CSS "rgba()" string in JavaScript, as well. Here are some examples:
4370
+ # Example (Java):
4371
+ # import com.google.type.Color;
4372
+ # // ...
4373
+ # public static java.awt.Color fromProto(Color protocolor) `
4374
+ # float alpha = protocolor.hasAlpha()
4375
+ # ? protocolor.getAlpha().getValue()
4376
+ # : 1.0;
4377
+ # return new java.awt.Color(
4378
+ # protocolor.getRed(),
4379
+ # protocolor.getGreen(),
4380
+ # protocolor.getBlue(),
4381
+ # alpha);
4382
+ # `
4383
+ # public static Color toProto(java.awt.Color color) `
4384
+ # float red = (float) color.getRed();
4385
+ # float green = (float) color.getGreen();
4386
+ # float blue = (float) color.getBlue();
4387
+ # float denominator = 255.0;
4388
+ # Color.Builder resultBuilder =
4389
+ # Color
4390
+ # .newBuilder()
4391
+ # .setRed(red / denominator)
4392
+ # .setGreen(green / denominator)
4393
+ # .setBlue(blue / denominator);
4394
+ # int alpha = color.getAlpha();
4395
+ # if (alpha != 255) `
4396
+ # result.setAlpha(
4397
+ # FloatValue
4398
+ # .newBuilder()
4399
+ # .setValue(((float) alpha) / denominator)
4400
+ # .build());
4401
+ # `
4402
+ # return resultBuilder.build();
4403
+ # `
4404
+ # // ...
4405
+ # Example (iOS / Obj-C):
4406
+ # // ...
4407
+ # static UIColor* fromProto(Color* protocolor) `
4408
+ # float red = [protocolor red];
4409
+ # float green = [protocolor green];
4410
+ # float blue = [protocolor blue];
4411
+ # FloatValue* alpha_wrapper = [protocolor alpha];
4412
+ # float alpha = 1.0;
4413
+ # if (alpha_wrapper != nil) `
4414
+ # alpha = [alpha_wrapper value];
4415
+ # `
4416
+ # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
4417
+ # `
4418
+ # static Color* toProto(UIColor* color) `
4419
+ # CGFloat red, green, blue, alpha;
4420
+ # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) `
4421
+ # return nil;
4422
+ # `
4423
+ # Color* result = [Color alloc] init];
4424
+ # [result setRed:red];
4425
+ # [result setGreen:green];
4426
+ # [result setBlue:blue];
4427
+ # if (alpha <= 0.9999) `
4428
+ # [result setAlpha:floatWrapperWithValue(alpha)];
4429
+ # `
4430
+ # [result autorelease];
4431
+ # return result;
4432
+ # `
4433
+ # // ...
4434
+ # Example (JavaScript):
4435
+ # // ...
4436
+ # var protoToCssColor = function(rgb_color) `
4437
+ # var redFrac = rgb_color.red || 0.0;
4438
+ # var greenFrac = rgb_color.green || 0.0;
4439
+ # var blueFrac = rgb_color.blue || 0.0;
4440
+ # var red = Math.floor(redFrac * 255);
4441
+ # var green = Math.floor(greenFrac * 255);
4442
+ # var blue = Math.floor(blueFrac * 255);
4443
+ # if (!('alpha' in rgb_color)) `
4444
+ # return rgbToCssColor_(red, green, blue);
4445
+ # `
4446
+ # var alphaFrac = rgb_color.alpha.value || 0.0;
4447
+ # var rgbParams = [red, green, blue].join(',');
4448
+ # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
4449
+ # `;
4450
+ # var rgbToCssColor_ = function(red, green, blue) `
4451
+ # var rgbNumber = new Number((red << 16) | (green << 8) | blue);
4452
+ # var hexString = rgbNumber.toString(16);
4453
+ # var missingZeros = 6 - hexString.length;
4454
+ # var resultBuilder = ['#'];
4455
+ # for (var i = 0; i < missingZeros; i++) `
4456
+ # resultBuilder.push('0');
4457
+ # `
4458
+ # resultBuilder.push(hexString);
4459
+ # return resultBuilder.join('');
4460
+ # `;
4461
+ # // ...
4462
+ # Corresponds to the JSON property `footerColor`
4463
+ # @return [Google::Apis::SheetsV4::Color]
4464
+ attr_accessor :footer_color
4465
+
4466
+ # Represents a color in the RGBA color space. This representation is designed
4467
+ # for simplicity of conversion to/from color representations in various
4468
+ # languages over compactness; for example, the fields of this representation
4469
+ # can be trivially provided to the constructor of "java.awt.Color" in Java; it
4470
+ # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
4471
+ # method in iOS; and, with just a little work, it can be easily formatted into
4472
+ # a CSS "rgba()" string in JavaScript, as well. Here are some examples:
4473
+ # Example (Java):
4474
+ # import com.google.type.Color;
4475
+ # // ...
4476
+ # public static java.awt.Color fromProto(Color protocolor) `
4477
+ # float alpha = protocolor.hasAlpha()
4478
+ # ? protocolor.getAlpha().getValue()
4479
+ # : 1.0;
4480
+ # return new java.awt.Color(
4481
+ # protocolor.getRed(),
4482
+ # protocolor.getGreen(),
4483
+ # protocolor.getBlue(),
4484
+ # alpha);
4485
+ # `
4486
+ # public static Color toProto(java.awt.Color color) `
4487
+ # float red = (float) color.getRed();
4488
+ # float green = (float) color.getGreen();
4489
+ # float blue = (float) color.getBlue();
4490
+ # float denominator = 255.0;
4491
+ # Color.Builder resultBuilder =
4492
+ # Color
4493
+ # .newBuilder()
4494
+ # .setRed(red / denominator)
4495
+ # .setGreen(green / denominator)
4496
+ # .setBlue(blue / denominator);
4497
+ # int alpha = color.getAlpha();
4498
+ # if (alpha != 255) `
4499
+ # result.setAlpha(
4500
+ # FloatValue
4501
+ # .newBuilder()
4502
+ # .setValue(((float) alpha) / denominator)
4503
+ # .build());
4504
+ # `
4505
+ # return resultBuilder.build();
4506
+ # `
4507
+ # // ...
4508
+ # Example (iOS / Obj-C):
4509
+ # // ...
4510
+ # static UIColor* fromProto(Color* protocolor) `
4511
+ # float red = [protocolor red];
4512
+ # float green = [protocolor green];
4513
+ # float blue = [protocolor blue];
4514
+ # FloatValue* alpha_wrapper = [protocolor alpha];
4515
+ # float alpha = 1.0;
4516
+ # if (alpha_wrapper != nil) `
4517
+ # alpha = [alpha_wrapper value];
4518
+ # `
4519
+ # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
4520
+ # `
4521
+ # static Color* toProto(UIColor* color) `
4522
+ # CGFloat red, green, blue, alpha;
4523
+ # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) `
4524
+ # return nil;
4525
+ # `
4526
+ # Color* result = [Color alloc] init];
4527
+ # [result setRed:red];
4528
+ # [result setGreen:green];
4529
+ # [result setBlue:blue];
4530
+ # if (alpha <= 0.9999) `
4531
+ # [result setAlpha:floatWrapperWithValue(alpha)];
4532
+ # `
4533
+ # [result autorelease];
4534
+ # return result;
4535
+ # `
4536
+ # // ...
4537
+ # Example (JavaScript):
4538
+ # // ...
4539
+ # var protoToCssColor = function(rgb_color) `
4540
+ # var redFrac = rgb_color.red || 0.0;
4541
+ # var greenFrac = rgb_color.green || 0.0;
4542
+ # var blueFrac = rgb_color.blue || 0.0;
4543
+ # var red = Math.floor(redFrac * 255);
4544
+ # var green = Math.floor(greenFrac * 255);
4545
+ # var blue = Math.floor(blueFrac * 255);
4546
+ # if (!('alpha' in rgb_color)) `
4547
+ # return rgbToCssColor_(red, green, blue);
4548
+ # `
4549
+ # var alphaFrac = rgb_color.alpha.value || 0.0;
4550
+ # var rgbParams = [red, green, blue].join(',');
4551
+ # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
4552
+ # `;
4553
+ # var rgbToCssColor_ = function(red, green, blue) `
4554
+ # var rgbNumber = new Number((red << 16) | (green << 8) | blue);
4555
+ # var hexString = rgbNumber.toString(16);
4556
+ # var missingZeros = 6 - hexString.length;
4557
+ # var resultBuilder = ['#'];
4558
+ # for (var i = 0; i < missingZeros; i++) `
4559
+ # resultBuilder.push('0');
4560
+ # `
4561
+ # resultBuilder.push(hexString);
4562
+ # return resultBuilder.join('');
4563
+ # `;
4564
+ # // ...
4565
+ # Corresponds to the JSON property `headerColor`
4566
+ # @return [Google::Apis::SheetsV4::Color]
4567
+ attr_accessor :header_color
4568
+
4569
+ # Represents a color in the RGBA color space. This representation is designed
4570
+ # for simplicity of conversion to/from color representations in various
4571
+ # languages over compactness; for example, the fields of this representation
4572
+ # can be trivially provided to the constructor of "java.awt.Color" in Java; it
4573
+ # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
4574
+ # method in iOS; and, with just a little work, it can be easily formatted into
4575
+ # a CSS "rgba()" string in JavaScript, as well. Here are some examples:
4576
+ # Example (Java):
4577
+ # import com.google.type.Color;
4578
+ # // ...
4579
+ # public static java.awt.Color fromProto(Color protocolor) `
4580
+ # float alpha = protocolor.hasAlpha()
4581
+ # ? protocolor.getAlpha().getValue()
4582
+ # : 1.0;
4583
+ # return new java.awt.Color(
4584
+ # protocolor.getRed(),
4585
+ # protocolor.getGreen(),
4586
+ # protocolor.getBlue(),
4587
+ # alpha);
4588
+ # `
4589
+ # public static Color toProto(java.awt.Color color) `
4590
+ # float red = (float) color.getRed();
4591
+ # float green = (float) color.getGreen();
4592
+ # float blue = (float) color.getBlue();
4593
+ # float denominator = 255.0;
4594
+ # Color.Builder resultBuilder =
4595
+ # Color
4596
+ # .newBuilder()
4597
+ # .setRed(red / denominator)
4598
+ # .setGreen(green / denominator)
4599
+ # .setBlue(blue / denominator);
4600
+ # int alpha = color.getAlpha();
4601
+ # if (alpha != 255) `
4602
+ # result.setAlpha(
4603
+ # FloatValue
4604
+ # .newBuilder()
4605
+ # .setValue(((float) alpha) / denominator)
4606
+ # .build());
4607
+ # `
4608
+ # return resultBuilder.build();
4609
+ # `
4610
+ # // ...
4611
+ # Example (iOS / Obj-C):
4612
+ # // ...
4613
+ # static UIColor* fromProto(Color* protocolor) `
4614
+ # float red = [protocolor red];
4615
+ # float green = [protocolor green];
4616
+ # float blue = [protocolor blue];
4617
+ # FloatValue* alpha_wrapper = [protocolor alpha];
4618
+ # float alpha = 1.0;
4619
+ # if (alpha_wrapper != nil) `
4620
+ # alpha = [alpha_wrapper value];
4621
+ # `
4622
+ # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
4623
+ # `
4624
+ # static Color* toProto(UIColor* color) `
4625
+ # CGFloat red, green, blue, alpha;
4626
+ # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) `
4627
+ # return nil;
4628
+ # `
4629
+ # Color* result = [Color alloc] init];
4630
+ # [result setRed:red];
4631
+ # [result setGreen:green];
4632
+ # [result setBlue:blue];
4633
+ # if (alpha <= 0.9999) `
4634
+ # [result setAlpha:floatWrapperWithValue(alpha)];
4635
+ # `
4636
+ # [result autorelease];
4637
+ # return result;
4638
+ # `
4639
+ # // ...
4640
+ # Example (JavaScript):
4641
+ # // ...
4642
+ # var protoToCssColor = function(rgb_color) `
4643
+ # var redFrac = rgb_color.red || 0.0;
4644
+ # var greenFrac = rgb_color.green || 0.0;
4645
+ # var blueFrac = rgb_color.blue || 0.0;
4646
+ # var red = Math.floor(redFrac * 255);
4647
+ # var green = Math.floor(greenFrac * 255);
4648
+ # var blue = Math.floor(blueFrac * 255);
4649
+ # if (!('alpha' in rgb_color)) `
4650
+ # return rgbToCssColor_(red, green, blue);
4651
+ # `
4652
+ # var alphaFrac = rgb_color.alpha.value || 0.0;
4653
+ # var rgbParams = [red, green, blue].join(',');
4654
+ # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
4655
+ # `;
4656
+ # var rgbToCssColor_ = function(red, green, blue) `
4657
+ # var rgbNumber = new Number((red << 16) | (green << 8) | blue);
4658
+ # var hexString = rgbNumber.toString(16);
4659
+ # var missingZeros = 6 - hexString.length;
4660
+ # var resultBuilder = ['#'];
4661
+ # for (var i = 0; i < missingZeros; i++) `
4662
+ # resultBuilder.push('0');
4663
+ # `
4664
+ # resultBuilder.push(hexString);
4665
+ # return resultBuilder.join('');
4666
+ # `;
4667
+ # // ...
4668
+ # Corresponds to the JSON property `secondBandColor`
4669
+ # @return [Google::Apis::SheetsV4::Color]
4670
+ attr_accessor :second_band_color
4671
+
4672
+ # Represents a color in the RGBA color space. This representation is designed
4673
+ # for simplicity of conversion to/from color representations in various
4674
+ # languages over compactness; for example, the fields of this representation
4675
+ # can be trivially provided to the constructor of "java.awt.Color" in Java; it
4676
+ # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha"
4677
+ # method in iOS; and, with just a little work, it can be easily formatted into
4678
+ # a CSS "rgba()" string in JavaScript, as well. Here are some examples:
4679
+ # Example (Java):
4680
+ # import com.google.type.Color;
4681
+ # // ...
4682
+ # public static java.awt.Color fromProto(Color protocolor) `
4683
+ # float alpha = protocolor.hasAlpha()
4684
+ # ? protocolor.getAlpha().getValue()
4685
+ # : 1.0;
4686
+ # return new java.awt.Color(
4687
+ # protocolor.getRed(),
4688
+ # protocolor.getGreen(),
4689
+ # protocolor.getBlue(),
4690
+ # alpha);
4691
+ # `
4692
+ # public static Color toProto(java.awt.Color color) `
4693
+ # float red = (float) color.getRed();
4694
+ # float green = (float) color.getGreen();
4695
+ # float blue = (float) color.getBlue();
4696
+ # float denominator = 255.0;
4697
+ # Color.Builder resultBuilder =
4698
+ # Color
4699
+ # .newBuilder()
4700
+ # .setRed(red / denominator)
4701
+ # .setGreen(green / denominator)
4702
+ # .setBlue(blue / denominator);
4703
+ # int alpha = color.getAlpha();
4704
+ # if (alpha != 255) `
4705
+ # result.setAlpha(
4706
+ # FloatValue
4707
+ # .newBuilder()
4708
+ # .setValue(((float) alpha) / denominator)
4709
+ # .build());
4710
+ # `
4711
+ # return resultBuilder.build();
4712
+ # `
4713
+ # // ...
4714
+ # Example (iOS / Obj-C):
4715
+ # // ...
4716
+ # static UIColor* fromProto(Color* protocolor) `
4717
+ # float red = [protocolor red];
4718
+ # float green = [protocolor green];
4719
+ # float blue = [protocolor blue];
4720
+ # FloatValue* alpha_wrapper = [protocolor alpha];
4721
+ # float alpha = 1.0;
4722
+ # if (alpha_wrapper != nil) `
4723
+ # alpha = [alpha_wrapper value];
4724
+ # `
4725
+ # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
4726
+ # `
4727
+ # static Color* toProto(UIColor* color) `
4728
+ # CGFloat red, green, blue, alpha;
4729
+ # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) `
4730
+ # return nil;
4731
+ # `
4732
+ # Color* result = [Color alloc] init];
4733
+ # [result setRed:red];
4734
+ # [result setGreen:green];
4735
+ # [result setBlue:blue];
4736
+ # if (alpha <= 0.9999) `
4737
+ # [result setAlpha:floatWrapperWithValue(alpha)];
4738
+ # `
4739
+ # [result autorelease];
4740
+ # return result;
4741
+ # `
4742
+ # // ...
4743
+ # Example (JavaScript):
4744
+ # // ...
4745
+ # var protoToCssColor = function(rgb_color) `
4746
+ # var redFrac = rgb_color.red || 0.0;
4747
+ # var greenFrac = rgb_color.green || 0.0;
4748
+ # var blueFrac = rgb_color.blue || 0.0;
4749
+ # var red = Math.floor(redFrac * 255);
4750
+ # var green = Math.floor(greenFrac * 255);
4751
+ # var blue = Math.floor(blueFrac * 255);
4752
+ # if (!('alpha' in rgb_color)) `
4753
+ # return rgbToCssColor_(red, green, blue);
4754
+ # `
4755
+ # var alphaFrac = rgb_color.alpha.value || 0.0;
4756
+ # var rgbParams = [red, green, blue].join(',');
4757
+ # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
4758
+ # `;
4759
+ # var rgbToCssColor_ = function(red, green, blue) `
4760
+ # var rgbNumber = new Number((red << 16) | (green << 8) | blue);
4761
+ # var hexString = rgbNumber.toString(16);
4762
+ # var missingZeros = 6 - hexString.length;
4763
+ # var resultBuilder = ['#'];
4764
+ # for (var i = 0; i < missingZeros; i++) `
4765
+ # resultBuilder.push('0');
4766
+ # `
4767
+ # resultBuilder.push(hexString);
4768
+ # return resultBuilder.join('');
4769
+ # `;
4770
+ # // ...
4771
+ # Corresponds to the JSON property `firstBandColor`
4772
+ # @return [Google::Apis::SheetsV4::Color]
4773
+ attr_accessor :first_band_color
4774
+
4775
+ def initialize(**args)
4776
+ update!(**args)
4777
+ end
4778
+
4779
+ # Update properties of this object
4780
+ def update!(**args)
4781
+ @footer_color = args[:footer_color] if args.key?(:footer_color)
4782
+ @header_color = args[:header_color] if args.key?(:header_color)
4783
+ @second_band_color = args[:second_band_color] if args.key?(:second_band_color)
4784
+ @first_band_color = args[:first_band_color] if args.key?(:first_band_color)
4785
+ end
4786
+ end
4787
+
4788
+ # A single grouping (either row or column) in a pivot table.
4789
+ class PivotGroup
4790
+ include Google::Apis::Core::Hashable
4791
+
4792
+ # The order the values in this group should be sorted.
4793
+ # Corresponds to the JSON property `sortOrder`
4794
+ # @return [String]
4795
+ attr_accessor :sort_order
4796
+
4797
+ # The column offset of the source range that this grouping is based on.
4798
+ # For example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`
4799
+ # means this group refers to column `C`, whereas the offset `1` would refer
4800
+ # to column `D`.
4801
+ # Corresponds to the JSON property `sourceColumnOffset`
4802
+ # @return [Fixnum]
4803
+ attr_accessor :source_column_offset
4804
+
4805
+ # True if the pivot table should include the totals for this grouping.
4806
+ # Corresponds to the JSON property `showTotals`
4807
+ # @return [Boolean]
4808
+ attr_accessor :show_totals
4809
+ alias_method :show_totals?, :show_totals
4810
+
4811
+ # Information about which values in a pivot group should be used for sorting.
4812
+ # Corresponds to the JSON property `valueBucket`
4813
+ # @return [Google::Apis::SheetsV4::PivotGroupSortValueBucket]
4814
+ attr_accessor :value_bucket
4815
+
4816
+ # Metadata about values in the grouping.
4817
+ # Corresponds to the JSON property `valueMetadata`
4818
+ # @return [Array<Google::Apis::SheetsV4::PivotGroupValueMetadata>]
4819
+ attr_accessor :value_metadata
4820
+
4821
+ def initialize(**args)
4822
+ update!(**args)
4823
+ end
4824
+
4825
+ # Update properties of this object
4826
+ def update!(**args)
4827
+ @sort_order = args[:sort_order] if args.key?(:sort_order)
4828
+ @source_column_offset = args[:source_column_offset] if args.key?(:source_column_offset)
4829
+ @show_totals = args[:show_totals] if args.key?(:show_totals)
4830
+ @value_bucket = args[:value_bucket] if args.key?(:value_bucket)
4831
+ @value_metadata = args[:value_metadata] if args.key?(:value_metadata)
4832
+ end
4833
+ end
4834
+
4835
+ # A range on a sheet.
4836
+ # All indexes are zero-based.
4837
+ # Indexes are half open, e.g the start index is inclusive
4838
+ # and the end index is exclusive -- [start_index, end_index).
4839
+ # Missing indexes indicate the range is unbounded on that side.
4840
+ # For example, if `"Sheet1"` is sheet ID 0, then:
4841
+ # `Sheet1!A1:A1 == sheet_id: 0,
4842
+ # start_row_index: 0, end_row_index: 1,
4843
+ # start_column_index: 0, end_column_index: 1`
4844
+ # `Sheet1!A3:B4 == sheet_id: 0,
4845
+ # start_row_index: 2, end_row_index: 4,
4846
+ # start_column_index: 0, end_column_index: 2`
4161
4847
  # `Sheet1!A:B == sheet_id: 0,
4162
4848
  # start_column_index: 0, end_column_index: 2`
4163
4849
  # `Sheet1!A5:B == sheet_id: 0,
@@ -4229,6 +4915,33 @@ module Google
4229
4915
  end
4230
4916
  end
4231
4917
 
4918
+ # Updates properties of the supplied banded range.
4919
+ class UpdateBandingRequest
4920
+ include Google::Apis::Core::Hashable
4921
+
4922
+ # A banded (alternating colors) range in a sheet.
4923
+ # Corresponds to the JSON property `bandedRange`
4924
+ # @return [Google::Apis::SheetsV4::BandedRange]
4925
+ attr_accessor :banded_range
4926
+
4927
+ # The fields that should be updated. At least one field must be specified.
4928
+ # The root `bandedRange` is implied and should not be specified.
4929
+ # A single `"*"` can be used as short-hand for listing every field.
4930
+ # Corresponds to the JSON property `fields`
4931
+ # @return [String]
4932
+ attr_accessor :fields
4933
+
4934
+ def initialize(**args)
4935
+ update!(**args)
4936
+ end
4937
+
4938
+ # Update properties of this object
4939
+ def update!(**args)
4940
+ @banded_range = args[:banded_range] if args.key?(:banded_range)
4941
+ @fields = args[:fields] if args.key?(:fields)
4942
+ end
4943
+ end
4944
+
4232
4945
  # The data included in a domain or series.
4233
4946
  class ChartData
4234
4947
  include Google::Apis::Core::Hashable
@@ -4299,6 +5012,11 @@ module Google
4299
5012
  # @return [Array<Google::Apis::SheetsV4::GridData>]
4300
5013
  attr_accessor :data
4301
5014
 
5015
+ # The banded (i.e. alternating colors) ranges on this sheet.
5016
+ # Corresponds to the JSON property `bandedRanges`
5017
+ # @return [Array<Google::Apis::SheetsV4::BandedRange>]
5018
+ attr_accessor :banded_ranges
5019
+
4302
5020
  def initialize(**args)
4303
5021
  update!(**args)
4304
5022
  end
@@ -4313,6 +5031,7 @@ module Google
4313
5031
  @basic_filter = args[:basic_filter] if args.key?(:basic_filter)
4314
5032
  @merges = args[:merges] if args.key?(:merges)
4315
5033
  @data = args[:data] if args.key?(:data)
5034
+ @banded_ranges = args[:banded_ranges] if args.key?(:banded_ranges)
4316
5035
  end
4317
5036
  end
4318
5037
 
@@ -4515,6 +5234,11 @@ module Google
4515
5234
  # @return [String]
4516
5235
  attr_accessor :spreadsheet_id
4517
5236
 
5237
+ # Resource that represents a spreadsheet.
5238
+ # Corresponds to the JSON property `updatedSpreadsheet`
5239
+ # @return [Google::Apis::SheetsV4::Spreadsheet]
5240
+ attr_accessor :updated_spreadsheet
5241
+
4518
5242
  # The reply of the updates. This maps 1:1 with the updates, although
4519
5243
  # replies to some requests may be empty.
4520
5244
  # Corresponds to the JSON property `replies`
@@ -4528,6 +5252,7 @@ module Google
4528
5252
  # Update properties of this object
4529
5253
  def update!(**args)
4530
5254
  @spreadsheet_id = args[:spreadsheet_id] if args.key?(:spreadsheet_id)
5255
+ @updated_spreadsheet = args[:updated_spreadsheet] if args.key?(:updated_spreadsheet)
4531
5256
  @replies = args[:replies] if args.key?(:replies)
4532
5257
  end
4533
5258
  end
@@ -5154,6 +5879,11 @@ module Google
5154
5879
  # @return [Google::Apis::SheetsV4::MergeCellsRequest]
5155
5880
  attr_accessor :merge_cells
5156
5881
 
5882
+ # Updates properties of the supplied banded range.
5883
+ # Corresponds to the JSON property `updateBanding`
5884
+ # @return [Google::Apis::SheetsV4::UpdateBandingRequest]
5885
+ attr_accessor :update_banding
5886
+
5157
5887
  # Adds a chart to a sheet in the spreadsheet.
5158
5888
  # Corresponds to the JSON property `addChart`
5159
5889
  # @return [Google::Apis::SheetsV4::AddChartRequest]
@@ -5165,6 +5895,16 @@ module Google
5165
5895
  # @return [Google::Apis::SheetsV4::DeleteConditionalFormatRuleRequest]
5166
5896
  attr_accessor :delete_conditional_format_rule
5167
5897
 
5898
+ # Adds a new banded range to the spreadsheet.
5899
+ # Corresponds to the JSON property `addBanding`
5900
+ # @return [Google::Apis::SheetsV4::AddBandingRequest]
5901
+ attr_accessor :add_banding
5902
+
5903
+ # Removes the banded range with the given ID from the spreadsheet.
5904
+ # Corresponds to the JSON property `deleteBanding`
5905
+ # @return [Google::Apis::SheetsV4::DeleteBandingRequest]
5906
+ attr_accessor :delete_banding
5907
+
5168
5908
  # Updates a chart's specifications.
5169
5909
  # (This does not move or resize a chart. To move or resize a chart, use
5170
5910
  # UpdateEmbeddedObjectPositionRequest.)
@@ -5295,8 +6035,11 @@ module Google
5295
6035
  @update_conditional_format_rule = args[:update_conditional_format_rule] if args.key?(:update_conditional_format_rule)
5296
6036
  @set_basic_filter = args[:set_basic_filter] if args.key?(:set_basic_filter)
5297
6037
  @merge_cells = args[:merge_cells] if args.key?(:merge_cells)
6038
+ @update_banding = args[:update_banding] if args.key?(:update_banding)
5298
6039
  @add_chart = args[:add_chart] if args.key?(:add_chart)
5299
6040
  @delete_conditional_format_rule = args[:delete_conditional_format_rule] if args.key?(:delete_conditional_format_rule)
6041
+ @add_banding = args[:add_banding] if args.key?(:add_banding)
6042
+ @delete_banding = args[:delete_banding] if args.key?(:delete_banding)
5300
6043
  @update_chart_spec = args[:update_chart_spec] if args.key?(:update_chart_spec)
5301
6044
  @delete_dimension = args[:delete_dimension] if args.key?(:delete_dimension)
5302
6045
  @delete_embedded_object = args[:delete_embedded_object] if args.key?(:delete_embedded_object)
@@ -5402,6 +6145,84 @@ module Google
5402
6145
  end
5403
6146
  end
5404
6147
 
6148
+ # A banded (alternating colors) range in a sheet.
6149
+ class BandedRange
6150
+ include Google::Apis::Core::Hashable
6151
+
6152
+ # The id of the banded range.
6153
+ # Corresponds to the JSON property `bandedRangeId`
6154
+ # @return [Fixnum]
6155
+ attr_accessor :banded_range_id
6156
+
6157
+ # Properties referring a single dimension (either row or column). If both
6158
+ # BandedRange.row_properties and BandedRange.column_properties are
6159
+ # set, the fill colors are applied to cells according to the following rules:
6160
+ # * header_color and footer_color take priority over band colors.
6161
+ # * first_band_color takes priority over second_band_color.
6162
+ # * row_properties takes priority over column_properties.
6163
+ # For example, the first row color takes priority over the first column
6164
+ # color, but the first column color takes priority over the second row color.
6165
+ # Similarly, the row header takes priority over the column header in the
6166
+ # top left cell, but the column header takes priority over the first row
6167
+ # color if the row header is not set.
6168
+ # Corresponds to the JSON property `rowProperties`
6169
+ # @return [Google::Apis::SheetsV4::BandingProperties]
6170
+ attr_accessor :row_properties
6171
+
6172
+ # Properties referring a single dimension (either row or column). If both
6173
+ # BandedRange.row_properties and BandedRange.column_properties are
6174
+ # set, the fill colors are applied to cells according to the following rules:
6175
+ # * header_color and footer_color take priority over band colors.
6176
+ # * first_band_color takes priority over second_band_color.
6177
+ # * row_properties takes priority over column_properties.
6178
+ # For example, the first row color takes priority over the first column
6179
+ # color, but the first column color takes priority over the second row color.
6180
+ # Similarly, the row header takes priority over the column header in the
6181
+ # top left cell, but the column header takes priority over the first row
6182
+ # color if the row header is not set.
6183
+ # Corresponds to the JSON property `columnProperties`
6184
+ # @return [Google::Apis::SheetsV4::BandingProperties]
6185
+ attr_accessor :column_properties
6186
+
6187
+ # A range on a sheet.
6188
+ # All indexes are zero-based.
6189
+ # Indexes are half open, e.g the start index is inclusive
6190
+ # and the end index is exclusive -- [start_index, end_index).
6191
+ # Missing indexes indicate the range is unbounded on that side.
6192
+ # For example, if `"Sheet1"` is sheet ID 0, then:
6193
+ # `Sheet1!A1:A1 == sheet_id: 0,
6194
+ # start_row_index: 0, end_row_index: 1,
6195
+ # start_column_index: 0, end_column_index: 1`
6196
+ # `Sheet1!A3:B4 == sheet_id: 0,
6197
+ # start_row_index: 2, end_row_index: 4,
6198
+ # start_column_index: 0, end_column_index: 2`
6199
+ # `Sheet1!A:B == sheet_id: 0,
6200
+ # start_column_index: 0, end_column_index: 2`
6201
+ # `Sheet1!A5:B == sheet_id: 0,
6202
+ # start_row_index: 4,
6203
+ # start_column_index: 0, end_column_index: 2`
6204
+ # `Sheet1 == sheet_id:0`
6205
+ # The start index must always be less than or equal to the end index.
6206
+ # If the start index equals the end index, then the range is empty.
6207
+ # Empty ranges are typically not meaningful and are usually rendered in the
6208
+ # UI as `#REF!`.
6209
+ # Corresponds to the JSON property `range`
6210
+ # @return [Google::Apis::SheetsV4::GridRange]
6211
+ attr_accessor :range
6212
+
6213
+ def initialize(**args)
6214
+ update!(**args)
6215
+ end
6216
+
6217
+ # Update properties of this object
6218
+ def update!(**args)
6219
+ @banded_range_id = args[:banded_range_id] if args.key?(:banded_range_id)
6220
+ @row_properties = args[:row_properties] if args.key?(:row_properties)
6221
+ @column_properties = args[:column_properties] if args.key?(:column_properties)
6222
+ @range = args[:range] if args.key?(:range)
6223
+ end
6224
+ end
6225
+
5405
6226
  # The result of deleting a conditional format rule.
5406
6227
  class DeleteConditionalFormatRuleResponse
5407
6228
  include Google::Apis::Core::Hashable