def build_uri(verb, path, params = {})
      # Add any query string parameters
      if [:delete, :get].include?(verb)
        path = [path, to_query_string(params)].compact.join("?")
      end

      # Parse the URI
      uri = URI.parse(path)

      # Don't merge absolute URLs
      uri = URI.parse(File.join(endpoint, path)) unless uri.absolute?

      # Return the URI object
      uri
    end
def build_uri(verb, path, params = {})
      # Add any query string parameters
      if [:delete, :get].include?(verb)
        path = [path, to_query_string(params)].compact.join("?")
      end

      # Parse the URI
      uri = URI.parse(path)

      # Don't merge absolute URLs
      uri = URI.parse(File.join(endpoint, path)) unless uri.absolute?

      # Return the URI object
      uri
    end
Construct a URL from the given verb and path. If the request is a GET or
 DELETE request, the params are assumed to be query params are are
 converted as such using {Client#to_query_string}.

 If the path is relative, it is merged with the {Defaults.endpoint}
 attribute. If the path is absolute, it is converted to a URI object and
 returned.

 @param [Symbol] verb
   the lowercase HTTP verb (e.g. :+get+)
 @param [String] path
   the absolute or relative HTTP path (url) to get
 @param [Hash] params
   the list of params to build the URI with (for GET and DELETE requests)

 @return [URI]