def build_request(name, args)
      build_args(args) if args
      uri = build_url(query_params: @query_params)
      @http = build_http(uri.host, uri.port)
      net_http = Kernel.const_get('Net::HTTP::' + name.to_s.capitalize)
      @request = build_request_headers(net_http.new(uri.request_uri))
      if @request_body &&
         (!@request_headers.key?('Content-Type') ||
          @request_headers['Content-Type'] == 'application/json')

        @request.body = @request_body.to_json
        @request['Content-Type'] = 'application/json'
      elsif !@request_body && (name.to_s == 'post')
        @request['Content-Type'] = ''
      else
        @request.body = @request_body
      end
      @http_options.each do |attribute, value|
        @http.send("#{attribute}=", value)
      end
      make_request(@http, @request)
    end
def build_request(name, args)
      build_args(args) if args
      uri = build_url(query_params: @query_params)
      @http = build_http(uri.host, uri.port)
      net_http = Kernel.const_get('Net::HTTP::' + name.to_s.capitalize)
      @request = build_request_headers(net_http.new(uri.request_uri))
      if @request_body &&
         (!@request_headers.key?('Content-Type') ||
          @request_headers['Content-Type'] == 'application/json')

        @request.body = @request_body.to_json
        @request['Content-Type'] = 'application/json'
      elsif !@request_body && (name.to_s == 'post')
        @request['Content-Type'] = ''
      else
        @request.body = @request_body
      end
      @http_options.each do |attribute, value|
        @http.send("#{attribute}=", value)
      end
      make_request(@http, @request)
    end
Build the API request for HTTP::NET

 * *Args*    :
   - +name+ -> method name, received from method_missing
   - +args+ -> args passed to the method
 * *Returns* :
   - A Response object from make_request