google-apis-iam_v1 0.36.0 → 0.72.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,9 +22,11 @@ module Google
22
22
  module IamV1
23
23
  # Identity and Access Management (IAM) API
24
24
  #
25
- # Manages identity and access control for Google Cloud Platform resources,
26
- # including the creation of service accounts, which you can use to authenticate
27
- # to Google and make API calls.
25
+ # Manages identity and access control for Google Cloud resources, including the
26
+ # creation of service accounts, which you can use to authenticate to Google and
27
+ # make API calls. Enabling this API also enables the IAM Service Account
28
+ # Credentials API (iamcredentials.googleapis.com). However, disabling this API
29
+ # doesn't disable the IAM Service Account Credentials API.
28
30
  #
29
31
  # @example
30
32
  # require 'google/apis/iam_v1'
@@ -34,6 +36,8 @@ module Google
34
36
  #
35
37
  # @see https://cloud.google.com/iam/
36
38
  class IamService < Google::Apis::Core::BaseService
39
+ DEFAULT_ENDPOINT_TEMPLATE = "https://iam.$UNIVERSE_DOMAIN$/"
40
+
37
41
  # @return [String]
38
42
  # API key. Your API key identifies your project and provides you with API access,
39
43
  # quota, and reports. Required unless you provide an OAuth 2.0 token.
@@ -45,7 +49,7 @@ module Google
45
49
  attr_accessor :quota_user
46
50
 
47
51
  def initialize
