google-api-client 0.9.26 → 0.9.28

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 (123) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/api_names.yaml +36326 -36213
  5. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +155 -155
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +32 -32
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +104 -104
  9. data/generated/google/apis/adsense_v1_4.rb +1 -1
  10. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  11. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  12. data/generated/google/apis/appstate_v1.rb +1 -1
  13. data/generated/google/apis/calendar_v3.rb +1 -1
  14. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  15. data/generated/google/apis/cloudbuild_v1/classes.rb +260 -248
  16. data/generated/google/apis/cloudbuild_v1/representations.rb +47 -45
  17. data/generated/google/apis/cloudbuild_v1/service.rb +167 -167
  18. data/generated/google/apis/clouddebugger_v2.rb +3 -3
  19. data/generated/google/apis/clouddebugger_v2/classes.rb +569 -569
  20. data/generated/google/apis/clouddebugger_v2/representations.rb +146 -146
  21. data/generated/google/apis/clouddebugger_v2/service.rb +145 -145
  22. data/generated/google/apis/cloudkms_v1beta1.rb +4 -3
  23. data/generated/google/apis/cloudkms_v1beta1/classes.rb +428 -428
  24. data/generated/google/apis/cloudkms_v1beta1/representations.rb +115 -115
  25. data/generated/google/apis/cloudkms_v1beta1/service.rb +161 -160
  26. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  27. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  28. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +583 -583
  29. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +100 -100
  30. data/generated/google/apis/cloudresourcemanager_v1/service.rb +116 -116
  31. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  32. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +195 -195
  33. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +58 -58
  34. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +316 -316
  35. data/generated/google/apis/content_v2.rb +1 -1
  36. data/generated/google/apis/content_v2/classes.rb +12 -0
  37. data/generated/google/apis/content_v2/representations.rb +2 -0
  38. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  39. data/generated/google/apis/dataflow_v1b3/classes.rb +2833 -2694
  40. data/generated/google/apis/dataflow_v1b3/representations.rb +666 -666
  41. data/generated/google/apis/dataflow_v1b3/service.rb +351 -349
  42. data/generated/google/apis/datastore_v1.rb +1 -1
  43. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  44. data/generated/google/apis/deploymentmanager_v2/classes.rb +21 -12
  45. data/generated/google/apis/deploymentmanager_v2/representations.rb +1 -0
  46. data/generated/google/apis/deploymentmanager_v2/service.rb +5 -5
  47. data/generated/google/apis/dns_v1.rb +1 -1
  48. data/generated/google/apis/dns_v2beta1.rb +1 -1
  49. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  50. data/generated/google/apis/doubleclicksearch_v2/classes.rb +6 -4
  51. data/generated/google/apis/drive_v2.rb +1 -1
  52. data/generated/google/apis/drive_v2/classes.rb +26 -0
  53. data/generated/google/apis/drive_v2/representations.rb +14 -0
  54. data/generated/google/apis/drive_v2/service.rb +38 -2
  55. data/generated/google/apis/drive_v3.rb +1 -1
  56. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  57. data/generated/google/apis/games_management_v1management.rb +1 -1
  58. data/generated/google/apis/games_v1.rb +1 -1
  59. data/generated/google/apis/genomics_v1.rb +4 -4
  60. data/generated/google/apis/genomics_v1/classes.rb +2317 -2317
  61. data/generated/google/apis/genomics_v1/representations.rb +476 -476
  62. data/generated/google/apis/genomics_v1/service.rb +1038 -1038
  63. data/generated/google/apis/gmail_v1.rb +1 -1
  64. data/generated/google/apis/gmail_v1/classes.rb +82 -1
  65. data/generated/google/apis/gmail_v1/representations.rb +33 -0
  66. data/generated/google/apis/gmail_v1/service.rb +215 -5
  67. data/generated/google/apis/iam_v1.rb +1 -1
  68. data/generated/google/apis/iam_v1/classes.rb +446 -343
  69. data/generated/google/apis/iam_v1/representations.rb +112 -85
  70. data/generated/google/apis/iam_v1/service.rb +248 -192
  71. data/generated/google/apis/kgsearch_v1/classes.rb +6 -6
  72. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  73. data/generated/google/apis/kgsearch_v1/service.rb +15 -15
  74. data/generated/google/apis/language_v1beta1.rb +1 -1
  75. data/generated/google/apis/language_v1beta1/classes.rb +396 -396
  76. data/generated/google/apis/language_v1beta1/representations.rb +97 -97
  77. data/generated/google/apis/language_v1beta1/service.rb +42 -42
  78. data/generated/google/apis/logging_v2beta1.rb +1 -1
  79. data/generated/google/apis/logging_v2beta1/classes.rb +855 -855
  80. data/generated/google/apis/logging_v2beta1/representations.rb +155 -155
  81. data/generated/google/apis/logging_v2beta1/service.rb +214 -214
  82. data/generated/google/apis/monitoring_v3.rb +4 -4
  83. data/generated/google/apis/monitoring_v3/classes.rb +551 -551
  84. data/generated/google/apis/monitoring_v3/representations.rb +123 -123
  85. data/generated/google/apis/monitoring_v3/service.rb +80 -80
  86. data/generated/google/apis/plus_domains_v1.rb +1 -1
  87. data/generated/google/apis/plus_v1.rb +1 -1
  88. data/generated/google/apis/pubsub_v1.rb +3 -3
  89. data/generated/google/apis/pubsub_v1/classes.rb +391 -391
  90. data/generated/google/apis/pubsub_v1/representations.rb +83 -83
  91. data/generated/google/apis/pubsub_v1/service.rb +257 -257
  92. data/generated/google/apis/sheets_v4.rb +1 -1
  93. data/generated/google/apis/sheets_v4/classes.rb +4334 -4334
  94. data/generated/google/apis/sheets_v4/representations.rb +861 -861
  95. data/generated/google/apis/sheets_v4/service.rb +191 -191
  96. data/generated/google/apis/slides_v1.rb +7 -7
  97. data/generated/google/apis/slides_v1/classes.rb +2726 -2555
  98. data/generated/google/apis/slides_v1/representations.rb +678 -607
  99. data/generated/google/apis/slides_v1/service.rb +16 -16
  100. data/generated/google/apis/speech_v1beta1.rb +1 -1
  101. data/generated/google/apis/speech_v1beta1/classes.rb +57 -59
  102. data/generated/google/apis/speech_v1beta1/representations.rb +9 -9
  103. data/generated/google/apis/speech_v1beta1/service.rb +63 -63
  104. data/generated/google/apis/storage_v1.rb +1 -1
  105. data/generated/google/apis/storage_v1/classes.rb +4 -3
  106. data/generated/google/apis/vision_v1/classes.rb +925 -925
  107. data/generated/google/apis/vision_v1/representations.rb +134 -134
  108. data/generated/google/apis/vision_v1/service.rb +4 -4
  109. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  110. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  111. data/generated/google/apis/youtube_v3.rb +1 -1
  112. data/generated/google/apis/youtube_v3/classes.rb +234 -1
  113. data/generated/google/apis/youtube_v3/representations.rb +83 -0
  114. data/generated/google/apis/youtube_v3/service.rb +55 -0
  115. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  116. data/generated/google/apis/youtubereporting_v1/classes.rb +105 -105
  117. data/generated/google/apis/youtubereporting_v1/representations.rb +31 -31
  118. data/generated/google/apis/youtubereporting_v1/service.rb +78 -78
  119. data/lib/google/apis/core/api_command.rb +11 -5
  120. data/lib/google/apis/core/base_service.rb +7 -5
  121. data/lib/google/apis/errors.rb +4 -0
  122. data/lib/google/apis/version.rb +1 -1
  123. metadata +28 -28
