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
@@ -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