Method: OpenapiClient::ResourceRolesApi#remove_permissions_from_resource_role_with_http_info

Defined in:
lib/openapi_client/api/resource_roles_api.rb

#remove_permissions_from_resource_role_with_http_info(proj_id, env_id, resource_id, role_id, remove_role_permissions, opts = {}) ⇒ Array<(ResourceRoleRead, Integer, Hash)>

Remove Permissions from Role Remove permissions from role. If some of the permissions specified are already unassigned, will skip them.

Parameters:

  • proj_id (String)

    Either the unique id of the project, or the URL-friendly key of the project (i.e: the &quot;slug&quot;).

  • env_id (String)

    Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the &quot;slug&quot;).

  • resource_id (String)

    Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the &quot;slug&quot;).

  • role_id (String)

    Either the unique id of the role, or the URL-friendly key of the role (i.e: the &quot;slug&quot;).

  • remove_role_permissions (RemoveRolePermissions)
  • opts (Hash) (defaults to: {})

    the optional parameters

Returns:

  • (Array<(ResourceRoleRead, Integer, Hash)>)

    ResourceRoleRead data, response status code and response headers



652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
# File 'lib/openapi_client/api/resource_roles_api.rb', line 652

def remove_permissions_from_resource_role_with_http_info(proj_id, env_id, resource_id, role_id, remove_role_permissions, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: ResourceRolesApi.remove_permissions_from_resource_role ...'
  end
  # verify the required parameter 'proj_id' is set
  if @api_client.config.client_side_validation && proj_id.nil?
    fail ArgumentError, "Missing the required parameter 'proj_id' when calling ResourceRolesApi.remove_permissions_from_resource_role"
  end
  # verify the required parameter 'env_id' is set
  if @api_client.config.client_side_validation && env_id.nil?
    fail ArgumentError, "Missing the required parameter 'env_id' when calling ResourceRolesApi.remove_permissions_from_resource_role"
  end
  # verify the required parameter 'resource_id' is set
  if @api_client.config.client_side_validation && resource_id.nil?
    fail ArgumentError, "Missing the required parameter 'resource_id' when calling ResourceRolesApi.remove_permissions_from_resource_role"
  end
  # verify the required parameter 'role_id' is set
  if @api_client.config.client_side_validation && role_id.nil?
    fail ArgumentError, "Missing the required parameter 'role_id' when calling ResourceRolesApi.remove_permissions_from_resource_role"
  end
  # verify the required parameter 'remove_role_permissions' is set
  if @api_client.config.client_side_validation && remove_role_permissions.nil?
    fail ArgumentError, "Missing the required parameter 'remove_role_permissions' when calling ResourceRolesApi.remove_permissions_from_resource_role"
  end
  # resource path
  local_var_path = '/v2/schema/{proj_id}/{env_id}/resources/{resource_id}/roles/{role_id}/permissions'.sub('{' + 'proj_id' + '}', CGI.escape(proj_id.to_s)).sub('{' + 'env_id' + '}', CGI.escape(env_id.to_s)).sub('{' + 'resource_id' + '}', CGI.escape(resource_id.to_s)).sub('{' + 'role_id' + '}', CGI.escape(role_id.to_s))

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(remove_role_permissions)

  # return_type
  return_type = opts[:debug_return_type] || 'ResourceRoleRead'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['HTTPBearer']

  new_options = opts.merge(
    :operation => :"ResourceRolesApi.remove_permissions_from_resource_role",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: ResourceRolesApi#remove_permissions_from_resource_role\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end