@@ -22,181 +22,148 @@ module Google
22
22
  module Apis
23
23
  module IamV1
24
24
 
25
- class ListServiceAccountsResponse
25
+ class ServiceAccountKey
26
26
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
27
 
28
28
  include Google::Apis::Core::JsonObjectSupport
29
29
  end
30
30
 
31
- class ServiceAccount
31
+ class CreateServiceAccountKeyRequest
32
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
33
 
34
34
  include Google::Apis::Core::JsonObjectSupport
35
35
  end
36
36
 
37
- class CreateServiceAccountRequest
37
+ class SignJwtResponse
38
38
  class Representation < Google::Apis::Core::JsonRepresentation; end
39
39
 
40
40
  include Google::Apis::Core::JsonObjectSupport
41
41
  end
42
42
 
43
- class Empty
43
+ class SignBlobResponse
44
44
  class Representation < Google::Apis::Core::JsonRepresentation; end
45
45
 
46
46
  include Google::Apis::Core::JsonObjectSupport
47
47
  end
48
48
 
49
- class ListServiceAccountKeysResponse
49
+ class TestIamPermissionsRequest
50
50
  class Representation < Google::Apis::Core::JsonRepresentation; end
51
51
 
52
52
  include Google::Apis::Core::JsonObjectSupport
53
53
  end
54
54
 
55
- class ServiceAccountKey
55
+ class Policy
56
56
  class Representation < Google::Apis::Core::JsonRepresentation; end
57
57
 
58
58
  include Google::Apis::Core::JsonObjectSupport
59
59
  end
60
60
 
61
- class CreateServiceAccountKeyRequest
61
+ class SignJwtRequest
62
62
  class Representation < Google::Apis::Core::JsonRepresentation; end
63
63
 
64
64
  include Google::Apis::Core::JsonObjectSupport
65
65
  end
66
66
 
67
- class SignBlobRequest
67
+ class AuditData
68
68
  class Representation < Google::Apis::Core::JsonRepresentation; end
69
69
 
70
70
  include Google::Apis::Core::JsonObjectSupport
71
71
  end
72
72
 
73
- class SignBlobResponse
73
+ class BindingDelta
74
74
  class Representation < Google::Apis::Core::JsonRepresentation; end
75
75
 
76
76
  include Google::Apis::Core::JsonObjectSupport
77
77
  end
78
78
 
79
- class Policy
79
+ class PolicyDelta
80
80
  class Representation < Google::Apis::Core::JsonRepresentation; end
81
81
 
82
82
  include Google::Apis::Core::JsonObjectSupport
83
83
  end
84
84
 
85
- class Binding
85
+ class ListServiceAccountsResponse
86
86
  class Representation < Google::Apis::Core::JsonRepresentation; end
87
87
 
88
88
  include Google::Apis::Core::JsonObjectSupport
89
89
  end
90
90
 
91
- class SetIamPolicyRequest
91
+ class CreateServiceAccountRequest
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 TestIamPermissionsRequest
97
+ class QueryGrantableRolesResponse
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 TestIamPermissionsResponse
103
+ class SignBlobRequest
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 QueryGrantableRolesRequest
109
+ class Role
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 QueryGrantableRolesResponse
115
+ class SetIamPolicyRequest
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 Role
121
+ class Binding
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 AuditData
127
+ class QueryGrantableRolesRequest
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 PolicyDelta
133
+ class Empty
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 BindingDelta
139
+ class ServiceAccount
140
140
  class Representation < Google::Apis::Core::JsonRepresentation; end
141
141
 
142
142
  include Google::Apis::Core::JsonObjectSupport
143
143
  end
144
144
 
145
- class ListServiceAccountsResponse
146
- # @private
147
- class Representation < Google::Apis::Core::JsonRepresentation
148
- collection :accounts, as: 'accounts', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
149
-
150
- property :next_page_token, as: 'nextPageToken'
151
- end
152
- end
153
-
154
- class ServiceAccount
155
- # @private
156
- class Representation < Google::Apis::Core::JsonRepresentation
157
- property :name, as: 'name'
158
- property :project_id, as: 'projectId'
159
- property :unique_id, as: 'uniqueId'
160
- property :email, as: 'email'
161
- property :display_name, as: 'displayName'
162
- property :etag, :base64 => true, as: 'etag'
163
- property :oauth2_client_id, as: 'oauth2ClientId'
164
- end
165
- end
166
-
167
- class CreateServiceAccountRequest
168
- # @private
169
- class Representation < Google::Apis::Core::JsonRepresentation
170
- property :account_id, as: 'accountId'
171
- property :service_account, as: 'serviceAccount', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
172
-
173
- end
174
- end
145
+ class TestIamPermissionsResponse
146
+ class Representation < Google::Apis::Core::JsonRepresentation; end
175
147
 
176
- class Empty
177
- # @private
178
- class Representation < Google::Apis::Core::JsonRepresentation
179
- end
148
+ include Google::Apis::Core::JsonObjectSupport
180
149
  end
181
150
 
182
151
  class ListServiceAccountKeysResponse
183
- # @private
184
- class Representation < Google::Apis::Core::JsonRepresentation
185
- collection :keys, as: 'keys', class: Google::Apis::IamV1::ServiceAccountKey, decorator: Google::Apis::IamV1::ServiceAccountKey::Representation
152
+ class Representation < Google::Apis::Core::JsonRepresentation; end
186
153
 
187
- end
154
+ include Google::Apis::Core::JsonObjectSupport
188
155
  end
189
156
 
190
157
  class ServiceAccountKey
191
158
  # @private
192
159
  class Representation < Google::Apis::Core::JsonRepresentation
193
- property :name, as: 'name'
160
+ property :valid_after_time, as: 'validAfterTime'
194
161
  property :private_key_type, as: 'privateKeyType'
195
- property :key_algorithm, as: 'keyAlgorithm'
196
162
  property :private_key_data, :base64 => true, as: 'privateKeyData'
197
163
  property :public_key_data, :base64 => true, as: 'publicKeyData'
198
- property :valid_after_time, as: 'validAfterTime'
164
+ property :name, as: 'name'
199
165
  property :valid_before_time, as: 'validBeforeTime'
166
+ property :key_algorithm, as: 'keyAlgorithm'
200
167
  end