48
- super('https://iam.googleapis.com/', '',
52
+ super(DEFAULT_ENDPOINT_TEMPLATE, '',
49
53
  client_name: 'google-apis-iam_v1',
50
54
  client_version: Google::Apis::IamV1::GEM_VERSION)
51
55
  @batch_path = 'batch'
@@ -116,10 +120,17 @@ module Google
116
120
  execute_or_queue_command(command, &block)
117
121
  end
118
122
 
119
- # Gets the latest state of a long-running operation. Clients can use this method
120
- # to poll the operation result at intervals as recommended by the API service.
121
- # @param [String] name
122
- # The name of the operation resource.
123
+ # Creates a new WorkforcePool. You cannot reuse the name of a deleted pool until
124
+ # 30 days after deletion.
125
+ # @param [String] location
126
+ # Optional. The location of the pool to create. Format: `locations/`location``.
127
+ # @param [Google::Apis::IamV1::WorkforcePool] workforce_pool_object
128
+ # @param [String] workforce_pool_id
129
+ # Optional. The ID to use for the pool, which becomes the final component of the
130
+ # resource name. The IDs must be a globally unique string of 6 to 63 lowercase
131
+ # letters, digits, or hyphens. It must start with a letter, and cannot have a
132
+ # trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may not
133
+ # be specified.
123
134
  # @param [String] fields
124
135
  # Selector specifying which fields to include in a partial response.
125
136
  # @param [String] quota_user
@@ -137,20 +148,29 @@ module Google
137
148
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
138
149
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
139
150
  # @raise [Google::Apis::AuthorizationError] Authorization is required
140
- def get_location_workforce_pool_operation(name, fields: nil, quota_user: nil, options: nil, &block)
141
- command = make_simple_command(:get, 'v1/{+name}', options)
151
+ def create_location_workforce_pool(location, workforce_pool_object = nil, workforce_pool_id: nil, fields: nil, quota_user: nil, options: nil, &block)
152
+ command = make_simple_command(:post, 'v1/{+location}/workforcePools', options)
153
+ command.request_representation = Google::Apis::IamV1::WorkforcePool::Representation
154
+ command.request_object = workforce_pool_object
142
155
  command.response_representation = Google::Apis::IamV1::Operation::Representation
143
156
  command.response_class = Google::Apis::IamV1::Operation
144
- command.params['name'] = name unless name.nil?
157
+ command.params['location'] = location unless location.nil?
158
+ command.query['workforcePoolId'] = workforce_pool_id unless workforce_pool_id.nil?
145
159
  command.query['fields'] = fields unless fields.nil?
146
160
  command.query['quotaUser'] = quota_user unless quota_user.nil?
147
161
  execute_or_queue_command(command, &block)
148
162
  end
149
163
 
150
- # Gets the latest state of a long-running operation. Clients can use this method
151
- # to poll the operation result at intervals as recommended by the API service.
164
+ # Deletes a WorkforcePool. You cannot use a deleted WorkforcePool to exchange
165
+ # external credentials for Google Cloud credentials. However, deletion does not
166
+ # revoke credentials that have already been issued. Credentials issued for a
167
+ # deleted pool do not grant access to resources. If the pool is undeleted, and
168
+ # the credentials are not expired, they grant access again. You can undelete a
169
+ # pool for 30 days. After 30 days, deletion is permanent. You cannot update
170
+ # deleted pools. However, you can view and list them.
152
171
  # @param [String] name
153
- # The name of the operation resource.
172
+ # Required. The name of the pool to delete. Format: `locations/`location`/
173
+ # workforcePools/`workforce_pool_id``
154
174
  # @param [String] fields
155
175
  # Selector specifying which fields to include in a partial response.
156
176
  # @param [String] quota_user
@@ -168,8 +188,8 @@ module Google
168
188
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
169
189
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
170
190
  # @raise [Google::Apis::AuthorizationError] Authorization is required
171
- def get_location_workforce_pool_provider_key_operation(name, fields: nil, quota_user: nil, options: nil, &block)
172
- command = make_simple_command(:get, 'v1/{+name}', options)
191
+ def delete_location_workforce_pool(name, fields: nil, quota_user: nil, options: nil, &block)
192
+ command = make_simple_command(:delete, 'v1/{+name}', options)
173
193
  command.response_representation = Google::Apis::IamV1::Operation::Representation
174
194
  command.response_class = Google::Apis::IamV1::Operation
175
195
  command.params['name'] = name unless name.nil?
@@ -178,10 +198,10 @@ module Google
178
198
  execute_or_queue_command(command, &block)
179
199
  end
180
200
 
181
- # Gets the latest state of a long-running operation. Clients can use this method
182
- # to poll the operation result at intervals as recommended by the API service.
201
+ # Gets an individual WorkforcePool.
183
202
  # @param [String] name
184
- # The name of the operation resource.
203
+ # Required. The name of the pool to retrieve. Format: `locations/`location`/
204
+ # workforcePools/`workforce_pool_id``
185
205
  # @param [String] fields
186
206
  # Selector specifying which fields to include in a partial response.
187
207
  # @param [String] quota_user
@@ -191,28 +211,30 @@ module Google
191
211
  # Request-specific options
192
212
  #
193
213
  # @yield [result, err] Result & error if block supplied
194
- # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
214
+ # @yieldparam result [Google::Apis::IamV1::WorkforcePool] parsed result object
195
215
  # @yieldparam err [StandardError] error object if request failed
196
216
  #
197
- # @return [Google::Apis::IamV1::Operation]
217
+ # @return [Google::Apis::IamV1::WorkforcePool]
198
218
  #
199
219
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
200
220
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
201
221
  # @raise [Google::Apis::AuthorizationError] Authorization is required
202
- def get_location_workforce_pool_provider_operation(name, fields: nil, quota_user: nil, options: nil, &block)
222
+ def get_location_workforce_pool(name, fields: nil, quota_user: nil, options: nil, &block)
203
223
  command = make_simple_command(:get, 'v1/{+name}', options)
204
- command.response_representation = Google::Apis::IamV1::Operation::Representation
205
- command.response_class = Google::Apis::IamV1::Operation
224
+ command.response_representation = Google::Apis::IamV1::WorkforcePool::Representation
225
+ command.response_class = Google::Apis::IamV1::WorkforcePool
206
226
  command.params['name'] = name unless name.nil?
207
227
  command.query['fields'] = fields unless fields.nil?
208
228
  command.query['quotaUser'] = quota_user unless quota_user.nil?
209
229
  execute_or_queue_command(command, &block)
210
230
  end
211
231
 
212
- # Gets the latest state of a long-running operation. Clients can use this method
213
- # to poll the operation result at intervals as recommended by the API service.
214
- # @param [String] name
215
- # The name of the operation resource.
232
+ # Gets IAM policies on a WorkforcePool.
233
+ # @param [String] resource
234
+ # REQUIRED: The resource for which the policy is being requested. See [Resource
235
+ # names](https://cloud.google.com/apis/design/resource_names) for the
236
+ # appropriate value for this field.
237
+ # @param [Google::Apis::IamV1::GetIamPolicyRequest] get_iam_policy_request_object
216
238
  # @param [String] fields
217
239
  # Selector specifying which fields to include in a partial response.
218
240
  # @param [String] quota_user
@@ -222,42 +244,42 @@ module Google
222
244
  # Request-specific options
223
245
  #
224
246
  # @yield [result, err] Result & error if block supplied
225
- # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
247
+ # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
226
248
  # @yieldparam err [StandardError] error object if request failed
227
249
  #
228
- # @return [Google::Apis::IamV1::Operation]
250
+ # @return [Google::Apis::IamV1::Policy]
229
251
  #
230
252
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
231
253
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
232
254
  # @raise [Google::Apis::AuthorizationError] Authorization is required
233
- def get_location_workforce_pool_subject_operation(name, fields: nil, quota_user: nil, options: nil, &block)
234
- command = make_simple_command(:get, 'v1/{+name}', options)
235
- command.response_representation = Google::Apis::IamV1::Operation::Representation
236
- command.response_class = Google::Apis::IamV1::Operation
237
- command.params['name'] = name unless name.nil?
255
+ def get_workforce_pool_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
256
+ command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', options)
257
+ command.request_representation = Google::Apis::IamV1::GetIamPolicyRequest::Representation
258
+ command.request_object = get_iam_policy_request_object
259
+ command.response_representation = Google::Apis::IamV1::Policy::Representation
260
+ command.response_class = Google::Apis::IamV1::Policy
261
+ command.params['resource'] = resource unless resource.nil?
238
262
  command.query['fields'] = fields unless fields.nil?
239
263
  command.query['quotaUser'] = quota_user unless quota_user.nil?
240
264
  execute_or_queue_command(command, &block)
241
265
  end
242
266
 
243
- # Creates a new custom Role.
267
+ # Lists all non-deleted WorkforcePools under the specified parent. If `
268
+ # show_deleted` is set to `true`, then deleted pools are also listed.
269
+ # @param [String] location
270
+ # The location of the pool. Format: `locations/`location``.
271
+ # @param [Fixnum] page_size
272
+ # The maximum number of pools to return. If unspecified, at most 50 pools will
273
+ # be returned. The maximum value is 1000; values above 1000 are truncated to
274
+ # 1000.
275
+ # @param [String] page_token
276
+ # A page token, received from a previous `ListWorkforcePools` call. Provide this
277
+ # to retrieve the subsequent page.
244
278
  # @param [String] parent
245
- # The `parent` parameter's value depends on the target resource for the request,
246
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
247
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
248
- # organizations.roles). Each resource type's `parent` value format is described
249
- # below: * [`projects.roles.create()`](https://cloud.google.com/iam/reference/
250
- # rest/v1/projects.roles/create): `projects/`PROJECT_ID``. This method creates
251
- # project-level [custom roles](https://cloud.google.com/iam/docs/understanding-
252
- # custom-roles). Example request URL: `https://iam.googleapis.com/v1/projects/`
253
- # PROJECT_ID`/roles` * [`organizations.roles.create()`](https://cloud.google.com/
254
- # iam/reference/rest/v1/organizations.roles/create): `organizations/`
255
- # ORGANIZATION_ID``. This method creates organization-level [custom roles](https:
256
- # //cloud.google.com/iam/docs/understanding-custom-roles). Example request URL: `
257
- # https://iam.googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles` Note:
258
- # Wildcard (*) values are invalid; you must specify a complete project ID or
259
- # organization ID.
260
- # @param [Google::Apis::IamV1::CreateRoleRequest] create_role_request_object
279
+ # Required. The parent resource to list pools for. Format: `organizations/`org-
280
+ # id``.
281
+ # @param [Boolean] show_deleted
282
+ # Whether to return soft-deleted pools.
261
283
  # @param [String] fields
262
284
  # Selector specifying which fields to include in a partial response.
263
285
  # @param [String] quota_user
@@ -267,54 +289,35 @@ module Google
267
289
  # Request-specific options
268
290
  #
269
291
  # @yield [result, err] Result & error if block supplied
270
- # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
292
+ # @yieldparam result [Google::Apis::IamV1::ListWorkforcePoolsResponse] parsed result object
271
293
  # @yieldparam err [StandardError] error object if request failed
272
294
  #
273
- # @return [Google::Apis::IamV1::Role]
295
+ # @return [Google::Apis::IamV1::ListWorkforcePoolsResponse]
274
296
  #
275
297
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
276
298
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
277
299
  # @raise [Google::Apis::AuthorizationError] Authorization is required
278
- def create_organization_role(parent, create_role_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
279
- command = make_simple_command(:post, 'v1/{+parent}/roles', options)
280
- command.request_representation = Google::Apis::IamV1::CreateRoleRequest::Representation
281
- command.request_object = create_role_request_object
282
- command.response_representation = Google::Apis::IamV1::Role::Representation
283
- command.response_class = Google::Apis::IamV1::Role
284
- command.params['parent'] = parent unless parent.nil?
300
+ def list_location_workforce_pools(location, page_size: nil, page_token: nil, parent: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
301
+ command = make_simple_command(:get, 'v1/{+location}/workforcePools', options)
302
+ command.response_representation = Google::Apis::IamV1::ListWorkforcePoolsResponse::Representation
303
+ command.response_class = Google::Apis::IamV1::ListWorkforcePoolsResponse
304
+ command.params['location'] = location unless location.nil?
305
+ command.query['pageSize'] = page_size unless page_size.nil?
306
+ command.query['pageToken'] = page_token unless page_token.nil?
307
+ command.query['parent'] = parent unless parent.nil?
308
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
285
309
  command.query['fields'] = fields unless fields.nil?
286
310
  command.query['quotaUser'] = quota_user unless quota_user.nil?
287
311
  execute_or_queue_command(command, &block)
288
312
  end
289
313
 
290
- # Deletes a custom Role. When you delete a custom role, the following changes
291
- # occur immediately: * You cannot bind a principal to the custom role in an IAM
292
- # Policy. * Existing bindings to the custom role are not changed, but they have
293
- # no effect. * By default, the response from ListRoles does not include the
294
- # custom role. You have 7 days to undelete the custom role. After 7 days, the
295
- # following changes occur: * The custom role is permanently deleted and cannot
296
- # be recovered. * If an IAM policy contains a binding to the custom role, the
297
- # binding is permanently removed.
314
+ # Updates an existing WorkforcePool.
298
315
  # @param [String] name
299
- # The `name` parameter's value depends on the target resource for the request,
300
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
301
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
302
- # organizations.roles). Each resource type's `name` value format is described
303
- # below: * [`projects.roles.delete()`](https://cloud.google.com/iam/reference/
304
- # rest/v1/projects.roles/delete): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``.
305
- # This method deletes only [custom roles](https://cloud.google.com/iam/docs/
306
- # understanding-custom-roles) that have been created at the project level.
307
- # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
308
- # roles/`CUSTOM_ROLE_ID`` * [`organizations.roles.delete()`](https://cloud.
309
- # google.com/iam/reference/rest/v1/organizations.roles/delete): `organizations/`
310
- # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method deletes only [custom
311
- # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
312
- # been created at the organization level. Example request URL: `https://iam.
313
- # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
314
- # Wildcard (*) values are invalid; you must specify a complete project ID or
315
- # organization ID.
316
- # @param [String] etag
317
- # Used to perform a consistent read-modify-write.
316
+ # Identifier. The resource name of the pool. Format: `locations/`location`/
317
+ # workforcePools/`workforce_pool_id``
318
+ # @param [Google::Apis::IamV1::WorkforcePool] workforce_pool_object
319
+ # @param [String] update_mask
320
+ # Required. The list of fields to update.
318
321
  # @param [String] fields
319
322
  # Selector specifying which fields to include in a partial response.
320
323
  # @param [String] quota_user
@@ -324,48 +327,33 @@ module Google
324
327
  # Request-specific options
325
328
  #
326
329
  # @yield [result, err] Result & error if block supplied
327
- # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
330
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
328
331
  # @yieldparam err [StandardError] error object if request failed
329
332
  #
330
- # @return [Google::Apis::IamV1::Role]
333
+ # @return [Google::Apis::IamV1::Operation]
331
334
  #
332
335
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
333
336
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
334
337
  # @raise [Google::Apis::AuthorizationError] Authorization is required
335
- def delete_organization_role(name, etag: nil, fields: nil, quota_user: nil, options: nil, &block)
336
- command = make_simple_command(:delete, 'v1/{+name}', options)
337
- command.response_representation = Google::Apis::IamV1::Role::Representation
338
- command.response_class = Google::Apis::IamV1::Role
338
+ def patch_location_workforce_pool(name, workforce_pool_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
339
+ command = make_simple_command(:patch, 'v1/{+name}', options)
340
+ command.request_representation = Google::Apis::IamV1::WorkforcePool::Representation
341
+ command.request_object = workforce_pool_object
342
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
343
+ command.response_class = Google::Apis::IamV1::Operation
339
344
  command.params['name'] = name unless name.nil?
340
- command.query['etag'] = etag unless etag.nil?
345
+ command.query['updateMask'] = update_mask unless update_mask.nil?
341
346
  command.query['fields'] = fields unless fields.nil?
342
347
  command.query['quotaUser'] = quota_user unless quota_user.nil?
343
348
  execute_or_queue_command(command, &block)
344
349
  end
345
350
 
346
- # Gets the definition of a Role.
347
- # @param [String] name
348
- # The `name` parameter's value depends on the target resource for the request,
349
- # namely [`roles`](https://cloud.google.com/iam/reference/rest/v1/roles), [`
350
- # projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles), or [
351
- # `organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.
352
- # roles). Each resource type's `name` value format is described below: * [`roles.
353
- # get()`](https://cloud.google.com/iam/reference/rest/v1/roles/get): `roles/`
354
- # ROLE_NAME``. This method returns results from all [predefined roles](https://
355
- # cloud.google.com/iam/docs/understanding-roles#predefined_roles) in Cloud IAM.
356
- # Example request URL: `https://iam.googleapis.com/v1/roles/`ROLE_NAME`` * [`
357
- # projects.roles.get()`](https://cloud.google.com/iam/reference/rest/v1/projects.
358
- # roles/get): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``. This method
359
- # returns only [custom roles](https://cloud.google.com/iam/docs/understanding-
360
- # custom-roles) that have been created at the project level. Example request URL:
361
- # `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID`` *
362
- # [`organizations.roles.get()`](https://cloud.google.com/iam/reference/rest/v1/
363
- # organizations.roles/get): `organizations/`ORGANIZATION_ID`/roles/`
364
- # CUSTOM_ROLE_ID``. This method returns only [custom roles](https://cloud.google.
365
- # com/iam/docs/understanding-custom-roles) that have been created at the
366
- # organization level. Example request URL: `https://iam.googleapis.com/v1/
367
- # organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note: Wildcard (*)
368
- # values are invalid; you must specify a complete project ID or organization ID.
351
+ # Sets IAM policies on a WorkforcePool.
352
+ # @param [String] resource
353
+ # REQUIRED: The resource for which the policy is being specified. See [Resource
354
+ # names](https://cloud.google.com/apis/design/resource_names) for the
355
+ # appropriate value for this field.
356
+ # @param [Google::Apis::IamV1::SetIamPolicyRequest] set_iam_policy_request_object
369
357
  # @param [String] fields
370
358
  # Selector specifying which fields to include in a partial response.
371
359
  # @param [String] quota_user
@@ -375,59 +363,34 @@ module Google
375
363
  # Request-specific options
376
364
  #
377
365
  # @yield [result, err] Result & error if block supplied
378
- # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
366
+ # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
379
367
  # @yieldparam err [StandardError] error object if request failed
380
368
  #
381
- # @return [Google::Apis::IamV1::Role]
369
+ # @return [Google::Apis::IamV1::Policy]
382
370
  #
383
371
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
384
372
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
385
373
  # @raise [Google::Apis::AuthorizationError] Authorization is required
386
- def get_organization_role(name, fields: nil, quota_user: nil, options: nil, &block)
387
- command = make_simple_command(:get, 'v1/{+name}', options)
388
- command.response_representation = Google::Apis::IamV1::Role::Representation
389
- command.response_class = Google::Apis::IamV1::Role
390
- command.params['name'] = name unless name.nil?
374
+ def set_workforce_pool_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
375
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
376
+ command.request_representation = Google::Apis::IamV1::SetIamPolicyRequest::Representation
377
+ command.request_object = set_iam_policy_request_object
378
+ command.response_representation = Google::Apis::IamV1::Policy::Representation
379
+ command.response_class = Google::Apis::IamV1::Policy
380
+ command.params['resource'] = resource unless resource.nil?
391
381
  command.query['fields'] = fields unless fields.nil?
392
382
  command.query['quotaUser'] = quota_user unless quota_user.nil?
393
383
  execute_or_queue_command(command, &block)
394
384
  end
395
385
 
396
- # Lists every predefined Role that IAM supports, or every custom role that is
397
- # defined for an organization or project.
398
- # @param [String] parent
399
- # The `parent` parameter's value depends on the target resource for the request,
400
- # namely [`roles`](https://cloud.google.com/iam/reference/rest/v1/roles), [`
401
- # projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles), or [
402
- # `organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.
403
- # roles). Each resource type's `parent` value format is described below: * [`
404
- # roles.list()`](https://cloud.google.com/iam/reference/rest/v1/roles/list): An
405
- # empty string. This method doesn't require a resource; it simply returns all [
406
- # predefined roles](https://cloud.google.com/iam/docs/understanding-roles#
407
- # predefined_roles) in Cloud IAM. Example request URL: `https://iam.googleapis.
408
- # com/v1/roles` * [`projects.roles.list()`](https://cloud.google.com/iam/
409
- # reference/rest/v1/projects.roles/list): `projects/`PROJECT_ID``. This method
410
- # lists all project-level [custom roles](https://cloud.google.com/iam/docs/
411
- # understanding-custom-roles). Example request URL: `https://iam.googleapis.com/
412
- # v1/projects/`PROJECT_ID`/roles` * [`organizations.roles.list()`](https://cloud.
413
- # google.com/iam/reference/rest/v1/organizations.roles/list): `organizations/`
414
- # ORGANIZATION_ID``. This method lists all organization-level [custom roles](
415
- # https://cloud.google.com/iam/docs/understanding-custom-roles). Example request
416
- # URL: `https://iam.googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles`
417
- # Note: Wildcard (*) values are invalid; you must specify a complete project ID
418
- # or organization ID.
419
- # @param [Fixnum] page_size
420
- # Optional limit on the number of roles to include in the response. The default
421
- # is 300, and the maximum is 1,000.
422
- # @param [String] page_token
423
- # Optional pagination token returned in an earlier ListRolesResponse.
424
- # @param [Boolean] show_deleted
425
- # Include Roles that have been deleted.
426
- # @param [String] view
427
- # Optional view for the returned Role objects. When `FULL` is specified, the `
428
- # includedPermissions` field is returned, which includes a list of all
429
- # permissions in the role. The default value is `BASIC`, which does not return
430
- # the `includedPermissions` field.
386
+ # Returns the caller's permissions on the WorkforcePool. If the pool doesn't
387
+ # exist, this call returns an empty set of permissions. It doesn't return a `
388
+ # NOT_FOUND` error.
389
+ # @param [String] resource
390
+ # REQUIRED: The resource for which the policy detail is being requested. See [
391
+ # Resource names](https://cloud.google.com/apis/design/resource_names) for the
392
+ # appropriate value for this field.
393
+ # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object
431
394
  # @param [String] fields
432
395
  # Selector specifying which fields to include in a partial response.
433
396
  # @param [String] quota_user
@@ -437,50 +400,31 @@ module Google
437
400
  # Request-specific options
438
401
  #
439
402
  # @yield [result, err] Result & error if block supplied
440
- # @yieldparam result [Google::Apis::IamV1::ListRolesResponse] parsed result object
403
+ # @yieldparam result [Google::Apis::IamV1::TestIamPermissionsResponse] parsed result object
441
404
  # @yieldparam err [StandardError] error object if request failed
442
405
  #
443
- # @return [Google::Apis::IamV1::ListRolesResponse]
406
+ # @return [Google::Apis::IamV1::TestIamPermissionsResponse]
444
407
  #
445
408
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
446
409
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
447
410
  # @raise [Google::Apis::AuthorizationError] Authorization is required
448
- def list_organization_roles(parent, page_size: nil, page_token: nil, show_deleted: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block)
449
- command = make_simple_command(:get, 'v1/{+parent}/roles', options)
450
- command.response_representation = Google::Apis::IamV1::ListRolesResponse::Representation
451
- command.response_class = Google::Apis::IamV1::ListRolesResponse
452
- command.params['parent'] = parent unless parent.nil?
453
- command.query['pageSize'] = page_size unless page_size.nil?
454
- command.query['pageToken'] = page_token unless page_token.nil?
455
- command.query['showDeleted'] = show_deleted unless show_deleted.nil?
456
- command.query['view'] = view unless view.nil?
411
+ def test_workforce_pool_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
412
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
413
+ command.request_representation = Google::Apis::IamV1::TestIamPermissionsRequest::Representation
414
+ command.request_object = test_iam_permissions_request_object
415
+ command.response_representation = Google::Apis::IamV1::TestIamPermissionsResponse::Representation
416
+ command.response_class = Google::Apis::IamV1::TestIamPermissionsResponse
417
+ command.params['resource'] = resource unless resource.nil?
457
418
  command.query['fields'] = fields unless fields.nil?
458
419
  command.query['quotaUser'] = quota_user unless quota_user.nil?
459
420
  execute_or_queue_command(command, &block)
460
421
  end
461
422
 
462
- # Updates the definition of a custom Role.
423
+ # Undeletes a WorkforcePool, as long as it was deleted fewer than 30 days ago.
463
424
  # @param [String] name
464
- # The `name` parameter's value depends on the target resource for the request,
465
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
466
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
467
- # organizations.roles). Each resource type's `name` value format is described
468
- # below: * [`projects.roles.patch()`](https://cloud.google.com/iam/reference/
469
- # rest/v1/projects.roles/patch): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``.
470
- # This method updates only [custom roles](https://cloud.google.com/iam/docs/
471
- # understanding-custom-roles) that have been created at the project level.
472
- # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
473
- # roles/`CUSTOM_ROLE_ID`` * [`organizations.roles.patch()`](https://cloud.google.
474
- # com/iam/reference/rest/v1/organizations.roles/patch): `organizations/`
475
- # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method updates only [custom
476
- # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
477
- # been created at the organization level. Example request URL: `https://iam.
478
- # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
479
- # Wildcard (*) values are invalid; you must specify a complete project ID or
480
- # organization ID.
481
- # @param [Google::Apis::IamV1::Role] role_object
482
- # @param [String] update_mask
483
- # A mask describing which fields in the Role have changed.
425
+ # Required. The name of the pool to undelete. Format: `locations/`location`/
426
+ # workforcePools/`workforce_pool_id``
427
+ # @param [Google::Apis::IamV1::UndeleteWorkforcePoolRequest] undelete_workforce_pool_request_object
484
428
  # @param [String] fields
485
429
  # Selector specifying which fields to include in a partial response.
486
430
  # @param [String] quota_user
@@ -490,47 +434,30 @@ module Google
490
434
  # Request-specific options
491
435
  #
492
436
  # @yield [result, err] Result & error if block supplied
493
- # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
437
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
494
438
  # @yieldparam err [StandardError] error object if request failed
495
439
  #
496
- # @return [Google::Apis::IamV1::Role]
440
+ # @return [Google::Apis::IamV1::Operation]
497
441
  #
498
442
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
499
443
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
500
444
  # @raise [Google::Apis::AuthorizationError] Authorization is required
501
- def patch_organization_role(name, role_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
502
- command = make_simple_command(:patch, 'v1/{+name}', options)
503
- command.request_representation = Google::Apis::IamV1::Role::Representation
504
- command.request_object = role_object
505
- command.response_representation = Google::Apis::IamV1::Role::Representation
506
- command.response_class = Google::Apis::IamV1::Role
445
+ def undelete_workforce_pool(name, undelete_workforce_pool_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
446
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
447
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkforcePoolRequest::Representation
448
+ command.request_object = undelete_workforce_pool_request_object
449
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
450
+ command.response_class = Google::Apis::IamV1::Operation
507
451
  command.params['name'] = name unless name.nil?
508
- command.query['updateMask'] = update_mask unless update_mask.nil?
509
452
  command.query['fields'] = fields unless fields.nil?
510
453
  command.query['quotaUser'] = quota_user unless quota_user.nil?
511
454
  execute_or_queue_command(command, &block)
512
455
  end
513
456
 
514
- # Undeletes a custom Role.
457
+ # Gets the latest state of a long-running operation. Clients can use this method
458
+ # to poll the operation result at intervals as recommended by the API service.
515
459
  # @param [String] name
516
- # The `name` parameter's value depends on the target resource for the request,
517
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
518
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
519
- # organizations.roles). Each resource type's `name` value format is described
520
- # below: * [`projects.roles.undelete()`](https://cloud.google.com/iam/reference/
521
- # rest/v1/projects.roles/undelete): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID`
522
- # `. This method undeletes only [custom roles](https://cloud.google.com/iam/docs/
523
- # understanding-custom-roles) that have been created at the project level.
524
- # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
525
- # roles/`CUSTOM_ROLE_ID`` * [`organizations.roles.undelete()`](https://cloud.
526
- # google.com/iam/reference/rest/v1/organizations.roles/undelete): `organizations/
527
- # `ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method undeletes only [custom
528
- # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
529
- # been created at the organization level. Example request URL: `https://iam.
530
- # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
531
- # Wildcard (*) values are invalid; you must specify a complete project ID or
532
- # organization ID.
533
- # @param [Google::Apis::IamV1::UndeleteRoleRequest] undelete_role_request_object
460
+ # The name of the operation resource.
534
461
  # @param [String] fields
535
462
  # Selector specifying which fields to include in a partial response.
536
463
  # @param [String] quota_user
@@ -540,30 +467,35 @@ module Google
540
467
  # Request-specific options
541
468
  #
542
469
  # @yield [result, err] Result & error if block supplied
543
- # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
470
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
544
471
  # @yieldparam err [StandardError] error object if request failed
545
472
  #
546
- # @return [Google::Apis::IamV1::Role]
473
+ # @return [Google::Apis::IamV1::Operation]
547
474
  #
548
475
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
549
476
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
550
477
  # @raise [Google::Apis::AuthorizationError] Authorization is required
551
- def undelete_organization_role(name, undelete_role_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
552
- command = make_simple_command(:post, 'v1/{+name}:undelete', options)
553
- command.request_representation = Google::Apis::IamV1::UndeleteRoleRequest::Representation
554
- command.request_object = undelete_role_request_object
555
- command.response_representation = Google::Apis::IamV1::Role::Representation
556
- command.response_class = Google::Apis::IamV1::Role
478
+ def get_location_workforce_pool_operation(name, fields: nil, quota_user: nil, options: nil, &block)
479
+ command = make_simple_command(:get, 'v1/{+name}', options)
480
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
481
+ command.response_class = Google::Apis::IamV1::Operation
557
482
  command.params['name'] = name unless name.nil?
558
483
  command.query['fields'] = fields unless fields.nil?
559
484
  command.query['quotaUser'] = quota_user unless quota_user.nil?
560
485
  execute_or_queue_command(command, &block)
561
486
  end
562
487
 
563
- # Lists every permission that you can test on a resource. A permission is
564
- # testable if you can check whether a principal has that permission on the
565
- # resource.
566
- # @param [Google::Apis::IamV1::QueryTestablePermissionsRequest] query_testable_permissions_request_object
488
+ # Creates a new WorkforcePoolProvider in a WorkforcePool. You cannot reuse the
489
+ # name of a deleted provider until 30 days after deletion.
490
+ # @param [String] parent
491
+ # Required. The pool to create this provider in. Format: `locations/`location`/
492
+ # workforcePools/`workforce_pool_id``
493
+ # @param [Google::Apis::IamV1::WorkforcePoolProvider] workforce_pool_provider_object
494
+ # @param [String] workforce_pool_provider_id
495
+ # Required. The ID for the provider, which becomes the final component of the
496
+ # resource name. This value must be 4-32 characters, and may contain the
497
+ # characters [a-z0-9-]. The prefix `gcp-` is reserved for use by Google, and may
498
+ # not be specified.
567
499
  # @param [String] fields
568
500
  # Selector specifying which fields to include in a partial response.
569
501
  # @param [String] quota_user
@@ -573,36 +505,1900 @@ module Google
573
505
  # Request-specific options
574
506
  #
575
507
  # @yield [result, err] Result & error if block supplied
576
- # @yieldparam result [Google::Apis::IamV1::QueryTestablePermissionsResponse] parsed result object
508
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
577
509
  # @yieldparam err [StandardError] error object if request failed
578
510
  #
579
- # @return [Google::Apis::IamV1::QueryTestablePermissionsResponse]
511
+ # @return [Google::Apis::IamV1::Operation]
580
512
  #
581
513
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
582
514
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
583
515
  # @raise [Google::Apis::AuthorizationError] Authorization is required
584
- def query_testable_permissions(query_testable_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
585
- command = make_simple_command(:post, 'v1/permissions:queryTestablePermissions', options)
586
- command.request_representation = Google::Apis::IamV1::QueryTestablePermissionsRequest::Representation
587
- command.request_object = query_testable_permissions_request_object
588
- command.response_representation = Google::Apis::IamV1::QueryTestablePermissionsResponse::Representation
589
- command.response_class = Google::Apis::IamV1::QueryTestablePermissionsResponse
590
- command.query['fields'] = fields unless fields.nil?
591
- command.query['quotaUser'] = quota_user unless quota_user.nil?
592
- execute_or_queue_command(command, &block)
516
+ def create_location_workforce_pool_provider(parent, workforce_pool_provider_object = nil, workforce_pool_provider_id: nil, fields: nil, quota_user: nil, options: nil, &block)
517
+ command = make_simple_command(:post, 'v1/{+parent}/providers', options)
518
+ command.request_representation = Google::Apis::IamV1::WorkforcePoolProvider::Representation
519
+ command.request_object = workforce_pool_provider_object
520
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
521
+ command.response_class = Google::Apis::IamV1::Operation
522
+ command.params['parent'] = parent unless parent.nil?
523
+ command.query['workforcePoolProviderId'] = workforce_pool_provider_id unless workforce_pool_provider_id.nil?
524
+ command.query['fields'] = fields unless fields.nil?
525
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
526
+ execute_or_queue_command(command, &block)
527
+ end
528
+
529
+ # Deletes a WorkforcePoolProvider. Deleting a provider does not revoke
530
+ # credentials that have already been issued; they continue to grant access. You
531
+ # can undelete a provider for 30 days. After 30 days, deletion is permanent. You
532
+ # cannot update deleted providers. However, you can view and list them.
533
+ # @param [String] name
534
+ # Required. The name of the provider to delete. Format: `locations/`location`/
535
+ # workforcePools/`workforce_pool_id`/providers/`provider_id``
536
+ # @param [String] fields
537
+ # Selector specifying which fields to include in a partial response.
538
+ # @param [String] quota_user
539
+ # Available to use for quota purposes for server-side applications. Can be any
540
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
541
+ # @param [Google::Apis::RequestOptions] options
542
+ # Request-specific options
543
+ #
544
+ # @yield [result, err] Result & error if block supplied
545
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
546
+ # @yieldparam err [StandardError] error object if request failed
547
+ #
548
+ # @return [Google::Apis::IamV1::Operation]
549
+ #
550
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
551
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
552
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
553
+ def delete_location_workforce_pool_provider(name, fields: nil, quota_user: nil, options: nil, &block)
554
+ command = make_simple_command(:delete, 'v1/{+name}', options)
555
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
556
+ command.response_class = Google::Apis::IamV1::Operation
557
+ command.params['name'] = name unless name.nil?
558
+ command.query['fields'] = fields unless fields.nil?
559
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
560
+ execute_or_queue_command(command, &block)
561
+ end
562
+
563
+ # Gets an individual WorkforcePoolProvider.
564
+ # @param [String] name
565
+ # Required. The name of the provider to retrieve. Format: `locations/`location`/
566
+ # workforcePools/`workforce_pool_id`/providers/`provider_id``
567
+ # @param [String] fields
568
+ # Selector specifying which fields to include in a partial response.
569
+ # @param [String] quota_user
570
+ # Available to use for quota purposes for server-side applications. Can be any
571
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
572
+ # @param [Google::Apis::RequestOptions] options
573
+ # Request-specific options
574
+ #
575
+ # @yield [result, err] Result & error if block supplied
576
+ # @yieldparam result [Google::Apis::IamV1::WorkforcePoolProvider] parsed result object
577
+ # @yieldparam err [StandardError] error object if request failed
578
+ #
579
+ # @return [Google::Apis::IamV1::WorkforcePoolProvider]
580
+ #
581
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
582
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
583
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
584
+ def get_location_workforce_pool_provider(name, fields: nil, quota_user: nil, options: nil, &block)
585
+ command = make_simple_command(:get, 'v1/{+name}', options)
586
+ command.response_representation = Google::Apis::IamV1::WorkforcePoolProvider::Representation
587
+ command.response_class = Google::Apis::IamV1::WorkforcePoolProvider
588
+ command.params['name'] = name unless name.nil?
589
+ command.query['fields'] = fields unless fields.nil?
590
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
591
+ execute_or_queue_command(command, &block)
592
+ end
593
+
594
+ # Lists all non-deleted WorkforcePoolProviders in a WorkforcePool. If `
595
+ # show_deleted` is set to `true`, then deleted providers are also listed.
596
+ # @param [String] parent
597
+ # Required. The pool to list providers for. Format: `locations/`location`/
598
+ # workforcePools/`workforce_pool_id``
599
+ # @param [Fixnum] page_size
600
+ # The maximum number of providers to return. If unspecified, at most 50
601
+ # providers are returned. The maximum value is 100; values above 100 are
602
+ # truncated to 100.
603
+ # @param [String] page_token
604
+ # A page token, received from a previous `ListWorkforcePoolProviders` call.
605
+ # Provide this to retrieve the subsequent page.
606
+ # @param [Boolean] show_deleted
607
+ # Whether to return soft-deleted providers.
608
+ # @param [String] fields
609
+ # Selector specifying which fields to include in a partial response.
610
+ # @param [String] quota_user
611
+ # Available to use for quota purposes for server-side applications. Can be any
612
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
613
+ # @param [Google::Apis::RequestOptions] options
614
+ # Request-specific options
615
+ #
616
+ # @yield [result, err] Result & error if block supplied
617
+ # @yieldparam result [Google::Apis::IamV1::ListWorkforcePoolProvidersResponse] parsed result object
618
+ # @yieldparam err [StandardError] error object if request failed
619
+ #
620
+ # @return [Google::Apis::IamV1::ListWorkforcePoolProvidersResponse]
621
+ #
622
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
623
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
624
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
625
+ def list_location_workforce_pool_providers(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
626
+ command = make_simple_command(:get, 'v1/{+parent}/providers', options)
627
+ command.response_representation = Google::Apis::IamV1::ListWorkforcePoolProvidersResponse::Representation
628
+ command.response_class = Google::Apis::IamV1::ListWorkforcePoolProvidersResponse
629
+ command.params['parent'] = parent unless parent.nil?
630
+ command.query['pageSize'] = page_size unless page_size.nil?
631
+ command.query['pageToken'] = page_token unless page_token.nil?
632
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
633
+ command.query['fields'] = fields unless fields.nil?
634
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
635
+ execute_or_queue_command(command, &block)
636
+ end
637
+
638
+ # Updates an existing WorkforcePoolProvider.
639
+ # @param [String] name
640
+ # Identifier. The resource name of the provider. Format: `locations/`location`/
641
+ # workforcePools/`workforce_pool_id`/providers/`provider_id``
642
+ # @param [Google::Apis::IamV1::WorkforcePoolProvider] workforce_pool_provider_object
643
+ # @param [String] update_mask
644
+ # Required. The list of fields to update.
645
+ # @param [String] fields
646
+ # Selector specifying which fields to include in a partial response.
647
+ # @param [String] quota_user
648
+ # Available to use for quota purposes for server-side applications. Can be any
649
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
650
+ # @param [Google::Apis::RequestOptions] options
651
+ # Request-specific options
652
+ #
653
+ # @yield [result, err] Result & error if block supplied
654
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
655
+ # @yieldparam err [StandardError] error object if request failed
656
+ #
657
+ # @return [Google::Apis::IamV1::Operation]
658
+ #
659
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
660
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
661
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
662
+ def patch_location_workforce_pool_provider(name, workforce_pool_provider_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
663
+ command = make_simple_command(:patch, 'v1/{+name}', options)
664
+ command.request_representation = Google::Apis::IamV1::WorkforcePoolProvider::Representation
665
+ command.request_object = workforce_pool_provider_object
666
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
667
+ command.response_class = Google::Apis::IamV1::Operation
668
+ command.params['name'] = name unless name.nil?
669
+ command.query['updateMask'] = update_mask unless update_mask.nil?
670
+ command.query['fields'] = fields unless fields.nil?
671
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
672
+ execute_or_queue_command(command, &block)
673
+ end
674
+
675
+ # Undeletes a WorkforcePoolProvider, as long as it was deleted fewer than 30
676
+ # days ago.
677
+ # @param [String] name
678
+ # Required. The name of the provider to undelete. Format: `locations/`location`/
679
+ # workforcePools/`workforce_pool_id`/providers/`provider_id``
680
+ # @param [Google::Apis::IamV1::UndeleteWorkforcePoolProviderRequest] undelete_workforce_pool_provider_request_object
681
+ # @param [String] fields
682
+ # Selector specifying which fields to include in a partial response.
683
+ # @param [String] quota_user
684
+ # Available to use for quota purposes for server-side applications. Can be any
685
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
686
+ # @param [Google::Apis::RequestOptions] options
687
+ # Request-specific options
688
+ #
689
+ # @yield [result, err] Result & error if block supplied
690
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
691
+ # @yieldparam err [StandardError] error object if request failed
692
+ #
693
+ # @return [Google::Apis::IamV1::Operation]
694
+ #
695
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
696
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
697
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
698
+ def undelete_workforce_pool_provider(name, undelete_workforce_pool_provider_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
699
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
700
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkforcePoolProviderRequest::Representation
701
+ command.request_object = undelete_workforce_pool_provider_request_object
702
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
703
+ command.response_class = Google::Apis::IamV1::Operation
704
+ command.params['name'] = name unless name.nil?
705
+ command.query['fields'] = fields unless fields.nil?
706
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
707
+ execute_or_queue_command(command, &block)
708
+ end
709
+
710
+ # Creates a new WorkforcePoolProviderKey in a WorkforcePoolProvider.
711
+ # @param [String] parent
712
+ # Required. The provider to create this key in.
713
+ # @param [Google::Apis::IamV1::WorkforcePoolProviderKey] workforce_pool_provider_key_object
714
+ # @param [String] workforce_pool_provider_key_id
715
+ # Required. The ID to use for the key, which becomes the final component of the
716
+ # resource name. This value must be 4-32 characters, and may contain the
717
+ # characters [a-z0-9-].
718
+ # @param [String] fields
719
+ # Selector specifying which fields to include in a partial response.
720
+ # @param [String] quota_user
721
+ # Available to use for quota purposes for server-side applications. Can be any
722
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
723
+ # @param [Google::Apis::RequestOptions] options
724
+ # Request-specific options
725
+ #
726
+ # @yield [result, err] Result & error if block supplied
727
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
728
+ # @yieldparam err [StandardError] error object if request failed
729
+ #
730
+ # @return [Google::Apis::IamV1::Operation]
731
+ #
732
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
733
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
734
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
735
+ def create_location_workforce_pool_provider_key(parent, workforce_pool_provider_key_object = nil, workforce_pool_provider_key_id: nil, fields: nil, quota_user: nil, options: nil, &block)
736
+ command = make_simple_command(:post, 'v1/{+parent}/keys', options)
737
+ command.request_representation = Google::Apis::IamV1::WorkforcePoolProviderKey::Representation
738
+ command.request_object = workforce_pool_provider_key_object
739
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
740
+ command.response_class = Google::Apis::IamV1::Operation
741
+ command.params['parent'] = parent unless parent.nil?
742
+ command.query['workforcePoolProviderKeyId'] = workforce_pool_provider_key_id unless workforce_pool_provider_key_id.nil?
743
+ command.query['fields'] = fields unless fields.nil?
744
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
745
+ execute_or_queue_command(command, &block)
746
+ end
747
+
748
+ # Deletes a WorkforcePoolProviderKey. You can undelete a key for 30 days. After
749
+ # 30 days, deletion is permanent.
750
+ # @param [String] name
751
+ # Required. The name of the key to delete.
752
+ # @param [String] fields
753
+ # Selector specifying which fields to include in a partial response.
754
+ # @param [String] quota_user
755
+ # Available to use for quota purposes for server-side applications. Can be any
756
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
757
+ # @param [Google::Apis::RequestOptions] options
758
+ # Request-specific options
759
+ #
760
+ # @yield [result, err] Result & error if block supplied
761
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
762
+ # @yieldparam err [StandardError] error object if request failed
763
+ #
764
+ # @return [Google::Apis::IamV1::Operation]
765
+ #
766
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
767
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
768
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
769
+ def delete_location_workforce_pool_provider_key(name, fields: nil, quota_user: nil, options: nil, &block)
770
+ command = make_simple_command(:delete, 'v1/{+name}', options)
771
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
772
+ command.response_class = Google::Apis::IamV1::Operation
773
+ command.params['name'] = name unless name.nil?
774
+ command.query['fields'] = fields unless fields.nil?
775
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
776
+ execute_or_queue_command(command, &block)
777
+ end
778
+
779
+ # Gets a WorkforcePoolProviderKey.
780
+ # @param [String] name
781
+ # Required. The name of the key to retrieve.
782
+ # @param [String] fields
783
+ # Selector specifying which fields to include in a partial response.
784
+ # @param [String] quota_user
785
+ # Available to use for quota purposes for server-side applications. Can be any
786
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
787
+ # @param [Google::Apis::RequestOptions] options
788
+ # Request-specific options
789
+ #
790
+ # @yield [result, err] Result & error if block supplied
791
+ # @yieldparam result [Google::Apis::IamV1::WorkforcePoolProviderKey] parsed result object
792
+ # @yieldparam err [StandardError] error object if request failed
793
+ #
794
+ # @return [Google::Apis::IamV1::WorkforcePoolProviderKey]
795
+ #
796
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
797
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
798
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
799
+ def get_location_workforce_pool_provider_key(name, fields: nil, quota_user: nil, options: nil, &block)
800
+ command = make_simple_command(:get, 'v1/{+name}', options)
801
+ command.response_representation = Google::Apis::IamV1::WorkforcePoolProviderKey::Representation
802
+ command.response_class = Google::Apis::IamV1::WorkforcePoolProviderKey
803
+ command.params['name'] = name unless name.nil?
804
+ command.query['fields'] = fields unless fields.nil?
805
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
806
+ execute_or_queue_command(command, &block)
807
+ end
808
+
809
+ # Lists all non-deleted WorkforcePoolProviderKeys in a WorkforcePoolProvider. If
810
+ # `show_deleted` is set to `true`, then deleted keys are also listed.
811
+ # @param [String] parent
812
+ # Required. The provider resource to list encryption keys for. Format: `
813
+ # locations/`location`/workforcePools/`workforce_pool_id`/providers/`provider_id`
814
+ # `
815
+ # @param [Fixnum] page_size
816
+ # The maximum number of keys to return. If unspecified, all keys are returned.
817
+ # The maximum value is 10; values above 10 are truncated to 10.
818
+ # @param [String] page_token
819
+ # A page token, received from a previous `ListWorkforcePoolProviderKeys` call.
820
+ # Provide this to retrieve the subsequent page.
821
+ # @param [Boolean] show_deleted
822
+ # Whether to return soft-deleted keys.
823
+ # @param [String] fields
824
+ # Selector specifying which fields to include in a partial response.
825
+ # @param [String] quota_user
826
+ # Available to use for quota purposes for server-side applications. Can be any
827
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
828
+ # @param [Google::Apis::RequestOptions] options
829
+ # Request-specific options
830
+ #
831
+ # @yield [result, err] Result & error if block supplied
832
+ # @yieldparam result [Google::Apis::IamV1::ListWorkforcePoolProviderKeysResponse] parsed result object
833
+ # @yieldparam err [StandardError] error object if request failed
834
+ #
835
+ # @return [Google::Apis::IamV1::ListWorkforcePoolProviderKeysResponse]
836
+ #
837
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
838
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
839
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
840
+ def list_location_workforce_pool_provider_keys(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
841
+ command = make_simple_command(:get, 'v1/{+parent}/keys', options)
842
+ command.response_representation = Google::Apis::IamV1::ListWorkforcePoolProviderKeysResponse::Representation
843
+ command.response_class = Google::Apis::IamV1::ListWorkforcePoolProviderKeysResponse
844
+ command.params['parent'] = parent unless parent.nil?
845
+ command.query['pageSize'] = page_size unless page_size.nil?
846
+ command.query['pageToken'] = page_token unless page_token.nil?
847
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
848
+ command.query['fields'] = fields unless fields.nil?
849
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
850
+ execute_or_queue_command(command, &block)
851
+ end
852
+
853
+ # Undeletes a WorkforcePoolProviderKey, as long as it was deleted fewer than 30
854
+ # days ago.
855
+ # @param [String] name
856
+ # Required. The name of the key to undelete.
857
+ # @param [Google::Apis::IamV1::UndeleteWorkforcePoolProviderKeyRequest] undelete_workforce_pool_provider_key_request_object
858
+ # @param [String] fields
859
+ # Selector specifying which fields to include in a partial response.
860
+ # @param [String] quota_user
861
+ # Available to use for quota purposes for server-side applications. Can be any
862
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
863
+ # @param [Google::Apis::RequestOptions] options
864
+ # Request-specific options
865
+ #
866
+ # @yield [result, err] Result & error if block supplied
867
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
868
+ # @yieldparam err [StandardError] error object if request failed
869
+ #
870
+ # @return [Google::Apis::IamV1::Operation]
871
+ #
872
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
873
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
874
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
875
+ def undelete_workforce_pool_provider_key(name, undelete_workforce_pool_provider_key_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
876
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
877
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkforcePoolProviderKeyRequest::Representation
878
+ command.request_object = undelete_workforce_pool_provider_key_request_object
879
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
880
+ command.response_class = Google::Apis::IamV1::Operation
881
+ command.params['name'] = name unless name.nil?
882
+ command.query['fields'] = fields unless fields.nil?
883
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
884
+ execute_or_queue_command(command, &block)
885
+ end
886
+
887
+ # Gets the latest state of a long-running operation. Clients can use this method
888
+ # to poll the operation result at intervals as recommended by the API service.
889
+ # @param [String] name
890
+ # The name of the operation resource.
891
+ # @param [String] fields
892
+ # Selector specifying which fields to include in a partial response.
893
+ # @param [String] quota_user
894
+ # Available to use for quota purposes for server-side applications. Can be any
895
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
896
+ # @param [Google::Apis::RequestOptions] options
897
+ # Request-specific options
898
+ #
899
+ # @yield [result, err] Result & error if block supplied
900
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
901
+ # @yieldparam err [StandardError] error object if request failed
902
+ #
903
+ # @return [Google::Apis::IamV1::Operation]
904
+ #
905
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
906
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
907
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
908
+ def get_location_workforce_pool_provider_key_operation(name, fields: nil, quota_user: nil, options: nil, &block)
909
+ command = make_simple_command(:get, 'v1/{+name}', options)
910
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
911
+ command.response_class = Google::Apis::IamV1::Operation
912
+ command.params['name'] = name unless name.nil?
913
+ command.query['fields'] = fields unless fields.nil?
914
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
915
+ execute_or_queue_command(command, &block)
916
+ end
917
+
918
+ # Gets the latest state of a long-running operation. Clients can use this method
919
+ # to poll the operation result at intervals as recommended by the API service.
920
+ # @param [String] name
921
+ # The name of the operation resource.
922
+ # @param [String] fields
923
+ # Selector specifying which fields to include in a partial response.
924
+ # @param [String] quota_user
925
+ # Available to use for quota purposes for server-side applications. Can be any
926
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
927
+ # @param [Google::Apis::RequestOptions] options
928
+ # Request-specific options
929
+ #
930
+ # @yield [result, err] Result & error if block supplied
931
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
932
+ # @yieldparam err [StandardError] error object if request failed
933
+ #
934
+ # @return [Google::Apis::IamV1::Operation]
935
+ #
936
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
937
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
938
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
939
+ def get_location_workforce_pool_provider_operation(name, fields: nil, quota_user: nil, options: nil, &block)
940
+ command = make_simple_command(:get, 'v1/{+name}', options)
941
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
942
+ command.response_class = Google::Apis::IamV1::Operation
943
+ command.params['name'] = name unless name.nil?
944
+ command.query['fields'] = fields unless fields.nil?
945
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
946
+ execute_or_queue_command(command, &block)
947
+ end
948
+
949
+ # Deletes a WorkforcePoolSubject. Subject must not already be in a deleted state.
950
+ # A WorkforcePoolSubject is automatically created the first time an external
951
+ # credential is exchanged for a Google Cloud credential using a mapped `google.
952
+ # subject` attribute. There is no endpoint to manually create a
953
+ # WorkforcePoolSubject. For 30 days after a WorkforcePoolSubject is deleted,
954
+ # using the same `google.subject` attribute in token exchanges with Google Cloud
955
+ # STS fails. Call UndeleteWorkforcePoolSubject to undelete a
956
+ # WorkforcePoolSubject that has been deleted, within within 30 days of deleting
957
+ # it. After 30 days, the WorkforcePoolSubject is permanently deleted. At this
958
+ # point, a token exchange with Google Cloud STS that uses the same mapped `
959
+ # google.subject` attribute automatically creates a new WorkforcePoolSubject
960
+ # that is unrelated to the previously deleted WorkforcePoolSubject but has the
961
+ # same `google.subject` value.
962
+ # @param [String] name
963
+ # Required. The resource name of the WorkforcePoolSubject. Special characters,
964
+ # like `/` and `:`, must be escaped, because all URLs need to conform to the "
965
+ # When to Escape and Unescape" section of [RFC3986](https://www.ietf.org/rfc/
966
+ # rfc2396.txt). Format: `locations/`location`/workforcePools/`workforce_pool_id`/
967
+ # subjects/`subject_id``
968
+ # @param [String] fields
969
+ # Selector specifying which fields to include in a partial response.
970
+ # @param [String] quota_user
971
+ # Available to use for quota purposes for server-side applications. Can be any
972
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
973
+ # @param [Google::Apis::RequestOptions] options
974
+ # Request-specific options
975
+ #
976
+ # @yield [result, err] Result & error if block supplied
977
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
978
+ # @yieldparam err [StandardError] error object if request failed
979
+ #
980
+ # @return [Google::Apis::IamV1::Operation]
981
+ #
982
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
983
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
984
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
985
+ def delete_location_workforce_pool_subject(name, fields: nil, quota_user: nil, options: nil, &block)
986
+ command = make_simple_command(:delete, 'v1/{+name}', options)
987
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
988
+ command.response_class = Google::Apis::IamV1::Operation
989
+ command.params['name'] = name unless name.nil?
990
+ command.query['fields'] = fields unless fields.nil?
991
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
992
+ execute_or_queue_command(command, &block)
993
+ end
994
+
995
+ # Undeletes a WorkforcePoolSubject, as long as it was deleted fewer than 30 days
996
+ # ago.
997
+ # @param [String] name
998
+ # Required. The resource name of the WorkforcePoolSubject. Special characters,
999
+ # like `/` and `:`, must be escaped, because all URLs need to conform to the "
1000
+ # When to Escape and Unescape" section of [RFC3986](https://www.ietf.org/rfc/
1001
+ # rfc2396.txt). Format: `locations/`location`/workforcePools/`workforce_pool_id`/
1002
+ # subjects/`subject_id``
1003
+ # @param [Google::Apis::IamV1::UndeleteWorkforcePoolSubjectRequest] undelete_workforce_pool_subject_request_object
1004
+ # @param [String] fields
1005
+ # Selector specifying which fields to include in a partial response.
1006
+ # @param [String] quota_user
1007
+ # Available to use for quota purposes for server-side applications. Can be any
1008
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1009
+ # @param [Google::Apis::RequestOptions] options
1010
+ # Request-specific options
1011
+ #
1012
+ # @yield [result, err] Result & error if block supplied
1013
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
1014
+ # @yieldparam err [StandardError] error object if request failed
1015
+ #
1016
+ # @return [Google::Apis::IamV1::Operation]
1017
+ #
1018
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1019
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1020
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1021
+ def undelete_workforce_pool_subject(name, undelete_workforce_pool_subject_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1022
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
1023
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkforcePoolSubjectRequest::Representation
1024
+ command.request_object = undelete_workforce_pool_subject_request_object
1025
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
1026
+ command.response_class = Google::Apis::IamV1::Operation
1027
+ command.params['name'] = name unless name.nil?
1028
+ command.query['fields'] = fields unless fields.nil?
1029
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1030
+ execute_or_queue_command(command, &block)
1031
+ end
1032
+
1033
+ # Gets the latest state of a long-running operation. Clients can use this method
1034
+ # to poll the operation result at intervals as recommended by the API service.
1035
+ # @param [String] name
1036
+ # The name of the operation resource.
1037
+ # @param [String] fields
1038
+ # Selector specifying which fields to include in a partial response.
1039
+ # @param [String] quota_user
1040
+ # Available to use for quota purposes for server-side applications. Can be any
1041
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1042
+ # @param [Google::Apis::RequestOptions] options
1043
+ # Request-specific options
1044
+ #
1045
+ # @yield [result, err] Result & error if block supplied
1046
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
1047
+ # @yieldparam err [StandardError] error object if request failed
1048
+ #
1049
+ # @return [Google::Apis::IamV1::Operation]
1050
+ #
1051
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1052
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1053
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1054
+ def get_location_workforce_pool_subject_operation(name, fields: nil, quota_user: nil, options: nil, &block)
1055
+ command = make_simple_command(:get, 'v1/{+name}', options)
1056
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
1057
+ command.response_class = Google::Apis::IamV1::Operation
1058
+ command.params['name'] = name unless name.nil?
1059
+ command.query['fields'] = fields unless fields.nil?
1060
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1061
+ execute_or_queue_command(command, &block)
1062
+ end
1063
+
1064
+ # Creates a new custom Role.
1065
+ # @param [String] parent
1066
+ # The `parent` parameter's value depends on the target resource for the request,
1067
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
1068
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1069
+ # organizations.roles). Each resource type's `parent` value format is described
1070
+ # below: * [projects.roles.create](https://cloud.google.com/iam/docs/reference/
1071
+ # rest/v1/projects.roles/create): `projects/`PROJECT_ID``. This method creates
1072
+ # project-level [custom roles](https://cloud.google.com/iam/docs/understanding-
1073
+ # custom-roles). Example request URL: `https://iam.googleapis.com/v1/projects/`
1074
+ # PROJECT_ID`/roles` * [organizations.roles.create](https://cloud.google.com/iam/
1075
+ # docs/reference/rest/v1/organizations.roles/create): `organizations/`
1076
+ # ORGANIZATION_ID``. This method creates organization-level [custom roles](https:
1077
+ # //cloud.google.com/iam/docs/understanding-custom-roles). Example request URL: `
1078
+ # https://iam.googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles` Note:
1079
+ # Wildcard (*) values are invalid; you must specify a complete project ID or
1080
+ # organization ID.
1081
+ # @param [Google::Apis::IamV1::CreateRoleRequest] create_role_request_object
1082
+ # @param [String] fields
1083
+ # Selector specifying which fields to include in a partial response.
1084
+ # @param [String] quota_user
1085
+ # Available to use for quota purposes for server-side applications. Can be any
1086
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1087
+ # @param [Google::Apis::RequestOptions] options
1088
+ # Request-specific options
1089
+ #
1090
+ # @yield [result, err] Result & error if block supplied
1091
+ # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
1092
+ # @yieldparam err [StandardError] error object if request failed
1093
+ #
1094
+ # @return [Google::Apis::IamV1::Role]
1095
+ #
1096
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1097
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1098
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1099
+ def create_organization_role(parent, create_role_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1100
+ command = make_simple_command(:post, 'v1/{+parent}/roles', options)
1101
+ command.request_representation = Google::Apis::IamV1::CreateRoleRequest::Representation
1102
+ command.request_object = create_role_request_object
1103
+ command.response_representation = Google::Apis::IamV1::Role::Representation
1104
+ command.response_class = Google::Apis::IamV1::Role
1105
+ command.params['parent'] = parent unless parent.nil?
1106
+ command.query['fields'] = fields unless fields.nil?
1107
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1108
+ execute_or_queue_command(command, &block)
1109
+ end
1110
+
1111
+ # Deletes a custom Role. When you delete a custom role, the following changes
1112
+ # occur immediately: * You cannot bind a principal to the custom role in an IAM
1113
+ # Policy. * Existing bindings to the custom role are not changed, but they have
1114
+ # no effect. * By default, the response from ListRoles does not include the
1115
+ # custom role. A deleted custom role still counts toward the [custom role limit](
1116
+ # https://cloud.google.com/iam/help/limits) until it is permanently deleted. You
1117
+ # have 7 days to undelete the custom role. After 7 days, the following changes
1118
+ # occur: * The custom role is permanently deleted and cannot be recovered. * If
1119
+ # an IAM policy contains a binding to the custom role, the binding is
1120
+ # permanently removed. * The custom role no longer counts toward your custom
1121
+ # role limit.
1122
+ # @param [String] name
1123
+ # The `name` parameter's value depends on the target resource for the request,
1124
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
1125
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1126
+ # organizations.roles). Each resource type's `name` value format is described
1127
+ # below: * [projects.roles.delete](https://cloud.google.com/iam/docs/reference/
1128
+ # rest/v1/projects.roles/delete): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``.
1129
+ # This method deletes only [custom roles](https://cloud.google.com/iam/docs/
1130
+ # understanding-custom-roles) that have been created at the project level.
1131
+ # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
1132
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.delete](https://cloud.google.
1133
+ # com/iam/docs/reference/rest/v1/organizations.roles/delete): `organizations/`
1134
+ # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method deletes only [custom
1135
+ # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
1136
+ # been created at the organization level. Example request URL: `https://iam.
1137
+ # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
1138
+ # Wildcard (*) values are invalid; you must specify a complete project ID or
1139
+ # organization ID.
1140
+ # @param [String] etag
1141
+ # Used to perform a consistent read-modify-write.
1142
+ # @param [String] fields
1143
+ # Selector specifying which fields to include in a partial response.
1144
+ # @param [String] quota_user
1145
+ # Available to use for quota purposes for server-side applications. Can be any
1146
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1147
+ # @param [Google::Apis::RequestOptions] options
1148
+ # Request-specific options
1149
+ #
1150
+ # @yield [result, err] Result & error if block supplied
1151
+ # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
1152
+ # @yieldparam err [StandardError] error object if request failed
1153
+ #
1154
+ # @return [Google::Apis::IamV1::Role]
1155
+ #
1156
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1157
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1158
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1159
+ def delete_organization_role(name, etag: nil, fields: nil, quota_user: nil, options: nil, &block)
1160
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1161
+ command.response_representation = Google::Apis::IamV1::Role::Representation
1162
+ command.response_class = Google::Apis::IamV1::Role
1163
+ command.params['name'] = name unless name.nil?
1164
+ command.query['etag'] = etag unless etag.nil?
1165
+ command.query['fields'] = fields unless fields.nil?
1166
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1167
+ execute_or_queue_command(command, &block)
1168
+ end
1169
+
1170
+ # Gets the definition of a Role.
1171
+ # @param [String] name
1172
+ # The `name` parameter's value depends on the target resource for the request,
1173
+ # namely [roles](https://cloud.google.com/iam/docs/reference/rest/v1/roles), [
1174
+ # projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles),
1175
+ # or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1176
+ # organizations.roles). Each resource type's `name` value format is described
1177
+ # below: * [roles.get](https://cloud.google.com/iam/docs/reference/rest/v1/roles/
1178
+ # get): `roles/`ROLE_NAME``. This method returns results from all [predefined
1179
+ # roles](https://cloud.google.com/iam/docs/understanding-roles#predefined_roles)
1180
+ # in IAM. Example request URL: `https://iam.googleapis.com/v1/roles/`ROLE_NAME``
1181
+ # * [projects.roles.get](https://cloud.google.com/iam/docs/reference/rest/v1/
1182
+ # projects.roles/get): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``. This
1183
+ # method returns only [custom roles](https://cloud.google.com/iam/docs/
1184
+ # understanding-custom-roles) that have been created at the project level.
1185
+ # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
1186
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.get](https://cloud.google.com/
1187
+ # iam/docs/reference/rest/v1/organizations.roles/get): `organizations/`
1188
+ # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method returns only [custom
1189
+ # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
1190
+ # been created at the organization level. Example request URL: `https://iam.
1191
+ # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
1192
+ # Wildcard (*) values are invalid; you must specify a complete project ID or
1193
+ # organization ID.
1194
+ # @param [String] fields
1195
+ # Selector specifying which fields to include in a partial response.
1196
+ # @param [String] quota_user
1197
+ # Available to use for quota purposes for server-side applications. Can be any
1198
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1199
+ # @param [Google::Apis::RequestOptions] options
1200
+ # Request-specific options
1201
+ #
1202
+ # @yield [result, err] Result & error if block supplied
1203
+ # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
1204
+ # @yieldparam err [StandardError] error object if request failed
1205
+ #
1206
+ # @return [Google::Apis::IamV1::Role]
1207
+ #
1208
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1209
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1210
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1211
+ def get_organization_role(name, fields: nil, quota_user: nil, options: nil, &block)
1212
+ command = make_simple_command(:get, 'v1/{+name}', options)
1213
+ command.response_representation = Google::Apis::IamV1::Role::Representation
1214
+ command.response_class = Google::Apis::IamV1::Role
1215
+ command.params['name'] = name unless name.nil?
1216
+ command.query['fields'] = fields unless fields.nil?
1217
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1218
+ execute_or_queue_command(command, &block)
1219
+ end
1220
+
1221
+ # Lists every predefined Role that IAM supports, or every custom role that is
1222
+ # defined for an organization or project.
1223
+ # @param [String] parent
1224
+ # The `parent` parameter's value depends on the target resource for the request,
1225
+ # namely [roles](https://cloud.google.com/iam/docs/reference/rest/v1/roles), [
1226
+ # projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles),
1227
+ # or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1228
+ # organizations.roles). Each resource type's `parent` value format is described
1229
+ # below: * [roles.list](https://cloud.google.com/iam/docs/reference/rest/v1/
1230
+ # roles/list): An empty string. This method doesn't require a resource; it
1231
+ # simply returns all [predefined roles](https://cloud.google.com/iam/docs/
1232
+ # understanding-roles#predefined_roles) in IAM. Example request URL: `https://
1233
+ # iam.googleapis.com/v1/roles` * [projects.roles.list](https://cloud.google.com/
1234
+ # iam/docs/reference/rest/v1/projects.roles/list): `projects/`PROJECT_ID``. This
1235
+ # method lists all project-level [custom roles](https://cloud.google.com/iam/
1236
+ # docs/understanding-custom-roles). Example request URL: `https://iam.googleapis.
1237
+ # com/v1/projects/`PROJECT_ID`/roles` * [organizations.roles.list](https://cloud.
1238
+ # google.com/iam/docs/reference/rest/v1/organizations.roles/list): `
1239
+ # organizations/`ORGANIZATION_ID``. This method lists all organization-level [
1240
+ # custom roles](https://cloud.google.com/iam/docs/understanding-custom-roles).
1241
+ # Example request URL: `https://iam.googleapis.com/v1/organizations/`
1242
+ # ORGANIZATION_ID`/roles` Note: Wildcard (*) values are invalid; you must
1243
+ # specify a complete project ID or organization ID.
1244
+ # @param [Fixnum] page_size
1245
+ # Optional limit on the number of roles to include in the response. The default
1246
+ # is 300, and the maximum is 1,000.
1247
+ # @param [String] page_token
1248
+ # Optional pagination token returned in an earlier ListRolesResponse.
1249
+ # @param [Boolean] show_deleted
1250
+ # Include Roles that have been deleted.
1251
+ # @param [String] view
1252
+ # Optional view for the returned Role objects. When `FULL` is specified, the `
1253
+ # includedPermissions` field is returned, which includes a list of all
1254
+ # permissions in the role. The default value is `BASIC`, which does not return
1255
+ # the `includedPermissions` field.
1256
+ # @param [String] fields
1257
+ # Selector specifying which fields to include in a partial response.
1258
+ # @param [String] quota_user
1259
+ # Available to use for quota purposes for server-side applications. Can be any
1260
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1261
+ # @param [Google::Apis::RequestOptions] options
1262
+ # Request-specific options
1263
+ #
1264
+ # @yield [result, err] Result & error if block supplied
1265
+ # @yieldparam result [Google::Apis::IamV1::ListRolesResponse] parsed result object
1266
+ # @yieldparam err [StandardError] error object if request failed
1267
+ #
1268
+ # @return [Google::Apis::IamV1::ListRolesResponse]
1269
+ #
1270
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1271
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1272
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1273
+ def list_organization_roles(parent, page_size: nil, page_token: nil, show_deleted: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block)
1274
+ command = make_simple_command(:get, 'v1/{+parent}/roles', options)
1275
+ command.response_representation = Google::Apis::IamV1::ListRolesResponse::Representation
1276
+ command.response_class = Google::Apis::IamV1::ListRolesResponse
1277
+ command.params['parent'] = parent unless parent.nil?
1278
+ command.query['pageSize'] = page_size unless page_size.nil?
1279
+ command.query['pageToken'] = page_token unless page_token.nil?
1280
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
1281
+ command.query['view'] = view unless view.nil?
1282
+ command.query['fields'] = fields unless fields.nil?
1283
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1284
+ execute_or_queue_command(command, &block)
1285
+ end
1286
+
1287
+ # Updates the definition of a custom Role.
1288
+ # @param [String] name
1289
+ # The `name` parameter's value depends on the target resource for the request,
1290
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
1291
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1292
+ # organizations.roles). Each resource type's `name` value format is described
1293
+ # below: * [projects.roles.patch](https://cloud.google.com/iam/docs/reference/
1294
+ # rest/v1/projects.roles/patch): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``.
1295
+ # This method updates only [custom roles](https://cloud.google.com/iam/docs/
1296
+ # understanding-custom-roles) that have been created at the project level.
1297
+ # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
1298
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.patch](https://cloud.google.com/
1299
+ # iam/docs/reference/rest/v1/organizations.roles/patch): `organizations/`
1300
+ # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method updates only [custom
1301
+ # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
1302
+ # been created at the organization level. Example request URL: `https://iam.
1303
+ # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
1304
+ # Wildcard (*) values are invalid; you must specify a complete project ID or
1305
+ # organization ID.
1306
+ # @param [Google::Apis::IamV1::Role] role_object
1307
+ # @param [String] update_mask
1308
+ # A mask describing which fields in the Role have changed.
1309
+ # @param [String] fields
1310
+ # Selector specifying which fields to include in a partial response.
1311
+ # @param [String] quota_user
1312
+ # Available to use for quota purposes for server-side applications. Can be any
1313
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1314
+ # @param [Google::Apis::RequestOptions] options
1315
+ # Request-specific options
1316
+ #
1317
+ # @yield [result, err] Result & error if block supplied
1318
+ # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
1319
+ # @yieldparam err [StandardError] error object if request failed
1320
+ #
1321
+ # @return [Google::Apis::IamV1::Role]
1322
+ #
1323
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1324
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1325
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1326
+ def patch_organization_role(name, role_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1327
+ command = make_simple_command(:patch, 'v1/{+name}', options)
1328
+ command.request_representation = Google::Apis::IamV1::Role::Representation
1329
+ command.request_object = role_object
1330
+ command.response_representation = Google::Apis::IamV1::Role::Representation
1331
+ command.response_class = Google::Apis::IamV1::Role
1332
+ command.params['name'] = name unless name.nil?
1333
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1334
+ command.query['fields'] = fields unless fields.nil?
1335
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1336
+ execute_or_queue_command(command, &block)
1337
+ end
1338
+
1339
+ # Undeletes a custom Role.
1340
+ # @param [String] name
1341
+ # The `name` parameter's value depends on the target resource for the request,
1342
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
1343
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1344
+ # organizations.roles). Each resource type's `name` value format is described
1345
+ # below: * [projects.roles.undelete](https://cloud.google.com/iam/docs/reference/
1346
+ # rest/v1/projects.roles/undelete): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID`
1347
+ # `. This method undeletes only [custom roles](https://cloud.google.com/iam/docs/
1348
+ # understanding-custom-roles) that have been created at the project level.
1349
+ # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
1350
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.undelete](https://cloud.google.
1351
+ # com/iam/docs/reference/rest/v1/organizations.roles/undelete): `organizations/`
1352
+ # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method undeletes only [custom
1353
+ # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
1354
+ # been created at the organization level. Example request URL: `https://iam.
1355
+ # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
1356
+ # Wildcard (*) values are invalid; you must specify a complete project ID or
1357
+ # organization ID.
1358
+ # @param [Google::Apis::IamV1::UndeleteRoleRequest] undelete_role_request_object
1359
+ # @param [String] fields
1360
+ # Selector specifying which fields to include in a partial response.
1361
+ # @param [String] quota_user
1362
+ # Available to use for quota purposes for server-side applications. Can be any
1363
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1364
+ # @param [Google::Apis::RequestOptions] options
1365
+ # Request-specific options
1366
+ #
1367
+ # @yield [result, err] Result & error if block supplied
1368
+ # @yieldparam result [Google::Apis::IamV1::Role] parsed result object
1369
+ # @yieldparam err [StandardError] error object if request failed
1370
+ #
1371
+ # @return [Google::Apis::IamV1::Role]
1372
+ #
1373
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1374
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1375
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1376
+ def undelete_organization_role(name, undelete_role_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1377
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
1378
+ command.request_representation = Google::Apis::IamV1::UndeleteRoleRequest::Representation
1379
+ command.request_object = undelete_role_request_object
1380
+ command.response_representation = Google::Apis::IamV1::Role::Representation
1381
+ command.response_class = Google::Apis::IamV1::Role
1382
+ command.params['name'] = name unless name.nil?
1383
+ command.query['fields'] = fields unless fields.nil?
1384
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1385
+ execute_or_queue_command(command, &block)
1386
+ end
1387
+
1388
+ # Lists every permission that you can test on a resource. A permission is
1389
+ # testable if you can check whether a principal has that permission on the
1390
+ # resource.
1391
+ # @param [Google::Apis::IamV1::QueryTestablePermissionsRequest] query_testable_permissions_request_object
1392
+ # @param [String] fields
1393
+ # Selector specifying which fields to include in a partial response.
1394
+ # @param [String] quota_user
1395
+ # Available to use for quota purposes for server-side applications. Can be any
1396
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1397
+ # @param [Google::Apis::RequestOptions] options
1398
+ # Request-specific options
1399
+ #
1400
+ # @yield [result, err] Result & error if block supplied
1401
+ # @yieldparam result [Google::Apis::IamV1::QueryTestablePermissionsResponse] parsed result object
1402
+ # @yieldparam err [StandardError] error object if request failed
1403
+ #
1404
+ # @return [Google::Apis::IamV1::QueryTestablePermissionsResponse]
1405
+ #
1406
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1407
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1408
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1409
+ def query_testable_permissions(query_testable_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1410
+ command = make_simple_command(:post, 'v1/permissions:queryTestablePermissions', options)
1411
+ command.request_representation = Google::Apis::IamV1::QueryTestablePermissionsRequest::Representation
1412
+ command.request_object = query_testable_permissions_request_object
1413
+ command.response_representation = Google::Apis::IamV1::QueryTestablePermissionsResponse::Representation
1414
+ command.response_class = Google::Apis::IamV1::QueryTestablePermissionsResponse
1415
+ command.query['fields'] = fields unless fields.nil?
1416
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1417
+ execute_or_queue_command(command, &block)
1418
+ end
1419
+
1420
+ # Creates a new OauthClient. You cannot reuse the name of a deleted OauthClient
1421
+ # until 30 days after deletion.
1422
+ # @param [String] parent
1423
+ # Required. The parent resource to create the OauthClient in. The only supported
1424
+ # location is `global`.
1425
+ # @param [Google::Apis::IamV1::OauthClient] oauth_client_object
1426
+ # @param [String] oauth_client_id
1427
+ # Required. The ID to use for the OauthClient, which becomes the final component
1428
+ # of the resource name. This value should be a string of 6 to 63 lowercase
1429
+ # letters, digits, or hyphens. It must start with a letter, and cannot have a
1430
+ # trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may not
1431
+ # be specified.
1432
+ # @param [String] fields
1433
+ # Selector specifying which fields to include in a partial response.
1434
+ # @param [String] quota_user
1435
+ # Available to use for quota purposes for server-side applications. Can be any
1436
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1437
+ # @param [Google::Apis::RequestOptions] options
1438
+ # Request-specific options
1439
+ #
1440
+ # @yield [result, err] Result & error if block supplied
1441
+ # @yieldparam result [Google::Apis::IamV1::OauthClient] parsed result object
1442
+ # @yieldparam err [StandardError] error object if request failed
1443
+ #
1444
+ # @return [Google::Apis::IamV1::OauthClient]
1445
+ #
1446
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1447
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1448
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1449
+ def create_project_location_oauth_client(parent, oauth_client_object = nil, oauth_client_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1450
+ command = make_simple_command(:post, 'v1/{+parent}/oauthClients', options)
1451
+ command.request_representation = Google::Apis::IamV1::OauthClient::Representation
1452
+ command.request_object = oauth_client_object
1453
+ command.response_representation = Google::Apis::IamV1::OauthClient::Representation
1454
+ command.response_class = Google::Apis::IamV1::OauthClient
1455
+ command.params['parent'] = parent unless parent.nil?
1456
+ command.query['oauthClientId'] = oauth_client_id unless oauth_client_id.nil?
1457
+ command.query['fields'] = fields unless fields.nil?
1458
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1459
+ execute_or_queue_command(command, &block)
1460
+ end
1461
+
1462
+ # Deletes an OauthClient. You cannot use a deleted OauthClient. However,
1463
+ # deletion does not revoke access tokens that have already been issued. They
1464
+ # continue to grant access. Deletion does revoke refresh tokens that have
1465
+ # already been issued. They cannot be used to renew an access token. If the
1466
+ # OauthClient is undeleted, and the refresh tokens are not expired, they are
1467
+ # valid for token exchange again. You can undelete an OauthClient for 30 days.
1468
+ # After 30 days, deletion is permanent. You cannot update deleted OauthClients.
1469
+ # However, you can view and list them.
1470
+ # @param [String] name
1471
+ # Required. The name of the OauthClient to delete. Format: `projects/`project`/
1472
+ # locations/`location`/oauthClients/`oauth_client``.
1473
+ # @param [String] fields
1474
+ # Selector specifying which fields to include in a partial response.
1475
+ # @param [String] quota_user
1476
+ # Available to use for quota purposes for server-side applications. Can be any
1477
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1478
+ # @param [Google::Apis::RequestOptions] options
1479
+ # Request-specific options
1480
+ #
1481
+ # @yield [result, err] Result & error if block supplied
1482
+ # @yieldparam result [Google::Apis::IamV1::OauthClient] parsed result object
1483
+ # @yieldparam err [StandardError] error object if request failed
1484
+ #
1485
+ # @return [Google::Apis::IamV1::OauthClient]
1486
+ #
1487
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1488
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1489
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1490
+ def delete_project_location_oauth_client(name, fields: nil, quota_user: nil, options: nil, &block)
1491
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1492
+ command.response_representation = Google::Apis::IamV1::OauthClient::Representation
1493
+ command.response_class = Google::Apis::IamV1::OauthClient
1494
+ command.params['name'] = name unless name.nil?
1495
+ command.query['fields'] = fields unless fields.nil?
1496
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1497
+ execute_or_queue_command(command, &block)
1498
+ end
1499
+
1500
+ # Gets an individual OauthClient.
1501
+ # @param [String] name
1502
+ # Required. The name of the OauthClient to retrieve. Format: `projects/`project`/
1503
+ # locations/`location`/oauthClients/`oauth_client``.
1504
+ # @param [String] fields
1505
+ # Selector specifying which fields to include in a partial response.
1506
+ # @param [String] quota_user
1507
+ # Available to use for quota purposes for server-side applications. Can be any
1508
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1509
+ # @param [Google::Apis::RequestOptions] options
1510
+ # Request-specific options
1511
+ #
1512
+ # @yield [result, err] Result & error if block supplied
1513
+ # @yieldparam result [Google::Apis::IamV1::OauthClient] parsed result object
1514
+ # @yieldparam err [StandardError] error object if request failed
1515
+ #
1516
+ # @return [Google::Apis::IamV1::OauthClient]
1517
+ #
1518
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1519
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1520
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1521
+ def get_project_location_oauth_client(name, fields: nil, quota_user: nil, options: nil, &block)
1522
+ command = make_simple_command(:get, 'v1/{+name}', options)
1523
+ command.response_representation = Google::Apis::IamV1::OauthClient::Representation
1524
+ command.response_class = Google::Apis::IamV1::OauthClient
1525
+ command.params['name'] = name unless name.nil?
1526
+ command.query['fields'] = fields unless fields.nil?
1527
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1528
+ execute_or_queue_command(command, &block)
1529
+ end
1530
+
1531
+ # Lists all non-deleted OauthClients in a project. If `show_deleted` is set to `
1532
+ # true`, then deleted OauthClients are also listed.
1533
+ # @param [String] parent
1534
+ # Required. The parent to list OauthClients for.
1535
+ # @param [Fixnum] page_size
1536
+ # Optional. The maximum number of OauthClients to return. If unspecified, at
1537
+ # most 50 OauthClients will be returned. The maximum value is 100; values above
1538
+ # 100 are truncated to 100.
1539
+ # @param [String] page_token
1540
+ # Optional. A page token, received from a previous `ListOauthClients` call.
1541
+ # Provide this to retrieve the subsequent page.
1542
+ # @param [Boolean] show_deleted
1543
+ # Optional. Whether to return soft-deleted OauthClients.
1544
+ # @param [String] fields
1545
+ # Selector specifying which fields to include in a partial response.
1546
+ # @param [String] quota_user
1547
+ # Available to use for quota purposes for server-side applications. Can be any
1548
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1549
+ # @param [Google::Apis::RequestOptions] options
1550
+ # Request-specific options
1551
+ #
1552
+ # @yield [result, err] Result & error if block supplied
1553
+ # @yieldparam result [Google::Apis::IamV1::ListOauthClientsResponse] parsed result object
1554
+ # @yieldparam err [StandardError] error object if request failed
1555
+ #
1556
+ # @return [Google::Apis::IamV1::ListOauthClientsResponse]
1557
+ #
1558
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1559
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1560
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1561
+ def list_project_location_oauth_clients(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
1562
+ command = make_simple_command(:get, 'v1/{+parent}/oauthClients', options)
1563
+ command.response_representation = Google::Apis::IamV1::ListOauthClientsResponse::Representation
1564
+ command.response_class = Google::Apis::IamV1::ListOauthClientsResponse
1565
+ command.params['parent'] = parent unless parent.nil?
1566
+ command.query['pageSize'] = page_size unless page_size.nil?
1567
+ command.query['pageToken'] = page_token unless page_token.nil?
1568
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
1569
+ command.query['fields'] = fields unless fields.nil?
1570
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1571
+ execute_or_queue_command(command, &block)
1572
+ end
1573
+
1574
+ # Updates an existing OauthClient.
1575
+ # @param [String] name
1576
+ # Immutable. Identifier. The resource name of the OauthClient. Format:`projects/`
1577
+ # project`/locations/`location`/oauthClients/`oauth_client``.
1578
+ # @param [Google::Apis::IamV1::OauthClient] oauth_client_object
1579
+ # @param [String] update_mask
1580
+ # Required. The list of fields to update.
1581
+ # @param [String] fields
1582
+ # Selector specifying which fields to include in a partial response.
1583
+ # @param [String] quota_user
1584
+ # Available to use for quota purposes for server-side applications. Can be any
1585
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1586
+ # @param [Google::Apis::RequestOptions] options
1587
+ # Request-specific options
1588
+ #
1589
+ # @yield [result, err] Result & error if block supplied
1590
+ # @yieldparam result [Google::Apis::IamV1::OauthClient] parsed result object
1591
+ # @yieldparam err [StandardError] error object if request failed
1592
+ #
1593
+ # @return [Google::Apis::IamV1::OauthClient]
1594
+ #
1595
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1596
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1597
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1598
+ def patch_project_location_oauth_client(name, oauth_client_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1599
+ command = make_simple_command(:patch, 'v1/{+name}', options)
1600
+ command.request_representation = Google::Apis::IamV1::OauthClient::Representation
1601
+ command.request_object = oauth_client_object
1602
+ command.response_representation = Google::Apis::IamV1::OauthClient::Representation
1603
+ command.response_class = Google::Apis::IamV1::OauthClient
1604
+ command.params['name'] = name unless name.nil?
1605
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1606
+ command.query['fields'] = fields unless fields.nil?
1607
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1608
+ execute_or_queue_command(command, &block)
1609
+ end
1610
+
1611
+ # Undeletes an OauthClient, as long as it was deleted fewer than 30 days ago.
1612
+ # @param [String] name
1613
+ # Required. The name of the OauthClient to undelete. Format: `projects/`project`/
1614
+ # locations/`location`/oauthClients/`oauth_client``.
1615
+ # @param [Google::Apis::IamV1::UndeleteOauthClientRequest] undelete_oauth_client_request_object
1616
+ # @param [String] fields
1617
+ # Selector specifying which fields to include in a partial response.
1618
+ # @param [String] quota_user
1619
+ # Available to use for quota purposes for server-side applications. Can be any
1620
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1621
+ # @param [Google::Apis::RequestOptions] options
1622
+ # Request-specific options
1623
+ #
1624
+ # @yield [result, err] Result & error if block supplied
1625
+ # @yieldparam result [Google::Apis::IamV1::OauthClient] parsed result object
1626
+ # @yieldparam err [StandardError] error object if request failed
1627
+ #
1628
+ # @return [Google::Apis::IamV1::OauthClient]
1629
+ #
1630
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1631
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1632
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1633
+ def undelete_oauth_client(name, undelete_oauth_client_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1634
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
1635
+ command.request_representation = Google::Apis::IamV1::UndeleteOauthClientRequest::Representation
1636
+ command.request_object = undelete_oauth_client_request_object
1637
+ command.response_representation = Google::Apis::IamV1::OauthClient::Representation
1638
+ command.response_class = Google::Apis::IamV1::OauthClient
1639
+ command.params['name'] = name unless name.nil?
1640
+ command.query['fields'] = fields unless fields.nil?
1641
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1642
+ execute_or_queue_command(command, &block)
1643
+ end
1644
+
1645
+ # Creates a new OauthClientCredential.
1646
+ # @param [String] parent
1647
+ # Required. The parent resource to create the OauthClientCredential in.
1648
+ # @param [Google::Apis::IamV1::OauthClientCredential] oauth_client_credential_object
1649
+ # @param [String] oauth_client_credential_id
1650
+ # Required. The ID to use for the OauthClientCredential, which becomes the final
1651
+ # component of the resource name. This value should be 4-32 characters, and may
1652
+ # contain the characters [a-z0-9-]. The prefix `gcp-` is reserved for use by
1653
+ # Google, and may not be specified.
1654
+ # @param [String] fields
1655
+ # Selector specifying which fields to include in a partial response.
1656
+ # @param [String] quota_user
1657
+ # Available to use for quota purposes for server-side applications. Can be any
1658
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1659
+ # @param [Google::Apis::RequestOptions] options
1660
+ # Request-specific options
1661
+ #
1662
+ # @yield [result, err] Result & error if block supplied
1663
+ # @yieldparam result [Google::Apis::IamV1::OauthClientCredential] parsed result object
1664
+ # @yieldparam err [StandardError] error object if request failed
1665
+ #
1666
+ # @return [Google::Apis::IamV1::OauthClientCredential]
1667
+ #
1668
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1669
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1670
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1671
+ def create_project_location_oauth_client_credential(parent, oauth_client_credential_object = nil, oauth_client_credential_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1672
+ command = make_simple_command(:post, 'v1/{+parent}/credentials', options)
1673
+ command.request_representation = Google::Apis::IamV1::OauthClientCredential::Representation
1674
+ command.request_object = oauth_client_credential_object
1675
+ command.response_representation = Google::Apis::IamV1::OauthClientCredential::Representation
1676
+ command.response_class = Google::Apis::IamV1::OauthClientCredential
1677
+ command.params['parent'] = parent unless parent.nil?
1678
+ command.query['oauthClientCredentialId'] = oauth_client_credential_id unless oauth_client_credential_id.nil?
1679
+ command.query['fields'] = fields unless fields.nil?
1680
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1681
+ execute_or_queue_command(command, &block)
1682
+ end
1683
+
1684
+ # Deletes an OauthClientCredential. Before deleting an OauthClientCredential, it
1685
+ # should first be disabled.
1686
+ # @param [String] name
1687
+ # Required. The name of the OauthClientCredential to delete. Format: `projects/`
1688
+ # project`/locations/`location`/oauthClients/`oauth_client`/credentials/`
1689
+ # credential``.
1690
+ # @param [String] fields
1691
+ # Selector specifying which fields to include in a partial response.
1692
+ # @param [String] quota_user
1693
+ # Available to use for quota purposes for server-side applications. Can be any
1694
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1695
+ # @param [Google::Apis::RequestOptions] options
1696
+ # Request-specific options
1697
+ #
1698
+ # @yield [result, err] Result & error if block supplied
1699
+ # @yieldparam result [Google::Apis::IamV1::Empty] parsed result object
1700
+ # @yieldparam err [StandardError] error object if request failed
1701
+ #
1702
+ # @return [Google::Apis::IamV1::Empty]
1703
+ #
1704
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1705
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1706
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1707
+ def delete_project_location_oauth_client_credential(name, fields: nil, quota_user: nil, options: nil, &block)
1708
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1709
+ command.response_representation = Google::Apis::IamV1::Empty::Representation
1710
+ command.response_class = Google::Apis::IamV1::Empty
1711
+ command.params['name'] = name unless name.nil?
1712
+ command.query['fields'] = fields unless fields.nil?
1713
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1714
+ execute_or_queue_command(command, &block)
1715
+ end
1716
+
1717
+ # Gets an individual OauthClientCredential.
1718
+ # @param [String] name
1719
+ # Required. The name of the OauthClientCredential to retrieve. Format: `projects/
1720
+ # `project`/locations/`location`/oauthClients/`oauth_client`/credentials/`
1721
+ # credential``.
1722
+ # @param [String] fields
1723
+ # Selector specifying which fields to include in a partial response.
1724
+ # @param [String] quota_user
1725
+ # Available to use for quota purposes for server-side applications. Can be any
1726
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1727
+ # @param [Google::Apis::RequestOptions] options
1728
+ # Request-specific options
1729
+ #
1730
+ # @yield [result, err] Result & error if block supplied
1731
+ # @yieldparam result [Google::Apis::IamV1::OauthClientCredential] parsed result object
1732
+ # @yieldparam err [StandardError] error object if request failed
1733
+ #
1734
+ # @return [Google::Apis::IamV1::OauthClientCredential]
1735
+ #
1736
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1737
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1738
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1739
+ def get_project_location_oauth_client_credential(name, fields: nil, quota_user: nil, options: nil, &block)
1740
+ command = make_simple_command(:get, 'v1/{+name}', options)
1741
+ command.response_representation = Google::Apis::IamV1::OauthClientCredential::Representation
1742
+ command.response_class = Google::Apis::IamV1::OauthClientCredential
1743
+ command.params['name'] = name unless name.nil?
1744
+ command.query['fields'] = fields unless fields.nil?
1745
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1746
+ execute_or_queue_command(command, &block)
1747
+ end
1748
+
1749
+ # Lists all OauthClientCredentials in an OauthClient.
1750
+ # @param [String] parent
1751
+ # Required. The parent to list OauthClientCredentials for.
1752
+ # @param [String] fields
1753
+ # Selector specifying which fields to include in a partial response.
1754
+ # @param [String] quota_user
1755
+ # Available to use for quota purposes for server-side applications. Can be any
1756
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1757
+ # @param [Google::Apis::RequestOptions] options
1758
+ # Request-specific options
1759
+ #
1760
+ # @yield [result, err] Result & error if block supplied
1761
+ # @yieldparam result [Google::Apis::IamV1::ListOauthClientCredentialsResponse] parsed result object
1762
+ # @yieldparam err [StandardError] error object if request failed
1763
+ #
1764
+ # @return [Google::Apis::IamV1::ListOauthClientCredentialsResponse]
1765
+ #
1766
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1767
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1768
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1769
+ def list_project_location_oauth_client_credentials(parent, fields: nil, quota_user: nil, options: nil, &block)
1770
+ command = make_simple_command(:get, 'v1/{+parent}/credentials', options)
1771
+ command.response_representation = Google::Apis::IamV1::ListOauthClientCredentialsResponse::Representation
1772
+ command.response_class = Google::Apis::IamV1::ListOauthClientCredentialsResponse
1773
+ command.params['parent'] = parent unless parent.nil?
1774
+ command.query['fields'] = fields unless fields.nil?
1775
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1776
+ execute_or_queue_command(command, &block)
1777
+ end
1778
+
1779
+ # Updates an existing OauthClientCredential.
1780
+ # @param [String] name
1781
+ # Immutable. Identifier. The resource name of the OauthClientCredential. Format:
1782
+ # `projects/`project`/locations/`location`/oauthClients/`oauth_client`/
1783
+ # credentials/`credential``
1784
+ # @param [Google::Apis::IamV1::OauthClientCredential] oauth_client_credential_object
1785
+ # @param [String] update_mask
1786
+ # Required. The list of fields to update.
1787
+ # @param [String] fields
1788
+ # Selector specifying which fields to include in a partial response.
1789
+ # @param [String] quota_user
1790
+ # Available to use for quota purposes for server-side applications. Can be any
1791
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1792
+ # @param [Google::Apis::RequestOptions] options
1793
+ # Request-specific options
1794
+ #
1795
+ # @yield [result, err] Result & error if block supplied
1796
+ # @yieldparam result [Google::Apis::IamV1::OauthClientCredential] parsed result object
1797
+ # @yieldparam err [StandardError] error object if request failed
1798
+ #
1799
+ # @return [Google::Apis::IamV1::OauthClientCredential]
1800
+ #
1801
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1802
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1803
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1804
+ def patch_project_location_oauth_client_credential(name, oauth_client_credential_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1805
+ command = make_simple_command(:patch, 'v1/{+name}', options)
1806
+ command.request_representation = Google::Apis::IamV1::OauthClientCredential::Representation
1807
+ command.request_object = oauth_client_credential_object
1808
+ command.response_representation = Google::Apis::IamV1::OauthClientCredential::Representation
1809
+ command.response_class = Google::Apis::IamV1::OauthClientCredential
1810
+ command.params['name'] = name unless name.nil?
1811
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1812
+ command.query['fields'] = fields unless fields.nil?
1813
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1814
+ execute_or_queue_command(command, &block)
1815
+ end
1816
+
1817
+ # Creates a new WorkloadIdentityPool. You cannot reuse the name of a deleted
1818
+ # pool until 30 days after deletion.
1819
+ # @param [String] parent
1820
+ # Required. The parent resource to create the pool in. The only supported
1821
+ # location is `global`.
1822
+ # @param [Google::Apis::IamV1::WorkloadIdentityPool] workload_identity_pool_object
1823
+ # @param [String] workload_identity_pool_id
1824
+ # Required. The ID to use for the pool, which becomes the final component of the
1825
+ # resource name. This value should be 4-32 characters, and may contain the
1826
+ # characters [a-z0-9-]. The prefix `gcp-` is reserved for use by Google, and may
1827
+ # not be specified.
1828
+ # @param [String] fields
1829
+ # Selector specifying which fields to include in a partial response.
1830
+ # @param [String] quota_user
1831
+ # Available to use for quota purposes for server-side applications. Can be any
1832
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1833
+ # @param [Google::Apis::RequestOptions] options
1834
+ # Request-specific options
1835
+ #
1836
+ # @yield [result, err] Result & error if block supplied
1837
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
1838
+ # @yieldparam err [StandardError] error object if request failed
1839
+ #
1840
+ # @return [Google::Apis::IamV1::Operation]
1841
+ #
1842
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1843
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1844
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1845
+ def create_project_location_workload_identity_pool(parent, workload_identity_pool_object = nil, workload_identity_pool_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1846
+ command = make_simple_command(:post, 'v1/{+parent}/workloadIdentityPools', options)
1847
+ command.request_representation = Google::Apis::IamV1::WorkloadIdentityPool::Representation
1848
+ command.request_object = workload_identity_pool_object
1849
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
1850
+ command.response_class = Google::Apis::IamV1::Operation
1851
+ command.params['parent'] = parent unless parent.nil?
1852
+ command.query['workloadIdentityPoolId'] = workload_identity_pool_id unless workload_identity_pool_id.nil?
1853
+ command.query['fields'] = fields unless fields.nil?
1854
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1855
+ execute_or_queue_command(command, &block)
1856
+ end
1857
+
1858
+ # Deletes a WorkloadIdentityPool. You cannot use a deleted pool to exchange
1859
+ # external credentials for Google Cloud credentials. However, deletion does not
1860
+ # revoke credentials that have already been issued. Credentials issued for a
1861
+ # deleted pool do not grant access to resources. If the pool is undeleted, and
1862
+ # the credentials are not expired, they grant access again. You can undelete a
1863
+ # pool for 30 days. After 30 days, deletion is permanent. You cannot update
1864
+ # deleted pools. However, you can view and list them.
1865
+ # @param [String] name
1866
+ # Required. The name of the pool to delete.
1867
+ # @param [String] fields
1868
+ # Selector specifying which fields to include in a partial response.
1869
+ # @param [String] quota_user
1870
+ # Available to use for quota purposes for server-side applications. Can be any
1871
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1872
+ # @param [Google::Apis::RequestOptions] options
1873
+ # Request-specific options
1874
+ #
1875
+ # @yield [result, err] Result & error if block supplied
1876
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
1877
+ # @yieldparam err [StandardError] error object if request failed
1878
+ #
1879
+ # @return [Google::Apis::IamV1::Operation]
1880
+ #
1881
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1882
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1883
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1884
+ def delete_project_location_workload_identity_pool(name, fields: nil, quota_user: nil, options: nil, &block)
1885
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1886
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
1887
+ command.response_class = Google::Apis::IamV1::Operation
1888
+ command.params['name'] = name unless name.nil?
1889
+ command.query['fields'] = fields unless fields.nil?
1890
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1891
+ execute_or_queue_command(command, &block)
1892
+ end
1893
+
1894
+ # Gets an individual WorkloadIdentityPool.
1895
+ # @param [String] name
1896
+ # Required. The name of the pool to retrieve.
1897
+ # @param [String] fields
1898
+ # Selector specifying which fields to include in a partial response.
1899
+ # @param [String] quota_user
1900
+ # Available to use for quota purposes for server-side applications. Can be any
1901
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1902
+ # @param [Google::Apis::RequestOptions] options
1903
+ # Request-specific options
1904
+ #
1905
+ # @yield [result, err] Result & error if block supplied
1906
+ # @yieldparam result [Google::Apis::IamV1::WorkloadIdentityPool] parsed result object
1907
+ # @yieldparam err [StandardError] error object if request failed
1908
+ #
1909
+ # @return [Google::Apis::IamV1::WorkloadIdentityPool]
1910
+ #
1911
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1912
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1913
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1914
+ def get_project_location_workload_identity_pool(name, fields: nil, quota_user: nil, options: nil, &block)
1915
+ command = make_simple_command(:get, 'v1/{+name}', options)
1916
+ command.response_representation = Google::Apis::IamV1::WorkloadIdentityPool::Representation
1917
+ command.response_class = Google::Apis::IamV1::WorkloadIdentityPool
1918
+ command.params['name'] = name unless name.nil?
1919
+ command.query['fields'] = fields unless fields.nil?
1920
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1921
+ execute_or_queue_command(command, &block)
1922
+ end
1923
+
1924
+ # Gets the IAM policy of a WorkloadIdentityPool.
1925
+ # @param [String] resource
1926
+ # REQUIRED: The resource for which the policy is being requested. See [Resource
1927
+ # names](https://cloud.google.com/apis/design/resource_names) for the
1928
+ # appropriate value for this field.
1929
+ # @param [Google::Apis::IamV1::GetIamPolicyRequest] get_iam_policy_request_object
1930
+ # @param [String] fields
1931
+ # Selector specifying which fields to include in a partial response.
1932
+ # @param [String] quota_user
1933
+ # Available to use for quota purposes for server-side applications. Can be any
1934
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1935
+ # @param [Google::Apis::RequestOptions] options
1936
+ # Request-specific options
1937
+ #
1938
+ # @yield [result, err] Result & error if block supplied
1939
+ # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
1940
+ # @yieldparam err [StandardError] error object if request failed
1941
+ #
1942
+ # @return [Google::Apis::IamV1::Policy]
1943
+ #
1944
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1945
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1946
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1947
+ def get_workload_identity_pool_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1948
+ command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', options)
1949
+ command.request_representation = Google::Apis::IamV1::GetIamPolicyRequest::Representation
1950
+ command.request_object = get_iam_policy_request_object
1951
+ command.response_representation = Google::Apis::IamV1::Policy::Representation
1952
+ command.response_class = Google::Apis::IamV1::Policy
1953
+ command.params['resource'] = resource unless resource.nil?
1954
+ command.query['fields'] = fields unless fields.nil?
1955
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1956
+ execute_or_queue_command(command, &block)
1957
+ end
1958
+
1959
+ # Lists all non-deleted WorkloadIdentityPools in a project. If `show_deleted` is
1960
+ # set to `true`, then deleted pools are also listed.
1961
+ # @param [String] parent
1962
+ # Required. The parent resource to list pools for.
1963
+ # @param [Fixnum] page_size
1964
+ # The maximum number of pools to return. If unspecified, at most 50 pools are
1965
+ # returned. The maximum value is 1000; values above are 1000 truncated to 1000.
1966
+ # @param [String] page_token
1967
+ # A page token, received from a previous `ListWorkloadIdentityPools` call.
1968
+ # Provide this to retrieve the subsequent page.
1969
+ # @param [Boolean] show_deleted
1970
+ # Whether to return soft-deleted pools.
1971
+ # @param [String] fields
1972
+ # Selector specifying which fields to include in a partial response.
1973
+ # @param [String] quota_user
1974
+ # Available to use for quota purposes for server-side applications. Can be any
1975
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1976
+ # @param [Google::Apis::RequestOptions] options
1977
+ # Request-specific options
1978
+ #
1979
+ # @yield [result, err] Result & error if block supplied
1980
+ # @yieldparam result [Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse] parsed result object
1981
+ # @yieldparam err [StandardError] error object if request failed
1982
+ #
1983
+ # @return [Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse]
1984
+ #
1985
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1986
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1987
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1988
+ def list_project_location_workload_identity_pools(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
1989
+ command = make_simple_command(:get, 'v1/{+parent}/workloadIdentityPools', options)
1990
+ command.response_representation = Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse::Representation
1991
+ command.response_class = Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse
1992
+ command.params['parent'] = parent unless parent.nil?
1993
+ command.query['pageSize'] = page_size unless page_size.nil?
1994
+ command.query['pageToken'] = page_token unless page_token.nil?
1995
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
1996
+ command.query['fields'] = fields unless fields.nil?
1997
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1998
+ execute_or_queue_command(command, &block)
1999
+ end
2000
+
2001
+ # Updates an existing WorkloadIdentityPool.
2002
+ # @param [String] name
2003
+ # Output only. The resource name of the pool.
2004
+ # @param [Google::Apis::IamV1::WorkloadIdentityPool] workload_identity_pool_object
2005
+ # @param [String] update_mask
2006
+ # Required. The list of fields to update.
2007
+ # @param [String] fields
2008
+ # Selector specifying which fields to include in a partial response.
2009
+ # @param [String] quota_user
2010
+ # Available to use for quota purposes for server-side applications. Can be any
2011
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2012
+ # @param [Google::Apis::RequestOptions] options
2013
+ # Request-specific options
2014
+ #
2015
+ # @yield [result, err] Result & error if block supplied
2016
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2017
+ # @yieldparam err [StandardError] error object if request failed
2018
+ #
2019
+ # @return [Google::Apis::IamV1::Operation]
2020
+ #
2021
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2022
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2023
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2024
+ def patch_project_location_workload_identity_pool(name, workload_identity_pool_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
2025
+ command = make_simple_command(:patch, 'v1/{+name}', options)
2026
+ command.request_representation = Google::Apis::IamV1::WorkloadIdentityPool::Representation
2027
+ command.request_object = workload_identity_pool_object
2028
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2029
+ command.response_class = Google::Apis::IamV1::Operation
2030
+ command.params['name'] = name unless name.nil?
2031
+ command.query['updateMask'] = update_mask unless update_mask.nil?
2032
+ command.query['fields'] = fields unless fields.nil?
2033
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2034
+ execute_or_queue_command(command, &block)
2035
+ end
2036
+
2037
+ # Sets the IAM policies on a WorkloadIdentityPool
2038
+ # @param [String] resource
2039
+ # REQUIRED: The resource for which the policy is being specified. See [Resource
2040
+ # names](https://cloud.google.com/apis/design/resource_names) for the
2041
+ # appropriate value for this field.
2042
+ # @param [Google::Apis::IamV1::SetIamPolicyRequest] set_iam_policy_request_object
2043
+ # @param [String] fields
2044
+ # Selector specifying which fields to include in a partial response.
2045
+ # @param [String] quota_user
2046
+ # Available to use for quota purposes for server-side applications. Can be any
2047
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2048
+ # @param [Google::Apis::RequestOptions] options
2049
+ # Request-specific options
2050
+ #
2051
+ # @yield [result, err] Result & error if block supplied
2052
+ # @yieldparam result [Google::Apis::IamV1::Policy] parsed result object
2053
+ # @yieldparam err [StandardError] error object if request failed
2054
+ #
2055
+ # @return [Google::Apis::IamV1::Policy]
2056
+ #
2057
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2058
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2059
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2060
+ def set_workload_identity_pool_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2061
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
2062
+ command.request_representation = Google::Apis::IamV1::SetIamPolicyRequest::Representation
2063
+ command.request_object = set_iam_policy_request_object
2064
+ command.response_representation = Google::Apis::IamV1::Policy::Representation
2065
+ command.response_class = Google::Apis::IamV1::Policy
2066
+ command.params['resource'] = resource unless resource.nil?
2067
+ command.query['fields'] = fields unless fields.nil?
2068
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2069
+ execute_or_queue_command(command, &block)
2070
+ end
2071
+
2072
+ # Returns the caller's permissions on a WorkloadIdentityPool
2073
+ # @param [String] resource
2074
+ # REQUIRED: The resource for which the policy detail is being requested. See [
2075
+ # Resource names](https://cloud.google.com/apis/design/resource_names) for the
2076
+ # appropriate value for this field.
2077
+ # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object
2078
+ # @param [String] fields
2079
+ # Selector specifying which fields to include in a partial response.
2080
+ # @param [String] quota_user
2081
+ # Available to use for quota purposes for server-side applications. Can be any
2082
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2083
+ # @param [Google::Apis::RequestOptions] options
2084
+ # Request-specific options
2085
+ #
2086
+ # @yield [result, err] Result & error if block supplied
2087
+ # @yieldparam result [Google::Apis::IamV1::TestIamPermissionsResponse] parsed result object
2088
+ # @yieldparam err [StandardError] error object if request failed
2089
+ #
2090
+ # @return [Google::Apis::IamV1::TestIamPermissionsResponse]
2091
+ #
2092
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2093
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2094
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2095
+ def test_workload_identity_pool_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2096
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
2097
+ command.request_representation = Google::Apis::IamV1::TestIamPermissionsRequest::Representation
2098
+ command.request_object = test_iam_permissions_request_object
2099
+ command.response_representation = Google::Apis::IamV1::TestIamPermissionsResponse::Representation
2100
+ command.response_class = Google::Apis::IamV1::TestIamPermissionsResponse
2101
+ command.params['resource'] = resource unless resource.nil?
2102
+ command.query['fields'] = fields unless fields.nil?
2103
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2104
+ execute_or_queue_command(command, &block)
2105
+ end
2106
+
2107
+ # Undeletes a WorkloadIdentityPool, as long as it was deleted fewer than 30 days
2108
+ # ago.
2109
+ # @param [String] name
2110
+ # Required. The name of the pool to undelete.
2111
+ # @param [Google::Apis::IamV1::UndeleteWorkloadIdentityPoolRequest] undelete_workload_identity_pool_request_object
2112
+ # @param [String] fields
2113
+ # Selector specifying which fields to include in a partial response.
2114
+ # @param [String] quota_user
2115
+ # Available to use for quota purposes for server-side applications. Can be any
2116
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2117
+ # @param [Google::Apis::RequestOptions] options
2118
+ # Request-specific options
2119
+ #
2120
+ # @yield [result, err] Result & error if block supplied
2121
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2122
+ # @yieldparam err [StandardError] error object if request failed
2123
+ #
2124
+ # @return [Google::Apis::IamV1::Operation]
2125
+ #
2126
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2127
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2128
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2129
+ def undelete_workload_identity_pool(name, undelete_workload_identity_pool_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2130
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
2131
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkloadIdentityPoolRequest::Representation
2132
+ command.request_object = undelete_workload_identity_pool_request_object
2133
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2134
+ command.response_class = Google::Apis::IamV1::Operation
2135
+ command.params['name'] = name unless name.nil?
2136
+ command.query['fields'] = fields unless fields.nil?
2137
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2138
+ execute_or_queue_command(command, &block)
2139
+ end
2140
+
2141
+ # Creates a new WorkloadIdentityPoolNamespace in a WorkloadIdentityPool.
2142
+ # @param [String] parent
2143
+ # Required. The parent resource to create the namespace in. The only supported
2144
+ # location is `global`.
2145
+ # @param [Google::Apis::IamV1::WorkloadIdentityPoolNamespace] workload_identity_pool_namespace_object
2146
+ # @param [String] workload_identity_pool_namespace_id
2147
+ # Required. The ID to use for the namespace. This value must: * contain at most
2148
+ # 63 characters * contain only lowercase alphanumeric characters or `-` * start
2149
+ # with an alphanumeric character * end with an alphanumeric character The prefix
2150
+ # "gcp-" will be reserved for future uses.
2151
+ # @param [String] fields
2152
+ # Selector specifying which fields to include in a partial response.
2153
+ # @param [String] quota_user
2154
+ # Available to use for quota purposes for server-side applications. Can be any
2155
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2156
+ # @param [Google::Apis::RequestOptions] options
2157
+ # Request-specific options
2158
+ #
2159
+ # @yield [result, err] Result & error if block supplied
2160
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2161
+ # @yieldparam err [StandardError] error object if request failed
2162
+ #
2163
+ # @return [Google::Apis::IamV1::Operation]
2164
+ #
2165
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2166
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2167
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2168
+ def create_project_location_workload_identity_pool_namespace(parent, workload_identity_pool_namespace_object = nil, workload_identity_pool_namespace_id: nil, fields: nil, quota_user: nil, options: nil, &block)
2169
+ command = make_simple_command(:post, 'v1/{+parent}/namespaces', options)
2170
+ command.request_representation = Google::Apis::IamV1::WorkloadIdentityPoolNamespace::Representation
2171
+ command.request_object = workload_identity_pool_namespace_object
2172
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2173
+ command.response_class = Google::Apis::IamV1::Operation
2174
+ command.params['parent'] = parent unless parent.nil?
2175
+ command.query['workloadIdentityPoolNamespaceId'] = workload_identity_pool_namespace_id unless workload_identity_pool_namespace_id.nil?
2176
+ command.query['fields'] = fields unless fields.nil?
2177
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2178
+ execute_or_queue_command(command, &block)
2179
+ end
2180
+
2181
+ # Deletes a WorkloadIdentityPoolNamespace. You can undelete a namespace for 30
2182
+ # days. After 30 days, deletion is permanent.
2183
+ # @param [String] name
2184
+ # Required. The name of the namespace to delete.
2185
+ # @param [String] fields
2186
+ # Selector specifying which fields to include in a partial response.
2187
+ # @param [String] quota_user
2188
+ # Available to use for quota purposes for server-side applications. Can be any
2189
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2190
+ # @param [Google::Apis::RequestOptions] options
2191
+ # Request-specific options
2192
+ #
2193
+ # @yield [result, err] Result & error if block supplied
2194
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2195
+ # @yieldparam err [StandardError] error object if request failed
2196
+ #
2197
+ # @return [Google::Apis::IamV1::Operation]
2198
+ #
2199
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2200
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2201
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2202
+ def delete_project_location_workload_identity_pool_namespace(name, fields: nil, quota_user: nil, options: nil, &block)
2203
+ command = make_simple_command(:delete, 'v1/{+name}', options)
2204
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2205
+ command.response_class = Google::Apis::IamV1::Operation
2206
+ command.params['name'] = name unless name.nil?
2207
+ command.query['fields'] = fields unless fields.nil?
2208
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2209
+ execute_or_queue_command(command, &block)
2210
+ end
2211
+
2212
+ # Gets an individual WorkloadIdentityPoolNamespace.
2213
+ # @param [String] name
2214
+ # Required. The name of the namespace to retrieve.
2215
+ # @param [String] fields
2216
+ # Selector specifying which fields to include in a partial response.
2217
+ # @param [String] quota_user
2218
+ # Available to use for quota purposes for server-side applications. Can be any
2219
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2220
+ # @param [Google::Apis::RequestOptions] options
2221
+ # Request-specific options
2222
+ #
2223
+ # @yield [result, err] Result & error if block supplied
2224
+ # @yieldparam result [Google::Apis::IamV1::WorkloadIdentityPoolNamespace] parsed result object
2225
+ # @yieldparam err [StandardError] error object if request failed
2226
+ #
2227
+ # @return [Google::Apis::IamV1::WorkloadIdentityPoolNamespace]
2228
+ #
2229
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2230
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2231
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2232
+ def get_project_location_workload_identity_pool_namespace(name, fields: nil, quota_user: nil, options: nil, &block)
2233
+ command = make_simple_command(:get, 'v1/{+name}', options)
2234
+ command.response_representation = Google::Apis::IamV1::WorkloadIdentityPoolNamespace::Representation
2235
+ command.response_class = Google::Apis::IamV1::WorkloadIdentityPoolNamespace
2236
+ command.params['name'] = name unless name.nil?
2237
+ command.query['fields'] = fields unless fields.nil?
2238
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2239
+ execute_or_queue_command(command, &block)
2240
+ end
2241
+
2242
+ # Lists all non-deleted WorkloadIdentityPoolNamespaces in a workload identity
2243
+ # pool. If `show_deleted` is set to `true`, then deleted namespaces are also
2244
+ # listed.
2245
+ # @param [String] parent
2246
+ # Required. The parent resource to list namespaces for.
2247
+ # @param [Fixnum] page_size
2248
+ # The maximum number of namespaces to return. If unspecified, at most 50
2249
+ # namespaces are returned. The maximum value is 1000; values above are 1000
2250
+ # truncated to 1000.
2251
+ # @param [String] page_token
2252
+ # A page token, received from a previous `ListWorkloadIdentityPoolNamespaces`
2253
+ # call. Provide this to retrieve the subsequent page.
2254
+ # @param [Boolean] show_deleted
2255
+ # Whether to return soft-deleted namespaces.
2256
+ # @param [String] fields
2257
+ # Selector specifying which fields to include in a partial response.
2258
+ # @param [String] quota_user
2259
+ # Available to use for quota purposes for server-side applications. Can be any
2260
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2261
+ # @param [Google::Apis::RequestOptions] options
2262
+ # Request-specific options
2263
+ #
2264
+ # @yield [result, err] Result & error if block supplied
2265
+ # @yieldparam result [Google::Apis::IamV1::ListWorkloadIdentityPoolNamespacesResponse] parsed result object
2266
+ # @yieldparam err [StandardError] error object if request failed
2267
+ #
2268
+ # @return [Google::Apis::IamV1::ListWorkloadIdentityPoolNamespacesResponse]
2269
+ #
2270
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2271
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2272
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2273
+ def list_project_location_workload_identity_pool_namespaces(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
2274
+ command = make_simple_command(:get, 'v1/{+parent}/namespaces', options)
2275
+ command.response_representation = Google::Apis::IamV1::ListWorkloadIdentityPoolNamespacesResponse::Representation
2276
+ command.response_class = Google::Apis::IamV1::ListWorkloadIdentityPoolNamespacesResponse
2277
+ command.params['parent'] = parent unless parent.nil?
2278
+ command.query['pageSize'] = page_size unless page_size.nil?
2279
+ command.query['pageToken'] = page_token unless page_token.nil?
2280
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
2281
+ command.query['fields'] = fields unless fields.nil?
2282
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2283
+ execute_or_queue_command(command, &block)
2284
+ end
2285
+
2286
+ # Updates an existing WorkloadIdentityPoolNamespace in a WorkloadIdentityPool.
2287
+ # @param [String] name
2288
+ # Output only. The resource name of the namespace.
2289
+ # @param [Google::Apis::IamV1::WorkloadIdentityPoolNamespace] workload_identity_pool_namespace_object
2290
+ # @param [String] update_mask
2291
+ # Required. The list of fields to update.
2292
+ # @param [String] fields
2293
+ # Selector specifying which fields to include in a partial response.
2294
+ # @param [String] quota_user
2295
+ # Available to use for quota purposes for server-side applications. Can be any
2296
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2297
+ # @param [Google::Apis::RequestOptions] options
2298
+ # Request-specific options
2299
+ #
2300
+ # @yield [result, err] Result & error if block supplied
2301
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2302
+ # @yieldparam err [StandardError] error object if request failed
2303
+ #
2304
+ # @return [Google::Apis::IamV1::Operation]
2305
+ #
2306
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2307
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2308
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2309
+ def patch_project_location_workload_identity_pool_namespace(name, workload_identity_pool_namespace_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
2310
+ command = make_simple_command(:patch, 'v1/{+name}', options)
2311
+ command.request_representation = Google::Apis::IamV1::WorkloadIdentityPoolNamespace::Representation
2312
+ command.request_object = workload_identity_pool_namespace_object
2313
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2314
+ command.response_class = Google::Apis::IamV1::Operation
2315
+ command.params['name'] = name unless name.nil?
2316
+ command.query['updateMask'] = update_mask unless update_mask.nil?
2317
+ command.query['fields'] = fields unless fields.nil?
2318
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2319
+ execute_or_queue_command(command, &block)
593
2320
  end
594
2321
 
595
- # Creates a new WorkloadIdentityPool. You cannot reuse the name of a deleted
596
- # pool until 30 days after deletion.
2322
+ # Undeletes a WorkloadIdentityPoolNamespace, as long as it was deleted fewer
2323
+ # than 30 days ago.
2324
+ # @param [String] name
2325
+ # Required. The name of the namespace to undelete.
2326
+ # @param [Google::Apis::IamV1::UndeleteWorkloadIdentityPoolNamespaceRequest] undelete_workload_identity_pool_namespace_request_object
2327
+ # @param [String] fields
2328
+ # Selector specifying which fields to include in a partial response.
2329
+ # @param [String] quota_user
2330
+ # Available to use for quota purposes for server-side applications. Can be any
2331
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2332
+ # @param [Google::Apis::RequestOptions] options
2333
+ # Request-specific options
2334
+ #
2335
+ # @yield [result, err] Result & error if block supplied
2336
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2337
+ # @yieldparam err [StandardError] error object if request failed
2338
+ #
2339
+ # @return [Google::Apis::IamV1::Operation]
2340
+ #
2341
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2342
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2343
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2344
+ def undelete_workload_identity_pool_namespace(name, undelete_workload_identity_pool_namespace_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2345
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
2346
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkloadIdentityPoolNamespaceRequest::Representation
2347
+ command.request_object = undelete_workload_identity_pool_namespace_request_object
2348
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2349
+ command.response_class = Google::Apis::IamV1::Operation
2350
+ command.params['name'] = name unless name.nil?
2351
+ command.query['fields'] = fields unless fields.nil?
2352
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2353
+ execute_or_queue_command(command, &block)
2354
+ end
2355
+
2356
+ # Add an AttestationRule on a WorkloadIdentityPoolManagedIdentity. The total
2357
+ # attestation rules after addition must not exceed 50.
2358
+ # @param [String] resource
2359
+ # Required. The resource name of the managed identity or namespace resource to
2360
+ # add an attestation rule to.
2361
+ # @param [Google::Apis::IamV1::AddAttestationRuleRequest] add_attestation_rule_request_object
2362
+ # @param [String] fields
2363
+ # Selector specifying which fields to include in a partial response.
2364
+ # @param [String] quota_user
2365
+ # Available to use for quota purposes for server-side applications. Can be any
2366
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2367
+ # @param [Google::Apis::RequestOptions] options
2368
+ # Request-specific options
2369
+ #
2370
+ # @yield [result, err] Result & error if block supplied
2371
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2372
+ # @yieldparam err [StandardError] error object if request failed
2373
+ #
2374
+ # @return [Google::Apis::IamV1::Operation]
2375
+ #
2376
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2377
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2378
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2379
+ def add_managed_identity_attestation_rule(resource, add_attestation_rule_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2380
+ command = make_simple_command(:post, 'v1/{+resource}:addAttestationRule', options)
2381
+ command.request_representation = Google::Apis::IamV1::AddAttestationRuleRequest::Representation
2382
+ command.request_object = add_attestation_rule_request_object
2383
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2384
+ command.response_class = Google::Apis::IamV1::Operation
2385
+ command.params['resource'] = resource unless resource.nil?
2386
+ command.query['fields'] = fields unless fields.nil?
2387
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2388
+ execute_or_queue_command(command, &block)
2389
+ end
2390
+
2391
+ # Creates a new WorkloadIdentityPoolManagedIdentity in a
2392
+ # WorkloadIdentityPoolNamespace.
597
2393
  # @param [String] parent
598
- # Required. The parent resource to create the pool in. The only supported
599
- # location is `global`.
600
- # @param [Google::Apis::IamV1::WorkloadIdentityPool] workload_identity_pool_object
601
- # @param [String] workload_identity_pool_id
602
- # Required. The ID to use for the pool, which becomes the final component of the
603
- # resource name. This value should be 4-32 characters, and may contain the
604
- # characters [a-z0-9-]. The prefix `gcp-` is reserved for use by Google, and may
605
- # not be specified.
2394
+ # Required. The parent resource to create the manage identity in. The only
2395
+ # supported location is `global`.
2396
+ # @param [Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity] workload_identity_pool_managed_identity_object
2397
+ # @param [String] workload_identity_pool_managed_identity_id
2398
+ # Required. The ID to use for the managed identity. This value must: * contain
2399
+ # at most 63 characters * contain only lowercase alphanumeric characters or `-` *
2400
+ # start with an alphanumeric character * end with an alphanumeric character The
2401
+ # prefix "gcp-" will be reserved for future uses.
606
2402
  # @param [String] fields
607
2403
  # Selector specifying which fields to include in a partial response.
608
2404
  # @param [String] quota_user
@@ -620,28 +2416,249 @@ module Google
620
2416
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
621
2417
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
622
2418
  # @raise [Google::Apis::AuthorizationError] Authorization is required
623
- def create_project_location_workload_identity_pool(parent, workload_identity_pool_object = nil, workload_identity_pool_id: nil, fields: nil, quota_user: nil, options: nil, &block)
624
- command = make_simple_command(:post, 'v1/{+parent}/workloadIdentityPools', options)
625
- command.request_representation = Google::Apis::IamV1::WorkloadIdentityPool::Representation
626
- command.request_object = workload_identity_pool_object
2419
+ def create_project_location_workload_identity_pool_namespace_managed_identity(parent, workload_identity_pool_managed_identity_object = nil, workload_identity_pool_managed_identity_id: nil, fields: nil, quota_user: nil, options: nil, &block)
2420
+ command = make_simple_command(:post, 'v1/{+parent}/managedIdentities', options)
2421
+ command.request_representation = Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity::Representation
2422
+ command.request_object = workload_identity_pool_managed_identity_object
627
2423
  command.response_representation = Google::Apis::IamV1::Operation::Representation
628
2424
  command.response_class = Google::Apis::IamV1::Operation
629
2425
  command.params['parent'] = parent unless parent.nil?
630
- command.query['workloadIdentityPoolId'] = workload_identity_pool_id unless workload_identity_pool_id.nil?
2426
+ command.query['workloadIdentityPoolManagedIdentityId'] = workload_identity_pool_managed_identity_id unless workload_identity_pool_managed_identity_id.nil?
631
2427
  command.query['fields'] = fields unless fields.nil?
632
2428
  command.query['quotaUser'] = quota_user unless quota_user.nil?
633
2429
  execute_or_queue_command(command, &block)
634
2430
  end
635
2431
 
636
- # Deletes a WorkloadIdentityPool. You cannot use a deleted pool to exchange
637
- # external credentials for Google Cloud credentials. However, deletion does not
638
- # revoke credentials that have already been issued. Credentials issued for a
639
- # deleted pool do not grant access to resources. If the pool is undeleted, and
640
- # the credentials are not expired, they grant access again. You can undelete a
641
- # pool for 30 days. After 30 days, deletion is permanent. You cannot update
642
- # deleted pools. However, you can view and list them.
2432
+ # Deletes a WorkloadIdentityPoolManagedIdentity. You can undelete a managed
2433
+ # identity for 30 days. After 30 days, deletion is permanent.
643
2434
  # @param [String] name
644
- # Required. The name of the pool to delete.
2435
+ # Required. The name of the managed identity to delete.
2436
+ # @param [String] fields
2437
+ # Selector specifying which fields to include in a partial response.
2438
+ # @param [String] quota_user
2439
+ # Available to use for quota purposes for server-side applications. Can be any
2440
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2441
+ # @param [Google::Apis::RequestOptions] options
2442
+ # Request-specific options
2443
+ #
2444
+ # @yield [result, err] Result & error if block supplied
2445
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2446
+ # @yieldparam err [StandardError] error object if request failed
2447
+ #
2448
+ # @return [Google::Apis::IamV1::Operation]
2449
+ #
2450
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2451
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2452
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2453
+ def delete_project_location_workload_identity_pool_namespace_managed_identity(name, fields: nil, quota_user: nil, options: nil, &block)
2454
+ command = make_simple_command(:delete, 'v1/{+name}', options)
2455
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2456
+ command.response_class = Google::Apis::IamV1::Operation
2457
+ command.params['name'] = name unless name.nil?
2458
+ command.query['fields'] = fields unless fields.nil?
2459
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2460
+ execute_or_queue_command(command, &block)
2461
+ end
2462
+
2463
+ # Gets an individual WorkloadIdentityPoolManagedIdentity.
2464
+ # @param [String] name
2465
+ # Required. The name of the managed identity to retrieve.
2466
+ # @param [String] fields
2467
+ # Selector specifying which fields to include in a partial response.
2468
+ # @param [String] quota_user
2469
+ # Available to use for quota purposes for server-side applications. Can be any
2470
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2471
+ # @param [Google::Apis::RequestOptions] options
2472
+ # Request-specific options
2473
+ #
2474
+ # @yield [result, err] Result & error if block supplied
2475
+ # @yieldparam result [Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity] parsed result object
2476
+ # @yieldparam err [StandardError] error object if request failed
2477
+ #
2478
+ # @return [Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity]
2479
+ #
2480
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2481
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2482
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2483
+ def get_project_location_workload_identity_pool_namespace_managed_identity(name, fields: nil, quota_user: nil, options: nil, &block)
2484
+ command = make_simple_command(:get, 'v1/{+name}', options)
2485
+ command.response_representation = Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity::Representation
2486
+ command.response_class = Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity
2487
+ command.params['name'] = name unless name.nil?
2488
+ command.query['fields'] = fields unless fields.nil?
2489
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2490
+ execute_or_queue_command(command, &block)
2491
+ end
2492
+
2493
+ # Lists all non-deleted WorkloadIdentityPoolManagedIdentitys in a namespace. If `
2494
+ # show_deleted` is set to `true`, then deleted managed identities are also
2495
+ # listed.
2496
+ # @param [String] parent
2497
+ # Required. The parent resource to list managed identities for.
2498
+ # @param [Fixnum] page_size
2499
+ # The maximum number of managed identities to return. If unspecified, at most 50
2500
+ # managed identities are returned. The maximum value is 1000; values above are
2501
+ # 1000 truncated to 1000.
2502
+ # @param [String] page_token
2503
+ # A page token, received from a previous `
2504
+ # ListWorkloadIdentityPoolManagedIdentities` call. Provide this to retrieve the
2505
+ # subsequent page.
2506
+ # @param [Boolean] show_deleted
2507
+ # Whether to return soft-deleted managed identities.
2508
+ # @param [String] fields
2509
+ # Selector specifying which fields to include in a partial response.
2510
+ # @param [String] quota_user
2511
+ # Available to use for quota purposes for server-side applications. Can be any
2512
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2513
+ # @param [Google::Apis::RequestOptions] options
2514
+ # Request-specific options
2515
+ #
2516
+ # @yield [result, err] Result & error if block supplied
2517
+ # @yieldparam result [Google::Apis::IamV1::ListWorkloadIdentityPoolManagedIdentitiesResponse] parsed result object
2518
+ # @yieldparam err [StandardError] error object if request failed
2519
+ #
2520
+ # @return [Google::Apis::IamV1::ListWorkloadIdentityPoolManagedIdentitiesResponse]
2521
+ #
2522
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2523
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2524
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2525
+ def list_project_location_workload_identity_pool_namespace_managed_identities(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
2526
+ command = make_simple_command(:get, 'v1/{+parent}/managedIdentities', options)
2527
+ command.response_representation = Google::Apis::IamV1::ListWorkloadIdentityPoolManagedIdentitiesResponse::Representation
2528
+ command.response_class = Google::Apis::IamV1::ListWorkloadIdentityPoolManagedIdentitiesResponse
2529
+ command.params['parent'] = parent unless parent.nil?
2530
+ command.query['pageSize'] = page_size unless page_size.nil?
2531
+ command.query['pageToken'] = page_token unless page_token.nil?
2532
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
2533
+ command.query['fields'] = fields unless fields.nil?
2534
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2535
+ execute_or_queue_command(command, &block)
2536
+ end
2537
+
2538
+ # List all AttestationRule on a WorkloadIdentityPoolManagedIdentity.
2539
+ # @param [String] resource
2540
+ # Required. The resource name of the managed identity or namespace resource to
2541
+ # list attestation rules of.
2542
+ # @param [String] filter
2543
+ # Optional. A query filter. Supports the following function: * `container_ids()`:
2544
+ # Returns only the AttestationRules under the specific container ids. The
2545
+ # function expects a comma-delimited list with only project numbers and must use
2546
+ # the format `projects/`. For example: `container_ids(projects/, projects/,...)`.
2547
+ # @param [Fixnum] page_size
2548
+ # Optional. The maximum number of AttestationRules to return. If unspecified, at
2549
+ # most 50 AttestationRules are returned. The maximum value is 100; values above
2550
+ # 100 are truncated to 100.
2551
+ # @param [String] page_token
2552
+ # Optional. A page token, received from a previous `
2553
+ # ListWorkloadIdentityPoolProviderKeys` call. Provide this to retrieve the
2554
+ # subsequent page.
2555
+ # @param [String] fields
2556
+ # Selector specifying which fields to include in a partial response.
2557
+ # @param [String] quota_user
2558
+ # Available to use for quota purposes for server-side applications. Can be any
2559
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2560
+ # @param [Google::Apis::RequestOptions] options
2561
+ # Request-specific options
2562
+ #
2563
+ # @yield [result, err] Result & error if block supplied
2564
+ # @yieldparam result [Google::Apis::IamV1::ListAttestationRulesResponse] parsed result object
2565
+ # @yieldparam err [StandardError] error object if request failed
2566
+ #
2567
+ # @return [Google::Apis::IamV1::ListAttestationRulesResponse]
2568
+ #
2569
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2570
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2571
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2572
+ def list_project_location_workload_identity_pool_namespace_managed_identity_attestation_rules(resource, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
2573
+ command = make_simple_command(:get, 'v1/{+resource}:listAttestationRules', options)
2574
+ command.response_representation = Google::Apis::IamV1::ListAttestationRulesResponse::Representation
2575
+ command.response_class = Google::Apis::IamV1::ListAttestationRulesResponse
2576
+ command.params['resource'] = resource unless resource.nil?
2577
+ command.query['filter'] = filter unless filter.nil?
2578
+ command.query['pageSize'] = page_size unless page_size.nil?
2579
+ command.query['pageToken'] = page_token unless page_token.nil?
2580
+ command.query['fields'] = fields unless fields.nil?
2581
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2582
+ execute_or_queue_command(command, &block)
2583
+ end
2584
+
2585
+ # Updates an existing WorkloadIdentityPoolManagedIdentity in a
2586
+ # WorkloadIdentityPoolNamespace.
2587
+ # @param [String] name
2588
+ # Output only. The resource name of the managed identity.
2589
+ # @param [Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity] workload_identity_pool_managed_identity_object
2590
+ # @param [String] update_mask
2591
+ # Required. The list of fields to update.
2592
+ # @param [String] fields
2593
+ # Selector specifying which fields to include in a partial response.
2594
+ # @param [String] quota_user
2595
+ # Available to use for quota purposes for server-side applications. Can be any
2596
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2597
+ # @param [Google::Apis::RequestOptions] options
2598
+ # Request-specific options
2599
+ #
2600
+ # @yield [result, err] Result & error if block supplied
2601
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2602
+ # @yieldparam err [StandardError] error object if request failed
2603
+ #
2604
+ # @return [Google::Apis::IamV1::Operation]
2605
+ #
2606
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2607
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2608
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2609
+ def patch_project_location_workload_identity_pool_namespace_managed_identity(name, workload_identity_pool_managed_identity_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
2610
+ command = make_simple_command(:patch, 'v1/{+name}', options)
2611
+ command.request_representation = Google::Apis::IamV1::WorkloadIdentityPoolManagedIdentity::Representation
2612
+ command.request_object = workload_identity_pool_managed_identity_object
2613
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2614
+ command.response_class = Google::Apis::IamV1::Operation
2615
+ command.params['name'] = name unless name.nil?
2616
+ command.query['updateMask'] = update_mask unless update_mask.nil?
2617
+ command.query['fields'] = fields unless fields.nil?
2618
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2619
+ execute_or_queue_command(command, &block)
2620
+ end
2621
+
2622
+ # Remove an AttestationRule on a WorkloadIdentityPoolManagedIdentity.
2623
+ # @param [String] resource
2624
+ # Required. The resource name of the managed identity or namespace resource to
2625
+ # remove an attestation rule from.
2626
+ # @param [Google::Apis::IamV1::RemoveAttestationRuleRequest] remove_attestation_rule_request_object
2627
+ # @param [String] fields
2628
+ # Selector specifying which fields to include in a partial response.
2629
+ # @param [String] quota_user
2630
+ # Available to use for quota purposes for server-side applications. Can be any
2631
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2632
+ # @param [Google::Apis::RequestOptions] options
2633
+ # Request-specific options
2634
+ #
2635
+ # @yield [result, err] Result & error if block supplied
2636
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
2637
+ # @yieldparam err [StandardError] error object if request failed
2638
+ #
2639
+ # @return [Google::Apis::IamV1::Operation]
2640
+ #
2641
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2642
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2643
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2644
+ def remove_managed_identity_attestation_rule(resource, remove_attestation_rule_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2645
+ command = make_simple_command(:post, 'v1/{+resource}:removeAttestationRule', options)
2646
+ command.request_representation = Google::Apis::IamV1::RemoveAttestationRuleRequest::Representation
2647
+ command.request_object = remove_attestation_rule_request_object
2648
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2649
+ command.response_class = Google::Apis::IamV1::Operation
2650
+ command.params['resource'] = resource unless resource.nil?
2651
+ command.query['fields'] = fields unless fields.nil?
2652
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2653
+ execute_or_queue_command(command, &block)
2654
+ end
2655
+
2656
+ # Set all AttestationRule on a WorkloadIdentityPoolManagedIdentity. A maximum of
2657
+ # 50 AttestationRules can be set.
2658
+ # @param [String] resource
2659
+ # Required. The resource name of the managed identity or namespace resource to
2660
+ # add an attestation rule to.
2661
+ # @param [Google::Apis::IamV1::SetAttestationRulesRequest] set_attestation_rules_request_object
645
2662
  # @param [String] fields
646
2663
  # Selector specifying which fields to include in a partial response.
647
2664
  # @param [String] quota_user
@@ -659,19 +2676,23 @@ module Google
659
2676
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
660
2677
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
661
2678
  # @raise [Google::Apis::AuthorizationError] Authorization is required
662
- def delete_project_location_workload_identity_pool(name, fields: nil, quota_user: nil, options: nil, &block)
663
- command = make_simple_command(:delete, 'v1/{+name}', options)
2679
+ def set_managed_identity_attestation_rules(resource, set_attestation_rules_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2680
+ command = make_simple_command(:post, 'v1/{+resource}:setAttestationRules', options)
2681
+ command.request_representation = Google::Apis::IamV1::SetAttestationRulesRequest::Representation
2682
+ command.request_object = set_attestation_rules_request_object
664
2683
  command.response_representation = Google::Apis::IamV1::Operation::Representation
665
2684
  command.response_class = Google::Apis::IamV1::Operation
666
- command.params['name'] = name unless name.nil?
2685
+ command.params['resource'] = resource unless resource.nil?
667
2686
  command.query['fields'] = fields unless fields.nil?
668
2687
  command.query['quotaUser'] = quota_user unless quota_user.nil?
669
2688
  execute_or_queue_command(command, &block)
670
2689
  end
671
2690
 
672
- # Gets an individual WorkloadIdentityPool.
2691
+ # Undeletes a WorkloadIdentityPoolManagedIdentity, as long as it was deleted
2692
+ # fewer than 30 days ago.
673
2693
  # @param [String] name
674
- # Required. The name of the pool to retrieve.
2694
+ # Required. The name of the managed identity to undelete.
2695
+ # @param [Google::Apis::IamV1::UndeleteWorkloadIdentityPoolManagedIdentityRequest] undelete_workload_identity_pool_managed_identity_request_object
675
2696
  # @param [String] fields
676
2697
  # Selector specifying which fields to include in a partial response.
677
2698
  # @param [String] quota_user
@@ -681,36 +2702,30 @@ module Google
681
2702
  # Request-specific options
682
2703
  #
683
2704
  # @yield [result, err] Result & error if block supplied
684
- # @yieldparam result [Google::Apis::IamV1::WorkloadIdentityPool] parsed result object
2705
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
685
2706
  # @yieldparam err [StandardError] error object if request failed
686
2707
  #
687
- # @return [Google::Apis::IamV1::WorkloadIdentityPool]
2708
+ # @return [Google::Apis::IamV1::Operation]
688
2709
  #
689
2710
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
690
2711
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
691
2712
  # @raise [Google::Apis::AuthorizationError] Authorization is required
692
- def get_project_location_workload_identity_pool(name, fields: nil, quota_user: nil, options: nil, &block)
693
- command = make_simple_command(:get, 'v1/{+name}', options)
694
- command.response_representation = Google::Apis::IamV1::WorkloadIdentityPool::Representation
695
- command.response_class = Google::Apis::IamV1::WorkloadIdentityPool
2713
+ def undelete_workload_identity_pool_managed_identity(name, undelete_workload_identity_pool_managed_identity_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2714
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
2715
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkloadIdentityPoolManagedIdentityRequest::Representation
2716
+ command.request_object = undelete_workload_identity_pool_managed_identity_request_object
2717
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2718
+ command.response_class = Google::Apis::IamV1::Operation
696
2719
  command.params['name'] = name unless name.nil?
697
2720
  command.query['fields'] = fields unless fields.nil?
698
2721
  command.query['quotaUser'] = quota_user unless quota_user.nil?
699
2722
  execute_or_queue_command(command, &block)
700
2723
  end
701
2724
 
702
- # Lists all non-deleted WorkloadIdentityPools in a project. If `show_deleted` is
703
- # set to `true`, then deleted pools are also listed.
704
- # @param [String] parent
705
- # Required. The parent resource to list pools for.
706
- # @param [Fixnum] page_size
707
- # The maximum number of pools to return. If unspecified, at most 50 pools are
708
- # returned. The maximum value is 1000; values above are 1000 truncated to 1000.
709
- # @param [String] page_token
710
- # A page token, received from a previous `ListWorkloadIdentityPools` call.
711
- # Provide this to retrieve the subsequent page.
712
- # @param [Boolean] show_deleted
713
- # Whether to return soft-deleted pools.
2725
+ # Gets the latest state of a long-running operation. Clients can use this method
2726
+ # to poll the operation result at intervals as recommended by the API service.
2727
+ # @param [String] name
2728
+ # The name of the operation resource.
714
2729
  # @param [String] fields
715
2730
  # Selector specifying which fields to include in a partial response.
716
2731
  # @param [String] quota_user
@@ -720,33 +2735,28 @@ module Google
720
2735
  # Request-specific options
721
2736
  #
722
2737
  # @yield [result, err] Result & error if block supplied
723
- # @yieldparam result [Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse] parsed result object
2738
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
724
2739
  # @yieldparam err [StandardError] error object if request failed
725
2740
  #
726
- # @return [Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse]
2741
+ # @return [Google::Apis::IamV1::Operation]
727
2742
  #
728
2743
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
729
2744
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
730
2745
  # @raise [Google::Apis::AuthorizationError] Authorization is required
731
- def list_project_location_workload_identity_pools(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
732
- command = make_simple_command(:get, 'v1/{+parent}/workloadIdentityPools', options)
733
- command.response_representation = Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse::Representation
734
- command.response_class = Google::Apis::IamV1::ListWorkloadIdentityPoolsResponse
735
- command.params['parent'] = parent unless parent.nil?
736
- command.query['pageSize'] = page_size unless page_size.nil?
737
- command.query['pageToken'] = page_token unless page_token.nil?
738
- command.query['showDeleted'] = show_deleted unless show_deleted.nil?
2746
+ def get_project_location_workload_identity_pool_namespace_managed_identity_operation(name, fields: nil, quota_user: nil, options: nil, &block)
2747
+ command = make_simple_command(:get, 'v1/{+name}', options)
2748
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
2749
+ command.response_class = Google::Apis::IamV1::Operation
2750
+ command.params['name'] = name unless name.nil?
739
2751
  command.query['fields'] = fields unless fields.nil?
740
2752
  command.query['quotaUser'] = quota_user unless quota_user.nil?
741
2753
  execute_or_queue_command(command, &block)
742
2754
  end
743
2755
 
744
- # Updates an existing WorkloadIdentityPool.
2756
+ # Gets the latest state of a long-running operation. Clients can use this method
2757
+ # to poll the operation result at intervals as recommended by the API service.
745
2758
  # @param [String] name
746
- # Output only. The resource name of the pool.
747
- # @param [Google::Apis::IamV1::WorkloadIdentityPool] workload_identity_pool_object
748
- # @param [String] update_mask
749
- # Required. The list of fields to update.
2759
+ # The name of the operation resource.
750
2760
  # @param [String] fields
751
2761
  # Selector specifying which fields to include in a partial response.
752
2762
  # @param [String] quota_user
@@ -764,24 +2774,20 @@ module Google
764
2774
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
765
2775
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
766
2776
  # @raise [Google::Apis::AuthorizationError] Authorization is required
767
- def patch_project_location_workload_identity_pool(name, workload_identity_pool_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
768
- command = make_simple_command(:patch, 'v1/{+name}', options)
769
- command.request_representation = Google::Apis::IamV1::WorkloadIdentityPool::Representation
770
- command.request_object = workload_identity_pool_object
2777
+ def get_project_location_workload_identity_pool_namespace_managed_identity_workload_source_operation(name, fields: nil, quota_user: nil, options: nil, &block)
2778
+ command = make_simple_command(:get, 'v1/{+name}', options)
771
2779
  command.response_representation = Google::Apis::IamV1::Operation::Representation
772
2780
  command.response_class = Google::Apis::IamV1::Operation
773
2781
  command.params['name'] = name unless name.nil?
774
- command.query['updateMask'] = update_mask unless update_mask.nil?
775
2782
  command.query['fields'] = fields unless fields.nil?
776
2783
  command.query['quotaUser'] = quota_user unless quota_user.nil?
777
2784
  execute_or_queue_command(command, &block)
778
2785
  end
779
2786
 
780
- # Undeletes a WorkloadIdentityPool, as long as it was deleted fewer than 30 days
781
- # ago.
2787
+ # Gets the latest state of a long-running operation. Clients can use this method
2788
+ # to poll the operation result at intervals as recommended by the API service.
782
2789
  # @param [String] name
783
- # Required. The name of the pool to undelete.
784
- # @param [Google::Apis::IamV1::UndeleteWorkloadIdentityPoolRequest] undelete_workload_identity_pool_request_object
2790
+ # The name of the operation resource.
785
2791
  # @param [String] fields
786
2792
  # Selector specifying which fields to include in a partial response.
787
2793
  # @param [String] quota_user
@@ -799,10 +2805,8 @@ module Google
799
2805
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
800
2806
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
801
2807
  # @raise [Google::Apis::AuthorizationError] Authorization is required
802
- def undelete_workload_identity_pool(name, undelete_workload_identity_pool_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
803
- command = make_simple_command(:post, 'v1/{+name}:undelete', options)
804
- command.request_representation = Google::Apis::IamV1::UndeleteWorkloadIdentityPoolRequest::Representation
805
- command.request_object = undelete_workload_identity_pool_request_object
2808
+ def get_project_location_workload_identity_pool_namespace_operation(name, fields: nil, quota_user: nil, options: nil, &block)
2809
+ command = make_simple_command(:get, 'v1/{+name}', options)
806
2810
  command.response_representation = Google::Apis::IamV1::Operation::Representation
807
2811
  command.response_class = Google::Apis::IamV1::Operation
808
2812
  command.params['name'] = name unless name.nil?
@@ -1058,6 +3062,181 @@ module Google
1058
3062
  execute_or_queue_command(command, &block)
1059
3063
  end
1060
3064
 
3065
+ # Create a new WorkloadIdentityPoolProviderKey in a WorkloadIdentityPoolProvider.
3066
+ # @param [String] parent
3067
+ # Required. The parent provider resource to create the key in.
3068
+ # @param [Google::Apis::IamV1::WorkloadIdentityPoolProviderKey] workload_identity_pool_provider_key_object
3069
+ # @param [String] workload_identity_pool_provider_key_id
3070
+ # Required. The ID to use for the key, which becomes the final component of the
3071
+ # resource name. This value should be 4-32 characters, and may contain the
3072
+ # characters [a-z0-9-].
3073
+ # @param [String] fields
3074
+ # Selector specifying which fields to include in a partial response.
3075
+ # @param [String] quota_user
3076
+ # Available to use for quota purposes for server-side applications. Can be any
3077
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3078
+ # @param [Google::Apis::RequestOptions] options
3079
+ # Request-specific options
3080
+ #
3081
+ # @yield [result, err] Result & error if block supplied
3082
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
3083
+ # @yieldparam err [StandardError] error object if request failed
3084
+ #
3085
+ # @return [Google::Apis::IamV1::Operation]
3086
+ #
3087
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3088
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3089
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3090
+ def create_project_location_workload_identity_pool_provider_key(parent, workload_identity_pool_provider_key_object = nil, workload_identity_pool_provider_key_id: nil, fields: nil, quota_user: nil, options: nil, &block)
3091
+ command = make_simple_command(:post, 'v1/{+parent}/keys', options)
3092
+ command.request_representation = Google::Apis::IamV1::WorkloadIdentityPoolProviderKey::Representation
3093
+ command.request_object = workload_identity_pool_provider_key_object
3094
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
3095
+ command.response_class = Google::Apis::IamV1::Operation
3096
+ command.params['parent'] = parent unless parent.nil?
3097
+ command.query['workloadIdentityPoolProviderKeyId'] = workload_identity_pool_provider_key_id unless workload_identity_pool_provider_key_id.nil?
3098
+ command.query['fields'] = fields unless fields.nil?
3099
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3100
+ execute_or_queue_command(command, &block)
3101
+ end
3102
+
3103
+ # Deletes an WorkloadIdentityPoolProviderKey. You can undelete a key for 30 days.
3104
+ # After 30 days, deletion is permanent.
3105
+ # @param [String] name
3106
+ # Required. The name of the encryption key to delete.
3107
+ # @param [String] fields
3108
+ # Selector specifying which fields to include in a partial response.
3109
+ # @param [String] quota_user
3110
+ # Available to use for quota purposes for server-side applications. Can be any
3111
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3112
+ # @param [Google::Apis::RequestOptions] options
3113
+ # Request-specific options
3114
+ #
3115
+ # @yield [result, err] Result & error if block supplied
3116
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
3117
+ # @yieldparam err [StandardError] error object if request failed
3118
+ #
3119
+ # @return [Google::Apis::IamV1::Operation]
3120
+ #
3121
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3122
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3123
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3124
+ def delete_project_location_workload_identity_pool_provider_key(name, fields: nil, quota_user: nil, options: nil, &block)
3125
+ command = make_simple_command(:delete, 'v1/{+name}', options)
3126
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
3127
+ command.response_class = Google::Apis::IamV1::Operation
3128
+ command.params['name'] = name unless name.nil?
3129
+ command.query['fields'] = fields unless fields.nil?
3130
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3131
+ execute_or_queue_command(command, &block)
3132
+ end
3133
+
3134
+ # Gets an individual WorkloadIdentityPoolProviderKey.
3135
+ # @param [String] name
3136
+ # Required. The name of the key to retrieve.
3137
+ # @param [String] fields
3138
+ # Selector specifying which fields to include in a partial response.
3139
+ # @param [String] quota_user
3140
+ # Available to use for quota purposes for server-side applications. Can be any
3141
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3142
+ # @param [Google::Apis::RequestOptions] options
3143
+ # Request-specific options
3144
+ #
3145
+ # @yield [result, err] Result & error if block supplied
3146
+ # @yieldparam result [Google::Apis::IamV1::WorkloadIdentityPoolProviderKey] parsed result object
3147
+ # @yieldparam err [StandardError] error object if request failed
3148
+ #
3149
+ # @return [Google::Apis::IamV1::WorkloadIdentityPoolProviderKey]
3150
+ #
3151
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3152
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3153
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3154
+ def get_project_location_workload_identity_pool_provider_key(name, fields: nil, quota_user: nil, options: nil, &block)
3155
+ command = make_simple_command(:get, 'v1/{+name}', options)
3156
+ command.response_representation = Google::Apis::IamV1::WorkloadIdentityPoolProviderKey::Representation
3157
+ command.response_class = Google::Apis::IamV1::WorkloadIdentityPoolProviderKey
3158
+ command.params['name'] = name unless name.nil?
3159
+ command.query['fields'] = fields unless fields.nil?
3160
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3161
+ execute_or_queue_command(command, &block)
3162
+ end
3163
+
3164
+ # Lists all non-deleted WorkloadIdentityPoolProviderKeys in a project. If
3165
+ # show_deleted is set to `true`, then deleted pools are also listed.
3166
+ # @param [String] parent
3167
+ # Required. The parent provider resource to list encryption keys for.
3168
+ # @param [Fixnum] page_size
3169
+ # The maximum number of keys to return. If unspecified, all keys are returned.
3170
+ # The maximum value is 10; values above 10 are truncated to 10.
3171
+ # @param [String] page_token
3172
+ # A page token, received from a previous `ListWorkloadIdentityPoolProviderKeys`
3173
+ # call. Provide this to retrieve the subsequent page.
3174
+ # @param [Boolean] show_deleted
3175
+ # Whether to return soft deleted resources as well.
3176
+ # @param [String] fields
3177
+ # Selector specifying which fields to include in a partial response.
3178
+ # @param [String] quota_user
3179
+ # Available to use for quota purposes for server-side applications. Can be any
3180
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3181
+ # @param [Google::Apis::RequestOptions] options
3182
+ # Request-specific options
3183
+ #
3184
+ # @yield [result, err] Result & error if block supplied
3185
+ # @yieldparam result [Google::Apis::IamV1::ListWorkloadIdentityPoolProviderKeysResponse] parsed result object
3186
+ # @yieldparam err [StandardError] error object if request failed
3187
+ #
3188
+ # @return [Google::Apis::IamV1::ListWorkloadIdentityPoolProviderKeysResponse]
3189
+ #
3190
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3191
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3192
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3193
+ def list_project_location_workload_identity_pool_provider_keys(parent, page_size: nil, page_token: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
3194
+ command = make_simple_command(:get, 'v1/{+parent}/keys', options)
3195
+ command.response_representation = Google::Apis::IamV1::ListWorkloadIdentityPoolProviderKeysResponse::Representation
3196
+ command.response_class = Google::Apis::IamV1::ListWorkloadIdentityPoolProviderKeysResponse
3197
+ command.params['parent'] = parent unless parent.nil?
3198
+ command.query['pageSize'] = page_size unless page_size.nil?
3199
+ command.query['pageToken'] = page_token unless page_token.nil?
3200
+ command.query['showDeleted'] = show_deleted unless show_deleted.nil?
3201
+ command.query['fields'] = fields unless fields.nil?
3202
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3203
+ execute_or_queue_command(command, &block)
3204
+ end
3205
+
3206
+ # Undeletes an WorkloadIdentityPoolProviderKey, as long as it was deleted fewer
3207
+ # than 30 days ago.
3208
+ # @param [String] name
3209
+ # Required. The name of the encryption key to undelete.
3210
+ # @param [Google::Apis::IamV1::UndeleteWorkloadIdentityPoolProviderKeyRequest] undelete_workload_identity_pool_provider_key_request_object
3211
+ # @param [String] fields
3212
+ # Selector specifying which fields to include in a partial response.
3213
+ # @param [String] quota_user
3214
+ # Available to use for quota purposes for server-side applications. Can be any
3215
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3216
+ # @param [Google::Apis::RequestOptions] options
3217
+ # Request-specific options
3218
+ #
3219
+ # @yield [result, err] Result & error if block supplied
3220
+ # @yieldparam result [Google::Apis::IamV1::Operation] parsed result object
3221
+ # @yieldparam err [StandardError] error object if request failed
3222
+ #
3223
+ # @return [Google::Apis::IamV1::Operation]
3224
+ #
3225
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3226
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3227
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3228
+ def undelete_workload_identity_pool_provider_key(name, undelete_workload_identity_pool_provider_key_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
3229
+ command = make_simple_command(:post, 'v1/{+name}:undelete', options)
3230
+ command.request_representation = Google::Apis::IamV1::UndeleteWorkloadIdentityPoolProviderKeyRequest::Representation
3231
+ command.request_object = undelete_workload_identity_pool_provider_key_request_object
3232
+ command.response_representation = Google::Apis::IamV1::Operation::Representation
3233
+ command.response_class = Google::Apis::IamV1::Operation
3234
+ command.params['name'] = name unless name.nil?
3235
+ command.query['fields'] = fields unless fields.nil?
3236
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3237
+ execute_or_queue_command(command, &block)
3238
+ end
3239
+
1061
3240
  # Gets the latest state of a long-running operation. Clients can use this method
1062
3241
  # to poll the operation result at intervals as recommended by the API service.
1063
3242
  # @param [String] name
@@ -1123,15 +3302,15 @@ module Google
1123
3302
  # Creates a new custom Role.
1124
3303
  # @param [String] parent
1125
3304
  # The `parent` parameter's value depends on the target resource for the request,
1126
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
1127
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
3305
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
3306
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1128
3307
  # organizations.roles). Each resource type's `parent` value format is described
1129
- # below: * [`projects.roles.create()`](https://cloud.google.com/iam/reference/
3308
+ # below: * [projects.roles.create](https://cloud.google.com/iam/docs/reference/
1130
3309
  # rest/v1/projects.roles/create): `projects/`PROJECT_ID``. This method creates
1131
3310
  # project-level [custom roles](https://cloud.google.com/iam/docs/understanding-
1132
3311
  # custom-roles). Example request URL: `https://iam.googleapis.com/v1/projects/`
1133
- # PROJECT_ID`/roles` * [`organizations.roles.create()`](https://cloud.google.com/
1134
- # iam/reference/rest/v1/organizations.roles/create): `organizations/`
3312
+ # PROJECT_ID`/roles` * [organizations.roles.create](https://cloud.google.com/iam/
3313
+ # docs/reference/rest/v1/organizations.roles/create): `organizations/`
1135
3314
  # ORGANIZATION_ID``. This method creates organization-level [custom roles](https:
1136
3315
  # //cloud.google.com/iam/docs/understanding-custom-roles). Example request URL: `
1137
3316
  # https://iam.googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles` Note:
@@ -1171,22 +3350,25 @@ module Google
1171
3350
  # occur immediately: * You cannot bind a principal to the custom role in an IAM
1172
3351
  # Policy. * Existing bindings to the custom role are not changed, but they have
1173
3352
  # no effect. * By default, the response from ListRoles does not include the
1174
- # custom role. You have 7 days to undelete the custom role. After 7 days, the
1175
- # following changes occur: * The custom role is permanently deleted and cannot
1176
- # be recovered. * If an IAM policy contains a binding to the custom role, the
1177
- # binding is permanently removed.
3353
+ # custom role. A deleted custom role still counts toward the [custom role limit](
3354
+ # https://cloud.google.com/iam/help/limits) until it is permanently deleted. You
3355
+ # have 7 days to undelete the custom role. After 7 days, the following changes
3356
+ # occur: * The custom role is permanently deleted and cannot be recovered. * If
3357
+ # an IAM policy contains a binding to the custom role, the binding is
3358
+ # permanently removed. * The custom role no longer counts toward your custom
3359
+ # role limit.
1178
3360
  # @param [String] name
1179
3361
  # The `name` parameter's value depends on the target resource for the request,
1180
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
1181
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
3362
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
3363
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1182
3364
  # organizations.roles). Each resource type's `name` value format is described
1183
- # below: * [`projects.roles.delete()`](https://cloud.google.com/iam/reference/
3365
+ # below: * [projects.roles.delete](https://cloud.google.com/iam/docs/reference/
1184
3366
  # rest/v1/projects.roles/delete): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``.
1185
3367
  # This method deletes only [custom roles](https://cloud.google.com/iam/docs/
1186
3368
  # understanding-custom-roles) that have been created at the project level.
1187
3369
  # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
1188
- # roles/`CUSTOM_ROLE_ID`` * [`organizations.roles.delete()`](https://cloud.
1189
- # google.com/iam/reference/rest/v1/organizations.roles/delete): `organizations/`
3370
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.delete](https://cloud.google.
3371
+ # com/iam/docs/reference/rest/v1/organizations.roles/delete): `organizations/`
1190
3372
  # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method deletes only [custom
1191
3373
  # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
1192
3374
  # been created at the organization level. Example request URL: `https://iam.
@@ -1226,26 +3408,27 @@ module Google
1226
3408
  # Gets the definition of a Role.
1227
3409
  # @param [String] name
1228
3410
  # The `name` parameter's value depends on the target resource for the request,
1229
- # namely [`roles`](https://cloud.google.com/iam/reference/rest/v1/roles), [`
1230
- # projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles), or [
1231
- # `organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.
1232
- # roles). Each resource type's `name` value format is described below: * [`roles.
1233
- # get()`](https://cloud.google.com/iam/reference/rest/v1/roles/get): `roles/`
1234
- # ROLE_NAME``. This method returns results from all [predefined roles](https://
1235
- # cloud.google.com/iam/docs/understanding-roles#predefined_roles) in Cloud IAM.
1236
- # Example request URL: `https://iam.googleapis.com/v1/roles/`ROLE_NAME`` * [`
1237
- # projects.roles.get()`](https://cloud.google.com/iam/reference/rest/v1/projects.
1238
- # roles/get): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``. This method
1239
- # returns only [custom roles](https://cloud.google.com/iam/docs/understanding-
1240
- # custom-roles) that have been created at the project level. Example request URL:
1241
- # `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID`` *
1242
- # [`organizations.roles.get()`](https://cloud.google.com/iam/reference/rest/v1/
1243
- # organizations.roles/get): `organizations/`ORGANIZATION_ID`/roles/`
1244
- # CUSTOM_ROLE_ID``. This method returns only [custom roles](https://cloud.google.
1245
- # com/iam/docs/understanding-custom-roles) that have been created at the
1246
- # organization level. Example request URL: `https://iam.googleapis.com/v1/
1247
- # organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note: Wildcard (*)
1248
- # values are invalid; you must specify a complete project ID or organization ID.
3411
+ # namely [roles](https://cloud.google.com/iam/docs/reference/rest/v1/roles), [
3412
+ # projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles),
3413
+ # or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
3414
+ # organizations.roles). Each resource type's `name` value format is described
3415
+ # below: * [roles.get](https://cloud.google.com/iam/docs/reference/rest/v1/roles/
3416
+ # get): `roles/`ROLE_NAME``. This method returns results from all [predefined
3417
+ # roles](https://cloud.google.com/iam/docs/understanding-roles#predefined_roles)
3418
+ # in IAM. Example request URL: `https://iam.googleapis.com/v1/roles/`ROLE_NAME``
3419
+ # * [projects.roles.get](https://cloud.google.com/iam/docs/reference/rest/v1/
3420
+ # projects.roles/get): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``. This
3421
+ # method returns only [custom roles](https://cloud.google.com/iam/docs/
3422
+ # understanding-custom-roles) that have been created at the project level.
3423
+ # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
3424
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.get](https://cloud.google.com/
3425
+ # iam/docs/reference/rest/v1/organizations.roles/get): `organizations/`
3426
+ # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method returns only [custom
3427
+ # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
3428
+ # been created at the organization level. Example request URL: `https://iam.
3429
+ # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
3430
+ # Wildcard (*) values are invalid; you must specify a complete project ID or
3431
+ # organization ID.
1249
3432
  # @param [String] fields
1250
3433
  # Selector specifying which fields to include in a partial response.
1251
3434
  # @param [String] quota_user
@@ -1277,25 +3460,25 @@ module Google
1277
3460
  # defined for an organization or project.
1278
3461
  # @param [String] parent
1279
3462
  # The `parent` parameter's value depends on the target resource for the request,
1280
- # namely [`roles`](https://cloud.google.com/iam/reference/rest/v1/roles), [`
1281
- # projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles), or [
1282
- # `organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.
1283
- # roles). Each resource type's `parent` value format is described below: * [`
1284
- # roles.list()`](https://cloud.google.com/iam/reference/rest/v1/roles/list): An
1285
- # empty string. This method doesn't require a resource; it simply returns all [
1286
- # predefined roles](https://cloud.google.com/iam/docs/understanding-roles#
1287
- # predefined_roles) in Cloud IAM. Example request URL: `https://iam.googleapis.
1288
- # com/v1/roles` * [`projects.roles.list()`](https://cloud.google.com/iam/
1289
- # reference/rest/v1/projects.roles/list): `projects/`PROJECT_ID``. This method
1290
- # lists all project-level [custom roles](https://cloud.google.com/iam/docs/
1291
- # understanding-custom-roles). Example request URL: `https://iam.googleapis.com/
1292
- # v1/projects/`PROJECT_ID`/roles` * [`organizations.roles.list()`](https://cloud.
1293
- # google.com/iam/reference/rest/v1/organizations.roles/list): `organizations/`
1294
- # ORGANIZATION_ID``. This method lists all organization-level [custom roles](
1295
- # https://cloud.google.com/iam/docs/understanding-custom-roles). Example request
1296
- # URL: `https://iam.googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles`
1297
- # Note: Wildcard (*) values are invalid; you must specify a complete project ID
1298
- # or organization ID.
3463
+ # namely [roles](https://cloud.google.com/iam/docs/reference/rest/v1/roles), [
3464
+ # projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles),
3465
+ # or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
3466
+ # organizations.roles). Each resource type's `parent` value format is described
3467
+ # below: * [roles.list](https://cloud.google.com/iam/docs/reference/rest/v1/
3468
+ # roles/list): An empty string. This method doesn't require a resource; it
3469
+ # simply returns all [predefined roles](https://cloud.google.com/iam/docs/
3470
+ # understanding-roles#predefined_roles) in IAM. Example request URL: `https://
3471
+ # iam.googleapis.com/v1/roles` * [projects.roles.list](https://cloud.google.com/
3472
+ # iam/docs/reference/rest/v1/projects.roles/list): `projects/`PROJECT_ID``. This
3473
+ # method lists all project-level [custom roles](https://cloud.google.com/iam/
3474
+ # docs/understanding-custom-roles). Example request URL: `https://iam.googleapis.
3475
+ # com/v1/projects/`PROJECT_ID`/roles` * [organizations.roles.list](https://cloud.
3476
+ # google.com/iam/docs/reference/rest/v1/organizations.roles/list): `
3477
+ # organizations/`ORGANIZATION_ID``. This method lists all organization-level [
3478
+ # custom roles](https://cloud.google.com/iam/docs/understanding-custom-roles).
3479
+ # Example request URL: `https://iam.googleapis.com/v1/organizations/`
3480
+ # ORGANIZATION_ID`/roles` Note: Wildcard (*) values are invalid; you must
3481
+ # specify a complete project ID or organization ID.
1299
3482
  # @param [Fixnum] page_size
1300
3483
  # Optional limit on the number of roles to include in the response. The default
1301
3484
  # is 300, and the maximum is 1,000.
@@ -1342,16 +3525,16 @@ module Google
1342
3525
  # Updates the definition of a custom Role.
1343
3526
  # @param [String] name
1344
3527
  # The `name` parameter's value depends on the target resource for the request,
1345
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
1346
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
3528
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
3529
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1347
3530
  # organizations.roles). Each resource type's `name` value format is described
1348
- # below: * [`projects.roles.patch()`](https://cloud.google.com/iam/reference/
3531
+ # below: * [projects.roles.patch](https://cloud.google.com/iam/docs/reference/
1349
3532
  # rest/v1/projects.roles/patch): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``.
1350
3533
  # This method updates only [custom roles](https://cloud.google.com/iam/docs/
1351
3534
  # understanding-custom-roles) that have been created at the project level.
1352
3535
  # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
1353
- # roles/`CUSTOM_ROLE_ID`` * [`organizations.roles.patch()`](https://cloud.google.
1354
- # com/iam/reference/rest/v1/organizations.roles/patch): `organizations/`
3536
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.patch](https://cloud.google.com/
3537
+ # iam/docs/reference/rest/v1/organizations.roles/patch): `organizations/`
1355
3538
  # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method updates only [custom
1356
3539
  # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
1357
3540
  # been created at the organization level. Example request URL: `https://iam.
@@ -1394,17 +3577,17 @@ module Google
1394
3577
  # Undeletes a custom Role.
1395
3578
  # @param [String] name
1396
3579
  # The `name` parameter's value depends on the target resource for the request,
1397
- # namely [`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.
1398
- # roles) or [`organizations`](https://cloud.google.com/iam/reference/rest/v1/
3580
+ # namely [projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.
3581
+ # roles) or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
1399
3582
  # organizations.roles). Each resource type's `name` value format is described
1400
- # below: * [`projects.roles.undelete()`](https://cloud.google.com/iam/reference/
3583
+ # below: * [projects.roles.undelete](https://cloud.google.com/iam/docs/reference/
1401
3584
  # rest/v1/projects.roles/undelete): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID`
1402
3585
  # `. This method undeletes only [custom roles](https://cloud.google.com/iam/docs/
1403
3586
  # understanding-custom-roles) that have been created at the project level.
1404
3587
  # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
1405
- # roles/`CUSTOM_ROLE_ID`` * [`organizations.roles.undelete()`](https://cloud.
1406
- # google.com/iam/reference/rest/v1/organizations.roles/undelete): `organizations/
1407
- # `ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method undeletes only [custom
3588
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.undelete](https://cloud.google.
3589
+ # com/iam/docs/reference/rest/v1/organizations.roles/undelete): `organizations/`
3590
+ # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method undeletes only [custom
1408
3591
  # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
1409
3592
  # been created at the organization level. Example request URL: `https://iam.
1410
3593
  # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
@@ -1485,10 +3668,16 @@ module Google
1485
3668
  # hours and watch for unintended consequences. If there are no unintended
1486
3669
  # consequences, you can delete the service account.
1487
3670
  # @param [String] name
1488
- # Required. The resource name of the service account in the following format: `
1489
- # projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for
1490
- # the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value
1491
- # can be the `email` address or the `unique_id` of the service account.
3671
+ # Required. The resource name of the service account. Use one of the following
3672
+ # formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/
3673
+ # `PROJECT_ID`/serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-
3674
+ # ` wildcard character instead of the project ID: * `projects/-/serviceAccounts/`
3675
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
3676
+ # avoid using the `-` wildcard character, because it can cause response messages
3677
+ # to contain misleading error codes. For example, if you try to access the
3678
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
3679
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
3680
+ # Not Found` error.
1492
3681
  # @param [String] fields
1493
3682
  # Selector specifying which fields to include in a partial response.
1494
3683
  # @param [String] quota_user
@@ -1528,10 +3717,16 @@ module Google
1528
3717
  # consequences. If there are no unintended consequences, you can delete the
1529
3718
  # service account with DeleteServiceAccount.
1530
3719
  # @param [String] name
1531
- # The resource name of the service account in the following format: `projects/`
1532
- # PROJECT_ID`/serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for the `
1533
- # PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can
1534
- # be the `email` address or the `unique_id` of the service account.
3720
+ # The resource name of the service account. Use one of the following formats: * `
3721
+ # projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/`PROJECT_ID`
3722
+ # /serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-` wildcard
3723
+ # character instead of the project ID: * `projects/-/serviceAccounts/`
3724
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
3725
+ # avoid using the `-` wildcard character, because it can cause response messages
3726
+ # to contain misleading error codes. For example, if you try to access the
3727
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
3728
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
3729
+ # Not Found` error.
1535
3730
  # @param [Google::Apis::IamV1::DisableServiceAccountRequest] disable_service_account_request_object
1536
3731
  # @param [String] fields
1537
3732
  # Selector specifying which fields to include in a partial response.
@@ -1568,10 +3763,16 @@ module Google
1568
3763
  # the service account because it was compromised—you cannot use this method to
1569
3764
  # enable the service account.
1570
3765
  # @param [String] name
1571
- # The resource name of the service account in the following format: `projects/`
1572
- # PROJECT_ID`/serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for the `
1573
- # PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can
1574
- # be the `email` address or the `unique_id` of the service account.
3766
+ # The resource name of the service account. Use one of the following formats: * `
3767
+ # projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/`PROJECT_ID`
3768
+ # /serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-` wildcard
3769
+ # character instead of the project ID: * `projects/-/serviceAccounts/`
3770
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
3771
+ # avoid using the `-` wildcard character, because it can cause response messages
3772
+ # to contain misleading error codes. For example, if you try to access the
3773
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
3774
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
3775
+ # Not Found` error.
1575
3776
  # @param [Google::Apis::IamV1::EnableServiceAccountRequest] enable_service_account_request_object
1576
3777
  # @param [String] fields
1577
3778
  # Selector specifying which fields to include in a partial response.
@@ -1604,10 +3805,16 @@ module Google
1604
3805
 
1605
3806
  # Gets a ServiceAccount.
1606
3807
  # @param [String] name
1607
- # Required. The resource name of the service account in the following format: `
1608
- # projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for
1609
- # the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value
1610
- # can be the `email` address or the `unique_id` of the service account.
3808
+ # Required. The resource name of the service account. Use one of the following
3809
+ # formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/
3810
+ # `PROJECT_ID`/serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-
3811
+ # ` wildcard character instead of the project ID: * `projects/-/serviceAccounts/`
3812
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
3813
+ # avoid using the `-` wildcard character, because it can cause response messages
3814
+ # to contain misleading error codes. For example, if you try to access the
3815
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
3816
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
3817
+ # Not Found` error.
1611
3818
  # @param [String] fields
1612
3819
  # Selector specifying which fields to include in a partial response.
1613
3820
  # @param [String] quota_user
@@ -1640,8 +3847,8 @@ module Google
1640
3847
  # does not tell you whether the service account has been granted any roles on
1641
3848
  # other resources. To check whether a service account has role grants on a
1642
3849
  # resource, use the `getIamPolicy` method for that resource. For example, to
1643
- # view the role grants for a project, call the Resource Manager API's [`projects.
1644
- # getIamPolicy`](https://cloud.google.com/resource-manager/reference/rest/v1/
3850
+ # view the role grants for a project, call the Resource Manager API's [projects.
3851
+ # getIamPolicy](https://cloud.google.com/resource-manager/reference/rest/v1/
1645
3852
  # projects/getIamPolicy) method.
1646
3853
  # @param [String] resource
1647
3854
  # REQUIRED: The resource for which the policy is being requested. See [Resource
@@ -1735,10 +3942,10 @@ module Google
1735
3942
  # character instead of the project ID: * `projects/-/serviceAccounts/`
1736
3943
  # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
1737
3944
  # avoid using the `-` wildcard character, because it can cause response messages
1738
- # to contain misleading error codes. For example, if you try to get the service
1739
- # account `projects/-/serviceAccounts/fake@example.com`, which does not exist,
1740
- # the response contains an HTTP `403 Forbidden` error instead of a `404 Not
1741
- # Found` error.
3945
+ # to contain misleading error codes. For example, if you try to access the
3946
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
3947
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
3948
+ # Not Found` error.
1742
3949
  # @param [Google::Apis::IamV1::PatchServiceAccountRequest] patch_service_account_request_object
1743
3950
  # @param [String] fields
1744
3951
  # Selector specifying which fields to include in a partial response.
@@ -1815,19 +4022,19 @@ module Google
1815
4022
  execute_or_queue_command(command, &block)
1816
4023
  end
1817
4024
 
1818
- # **Note:** This method is deprecated. Use the [`signBlob`](https://cloud.google.
1819
- # com/iam/help/rest-credentials/v1/projects.serviceAccounts/signBlob) method in
1820
- # the IAM Service Account Credentials API instead. If you currently use this
1821
- # method, see the [migration guide](https://cloud.google.com/iam/help/
1822
- # credentials/migrate-api) for instructions. Signs a blob using the system-
1823
- # managed private key for a ServiceAccount.
4025
+ # Signs a blob using the system-managed private key for a ServiceAccount.
1824
4026
  # @param [String] name
1825
4027
  # Required. Deprecated. [Migrate to Service Account Credentials API](https://
1826
4028
  # cloud.google.com/iam/help/credentials/migrate-api). The resource name of the
1827
- # service account in the following format: `projects/`PROJECT_ID`/
1828
- # serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for the `PROJECT_ID` will
1829
- # infer the project from the account. The `ACCOUNT` value can be the `email`
1830
- # address or the `unique_id` of the service account.
4029
+ # service account. Use one of the following formats: * `projects/`PROJECT_ID`/
4030
+ # serviceAccounts/`EMAIL_ADDRESS`` * `projects/`PROJECT_ID`/serviceAccounts/`
4031
+ # UNIQUE_ID`` As an alternative, you can use the `-` wildcard character instead
4032
+ # of the project ID: * `projects/-/serviceAccounts/`EMAIL_ADDRESS`` * `projects/-
4033
+ # /serviceAccounts/`UNIQUE_ID`` When possible, avoid using the `-` wildcard
4034
+ # character, because it can cause response messages to contain misleading error
4035
+ # codes. For example, if you try to access the service account `projects/-/
4036
+ # serviceAccounts/fake@example.com`, which does not exist, the response contains
4037
+ # an HTTP `403 Forbidden` error instead of a `404 Not Found` error.
1831
4038
  # @param [Google::Apis::IamV1::SignBlobRequest] sign_blob_request_object
1832
4039
  # @param [String] fields
1833
4040
  # Selector specifying which fields to include in a partial response.
@@ -1858,19 +4065,20 @@ module Google
1858
4065
  execute_or_queue_command(command, &block)
1859
4066
  end
1860
4067
 
1861
- # **Note:** This method is deprecated. Use the [`signJwt`](https://cloud.google.
1862
- # com/iam/help/rest-credentials/v1/projects.serviceAccounts/signJwt) method in
1863
- # the IAM Service Account Credentials API instead. If you currently use this
1864
- # method, see the [migration guide](https://cloud.google.com/iam/help/
1865
- # credentials/migrate-api) for instructions. Signs a JSON Web Token (JWT) using
1866
- # the system-managed private key for a ServiceAccount.
4068
+ # Signs a JSON Web Token (JWT) using the system-managed private key for a
4069
+ # ServiceAccount.
1867
4070
  # @param [String] name
1868
4071
  # Required. Deprecated. [Migrate to Service Account Credentials API](https://
1869
4072
  # cloud.google.com/iam/help/credentials/migrate-api). The resource name of the
1870
- # service account in the following format: `projects/`PROJECT_ID`/
1871
- # serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for the `PROJECT_ID` will
1872
- # infer the project from the account. The `ACCOUNT` value can be the `email`
1873
- # address or the `unique_id` of the service account.
4073
+ # service account. Use one of the following formats: * `projects/`PROJECT_ID`/
4074
+ # serviceAccounts/`EMAIL_ADDRESS`` * `projects/`PROJECT_ID`/serviceAccounts/`
4075
+ # UNIQUE_ID`` As an alternative, you can use the `-` wildcard character instead
4076
+ # of the project ID: * `projects/-/serviceAccounts/`EMAIL_ADDRESS`` * `projects/-
4077
+ # /serviceAccounts/`UNIQUE_ID`` When possible, avoid using the `-` wildcard
4078
+ # character, because it can cause response messages to contain misleading error
4079
+ # codes. For example, if you try to access the service account `projects/-/
4080
+ # serviceAccounts/fake@example.com`, which does not exist, the response contains
4081
+ # an HTTP `403 Forbidden` error instead of a `404 Not Found` error.
1874
4082
  # @param [Google::Apis::IamV1::SignJwtRequest] sign_jwt_request_object
1875
4083
  # @param [String] fields
1876
4084
  # Selector specifying which fields to include in a partial response.
@@ -1942,9 +4150,16 @@ module Google
1942
4150
  # account 30 days later. There is no way to restore a deleted service account
1943
4151
  # that has been permanently removed.
1944
4152
  # @param [String] name
1945
- # The resource name of the service account in the following format: `projects/`
1946
- # PROJECT_ID`/serviceAccounts/`ACCOUNT_UNIQUE_ID``. Using `-` as a wildcard for
1947
- # the `PROJECT_ID` will infer the project from the account.
4153
+ # The resource name of the service account. Use one of the following formats: * `
4154
+ # projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/`PROJECT_ID`
4155
+ # /serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-` wildcard
4156
+ # character instead of the project ID: * `projects/-/serviceAccounts/`
4157
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
4158
+ # avoid using the `-` wildcard character, because it can cause response messages
4159
+ # to contain misleading error codes. For example, if you try to access the
4160
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
4161
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
4162
+ # Not Found` error.
1948
4163
  # @param [Google::Apis::IamV1::UndeleteServiceAccountRequest] undelete_service_account_request_object
1949
4164
  # @param [String] fields
1950
4165
  # Selector specifying which fields to include in a partial response.
@@ -1985,10 +4200,10 @@ module Google
1985
4200
  # character instead of the project ID: * `projects/-/serviceAccounts/`
1986
4201
  # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
1987
4202
  # avoid using the `-` wildcard character, because it can cause response messages
1988
- # to contain misleading error codes. For example, if you try to get the service
1989
- # account `projects/-/serviceAccounts/fake@example.com`, which does not exist,
1990
- # the response contains an HTTP `403 Forbidden` error instead of a `404 Not
1991
- # Found` error.
4203
+ # to contain misleading error codes. For example, if you try to access the
4204
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
4205
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
4206
+ # Not Found` error.
1992
4207
  # @param [Google::Apis::IamV1::ServiceAccount] service_account_object
1993
4208
  # @param [String] fields
1994
4209
  # Selector specifying which fields to include in a partial response.
@@ -2021,10 +4236,16 @@ module Google
2021
4236
 
2022
4237
  # Creates a ServiceAccountKey.
2023
4238
  # @param [String] name
2024
- # Required. The resource name of the service account in the following format: `
2025
- # projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for
2026
- # the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value
2027
- # can be the `email` address or the `unique_id` of the service account.
4239
+ # Required. The resource name of the service account. Use one of the following
4240
+ # formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/
4241
+ # `PROJECT_ID`/serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-
4242
+ # ` wildcard character instead of the project ID: * `projects/-/serviceAccounts/`
4243
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
4244
+ # avoid using the `-` wildcard character, because it can cause response messages
4245
+ # to contain misleading error codes. For example, if you try to access the
4246
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
4247
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
4248
+ # Not Found` error.
2028
4249
  # @param [Google::Apis::IamV1::CreateServiceAccountKeyRequest] create_service_account_key_request_object
2029
4250
  # @param [String] fields
2030
4251
  # Selector specifying which fields to include in a partial response.
@@ -2058,11 +4279,17 @@ module Google
2058
4279
  # Deletes a ServiceAccountKey. Deleting a service account key does not revoke
2059
4280
  # short-lived credentials that have been issued based on the service account key.
2060
4281
  # @param [String] name
2061
- # Required. The resource name of the service account key in the following format:
2062
- # `projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT`/keys/`key``. Using `-` as a
2063
- # wildcard for the `PROJECT_ID` will infer the project from the account. The `
2064
- # ACCOUNT` value can be the `email` address or the `unique_id` of the service
2065
- # account.
4282
+ # Required. The resource name of the service account key. Use one of the
4283
+ # following formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`/
4284
+ # keys/`KEY_ID`` * `projects/`PROJECT_ID`/serviceAccounts/`UNIQUE_ID`/keys/`
4285
+ # KEY_ID`` As an alternative, you can use the `-` wildcard character instead of
4286
+ # the project ID: * `projects/-/serviceAccounts/`EMAIL_ADDRESS`/keys/`KEY_ID`` *
4287
+ # `projects/-/serviceAccounts/`UNIQUE_ID`/keys/`KEY_ID`` When possible, avoid
4288
+ # using the `-` wildcard character, because it can cause response messages to
4289
+ # contain misleading error codes. For example, if you try to access the service
4290
+ # account key `projects/-/serviceAccounts/fake@example.com/keys/fake-key`, which
4291
+ # does not exist, the response contains an HTTP `403 Forbidden` error instead of
4292
+ # a `404 Not Found` error.
2066
4293
  # @param [String] fields
2067
4294
  # Selector specifying which fields to include in a partial response.
2068
4295
  # @param [String] quota_user
@@ -2093,11 +4320,17 @@ module Google
2093
4320
  # Disable a ServiceAccountKey. A disabled service account key can be re-enabled
2094
4321
  # with EnableServiceAccountKey.
2095
4322
  # @param [String] name
2096
- # Required. The resource name of the service account key in the following format:
2097
- # `projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT`/keys/`key``. Using `-` as a
2098
- # wildcard for the `PROJECT_ID` will infer the project from the account. The `
2099
- # ACCOUNT` value can be the `email` address or the `unique_id` of the service
2100
- # account.
4323
+ # Required. The resource name of the service account key. Use one of the
4324
+ # following formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`/
4325
+ # keys/`KEY_ID`` * `projects/`PROJECT_ID`/serviceAccounts/`UNIQUE_ID`/keys/`
4326
+ # KEY_ID`` As an alternative, you can use the `-` wildcard character instead of
4327
+ # the project ID: * `projects/-/serviceAccounts/`EMAIL_ADDRESS`/keys/`KEY_ID`` *
4328
+ # `projects/-/serviceAccounts/`UNIQUE_ID`/keys/`KEY_ID`` When possible, avoid
4329
+ # using the `-` wildcard character, because it can cause response messages to
4330
+ # contain misleading error codes. For example, if you try to access the service
4331
+ # account key `projects/-/serviceAccounts/fake@example.com/keys/fake-key`, which
4332
+ # does not exist, the response contains an HTTP `403 Forbidden` error instead of
4333
+ # a `404 Not Found` error.
2101
4334
  # @param [Google::Apis::IamV1::DisableServiceAccountKeyRequest] disable_service_account_key_request_object
2102
4335
  # @param [String] fields
2103
4336
  # Selector specifying which fields to include in a partial response.
@@ -2130,11 +4363,17 @@ module Google
2130
4363
 
2131
4364
  # Enable a ServiceAccountKey.
2132
4365
  # @param [String] name
2133
- # Required. The resource name of the service account key in the following format:
2134
- # `projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT`/keys/`key``. Using `-` as a
2135
- # wildcard for the `PROJECT_ID` will infer the project from the account. The `
2136
- # ACCOUNT` value can be the `email` address or the `unique_id` of the service
2137
- # account.
4366
+ # Required. The resource name of the service account key. Use one of the
4367
+ # following formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`/
4368
+ # keys/`KEY_ID`` * `projects/`PROJECT_ID`/serviceAccounts/`UNIQUE_ID`/keys/`
4369
+ # KEY_ID`` As an alternative, you can use the `-` wildcard character instead of
4370
+ # the project ID: * `projects/-/serviceAccounts/`EMAIL_ADDRESS`/keys/`KEY_ID`` *
4371
+ # `projects/-/serviceAccounts/`UNIQUE_ID`/keys/`KEY_ID`` When possible, avoid
4372
+ # using the `-` wildcard character, because it can cause response messages to
4373
+ # contain misleading error codes. For example, if you try to access the service
4374
+ # account key `projects/-/serviceAccounts/fake@example.com/keys/fake-key`, which
4375
+ # does not exist, the response contains an HTTP `403 Forbidden` error instead of
4376
+ # a `404 Not Found` error.
2138
4377
  # @param [Google::Apis::IamV1::EnableServiceAccountKeyRequest] enable_service_account_key_request_object
2139
4378
  # @param [String] fields
2140
4379
  # Selector specifying which fields to include in a partial response.
@@ -2167,11 +4406,17 @@ module Google
2167
4406
 
2168
4407
  # Gets a ServiceAccountKey.
2169
4408
  # @param [String] name
2170
- # Required. The resource name of the service account key in the following format:
2171
- # `projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT`/keys/`key``. Using `-` as a
2172
- # wildcard for the `PROJECT_ID` will infer the project from the account. The `
2173
- # ACCOUNT` value can be the `email` address or the `unique_id` of the service
2174
- # account.
4409
+ # Required. The resource name of the service account key. Use one of the
4410
+ # following formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`/
4411
+ # keys/`KEY_ID`` * `projects/`PROJECT_ID`/serviceAccounts/`UNIQUE_ID`/keys/`
4412
+ # KEY_ID`` As an alternative, you can use the `-` wildcard character instead of
4413
+ # the project ID: * `projects/-/serviceAccounts/`EMAIL_ADDRESS`/keys/`KEY_ID`` *
4414
+ # `projects/-/serviceAccounts/`UNIQUE_ID`/keys/`KEY_ID`` When possible, avoid
4415
+ # using the `-` wildcard character, because it can cause response messages to
4416
+ # contain misleading error codes. For example, if you try to access the service
4417
+ # account key `projects/-/serviceAccounts/fake@example.com/keys/fake-key`, which
4418
+ # does not exist, the response contains an HTTP `403 Forbidden` error instead of
4419
+ # a `404 Not Found` error.
2175
4420
  # @param [String] public_key_type
2176
4421
  # Optional. The output format of the public key. The default is `TYPE_NONE`,
2177
4422
  # which means that the public key is not returned.
@@ -2205,10 +4450,16 @@ module Google
2205
4450
 
2206
4451
  # Lists every ServiceAccountKey for a service account.
2207
4452
  # @param [String] name
2208
- # Required. The resource name of the service account in the following format: `
2209
- # projects/`PROJECT_ID`/serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for
2210
- # the `PROJECT_ID`, will infer the project from the account. The `ACCOUNT` value
2211
- # can be the `email` address or the `unique_id` of the service account.
4453
+ # Required. The resource name of the service account. Use one of the following
4454
+ # formats: * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/
4455
+ # `PROJECT_ID`/serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-
4456
+ # ` wildcard character instead of the project ID: * `projects/-/serviceAccounts/`
4457
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
4458
+ # avoid using the `-` wildcard character, because it can cause response messages
4459
+ # to contain misleading error codes. For example, if you try to access the
4460
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
4461
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
4462
+ # Not Found` error.
2212
4463
  # @param [Array<String>, String] key_types
2213
4464
  # Filters the types of keys the user wants to include in the list response.
2214
4465
  # Duplicate key types are not allowed. If no key type is provided, all keys are
@@ -2245,10 +4496,16 @@ module Google
2245
4496
  # the public key with a ServiceAccount. After you upload the public key, you can
2246
4497
  # use the private key from the key pair as a service account key.
2247
4498
  # @param [String] name
2248
- # The resource name of the service account in the following format: `projects/`
2249
- # PROJECT_ID`/serviceAccounts/`ACCOUNT``. Using `-` as a wildcard for the `
2250
- # PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can
2251
- # be the `email` address or the `unique_id` of the service account.
4499
+ # The resource name of the service account key. Use one of the following formats:
4500
+ # * `projects/`PROJECT_ID`/serviceAccounts/`EMAIL_ADDRESS`` * `projects/`
4501
+ # PROJECT_ID`/serviceAccounts/`UNIQUE_ID`` As an alternative, you can use the `-`
4502
+ # wildcard character instead of the project ID: * `projects/-/serviceAccounts/`
4503
+ # EMAIL_ADDRESS`` * `projects/-/serviceAccounts/`UNIQUE_ID`` When possible,
4504
+ # avoid using the `-` wildcard character, because it can cause response messages
4505
+ # to contain misleading error codes. For example, if you try to access the
4506
+ # service account `projects/-/serviceAccounts/fake@example.com`, which does not
4507
+ # exist, the response contains an HTTP `403 Forbidden` error instead of a `404
4508
+ # Not Found` error.
2252
4509
  # @param [Google::Apis::IamV1::UploadServiceAccountKeyRequest] upload_service_account_key_request_object
2253
4510
  # @param [String] fields
2254
4511
  # Selector specifying which fields to include in a partial response.
@@ -2282,26 +4539,27 @@ module Google
2282
4539
  # Gets the definition of a Role.
2283
4540
  # @param [String] name
2284
4541
  # The `name` parameter's value depends on the target resource for the request,
2285
- # namely [`roles`](https://cloud.google.com/iam/reference/rest/v1/roles), [`
2286
- # projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles), or [
2287
- # `organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.
2288
- # roles). Each resource type's `name` value format is described below: * [`roles.
2289
- # get()`](https://cloud.google.com/iam/reference/rest/v1/roles/get): `roles/`
2290
- # ROLE_NAME``. This method returns results from all [predefined roles](https://
2291
- # cloud.google.com/iam/docs/understanding-roles#predefined_roles) in Cloud IAM.
2292
- # Example request URL: `https://iam.googleapis.com/v1/roles/`ROLE_NAME`` * [`
2293
- # projects.roles.get()`](https://cloud.google.com/iam/reference/rest/v1/projects.
2294
- # roles/get): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``. This method
2295
- # returns only [custom roles](https://cloud.google.com/iam/docs/understanding-
2296
- # custom-roles) that have been created at the project level. Example request URL:
2297
- # `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID`` *
2298
- # [`organizations.roles.get()`](https://cloud.google.com/iam/reference/rest/v1/
2299
- # organizations.roles/get): `organizations/`ORGANIZATION_ID`/roles/`
2300
- # CUSTOM_ROLE_ID``. This method returns only [custom roles](https://cloud.google.
2301
- # com/iam/docs/understanding-custom-roles) that have been created at the
2302
- # organization level. Example request URL: `https://iam.googleapis.com/v1/
2303
- # organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note: Wildcard (*)
2304
- # values are invalid; you must specify a complete project ID or organization ID.
4542
+ # namely [roles](https://cloud.google.com/iam/docs/reference/rest/v1/roles), [
4543
+ # projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles),
4544
+ # or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
4545
+ # organizations.roles). Each resource type's `name` value format is described
4546
+ # below: * [roles.get](https://cloud.google.com/iam/docs/reference/rest/v1/roles/
4547
+ # get): `roles/`ROLE_NAME``. This method returns results from all [predefined
4548
+ # roles](https://cloud.google.com/iam/docs/understanding-roles#predefined_roles)
4549
+ # in IAM. Example request URL: `https://iam.googleapis.com/v1/roles/`ROLE_NAME``
4550
+ # * [projects.roles.get](https://cloud.google.com/iam/docs/reference/rest/v1/
4551
+ # projects.roles/get): `projects/`PROJECT_ID`/roles/`CUSTOM_ROLE_ID``. This
4552
+ # method returns only [custom roles](https://cloud.google.com/iam/docs/
4553
+ # understanding-custom-roles) that have been created at the project level.
4554
+ # Example request URL: `https://iam.googleapis.com/v1/projects/`PROJECT_ID`/
4555
+ # roles/`CUSTOM_ROLE_ID`` * [organizations.roles.get](https://cloud.google.com/
4556
+ # iam/docs/reference/rest/v1/organizations.roles/get): `organizations/`
4557
+ # ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID``. This method returns only [custom
4558
+ # roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that have
4559
+ # been created at the organization level. Example request URL: `https://iam.
4560
+ # googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles/`CUSTOM_ROLE_ID`` Note:
4561
+ # Wildcard (*) values are invalid; you must specify a complete project ID or
4562
+ # organization ID.
2305
4563
  # @param [String] fields
2306
4564
  # Selector specifying which fields to include in a partial response.
2307
4565
  # @param [String] quota_user
@@ -2338,25 +4596,25 @@ module Google
2338
4596
  # Optional pagination token returned in an earlier ListRolesResponse.
2339
4597
  # @param [String] parent
2340
4598
  # The `parent` parameter's value depends on the target resource for the request,
2341
- # namely [`roles`](https://cloud.google.com/iam/reference/rest/v1/roles), [`
2342
- # projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles), or [
2343
- # `organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.
2344
- # roles). Each resource type's `parent` value format is described below: * [`
2345
- # roles.list()`](https://cloud.google.com/iam/reference/rest/v1/roles/list): An
2346
- # empty string. This method doesn't require a resource; it simply returns all [
2347
- # predefined roles](https://cloud.google.com/iam/docs/understanding-roles#
2348
- # predefined_roles) in Cloud IAM. Example request URL: `https://iam.googleapis.
2349
- # com/v1/roles` * [`projects.roles.list()`](https://cloud.google.com/iam/
2350
- # reference/rest/v1/projects.roles/list): `projects/`PROJECT_ID``. This method
2351
- # lists all project-level [custom roles](https://cloud.google.com/iam/docs/
2352
- # understanding-custom-roles). Example request URL: `https://iam.googleapis.com/
2353
- # v1/projects/`PROJECT_ID`/roles` * [`organizations.roles.list()`](https://cloud.
2354
- # google.com/iam/reference/rest/v1/organizations.roles/list): `organizations/`
2355
- # ORGANIZATION_ID``. This method lists all organization-level [custom roles](
2356
- # https://cloud.google.com/iam/docs/understanding-custom-roles). Example request
2357
- # URL: `https://iam.googleapis.com/v1/organizations/`ORGANIZATION_ID`/roles`
2358
- # Note: Wildcard (*) values are invalid; you must specify a complete project ID
2359
- # or organization ID.
4599
+ # namely [roles](https://cloud.google.com/iam/docs/reference/rest/v1/roles), [
4600
+ # projects](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles),
4601
+ # or [organizations](https://cloud.google.com/iam/docs/reference/rest/v1/
4602
+ # organizations.roles). Each resource type's `parent` value format is described
4603
+ # below: * [roles.list](https://cloud.google.com/iam/docs/reference/rest/v1/
4604
+ # roles/list): An empty string. This method doesn't require a resource; it
4605
+ # simply returns all [predefined roles](https://cloud.google.com/iam/docs/
4606
+ # understanding-roles#predefined_roles) in IAM. Example request URL: `https://
4607
+ # iam.googleapis.com/v1/roles` * [projects.roles.list](https://cloud.google.com/
4608
+ # iam/docs/reference/rest/v1/projects.roles/list): `projects/`PROJECT_ID``. This
4609
+ # method lists all project-level [custom roles](https://cloud.google.com/iam/
4610
+ # docs/understanding-custom-roles). Example request URL: `https://iam.googleapis.
4611
+ # com/v1/projects/`PROJECT_ID`/roles` * [organizations.roles.list](https://cloud.
4612
+ # google.com/iam/docs/reference/rest/v1/organizations.roles/list): `
4613
+ # organizations/`ORGANIZATION_ID``. This method lists all organization-level [
4614
+ # custom roles](https://cloud.google.com/iam/docs/understanding-custom-roles).
4615
+ # Example request URL: `https://iam.googleapis.com/v1/organizations/`
4616
+ # ORGANIZATION_ID`/roles` Note: Wildcard (*) values are invalid; you must
4617
+ # specify a complete project ID or organization ID.
2360
4618
  # @param [Boolean] show_deleted
2361
4619
  # Include Roles that have been deleted.
2362
4620
  # @param [String] view