google-api-client 0.9.8 → 0.9.20

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 (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
@@ -88,55 +88,55 @@ module Google
88
88
  include Google::Apis::Core::JsonObjectSupport
89
89
  end
90
90
 
91
- class Rule
91
+ class SetIamPolicyRequest
92
92
  class Representation < Google::Apis::Core::JsonRepresentation; end
93
93
 
94
94
  include Google::Apis::Core::JsonObjectSupport
95
95
  end
96
96
 
97
- class Condition
97
+ class TestIamPermissionsRequest
98
98
  class Representation < Google::Apis::Core::JsonRepresentation; end
99
99
 
100
100
  include Google::Apis::Core::JsonObjectSupport
101
101
  end
102
102
 
103
- class LogConfig
103
+ class TestIamPermissionsResponse
104
104
  class Representation < Google::Apis::Core::JsonRepresentation; end
105
105
 
106
106
  include Google::Apis::Core::JsonObjectSupport
107
107
  end
108
108
 
109
- class CounterOptions
109
+ class QueryGrantableRolesRequest
110
110
  class Representation < Google::Apis::Core::JsonRepresentation; end
111
111
 
112
112
  include Google::Apis::Core::JsonObjectSupport
113
113
  end
114
114
 
115
- class DataAccessOptions
115
+ class QueryGrantableRolesResponse
116
116
  class Representation < Google::Apis::Core::JsonRepresentation; end
117
117
 
118
118
  include Google::Apis::Core::JsonObjectSupport
119
119
  end
120
120
 
121
- class CloudAuditOptions
121
+ class Role
122
122
  class Representation < Google::Apis::Core::JsonRepresentation; end
123
123
 
124
124
  include Google::Apis::Core::JsonObjectSupport
125
125
  end
126
126
 
127
- class SetIamPolicyRequest
127
+ class AuditData
128
128
  class Representation < Google::Apis::Core::JsonRepresentation; end
129
129
 
130
130
  include Google::Apis::Core::JsonObjectSupport
131
131
  end
132
132
 
133
- class TestIamPermissionsRequest
133
+ class PolicyDelta
134
134
  class Representation < Google::Apis::Core::JsonRepresentation; end
135
135
 
136
136
  include Google::Apis::Core::JsonObjectSupport
137
137
  end
138
138
 
139
- class TestIamPermissionsResponse
139
+ class BindingDelta
140
140
  class Representation < Google::Apis::Core::JsonRepresentation; end
141
141
 
142
142
  include Google::Apis::Core::JsonObjectSupport
@@ -192,7 +192,9 @@ module Google
192
192
  class Representation < Google::Apis::Core::JsonRepresentation
193
193
  property :name, as: 'name'
194
194
  property :private_key_type, as: 'privateKeyType'
195
+ property :key_algorithm, as: 'keyAlgorithm'
195
196
  property :private_key_data, :base64 => true, as: 'privateKeyData'
197
+ property :public_key_data, :base64 => true, as: 'publicKeyData'
196
198
  property :valid_after_time, as: 'validAfterTime'
197
199
  property :valid_before_time, as: 'validBeforeTime'
198
200
  end
@@ -202,6 +204,7 @@ module Google
202
204
  # @private
203
205
  class Representation < Google::Apis::Core::JsonRepresentation
204
206
  property :private_key_type, as: 'privateKeyType'
207
+ property :key_algorithm, as: 'keyAlgorithm'
205
208
  end
206
209
  end
207
210
 
@@ -226,8 +229,6 @@ module Google
226
229
  property :version, as: 'version'
227
230
  collection :bindings, as: 'bindings', class: Google::Apis::IamV1::Binding, decorator: Google::Apis::IamV1::Binding::Representation
228
231
 
229
- collection :rules, as: 'rules', class: Google::Apis::IamV1::Rule, decorator: Google::Apis::IamV1::Rule::Representation
230
-
231
232
  property :etag, :base64 => true, as: 'etag'
232
233
  end
233
234
  end
@@ -240,84 +241,74 @@ module Google
240
241
  end
241
242
  end
242
243
 
243
- class Rule
244
+ class SetIamPolicyRequest
244
245
  # @private
245
246
  class Representation < Google::Apis::Core::JsonRepresentation
246
- property :description, as: 'description'
247
- collection :permissions, as: 'permissions'
248
- property :action, as: 'action'
249
- collection :in, as: 'in'
250
- collection :not_in, as: 'notIn'
251
- collection :conditions, as: 'conditions', class: Google::Apis::IamV1::Condition, decorator: Google::Apis::IamV1::Condition::Representation
252
-
253
- collection :log_config, as: 'logConfig', class: Google::Apis::IamV1::LogConfig, decorator: Google::Apis::IamV1::LogConfig::Representation
247
+ property :policy, as: 'policy', class: Google::Apis::IamV1::Policy, decorator: Google::Apis::IamV1::Policy::Representation
254
248
 
255
249
  end
256
250
  end
257
251
 
258
- class Condition
252
+ class TestIamPermissionsRequest
259
253
  # @private
260
254
  class Representation < Google::Apis::Core::JsonRepresentation
261
- property :iam, as: 'iam'
262
- property :sys, as: 'sys'
263
- property :svc, as: 'svc'
264
- property :op, as: 'op'
265
- property :value, as: 'value'
266
- collection :values, as: 'values'
255
+ collection :permissions, as: 'permissions'
267
256
  end
268
257
  end
269
258
 
270
- class LogConfig
259
+ class TestIamPermissionsResponse
271
260
  # @private
272
261
  class Representation < Google::Apis::Core::JsonRepresentation
273
- property :counter, as: 'counter', class: Google::Apis::IamV1::CounterOptions, decorator: Google::Apis::IamV1::CounterOptions::Representation
274
-
275
- property :data_access, as: 'dataAccess', class: Google::Apis::IamV1::DataAccessOptions, decorator: Google::Apis::IamV1::DataAccessOptions::Representation
276
-
277
- property :cloud_audit, as: 'cloudAudit', class: Google::Apis::IamV1::CloudAuditOptions, decorator: Google::Apis::IamV1::CloudAuditOptions::Representation
278
-
262
+ collection :permissions, as: 'permissions'
279
263
  end
280
264
  end
281
265
 
282
- class CounterOptions
266
+ class QueryGrantableRolesRequest
283
267
  # @private
284
268
  class Representation < Google::Apis::Core::JsonRepresentation
285
- property :metric, as: 'metric'
286
- property :field, as: 'field'
269
+ property :full_resource_name, as: 'fullResourceName'
287
270
  end
288
271
  end
289
272
 
290
- class DataAccessOptions
273
+ class QueryGrantableRolesResponse
291
274
  # @private
292
275
  class Representation < Google::Apis::Core::JsonRepresentation
276
+ collection :roles, as: 'roles', class: Google::Apis::IamV1::Role, decorator: Google::Apis::IamV1::Role::Representation
277
+
293
278
  end
294
279
  end
295
280
 
296
- class CloudAuditOptions
281
+ class Role
297
282
  # @private
298
283
  class Representation < Google::Apis::Core::JsonRepresentation
284
+ property :name, as: 'name'
285
+ property :title, as: 'title'
286
+ property :description, as: 'description'
299
287
  end
300
288
  end
301
289
 
302
- class SetIamPolicyRequest
290
+ class AuditData
303
291
  # @private
304
292
  class Representation < Google::Apis::Core::JsonRepresentation
305
- property :policy, as: 'policy', class: Google::Apis::IamV1::Policy, decorator: Google::Apis::IamV1::Policy::Representation
293
+ property :policy_delta, as: 'policyDelta', class: Google::Apis::IamV1::PolicyDelta, decorator: Google::Apis::IamV1::PolicyDelta::Representation
306
294
 
307
295
  end
308
296
  end
309
297
 
310
- class TestIamPermissionsRequest
298
+ class PolicyDelta
311
299
  # @private
312
300
  class Representation < Google::Apis::Core::JsonRepresentation
313
- collection :permissions, as: 'permissions'
301
+ collection :binding_deltas, as: 'bindingDeltas', class: Google::Apis::IamV1::BindingDelta, decorator: Google::Apis::IamV1::BindingDelta::Representation
302
+
314
303
  end
315
304
  end
316
305
 
317
- class TestIamPermissionsResponse
306
+ class BindingDelta
318
307
  # @private
319
308
  class Representation < Google::Apis::Core::JsonRepresentation
320
- collection :permissions, as: 'permissions'
309
+ property :action, as: 'action'
310
+ property :role, as: 'role'
311
+ property :member, as: 'member'
321
312
  end
322
313
  end
323
314
  end
@@ -20,7 +20,7 @@ require 'google/apis/errors'
20
20
  module Google
21
21
  module Apis
22
22
  module IamV1
23
- # Google Identity and Access Management API
23
+ # Google Identity and Access Management (IAM) API
24
24
  #
25
25
  # Manages identity and access control for Google Cloud Platform resources,
26
26
  # including the creation of service accounts, which you can use to authenticate
@@ -48,17 +48,17 @@ module Google
48
48
  super('https://iam.googleapis.com/', '')
49
49
  end
50
50
 
51
- # Lists service accounts for a project.
51
+ # Lists ServiceAccounts for a project.
52
52
  # @param [String] name
53
53
  # Required. The resource name of the project associated with the service
54
- # accounts, such as "projects/123"
54
+ # accounts, such as `projects/my-project-123`.
55
55
  # @param [Fixnum] page_size
56
56
  # Optional limit on the number of service accounts to include in the response.
57
- # Further accounts can subsequently be obtained by including the [
58
- # ListServiceAccountsResponse.next_page_token] in a subsequent request.
57
+ # Further accounts can subsequently be obtained by including the
58
+ # ListServiceAccountsResponse.next_page_token in a subsequent request.
59
59
  # @param [String] page_token
60
- # Optional pagination token returned in an earlier [ListServiceAccountsResponse.
61
- # next_page_token].
60
+ # Optional pagination token returned in an earlier ListServiceAccountsResponse.
61
+ # next_page_token.
62
62
  # @param [String] fields
63
63
  # Selector specifying which fields to include in a partial response.
64
64
  # @param [String] quota_user
@@ -88,12 +88,12 @@ module Google
88
88
  execute_or_queue_command(command, &block)
89
89
  end
90
90
 
91
- # Gets a ServiceAccount
91
+ # Gets a ServiceAccount.
92
92
  # @param [String] name
93
- # The resource name of the service account in the format "projects/`project`/
94
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
95
- # infer the project from the account. The account value can be the email address
96
- # or the unique_id of the service account.
93
+ # The resource name of the service account in the following format: `projects/`
94
+ # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project
95
+ # will infer the project from the account. The `account` value can be the `email`
96
+ # address or the `unique_id` of the service account.
97
97
  # @param [String] fields
98
98
  # Selector specifying which fields to include in a partial response.
99
99
  # @param [String] quota_user
@@ -121,10 +121,10 @@ module Google
121
121
  execute_or_queue_command(command, &block)
122
122
  end
123
123
 
124
- # Creates a service account and returns it.
124
+ # Creates a ServiceAccount and returns it.
125
125
  # @param [String] name
126
126
  # Required. The resource name of the project associated with the service
127
- # accounts, such as "projects/123"
127
+ # accounts, such as `projects/my-project-123`.
128
128
  # @param [Google::Apis::IamV1::CreateServiceAccountRequest] create_service_account_request_object
129
129
  # @param [String] fields
130
130
  # Selector specifying which fields to include in a partial response.
@@ -155,15 +155,15 @@ module Google
155
155
  execute_or_queue_command(command, &block)
156
156
  end
157
157
 
158
- # Updates a service account. Currently, only the following fields are updatable:
159
- # 'display_name' . The 'etag' is mandatory.
158
+ # Updates a ServiceAccount. Currently, only the following fields are updatable: `
159
+ # display_name` . The `etag` is mandatory.
160
160
  # @param [String] name
161
- # The resource name of the service account in the format "projects/`project`/
162
- # serviceAccounts/`account`". In requests using '-' as a wildcard for the
163
- # project, will infer the project from the account and the account value can be
164
- # the email address or the unique_id of the service account. In responses the
165
- # resource name will always be in the format "projects/`project`/serviceAccounts/
166
- # `email`".
161
+ # The resource name of the service account in the following format: `projects/`
162
+ # project`/serviceAccounts/`account``. Requests using `-` as a wildcard for the
163
+ # project will infer the project from the `account` and the `account` value can
164
+ # be the `email` address or the `unique_id` of the service account. In responses
165
+ # the resource name will always be in the format `projects/`project`/
166
+ # serviceAccounts/`email``.
167
167
  # @param [Google::Apis::IamV1::ServiceAccount] service_account_object
168
168
  # @param [String] fields
169
169
  # Selector specifying which fields to include in a partial response.
@@ -194,12 +194,12 @@ module Google
194
194
  execute_or_queue_command(command, &block)
195
195
  end
196
196
 
197
- # Deletes a service acount.
197
+ # Deletes a ServiceAccount.
198
198
  # @param [String] name
199
- # The resource name of the service account in the format "projects/`project`/
200
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
201
- # infer the project from the account. The account value can be the email address
202
- # or the unique_id of the service account.
199
+ # The resource name of the service account in the following format: `projects/`
200
+ # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project
201
+ # will infer the project from the account. The `account` value can be the `email`
202
+ # address or the `unique_id` of the service account.
203
203
  # @param [String] fields
204
204
  # Selector specifying which fields to include in a partial response.
205
205
  # @param [String] quota_user
@@ -227,12 +227,12 @@ module Google
227
227
  execute_or_queue_command(command, &block)
228
228
  end
229
229
 
230
- # Signs a blob using a service account.
230
+ # Signs a blob using a service account's system-managed private key.
231
231
  # @param [String] name
232
- # The resource name of the service account in the format "projects/`project`/
233
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
234
- # infer the project from the account. The account value can be the email address
235
- # or the unique_id of the service account.
232
+ # The resource name of the service account in the following format: `projects/`
233
+ # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project
234
+ # will infer the project from the account. The `account` value can be the `email`
235
+ # address or the `unique_id` of the service account.
236
236
  # @param [Google::Apis::IamV1::SignBlobRequest] sign_blob_request_object
237
237
  # @param [String] fields
238
238
  # Selector specifying which fields to include in a partial response.
@@ -263,12 +263,11 @@ module Google
263
263
  execute_or_queue_command(command, &block)
264
264
  end
265
265
 
266
- # Returns the IAM access control policy for specified IAM resource.
266
+ # Returns the IAM access control policy for a ServiceAccount.
267
267
  # @param [String] resource
268
268
  # REQUIRED: The resource for which the policy is being requested. `resource` is
269
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
270
- # disk*`. The format for the path specified in this value is resource specific
271
- # and is specified in the `getIamPolicy` documentation.
269
+ # usually specified as a path. For example, a Project resource is specified as `
270
+ # projects/`project``.
272
271
  # @param [String] fields
273
272
  # Selector specifying which fields to include in a partial response.
274
273
  # @param [String] quota_user
@@ -296,12 +295,11 @@ module Google
296
295
  execute_or_queue_command(command, &block)
297
296
  end
298
297
 
299
- # Sets the IAM access control policy for the specified IAM resource.
298
+ # Sets the IAM access control policy for a ServiceAccount.
300
299
  # @param [String] resource
301
300
  # REQUIRED: The resource for which the policy is being specified. `resource` is
302
- # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*
303
- # disk*`. The format for the path specified in this value is resource specific
304
- # and is specified in the `setIamPolicy` documentation.
301
+ # usually specified as a path. For example, a Project resource is specified as `
302
+ # projects/`project``.
305
303
  # @param [Google::Apis::IamV1::SetIamPolicyRequest] set_iam_policy_request_object
306
304
  # @param [String] fields
307
305
  # Selector specifying which fields to include in a partial response.
@@ -332,13 +330,12 @@ module Google
332
330
  execute_or_queue_command(command, &block)
333
331
  end
334
332
 
335
- # Tests the specified permissions against the IAM access control policy for the
336
- # specified IAM resource.
333
+ # Tests the specified permissions against the IAM access control policy for a
334
+ # ServiceAccount.
337
335
  # @param [String] resource
338
336
  # REQUIRED: The resource for which the policy detail is being requested. `
339
- # resource` is usually specified as a path, such as `projects/*project*/zones/*
340
- # zone*/disks/*disk*`. The format for the path specified in this value is
341
- # resource specific and is specified in the `testIamPermissions` documentation.
337
+ # resource` is usually specified as a path. For example, a Project resource is
338
+ # specified as `projects/`project``.
342
339
  # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object
343
340
  # @param [String] fields
344
341
  # Selector specifying which fields to include in a partial response.
@@ -369,15 +366,16 @@ module Google
369
366
  execute_or_queue_command(command, &block)
370
367
  end
371
368
 
372
- # Lists service account keys
369
+ # Lists ServiceAccountKeys.
373
370
  # @param [String] name
374
- # The resource name of the service account in the format "projects/`project`/
375
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
376
- # infer the project from the account. The account value can be the email address
377
- # or the unique_id of the service account.
371
+ # The resource name of the service account in the following format: `projects/`
372
+ # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project,
373
+ # will infer the project from the account. The `account` value can be the `email`
374
+ # address or the `unique_id` of the service account.
378
375
  # @param [Array<String>, String] key_types
379
- # The type of keys the user wants to list. If empty, all key types are included
380
- # in the response. Duplicate key types are not allowed.
376
+ # Filters the types of keys the user wants to include in the list response.
377
+ # Duplicate key types are not allowed. If no key type is provided, all keys are
378
+ # returned.
381
379
  # @param [String] fields
382
380
  # Selector specifying which fields to include in a partial response.
383
381
  # @param [String] quota_user
@@ -408,10 +406,13 @@ module Google
408
406
 
409
407
  # Gets the ServiceAccountKey by key id.
410
408
  # @param [String] name
411
- # The resource name of the service account key in the format "projects/`project`/
412
- # serviceAccounts/`account`/keys/`key`". Using '-' as a wildcard for the project
413
- # will infer the project from the account. The account value can be the email
414
- # address or the unique_id of the service account.
409
+ # The resource name of the service account key in the following format: `
410
+ # projects/`project`/serviceAccounts/`account`/keys/`key``. Using `-` as a
411
+ # wildcard for the project will infer the project from the account. The `account`
412
+ # value can be the `email` address or the `unique_id` of the service account.
413
+ # @param [String] public_key_type
414
+ # The output format of the public key requested. X509_PEM is the default output
415
+ # format.
415
416
  # @param [String] fields
416
417
  # Selector specifying which fields to include in a partial response.
417
418
  # @param [String] quota_user
@@ -429,22 +430,23 @@ module Google
429
430
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
430
431
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
431
432
  # @raise [Google::Apis::AuthorizationError] Authorization is required
432
- def get_project_service_account_key(name, fields: nil, quota_user: nil, options: nil, &block)
433
+ def get_project_service_account_key(name, public_key_type: nil, fields: nil, quota_user: nil, options: nil, &block)
433
434
  command = make_simple_command(:get, 'v1/{+name}', options)
434
435
  command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
435
436
  command.response_class = Google::Apis::IamV1::ServiceAccountKey
436
437
  command.params['name'] = name unless name.nil?
438
+ command.query['publicKeyType'] = public_key_type unless public_key_type.nil?
437
439
  command.query['fields'] = fields unless fields.nil?
438
440
  command.query['quotaUser'] = quota_user unless quota_user.nil?
439
441
  execute_or_queue_command(command, &block)
440
442
  end
441
443
 
442
- # Creates a service account key and returns it.
444
+ # Creates a ServiceAccountKey and returns it.
443
445
  # @param [String] name
444
- # The resource name of the service account in the format "projects/`project`/
445
- # serviceAccounts/`account`". Using '-' as a wildcard for the project, will
446
- # infer the project from the account. The account value can be the email address
447
- # or the unique_id of the service account.
446
+ # The resource name of the service account in the following format: `projects/`
447
+ # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project
448
+ # will infer the project from the account. The `account` value can be the `email`
449
+ # address or the `unique_id` of the service account.
448
450
  # @param [Google::Apis::IamV1::CreateServiceAccountKeyRequest] create_service_account_key_request_object
449
451
  # @param [String] fields
450
452
  # Selector specifying which fields to include in a partial response.
@@ -475,12 +477,12 @@ module Google
475
477
  execute_or_queue_command(command, &block)
476
478
  end
477
479
 
478
- # Deletes a service account key.
480
+ # Deletes a ServiceAccountKey.
479
481
  # @param [String] name
480
- # The resource name of the service account key in the format "projects/`project`/
481
- # serviceAccounts/`account`/keys/`key`". Using '-' as a wildcard for the project
482
- # will infer the project from the account. The account value can be the email
483
- # address or the unique_id of the service account.
482
+ # The resource name of the service account key in the following format: `
483
+ # projects/`project`/serviceAccounts/`account`/keys/`key``. Using `-` as a
484
+ # wildcard for the project will infer the project from the account. The `account`
485
+ # value can be the `email` address or the `unique_id` of the service account.
484
486
  # @param [String] fields
485
487
  # Selector specifying which fields to include in a partial response.
486
488
  # @param [String] quota_user
@@ -507,6 +509,38 @@ module Google
507
509
  command.query['quotaUser'] = quota_user unless quota_user.nil?
508
510
  execute_or_queue_command(command, &block)
509
511
  end
512
+
513
+ # Queries roles that can be granted on a particular resource. A role is
514
+ # grantable if it can be used as the role in a binding for a policy for that
515
+ # resource.
516
+ # @param [Google::Apis::IamV1::QueryGrantableRolesRequest] query_grantable_roles_request_object
517
+ # @param [String] fields
518
+ # Selector specifying which fields to include in a partial response.
519
+ # @param [String] quota_user
520
+ # Available to use for quota purposes for server-side applications. Can be any
521
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
522
+ # @param [Google::Apis::RequestOptions] options
523
+ # Request-specific options
524
+ #
525
+ # @yield [result, err] Result & error if block supplied
526
+ # @yieldparam result [Google::Apis::IamV1::QueryGrantableRolesResponse] parsed result object
527
+ # @yieldparam err [StandardError] error object if request failed
528
+ #
529
+ # @return [Google::Apis::IamV1::QueryGrantableRolesResponse]
530
+ #
531
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
532
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
533
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
534
+ def query_grantable_roles(query_grantable_roles_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
535
+ command = make_simple_command(:post, 'v1/roles:queryGrantableRoles', options)
536
+ command.request_representation = Google::Apis::IamV1::QueryGrantableRolesRequest::Representation
537
+ command.request_object = query_grantable_roles_request_object
538
+ command.response_representation = Google::Apis::IamV1::QueryGrantableRolesResponse::Representation
539
+ command.response_class = Google::Apis::IamV1::QueryGrantableRolesResponse
540
+ command.query['fields'] = fields unless fields.nil?
541
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
542
+ execute_or_queue_command(command, &block)
543
+ end
510
544
 
511
545
  protected
512
546