201
168
  end
202
169
 
@@ -208,65 +175,86 @@ module Google
208
175
  end
209
176
  end
210
177
 
211
- class SignBlobRequest
178
+ class SignJwtResponse
212
179
  # @private
213
180
  class Representation < Google::Apis::Core::JsonRepresentation
214
- property :bytes_to_sign, :base64 => true, as: 'bytesToSign'
181
+ property :key_id, as: 'keyId'
182
+ property :signed_jwt, as: 'signedJwt'
215
183
  end
216
184
  end
217
185
 
218
186
  class SignBlobResponse
219
187
  # @private
220
188
  class Representation < Google::Apis::Core::JsonRepresentation
221
- property :key_id, as: 'keyId'
222
189
  property :signature, :base64 => true, as: 'signature'
190
+ property :key_id, as: 'keyId'
191
+ end
192
+ end
193
+
194
+ class TestIamPermissionsRequest
195
+ # @private
196
+ class Representation < Google::Apis::Core::JsonRepresentation
197
+ collection :permissions, as: 'permissions'
223
198
  end
224
199
  end
225
200
 
226
201
  class Policy
227
202
  # @private
228
203
  class Representation < Google::Apis::Core::JsonRepresentation
204
+ property :etag, :base64 => true, as: 'etag'
229
205
  property :version, as: 'version'
230
206
  collection :bindings, as: 'bindings', class: Google::Apis::IamV1::Binding, decorator: Google::Apis::IamV1::Binding::Representation
231
207
 
232
- property :etag, :base64 => true, as: 'etag'
233
208
  end
234
209
  end
235
210
 
236
- class Binding
211
+ class SignJwtRequest
237
212
  # @private
238
213
  class Representation < Google::Apis::Core::JsonRepresentation
239
- property :role, as: 'role'
240
- collection :members, as: 'members'
214
+ property :payload, as: 'payload'
241
215
  end
242
216
  end
243
217
 
244
- class SetIamPolicyRequest
218
+ class AuditData
245
219
  # @private
246
220
  class Representation < Google::Apis::Core::JsonRepresentation
247
- property :policy, as: 'policy', class: Google::Apis::IamV1::Policy, decorator: Google::Apis::IamV1::Policy::Representation
221
+ property :policy_delta, as: 'policyDelta', class: Google::Apis::IamV1::PolicyDelta, decorator: Google::Apis::IamV1::PolicyDelta::Representation
248
222
 
249
223
  end
250
224
  end
251
225
 
252
- class TestIamPermissionsRequest
226
+ class BindingDelta
253
227
  # @private
254
228
  class Representation < Google::Apis::Core::JsonRepresentation
255
- collection :permissions, as: 'permissions'
229
+ property :action, as: 'action'
230
+ property :member, as: 'member'
231
+ property :role, as: 'role'
256
232
  end
257
233
  end
258
234
 
259
- class TestIamPermissionsResponse
235
+ class PolicyDelta
260
236
  # @private
261
237
  class Representation < Google::Apis::Core::JsonRepresentation
262
- collection :permissions, as: 'permissions'
238
+ collection :binding_deltas, as: 'bindingDeltas', class: Google::Apis::IamV1::BindingDelta, decorator: Google::Apis::IamV1::BindingDelta::Representation
239
+
263
240
  end
264
241
  end
265
242
 
266
- class QueryGrantableRolesRequest
243
+ class ListServiceAccountsResponse
267
244
  # @private
268
245
  class Representation < Google::Apis::Core::JsonRepresentation
269
- property :full_resource_name, as: 'fullResourceName'
246
+ property :next_page_token, as: 'nextPageToken'
247
+ collection :accounts, as: 'accounts', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
248
+
249
+ end
250
+ end
251
+
252
+ class CreateServiceAccountRequest
253
+ # @private
254
+ class Representation < Google::Apis::Core::JsonRepresentation
255
+ property :service_account, as: 'serviceAccount', class: Google::Apis::IamV1::ServiceAccount, decorator: Google::Apis::IamV1::ServiceAccount::Representation
256
+
257
+ property :account_id, as: 'accountId'
270
258
  end
271
259
  end
272
260
 
@@ -278,37 +266,76 @@ module Google
278
266
  end
279
267
  end
280
268
 
269
+ class SignBlobRequest
270
+ # @private
271
+ class Representation < Google::Apis::Core::JsonRepresentation
272
+ property :bytes_to_sign, :base64 => true, as: 'bytesToSign'
273
+ end
274
+ end
275
+
281
276
  class Role
282
277
  # @private
283
278
  class Representation < Google::Apis::Core::JsonRepresentation
284
279
  property :name, as: 'name'
285
- property :title, as: 'title'
286
280
  property :description, as: 'description'
281
+ property :title, as: 'title'
287
282
  end
288
283
  end
289
284
 
290
- class AuditData
285
+ class SetIamPolicyRequest
291
286
  # @private
292
287
  class Representation < Google::Apis::Core::JsonRepresentation
293
- property :policy_delta, as: 'policyDelta', class: Google::Apis::IamV1::PolicyDelta, decorator: Google::Apis::IamV1::PolicyDelta::Representation
288
+ property :policy, as: 'policy', class: Google::Apis::IamV1::Policy, decorator: Google::Apis::IamV1::Policy::Representation
294
289
 
295
290
  end
296
291
  end
297
292
 
298
- class PolicyDelta
293
+ class Binding
299
294
  # @private
300
295
  class Representation < Google::Apis::Core::JsonRepresentation
301
- collection :binding_deltas, as: 'bindingDeltas', class: Google::Apis::IamV1::BindingDelta, decorator: Google::Apis::IamV1::BindingDelta::Representation
296
+ collection :members, as: 'members'
297
+ property :role, as: 'role'
298
+ end
299
+ end
302
300
 
301
+ class QueryGrantableRolesRequest
302
+ # @private
303
+ class Representation < Google::Apis::Core::JsonRepresentation
304
+ property :full_resource_name, as: 'fullResourceName'
303
305
  end
304
306
  end
305
307
 
306
- class BindingDelta
308
+ class Empty
307
309
  # @private
308
310
  class Representation < Google::Apis::Core::JsonRepresentation
309
- property :action, as: 'action'
310
- property :role, as: 'role'
311
- property :member, as: 'member'
311
+ end
312
+ end
313
+
314
+ class ServiceAccount
315
+ # @private
316
+ class Representation < Google::Apis::Core::JsonRepresentation
317
+ property :display_name, as: 'displayName'
318
+ property :etag, :base64 => true, as: 'etag'
319
+ property :email, as: 'email'
320
+ property :name, as: 'name'
321
+ property :project_id, as: 'projectId'
322
+ property :unique_id, as: 'uniqueId'
323
+ property :oauth2_client_id, as: 'oauth2ClientId'
324
+ end
325
+ end
326
+
327
+ class TestIamPermissionsResponse
328
+ # @private
329
+ class Representation < Google::Apis::Core::JsonRepresentation
330
+ collection :permissions, as: 'permissions'
331
+ end
332
+ end
333
+
334
+ class ListServiceAccountKeysResponse
335
+ # @private
336
+ class Representation < Google::Apis::Core::JsonRepresentation
337
+ collection :keys, as: 'keys', class: Google::Apis::IamV1::ServiceAccountKey, decorator: Google::Apis::IamV1::ServiceAccountKey::Representation
338
+
312
339
  end
