Class: Google::Apis::CloudresourcemanagerV2::CloudResourceManagerService

Inherits:
Google::Apis::Core::BaseService show all
Defined in:
generated/google/apis/cloudresourcemanager_v2/service.rb

Overview

Cloud Resource Manager API

Creates, reads, and updates metadata for Google Cloud Platform resource containers.

Examples:

require 'google/apis/cloudresourcemanager_v2'

Cloudresourcemanager = Google::Apis::CloudresourcemanagerV2 # Alias the module
service = Cloudresourcemanager::CloudResourceManagerService.new

See Also:

Instance Attribute Summary collapse

Attributes inherited from Google::Apis::Core::BaseService

#authorization, #base_path, #batch_path, #client, #client_options, #request_options, #root_url, #upload_path

Instance Method Summary collapse

Methods inherited from Google::Apis::Core::BaseService

#batch, #batch_upload, #fetch_all, #http

Methods included from Google::Apis::Core::Logging

#logger

Constructor Details

#initializeCloudResourceManagerService

Returns a new instance of CloudResourceManagerService


46
47
48
49
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 46

def initialize
  super('https://cloudresourcemanager.googleapis.com/', '')
  @batch_path = 'batch'
end

Instance Attribute Details

#keyString

Returns API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.

Returns:

  • (String)

    API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.


39
40
41
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 39

def key
  @key
end

#quota_userString

Returns Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

