# File lib/fog/profitbricks/compute.rb, line 182
        def request(params)
          params[:headers] ||= {}
          params[:headers]["Authorization"] = "Basic #{auth_header}"
          params[:path_style] = false

          begin
            response = @connection.request(params)

          rescue Excon::Errors::Unauthorized => error
            raise error, Fog::JSON.decode(error.response.body)['messages']
          rescue Excon::Errors::HTTPStatusError => error
            raise error, Fog::JSON.decode(error.response.body)['messages']
          rescue Excon::Errors::InternalServerError => error
            raise error, Fog::JSON.decode(error.response.body)['messages']
          rescue Fog::Errors::NotFound => error
            raise error, Fog::JSON.decode(error.response.body)['messages']
          end

          if response && response.body && !response.body.empty?
            response.body = Fog::JSON.decode(response.body)
            response.body['requestId'] = get_request_id(response.headers)
          end
          response
        end