313
340
  end
314
341
  end
@@ -48,17 +48,10 @@ module Google
48
48
  super('https://iam.googleapis.com/', '')
49
49
  end
50
50
 
51
- # Lists ServiceAccounts for a project.
52
- # @param [String] name
53
- # Required. The resource name of the project associated with the service
54
- # accounts, such as `projects/my-project-123`.
55
- # @param [Fixnum] page_size
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.
59
- # @param [String] page_token
60
- # Optional pagination token returned in an earlier ListServiceAccountsResponse.
61
- # next_page_token.
51
+ # Queries roles that can be granted on a particular resource.
52
+ # A role is grantable if it can be used as the role in a binding for a policy
53
+ # for that resource.
54
+ # @param [Google::Apis::IamV1::QueryGrantableRolesRequest] query_grantable_roles_request_object
62
55
  # @param [String] fields
63
56
  # Selector specifying which fields to include in a partial response.
64
57
  # @param [String] quota_user
@@ -68,32 +61,31 @@ module Google
68
61
  # Request-specific options
69
62
  #
70
63
  # @yield [result, err] Result & error if block supplied
71
- # @yieldparam result [Google::Apis::IamV1::ListServiceAccountsResponse] parsed result object
64
+ # @yieldparam result [Google::Apis::IamV1::QueryGrantableRolesResponse] parsed result object
72
65
  # @yieldparam err [StandardError] error object if request failed
73
66
  #
74
- # @return [Google::Apis::IamV1::ListServiceAccountsResponse]
67
+ # @return [Google::Apis::IamV1::QueryGrantableRolesResponse]
75
68
  #
76
69
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
77
70
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
78
71
  # @raise [Google::Apis::AuthorizationError] Authorization is required