Returns:

  • (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.


44
45
46
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 44

def quota_user
  @quota_user
end

Instance Method Details

#create_folder(folder_object = nil, parent: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Operation

Creates a Folder in the resource hierarchy. Returns an Operation which can be used to track the progress of the folder creation workflow. Upon success the Operation.response field will be populated with the created Folder. In order to succeed, the addition of this new Folder must not violate the Folder naming, height or fanout constraints.

  • The Folder's display_name must be distinct from all other Folder's that share its parent.
  • The addition of the Folder must not cause the active Folder hierarchy to exceed a height of 4. Note, the full active + deleted Folder hierarchy is allowed to reach a height of 8; this provides additional headroom when moving folders that contain deleted folders.
  • The addition of the Folder must not cause the total number of Folders under its parent to exceed 100. If the operation fails due to a folder constraint violation, some errors may be returned by the CreateFolder request, with status code FAILED_PRECONDITION and an error description. Other folder constraint violations will be communicated in the Operation, with the specific PreconditionFailure returned via the details list in the Operation.error field. The caller must have resourcemanager.folders.create permission on the identified parent.

Parameters:

  • folder_object (Google::Apis::CloudresourcemanagerV2::Folder) (defaults to: nil)
  • parent (String)

    The resource name of the new Folder's parent. Must be of the form folders/folder_idor `organizations/`org_id.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


95
96
97
98
99
100
101
102
103
104
105
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 95

def create_folder(folder_object = nil, parent: nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:post, 'v2/folders', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation
  command.request_object = folder_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Operation::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Operation
  command.query['parent'] = parent unless parent.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#delete_folder(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Folder

Requests deletion of a Folder. The Folder is moved into the DELETE_REQUESTED state immediately, and is deleted approximately 30 days later. This method may only be called on an empty Folder in the ACTIVE state, where a Folder is empty if it doesn't contain any Folders or Projects in the ACTIVE state. The caller must have resourcemanager.folders.delete permission on the identified folder.

Parameters:

  • name (String)

    the resource name of the Folder to be deleted. Must be of the form folders/folder_id``.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


136
137
138
139
140
141
142
143
144
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 136

def delete_folder(name, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:delete, 'v2/{+name}', options)
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Folder
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#get_folder(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Folder

Retrieves a Folder identified by the supplied resource name. Valid Folder resource names have the format folders/folder_id` (for example,folders/1234). The caller must haveresourcemanager.folders.get` permission on the identified folder.

Parameters:

  • name (String)

    The resource name of the Folder to retrieve. Must be of the form folders/folder_id``.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


171
172
173
174
175
176
177
178
179
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 171

def get_folder(name, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:get, 'v2/{+name}', options)
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Folder
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#get_folder_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Policy

Gets the access control policy for a Folder. The returned policy may be empty if no such policy or resource exists. The resource field should be the Folder's resource name, e.g. "folders/1234". The caller must have resourcemanager.folders.getIamPolicy permission on the identified folder.

Parameters:

  • resource (String)

    REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.

  • get_iam_policy_request_object (Google::Apis::CloudresourcemanagerV2::GetIamPolicyRequest) (defaults to: nil)
  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


207
208
209
210
211
212
213
214
215
216
217
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 207

def get_folder_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:post, 'v2/{+resource}:getIamPolicy', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::GetIamPolicyRequest::Representation
  command.request_object = get_iam_policy_request_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Policy::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Policy
  command.params['resource'] = resource unless resource.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#get_operation(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Operation

Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.

Parameters:

  • name (String)

    The name of the operation resource.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


547
548
549
550
551
552
553
554
555
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 547

def get_operation(name, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:get, 'v1/{+name}', options)
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Operation::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Operation
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#list_folders(page_size: nil, page_token: nil, parent: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::ListFoldersResponse

Lists the Folders that are direct descendants of supplied parent resource. List provides a strongly consistent view of the Folders underneath the specified parent resource. List returns Folders sorted based upon the (ascending) lexical ordering of their display_name. The caller must have resourcemanager.folders.list permission on the identified parent.

Parameters:

  • page_size (Fixnum)

    The maximum number of Folders to return in the response. This field is optional.

  • page_token (String)

    A pagination token returned from a previous call to ListFolders that indicates where this listing should continue from. This field is optional.

  • parent (String)

    The resource name of the Organization or Folder whose Folders are being listed. Must be of the form folders/folder_idor `organizations/`org_id. Access to this method is controlled by checking the resourcemanager.folders.list permission on the parent.

  • show_deleted (Boolean)

    Controls whether Folders in the DELETE_REQUESTED state should be returned. Defaults to false. This field is optional.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


260
261
262
263
264
265
266
267
268
269
270
271
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 260

def list_folders(page_size: nil, page_token: nil, parent: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:get, 'v2/folders', options)
  command.response_representation = Google::Apis::CloudresourcemanagerV2::ListFoldersResponse::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::ListFoldersResponse
  command.query['pageSize'] = page_size unless page_size.nil?
  command.query['pageToken'] = page_token unless page_token.nil?
  command.query['parent'] = parent unless parent.nil?
  command.query['showDeleted'] = show_deleted unless show_deleted.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#move_folder(name, move_folder_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Operation

Moves a Folder under a new resource parent. Returns an Operation which can be used to track the progress of the folder move workflow. Upon success the Operation.response field will be populated with the moved Folder. Upon failure, a FolderOperationError categorizing the failure cause will be returned - if the failure occurs synchronously then the FolderOperationError will be returned via the Status.details field and if it occurs asynchronously then the FolderOperation will be returned via the the Operation.error field. In addition, the Operation.metadata field will be populated with a FolderOperation message as an aid to stateless clients. Folder moves will be rejected if they violate either the naming, height or fanout constraints described in the CreateFolder documentation. The caller must have resourcemanager.folders.move permission on the folder's current and proposed new parent.

Parameters:

  • name (String)

    The resource name of the Folder to move. Must be of the form folders/folder_id

  • move_folder_request_object (Google::Apis::CloudresourcemanagerV2::MoveFolderRequest) (defaults to: nil)
  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


311
312
313
314
315
316
317
318
319
320
321
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 311

def move_folder(name, move_folder_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:post, 'v2/{+name}:move', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::MoveFolderRequest::Representation
  command.request_object = move_folder_request_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Operation::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Operation
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#patch_folder(name, folder_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Folder

Updates a Folder, changing its display_name. Changes to the folder display_name will be rejected if they violate either the display_name formatting rules or naming constraints described in the CreateFolder documentation. The Folder's display name must start and end with a letter or digit, may contain letters, digits, spaces, hyphens and underscores and can be no longer than 30 characters. This is captured by the regular expression: \pL\pN?. The caller must have resourcemanager.folders.update permission on the identified folder. If the update fails due to the unique name constraint then a PreconditionFailure explaining this violation will be returned in the Status.details field.

Parameters:

  • name (String)

    Output only. The resource name of the Folder. Its format is folders/folder_id``, for example: "folders/1234".

  • folder_object (Google::Apis::CloudresourcemanagerV2::Folder) (defaults to: nil)
  • update_mask (String)

    Fields to be updated. Only the display_name can be updated.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


360
361
362
363
364
365
366
367
368
369
370
371
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 360

def patch_folder(name, folder_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:patch, 'v2/{+name}', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation
  command.request_object = folder_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Folder
  command.params['name'] = name unless name.nil?
  command.query['updateMask'] = update_mask unless update_mask.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#search_folders(search_folders_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::SearchFoldersResponse

Search for folders that match specific filter criteria. Search provides an eventually consistent view of the folders a user has access to which meet the specified filter criteria. This will only return folders on which the caller has the permission resourcemanager.folders.get.

Parameters:

  • search_folders_request_object (Google::Apis::CloudresourcemanagerV2::SearchFoldersRequest) (defaults to: nil)
  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


396
397
398
399
400
401
402
403
404
405
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 396

def search_folders(search_folders_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:post, 'v2/folders:search', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::SearchFoldersRequest::Representation
  command.request_object = search_folders_request_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::SearchFoldersResponse::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::SearchFoldersResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#set_folder_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Policy

Sets the access control policy on a Folder, replacing any existing policy. The resource field should be the Folder's resource name, e.g. "folders/1234". The caller must have resourcemanager.folders.setIamPolicy permission on the identified folder.

Parameters:

  • resource (String)

    REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.

  • set_iam_policy_request_object (Google::Apis::CloudresourcemanagerV2::SetIamPolicyRequest) (defaults to: nil)
  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


433
434
435
436
437
438
439
440
441
442
443
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 433

def set_folder_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:post, 'v2/{+resource}:setIamPolicy', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::SetIamPolicyRequest::Representation
  command.request_object = set_iam_policy_request_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Policy::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Policy
  command.params['resource'] = resource unless resource.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#test_folder_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::TestIamPermissionsResponse

Returns permissions that a caller has on the specified Folder. The resource field should be the Folder's resource name, e.g. "folders/1234". There are no permissions required for making this API call.

Parameters:

  • resource (String)

    REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.

  • test_iam_permissions_request_object (Google::Apis::CloudresourcemanagerV2::TestIamPermissionsRequest) (defaults to: nil)
  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


470
471
472
473
474
475
476
477
478
479
480
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 470

def test_folder_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:post, 'v2/{+resource}:testIamPermissions', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::TestIamPermissionsRequest::Representation
  command.request_object = test_iam_permissions_request_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::TestIamPermissionsResponse::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::TestIamPermissionsResponse
  command.params['resource'] = resource unless resource.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#undelete_folder(name, undelete_folder_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV2::Folder

Cancels the deletion request for a Folder. This method may only be called on a Folder in the DELETE_REQUESTED state. In order to succeed, the Folder's parent must be in the ACTIVE state. In addition, reintroducing the folder into the tree must not violate folder naming, height and fanout constraints described in the CreateFolder documentation. The caller must have resourcemanager.folders.undelete permission on the identified folder.

Parameters:

  • name (String)

    The resource name of the Folder to undelete. Must be of the form folders/folder_id``.

  • undelete_folder_request_object (Google::Apis::CloudresourcemanagerV2::UndeleteFolderRequest) (defaults to: nil)
  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:


513
514
515
516
517
518
519
520
521
522
523
# File 'generated/google/apis/cloudresourcemanager_v2/service.rb', line 513

def undelete_folder(name, undelete_folder_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:post, 'v2/{+name}:undelete', options)
  command.request_representation = Google::Apis::CloudresourcemanagerV2::UndeleteFolderRequest::Representation
  command.request_object = undelete_folder_request_object
  command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation
  command.response_class = Google::Apis::CloudresourcemanagerV2::Folder
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end