module FullContact::Request

Defines HTTP request methods

Public Instance Methods

get(path, options={}, raw=false, faraday_options={}) click to toggle source

Perform an HTTP GET request

# File lib/fullcontact/request.rb, line 5
def get(path, options={}, raw=false, faraday_options={})
  request(:get, path, options, raw, faraday_options)
end

Private Instance Methods

formatted_path(path) click to toggle source
# File lib/fullcontact/request.rb, line 28
def formatted_path(path)
  [path, format].compact.join('.')
end
request(method, path, options, raw=false, faraday_options={}) click to toggle source

Perform an HTTP request

# File lib/fullcontact/request.rb, line 12
def request(method, path, options, raw=false, faraday_options={})
  if FullContact.options[:auth_type] == :query
    options[:apiKey] = FullContact.options[:api_key]
  end

  response = connection(raw, faraday_options).send(method) do |request|
    request.url(formatted_path(path), options)

    if FullContact.options[:auth_type] == :header
      request.headers[FullContact::Configuration::AUTH_HEADER_NAME] = FullContact.options[:api_key]
    end
  end

  raw ? response : response.body
end