79
- def list_project_service_accounts(name, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
80
- command = make_simple_command(:get, 'v1/{+name}/serviceAccounts', options)
81
- command.response_representation = Google::Apis::IamV1::ListServiceAccountsResponse::Representation
82
- command.response_class = Google::Apis::IamV1::ListServiceAccountsResponse
83
- command.params['name'] = name unless name.nil?
84
- command.query['pageSize'] = page_size unless page_size.nil?
85
- command.query['pageToken'] = page_token unless page_token.nil?
72
+ def query_grantable_roles(query_grantable_roles_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
73
+ command = make_simple_command(:post, 'v1/roles:queryGrantableRoles', options)
74
+ command.request_representation = Google::Apis::IamV1::QueryGrantableRolesRequest::Representation
75
+ command.request_object = query_grantable_roles_request_object
76
+ command.response_representation = Google::Apis::IamV1::QueryGrantableRolesResponse::Representation
77
+ command.response_class = Google::Apis::IamV1::QueryGrantableRolesResponse
86
78
  command.query['fields'] = fields unless fields.nil?
87
79
  command.query['quotaUser'] = quota_user unless quota_user.nil?
88
80
  execute_or_queue_command(command, &block)
89
81
  end
90
82
 
91
- # Gets a ServiceAccount.
83
+ # Creates a ServiceAccount
84
+ # and returns it.
92
85
  # @param [String] name
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.
86
+ # Required. The resource name of the project associated with the service
87
+ # accounts, such as `projects/my-project-123`.
88
+ # @param [Google::Apis::IamV1::CreateServiceAccountRequest] create_service_account_request_object
97
89
  # @param [String] fields
98
90
  # Selector specifying which fields to include in a partial response.
99
91
  # @param [String] quota_user
@@ -111,8 +103,10 @@ module Google
111
103
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
112
104
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
113
105
  # @raise [Google::Apis::AuthorizationError] Authorization is required
114
- def get_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
115
- command = make_simple_command(:get, 'v1/{+name}', options)
106
+ def create_service_account(name, create_service_account_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
107
+ command = make_simple_command(:post, 'v1/{+name}/serviceAccounts', options)
108
+ command.request_representation = Google::Apis::IamV1::CreateServiceAccountRequest::Representation
109
+ command.request_object = create_service_account_request_object
116
110
  command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
117
111
  command.response_class = Google::Apis::IamV1::ServiceAccount
118
112
  command.params['name'] = name unless name.nil?
@@ -121,11 +115,17 @@ module Google
121
115
  execute_or_queue_command(command, &block)
122
116
  end
123
117
 
124
- # Creates a ServiceAccount and returns it.
118
+ # Signs a JWT using a service account's system-managed private key.
119
+ # If no expiry time (`exp`) is provided in the `SignJwtRequest`, IAM sets an
120
+ # an expiry time of one hour by default. If you request an expiry time of
121
+ # more than one hour, the request will fail.
125
122
  # @param [String] name
126
- # Required. The resource name of the project associated with the service
127
- # accounts, such as `projects/my-project-123`.
128
- # @param [Google::Apis::IamV1::CreateServiceAccountRequest] create_service_account_request_object
123
+ # The resource name of the service account in the following format:
124
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
125
+ # Using `-` as a wildcard for the project will infer the project from
126
+ # the account. The `account` value can be the `email` address or the
127
+ # `unique_id` of the service account.
128
+ # @param [Google::Apis::IamV1::SignJwtRequest] sign_jwt_request_object
129
129
  # @param [String] fields
130
130
  # Selector specifying which fields to include in a partial response.
131
131
  # @param [String] quota_user
@@ -135,36 +135,33 @@ module Google
135
135
  # Request-specific options
136
136
  #
137
137
  # @yield [result, err] Result & error if block supplied
138
- # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
138
+ # @yieldparam result [Google::Apis::IamV1::SignJwtResponse] parsed result object
139
139
  # @yieldparam err [StandardError] error object if request failed
140
140
  #
141
- # @return [Google::Apis::IamV1::ServiceAccount]
141
+ # @return [Google::Apis::IamV1::SignJwtResponse]
142
142
  #
143
143
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
144
144
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
145
145
  # @raise [Google::Apis::AuthorizationError] Authorization is required
146
- def create_service_account(name, create_service_account_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
147
- command = make_simple_command(:post, 'v1/{+name}/serviceAccounts', options)
148
- command.request_representation = Google::Apis::IamV1::CreateServiceAccountRequest::Representation
149
- command.request_object = create_service_account_request_object
150
- command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
151
- command.response_class = Google::Apis::IamV1::ServiceAccount
146
+ def sign_service_account_jwt(name, sign_jwt_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
147
+ command = make_simple_command(:post, 'v1/{+name}:signJwt', options)
148
+ command.request_representation = Google::Apis::IamV1::SignJwtRequest::Representation
149
+ command.request_object = sign_jwt_request_object
150
+ command.response_representation = Google::Apis::IamV1::SignJwtResponse::Representation
151
+ command.response_class = Google::Apis::IamV1::SignJwtResponse
152
152
  command.params['name'] = name unless name.nil?
153
153
  command.query['fields'] = fields unless fields.nil?
154
154
  command.query['quotaUser'] = quota_user unless quota_user.nil?
155
155
  execute_or_queue_command(command, &block)
156
156
  end
157
157
 
158
- # Updates a ServiceAccount. Currently, only the following fields are updatable: `
159
- # display_name` . The `etag` is mandatory.
160
- # @param [String] name
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
- # @param [Google::Apis::IamV1::ServiceAccount] service_account_object
158
+ # Sets the IAM access control policy for a
159
+ # ServiceAccount.
160
+ # @param [String] resource
161
+ # REQUIRED: The resource for which the policy is being specified.
162
+ # `resource` is usually specified as a path. For example, a Project
163
+ # resource is specified as `projects/`project``.
164
+ # @param [Google::Apis::IamV1::SetIamPolicyRequest] set_iam_policy_request_object
168
165
  # @param [String] fields
169
166
  # Selector specifying which fields to include in a partial response.
170
167
  # @param [String] quota_user
@@ -174,32 +171,66 @@ module Google
174
171
  # Request-specific options
175
172
  #
176
173
  # @yield [result, err] Result & error if block supplied
177
- # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
174
+ # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
178
175
  # @yieldparam err [StandardError] error object if request failed
179
176
  #
180
- # @return [Google::Apis::IamV1::ServiceAccount]
177
+ # @return [Google::Apis::IamV1::Policy]
181
178
  #
182
179
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
183
180
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
184
181
  # @raise [Google::Apis::AuthorizationError] Authorization is required
185
- def update_project_service_account(name, service_account_object = nil, fields: nil, quota_user: nil, options: nil, &block)
186
- command = make_simple_command(:put, 'v1/{+name}', options)
187
- command.request_representation = Google::Apis::IamV1::ServiceAccount::Representation
188
- command.request_object = service_account_object
189
- command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
190
- command.response_class = Google::Apis::IamV1::ServiceAccount
191
- command.params['name'] = name unless name.nil?
182
+ def set_service_account_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
183
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
184
+ command.request_representation = Google::Apis::IamV1::SetIamPolicyRequest::Representation
185
+ command.request_object = set_iam_policy_request_object
186
+ command.response_representation = Google::Apis::IamV1::Policy::Representation
187
+ command.response_class = Google::Apis::IamV1::Policy
188
+ command.params['resource'] = resource unless resource.nil?
192
189
  command.query['fields'] = fields unless fields.nil?
193
190
  command.query['quotaUser'] = quota_user unless quota_user.nil?
194
191
  execute_or_queue_command(command, &block)
195
192
  end
196
193
 
197
- # Deletes a ServiceAccount.
194
+ # Returns the IAM access control policy for a
195
+ # ServiceAccount.
196
+ # @param [String] resource
197
+ # REQUIRED: The resource for which the policy is being requested.
198
+ # `resource` is usually specified as a path. For example, a Project
199
+ # resource is specified as `projects/`project``.
200
+ # @param [String] fields
201
+ # Selector specifying which fields to include in a partial response.
202
+ # @param [String] quota_user
203
+ # Available to use for quota purposes for server-side applications. Can be any
204
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
205
+ # @param [Google::Apis::RequestOptions] options
206
+ # Request-specific options
207
+ #
208
+ # @yield [result, err] Result & error if block supplied
209
+ # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
210
+ # @yieldparam err [StandardError] error object if request failed
211
+ #
212
+ # @return [Google::Apis::IamV1::Policy]
213
+ #
214
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
215
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
216
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
217
+ def get_project_service_account_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block)
218
+ command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', options)
219
+ command.response_representation = Google::Apis::IamV1::Policy::Representation
220
+ command.response_class = Google::Apis::IamV1::Policy
221
+ command.params['resource'] = resource unless resource.nil?
222
+ command.query['fields'] = fields unless fields.nil?
223
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
224
+ execute_or_queue_command(command, &block)
225
+ end
226
+
227
+ # Gets a ServiceAccount.
198
228
  # @param [String] name
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.
229
+ # The resource name of the service account in the following format:
230
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
231
+ # Using `-` as a wildcard for the project will infer the project from
232
+ # the account. The `account` value can be the `email` address or the
233
+ # `unique_id` of the service account.
203
234
  # @param [String] fields
204
235
  # Selector specifying which fields to include in a partial response.
205
236
  # @param [String] quota_user
@@ -209,31 +240,37 @@ module Google
209
240
  # Request-specific options
210
241
  #
211
242
  # @yield [result, err] Result & error if block supplied
212
- # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
243
+ # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
213
244
  # @yieldparam err [StandardError] error object if request failed
214
245
  #
215
- # @return [Google::Apis::IamV1::Empty]
246
+ # @return [Google::Apis::IamV1::ServiceAccount]
216
247
  #
217
248
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
218
249
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
219
250
  # @raise [Google::Apis::AuthorizationError] Authorization is required
220
- def delete_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
221
- command = make_simple_command(:delete, 'v1/{+name}', options)
222
- command.response_representation = Google::Apis::IamV1::Empty::Representation
223
- command.response_class = Google::Apis::IamV1::Empty
251
+ def get_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
252
+ command = make_simple_command(:get, 'v1/{+name}', options)
253
+ command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
254
+ command.response_class = Google::Apis::IamV1::ServiceAccount
224
255
  command.params['name'] = name unless name.nil?
225
256
  command.query['fields'] = fields unless fields.nil?
226
257
  command.query['quotaUser'] = quota_user unless quota_user.nil?
227
258
  execute_or_queue_command(command, &block)
228
259
  end
229
260
 
230
- # Signs a blob using a service account's system-managed private key.
261
+ # Updates a ServiceAccount.
262
+ # Currently, only the following fields are updatable:
263
+ # `display_name` .
264
+ # The `etag` is mandatory.
231
265
  # @param [String] name
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
- # @param [Google::Apis::IamV1::SignBlobRequest] sign_blob_request_object
266
+ # The resource name of the service account in the following format:
267
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
268
+ # Requests using `-` as a wildcard for the project will infer the project
269
+ # from the `account` and the `account` value can be the `email` address or
270
+ # the `unique_id` of the service account.
271
+ # In responses the resource name will always be in the format
272
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
273
+ # @param [Google::Apis::IamV1::ServiceAccount] service_account_object
237
274
  # @param [String] fields
238
275
  # Selector specifying which fields to include in a partial response.
239
276
  # @param [String] quota_user
@@ -243,31 +280,33 @@ module Google
243
280
  # Request-specific options
244
281
  #
245
282
  # @yield [result, err] Result & error if block supplied
246
- # @yieldparam result [Google::Apis::IamV1::SignBlobResponse] parsed result object
283
+ # @yieldparam result [Google::Apis::IamV1::ServiceAccount] parsed result object
247
284
  # @yieldparam err [StandardError] error object if request failed
248
285
  #
249
- # @return [Google::Apis::IamV1::SignBlobResponse]
286
+ # @return [Google::Apis::IamV1::ServiceAccount]
250
287
  #
251
288
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
252
289
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
253
290
  # @raise [Google::Apis::AuthorizationError] Authorization is required
254
- def sign_service_account_blob(name, sign_blob_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
255
- command = make_simple_command(:post, 'v1/{+name}:signBlob', options)
256
- command.request_representation = Google::Apis::IamV1::SignBlobRequest::Representation
257
- command.request_object = sign_blob_request_object
258
- command.response_representation = Google::Apis::IamV1::SignBlobResponse::Representation
259
- command.response_class = Google::Apis::IamV1::SignBlobResponse
291
+ def update_project_service_account(name, service_account_object = nil, fields: nil, quota_user: nil, options: nil, &block)
292
+ command = make_simple_command(:put, 'v1/{+name}', options)
293
+ command.request_representation = Google::Apis::IamV1::ServiceAccount::Representation
294
+ command.request_object = service_account_object
295
+ command.response_representation = Google::Apis::IamV1::ServiceAccount::Representation
296
+ command.response_class = Google::Apis::IamV1::ServiceAccount
260
297
  command.params['name'] = name unless name.nil?
261
298
  command.query['fields'] = fields unless fields.nil?
262
299
  command.query['quotaUser'] = quota_user unless quota_user.nil?
263
300
  execute_or_queue_command(command, &block)
264
301
  end
265
302
 
266
- # Returns the IAM access control policy for a ServiceAccount.
303
+ # Tests the specified permissions against the IAM access control policy
304
+ # for a ServiceAccount.
267
305
  # @param [String] resource
268
- # REQUIRED: The resource for which the policy is being requested. `resource` is
269
- # usually specified as a path. For example, a Project resource is specified as `
270
- # projects/`project``.
306
+ # REQUIRED: The resource for which the policy detail is being requested.
307
+ # `resource` is usually specified as a path. For example, a Project
308
+ # resource is specified as `projects/`project``.
309
+ # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object
271
310
  # @param [String] fields
272
311
  # Selector specifying which fields to include in a partial response.
273
312
  # @param [String] quota_user
@@ -277,30 +316,33 @@ module Google
277
316
  # Request-specific options
278
317
  #
279
318
  # @yield [result, err] Result & error if block supplied
280
- # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
319
+ # @yieldparam result [Google::Apis::IamV1::TestIamPermissionsResponse] parsed result object
281
320
  # @yieldparam err [StandardError] error object if request failed
282
321
  #
283
- # @return [Google::Apis::IamV1::Policy]
322
+ # @return [Google::Apis::IamV1::TestIamPermissionsResponse]
284
323
  #
285
324
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
286
325
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
287
326
  # @raise [Google::Apis::AuthorizationError] Authorization is required
288
- def get_project_service_account_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block)
289
- command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', options)
290
- command.response_representation = Google::Apis::IamV1::Policy::Representation
291
- command.response_class = Google::Apis::IamV1::Policy
327
+ def test_service_account_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
328
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
329
+ command.request_representation = Google::Apis::IamV1::TestIamPermissionsRequest::Representation
330
+ command.request_object = test_iam_permissions_request_object
331
+ command.response_representation = Google::Apis::IamV1::TestIamPermissionsResponse::Representation
332
+ command.response_class = Google::Apis::IamV1::TestIamPermissionsResponse
292
333
  command.params['resource'] = resource unless resource.nil?
293
334
  command.query['fields'] = fields unless fields.nil?
294
335
  command.query['quotaUser'] = quota_user unless quota_user.nil?
295
336
  execute_or_queue_command(command, &block)
296
337
  end
297
338
 
298
- # Sets the IAM access control policy for a ServiceAccount.
299
- # @param [String] resource
300
- # REQUIRED: The resource for which the policy is being specified. `resource` is
301
- # usually specified as a path. For example, a Project resource is specified as `
302
- # projects/`project``.
303
- # @param [Google::Apis::IamV1::SetIamPolicyRequest] set_iam_policy_request_object
339
+ # Deletes a ServiceAccount.
340
+ # @param [String] name
341
+ # The resource name of the service account in the following format:
342
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
343
+ # Using `-` as a wildcard for the project will infer the project from
344
+ # the account. The `account` value can be the `email` address or the
345
+ # `unique_id` of the service account.
304
346
  # @param [String] fields
305
347
  # Selector specifying which fields to include in a partial response.
306
348
  # @param [String] quota_user
@@ -310,33 +352,36 @@ module Google
310
352
  # Request-specific options
311
353
  #
312
354
  # @yield [result, err] Result & error if block supplied
313
- # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
355
+ # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
314
356
  # @yieldparam err [StandardError] error object if request failed
315
357
  #
316
- # @return [Google::Apis::IamV1::Policy]
358
+ # @return [Google::Apis::IamV1::Empty]
317
359
  #
318
360
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
319
361
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
320
362
  # @raise [Google::Apis::AuthorizationError] Authorization is required
321
- def set_service_account_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
322
- command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
323
- command.request_representation = Google::Apis::IamV1::SetIamPolicyRequest::Representation
324
- command.request_object = set_iam_policy_request_object
325
- command.response_representation = Google::Apis::IamV1::Policy::Representation
326
- command.response_class = Google::Apis::IamV1::Policy
327
- command.params['resource'] = resource unless resource.nil?
363
+ def delete_project_service_account(name, fields: nil, quota_user: nil, options: nil, &block)
364
+ command = make_simple_command(:delete, 'v1/{+name}', options)
365
+ command.response_representation = Google::Apis::IamV1::Empty::Representation
366
+ command.response_class = Google::Apis::IamV1::Empty
367
+ command.params['name'] = name unless name.nil?
328
368
  command.query['fields'] = fields unless fields.nil?
329
369
  command.query['quotaUser'] = quota_user unless quota_user.nil?
330
370
  execute_or_queue_command(command, &block)
331
371
  end
332
372
 
333
- # Tests the specified permissions against the IAM access control policy for a
334
- # ServiceAccount.
335
- # @param [String] resource
336
- # REQUIRED: The resource for which the policy detail is being requested. `
337
- # resource` is usually specified as a path. For example, a Project resource is
338
- # specified as `projects/`project``.
339
- # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object
373
+ # Lists ServiceAccounts for a project.
374
+ # @param [String] name
375
+ # Required. The resource name of the project associated with the service
376
+ # accounts, such as `projects/my-project-123`.
377
+ # @param [String] page_token
378
+ # Optional pagination token returned in an earlier
379
+ # ListServiceAccountsResponse.next_page_token.
380
+ # @param [Fixnum] page_size
381
+ # Optional limit on the number of service accounts to include in the
382
+ # response. Further accounts can subsequently be obtained by including the
383
+ # ListServiceAccountsResponse.next_page_token
384
+ # in a subsequent request.
340
385
  # @param [String] fields
341
386
  # Selector specifying which fields to include in a partial response.
342
387
  # @param [String] quota_user
@@ -346,36 +391,34 @@ module Google
346
391
  # Request-specific options
347
392
  #
348
393
  # @yield [result, err] Result & error if block supplied
349
- # @yieldparam result [Google::Apis::IamV1::TestIamPermissionsResponse] parsed result object
394
+ # @yieldparam result [Google::Apis::IamV1::ListServiceAccountsResponse] parsed result object
350
395
  # @yieldparam err [StandardError] error object if request failed
351
396
  #
352
- # @return [Google::Apis::IamV1::TestIamPermissionsResponse]
397
+ # @return [Google::Apis::IamV1::ListServiceAccountsResponse]
353
398
  #
354
399
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
355
400
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
356
401
  # @raise [Google::Apis::AuthorizationError] Authorization is required
357
- def test_service_account_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
358
- command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
359
- command.request_representation = Google::Apis::IamV1::TestIamPermissionsRequest::Representation
360
- command.request_object = test_iam_permissions_request_object
361
- command.response_representation = Google::Apis::IamV1::TestIamPermissionsResponse::Representation
362
- command.response_class = Google::Apis::IamV1::TestIamPermissionsResponse
363
- command.params['resource'] = resource unless resource.nil?
402
+ def list_project_service_accounts(name, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block)
403
+ command = make_simple_command(:get, 'v1/{+name}/serviceAccounts', options)
404
+ command.response_representation = Google::Apis::IamV1::ListServiceAccountsResponse::Representation
405
+ command.response_class = Google::Apis::IamV1::ListServiceAccountsResponse
406
+ command.params['name'] = name unless name.nil?
407
+ command.query['pageToken'] = page_token unless page_token.nil?
408
+ command.query['pageSize'] = page_size unless page_size.nil?
364
409
  command.query['fields'] = fields unless fields.nil?
365
410
  command.query['quotaUser'] = quota_user unless quota_user.nil?
366
411
  execute_or_queue_command(command, &block)
367
412
  end
368
413
 
369
- # Lists ServiceAccountKeys.
414
+ # Signs a blob using a service account's system-managed private key.
370
415
  # @param [String] name
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.
375
- # @param [Array<String>, String] key_types
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.
416
+ # The resource name of the service account in the following format:
417
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
418
+ # Using `-` as a wildcard for the project will infer the project from
419
+ # the account. The `account` value can be the `email` address or the
420
+ # `unique_id` of the service account.
421
+ # @param [Google::Apis::IamV1::SignBlobRequest] sign_blob_request_object
379
422
  # @param [String] fields
380
423
  # Selector specifying which fields to include in a partial response.
381
424
  # @param [String] quota_user
@@ -385,34 +428,33 @@ module Google
385
428
  # Request-specific options
386
429
  #
387
430
  # @yield [result, err] Result & error if block supplied
388
- # @yieldparam result [Google::Apis::IamV1::ListServiceAccountKeysResponse] parsed result object
431
+ # @yieldparam result [Google::Apis::IamV1::SignBlobResponse] parsed result object
389
432
  # @yieldparam err [StandardError] error object if request failed
390
433
  #
391
- # @return [Google::Apis::IamV1::ListServiceAccountKeysResponse]
434
+ # @return [Google::Apis::IamV1::SignBlobResponse]
392
435
  #
393
436
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
394
437
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
395
438
  # @raise [Google::Apis::AuthorizationError] Authorization is required
396
- def list_project_service_account_keys(name, key_types: nil, fields: nil, quota_user: nil, options: nil, &block)
397
- command = make_simple_command(:get, 'v1/{+name}/keys', options)
398
- command.response_representation = Google::Apis::IamV1::ListServiceAccountKeysResponse::Representation
399
- command.response_class = Google::Apis::IamV1::ListServiceAccountKeysResponse
439
+ def sign_service_account_blob(name, sign_blob_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
440
+ command = make_simple_command(:post, 'v1/{+name}:signBlob', options)
441
+ command.request_representation = Google::Apis::IamV1::SignBlobRequest::Representation
442
+ command.request_object = sign_blob_request_object
443
+ command.response_representation = Google::Apis::IamV1::SignBlobResponse::Representation
444
+ command.response_class = Google::Apis::IamV1::SignBlobResponse
400
445
  command.params['name'] = name unless name.nil?
401
- command.query['keyTypes'] = key_types unless key_types.nil?
402
446
  command.query['fields'] = fields unless fields.nil?
403
447
  command.query['quotaUser'] = quota_user unless quota_user.nil?
404
448
  execute_or_queue_command(command, &block)
405
449
  end
406
450
 
407
- # Gets the ServiceAccountKey by key id.
451
+ # Deletes a ServiceAccountKey.
408
452
  # @param [String] name
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.
453
+ # The resource name of the service account key in the following format:
454
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL`/keys/`key``.
455
+ # Using `-` as a wildcard for the project will infer the project from
456
+ # the account. The `account` value can be the `email` address or the
457
+ # `unique_id` of the service account.
416
458
  # @param [String] fields
417
459
  # Selector specifying which fields to include in a partial response.
418
460
  # @param [String] quota_user
@@ -422,32 +464,35 @@ module Google
422
464
  # Request-specific options
423
465
  #
424
466
  # @yield [result, err] Result & error if block supplied
425
- # @yieldparam result [Google::Apis::IamV1::ServiceAccountKey] parsed result object
467
+ # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
426
468
  # @yieldparam err [StandardError] error object if request failed
427
469
  #
428
- # @return [Google::Apis::IamV1::ServiceAccountKey]
470
+ # @return [Google::Apis::IamV1::Empty]
429
471
  #
430
472
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
431
473
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
432
474
  # @raise [Google::Apis::AuthorizationError] Authorization is required
433
- def get_project_service_account_key(name, public_key_type: nil, fields: nil, quota_user: nil, options: nil, &block)
434
- command = make_simple_command(:get, 'v1/{+name}', options)
435
- command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
436
- command.response_class = Google::Apis::IamV1::ServiceAccountKey
475
+ def delete_project_service_account_key(name, fields: nil, quota_user: nil, options: nil, &block)
476
+ command = make_simple_command(:delete, 'v1/{+name}', options)
477
+ command.response_representation = Google::Apis::IamV1::Empty::Representation
478
+ command.response_class = Google::Apis::IamV1::Empty
437
479
  command.params['name'] = name unless name.nil?
438
- command.query['publicKeyType'] = public_key_type unless public_key_type.nil?
439
480
  command.query['fields'] = fields unless fields.nil?
440
481
  command.query['quotaUser'] = quota_user unless quota_user.nil?
441
482
  execute_or_queue_command(command, &block)
442
483
  end
443
484
 
444
- # Creates a ServiceAccountKey and returns it.
485
+ # Lists ServiceAccountKeys.
445
486
  # @param [String] name
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.
450
- # @param [Google::Apis::IamV1::CreateServiceAccountKeyRequest] create_service_account_key_request_object
487
+ # The resource name of the service account in the following format:
488
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
489
+ # Using `-` as a wildcard for the project, will infer the project from
490
+ # the account. The `account` value can be the `email` address or the
491
+ # `unique_id` of the service account.
492
+ # @param [Array<String>, String] key_types
493
+ # Filters the types of keys the user wants to include in the list
494
+ # response. Duplicate key types are not allowed. If no key type
495
+ # is provided, all keys are returned.
451
496
  # @param [String] fields
452
497
  # Selector specifying which fields to include in a partial response.
453
498
  # @param [String] quota_user
@@ -457,32 +502,36 @@ module Google
457
502
  # Request-specific options
458
503
  #
459
504
  # @yield [result, err] Result & error if block supplied
460
- # @yieldparam result [Google::Apis::IamV1::ServiceAccountKey] parsed result object
505
+ # @yieldparam result [Google::Apis::IamV1::ListServiceAccountKeysResponse] parsed result object
461
506
  # @yieldparam err [StandardError] error object if request failed
462
507
  #
463
- # @return [Google::Apis::IamV1::ServiceAccountKey]
508
+ # @return [Google::Apis::IamV1::ListServiceAccountKeysResponse]
464
509
  #
465
510
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
466
511
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
467
512
  # @raise [Google::Apis::AuthorizationError] Authorization is required
468
- def create_service_account_key(name, create_service_account_key_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
469
- command = make_simple_command(:post, 'v1/{+name}/keys', options)
470
- command.request_representation = Google::Apis::IamV1::CreateServiceAccountKeyRequest::Representation
471
- command.request_object = create_service_account_key_request_object
472
- command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
473
- command.response_class = Google::Apis::IamV1::ServiceAccountKey
513
+ def list_project_service_account_keys(name, key_types: nil, fields: nil, quota_user: nil, options: nil, &block)
514
+ command = make_simple_command(:get, 'v1/{+name}/keys', options)
515
+ command.response_representation = Google::Apis::IamV1::ListServiceAccountKeysResponse::Representation
516
+ command.response_class = Google::Apis::IamV1::ListServiceAccountKeysResponse
474
517
  command.params['name'] = name unless name.nil?
518
+ command.query['keyTypes'] = key_types unless key_types.nil?
475
519
  command.query['fields'] = fields unless fields.nil?
476
520
  command.query['quotaUser'] = quota_user unless quota_user.nil?
477
521
  execute_or_queue_command(command, &block)
478
522
  end
479
523
 
480
- # Deletes a ServiceAccountKey.
524
+ # Gets the ServiceAccountKey
525
+ # by key id.
481
526
  # @param [String] name
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.
527
+ # The resource name of the service account key in the following format:
528
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL`/keys/`key``.
529
+ # Using `-` as a wildcard for the project will infer the project from
530
+ # the account. The `account` value can be the `email` address or the
531
+ # `unique_id` of the service account.
532
+ # @param [String] public_key_type
533
+ # The output format of the public key requested.
534
+ # X509_PEM is the default output format.
486
535
  # @param [String] fields
487
536
  # Selector specifying which fields to include in a partial response.
488
537
  # @param [String] quota_user
@@ -492,28 +541,34 @@ module Google
492
541
  # Request-specific options
493
542
  #
494
543
  # @yield [result, err] Result & error if block supplied
495
- # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
544
+ # @yieldparam result [Google::Apis::IamV1::ServiceAccountKey] parsed result object
496
545
  # @yieldparam err [StandardError] error object if request failed
497
546
  #
498
- # @return [Google::Apis::IamV1::Empty]
547
+ # @return [Google::Apis::IamV1::ServiceAccountKey]
499
548
  #
500
549
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
501
550
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
502
551
  # @raise [Google::Apis::AuthorizationError] Authorization is required
503
- def delete_project_service_account_key(name, fields: nil, quota_user: nil, options: nil, &block)
504
- command = make_simple_command(:delete, 'v1/{+name}', options)
505
- command.response_representation = Google::Apis::IamV1::Empty::Representation
506
- command.response_class = Google::Apis::IamV1::Empty
552
+ def get_project_service_account_key(name, public_key_type: nil, fields: nil, quota_user: nil, options: nil, &block)
553
+ command = make_simple_command(:get, 'v1/{+name}', options)
554
+ command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
555
+ command.response_class = Google::Apis::IamV1::ServiceAccountKey
507
556
  command.params['name'] = name unless name.nil?
557
+ command.query['publicKeyType'] = public_key_type unless public_key_type.nil?
508
558
  command.query['fields'] = fields unless fields.nil?
509
559
  command.query['quotaUser'] = quota_user unless quota_user.nil?
510
560
  execute_or_queue_command(command, &block)
511
561
  end
512
562
 
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
563
+ # Creates a ServiceAccountKey
564
+ # and returns it.
565
+ # @param [String] name
566
+ # The resource name of the service account in the following format:
567
+ # `projects/`PROJECT_ID`/serviceAccounts/`SERVICE_ACCOUNT_EMAIL``.
568
+ # Using `-` as a wildcard for the project will infer the project from
569
+ # the account. The `account` value can be the `email` address or the
570
+ # `unique_id` of the service account.
571
+ # @param [Google::Apis::IamV1::CreateServiceAccountKeyRequest] create_service_account_key_request_object
517
572
  # @param [String] fields
518
573
  # Selector specifying which fields to include in a partial response.
519
574
  # @param [String] quota_user
@@ -523,20 +578,21 @@ module Google
523
578
  # Request-specific options
524
579
  #
525
580
  # @yield [result, err] Result & error if block supplied
526
- # @yieldparam result [Google::Apis::IamV1::QueryGrantableRolesResponse] parsed result object
581
+ # @yieldparam result [Google::Apis::IamV1::ServiceAccountKey] parsed result object
527
582
  # @yieldparam err [StandardError] error object if request failed
528
583
  #
529
- # @return [Google::Apis::IamV1::QueryGrantableRolesResponse]
584
+ # @return [Google::Apis::IamV1::ServiceAccountKey]
530
585
  #
531
586
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
532
587
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
533
588
  # @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
589
+ def create_service_account_key(name, create_service_account_key_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
590
+ command = make_simple_command(:post, 'v1/{+name}/keys', options)
591
+ command.request_representation = Google::Apis::IamV1::CreateServiceAccountKeyRequest::Representation
592
+ command.request_object = create_service_account_key_request_object
593
+ command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation
594
+ command.response_class = Google::Apis::IamV1::ServiceAccountKey
595
+ command.params['name'] = name unless name.nil?
540
596
  command.query['fields'] = fields unless fields.nil?
541
597
  command.query['quotaUser'] = quota_user unless quota_user.nil?
542
598
  execute_or_queue_command(command, &block)