def get(url, params: {}, headers: {}, options: {})
      enable_caching = options.fetch(:enable_caching, true)
      response_class = options[:response_class]
      APIClientCircuit.new(url).call do
        _wrapped_response _request(
          :get,
          url: url,
          params: params,
          headers: headers.merge(response_cache_opt_headers(enable_caching))),
          response_class: response_class
      end
    end
def get(url, params: {}, headers: {}, options: {})
      enable_caching = options.fetch(:enable_caching, true)
      response_class = options[:response_class]
      APIClientCircuit.new(url).call do
        _wrapped_response _request(
          :get,
          url: url,
          params: params,
          headers: headers.merge(response_cache_opt_headers(enable_caching))),
          response_class: response_class
      end
    end
Performs a GET HTTP request for the `url`, with optional
 query parameters (`params`) and additional headers (`headers`).

 @return an object that responds to `status` (integer), `headers` (hash),
 and `body`. The body is a `Hashie::Mash` if the response was JSON, a
 string otherwise.