module Seekr::Client

Constants

BASE_URL

Public Instance Methods

get(method, params={}) click to toggle source
# File lib/seekr/client.rb, line 8
def get(method, params={})
  url = build_url(method, params)
  _get(url)
end

Private Instance Methods

_get(url) click to toggle source
# File lib/seekr/client.rb, line 14
def _get(url)
  RestClient.get url do |response, request, result, &block|
    case response.code
    when 200
      response
    when 403
      raise Seekr::HTTPForbidden
    end
  end
end
build_url(method, params={}) click to toggle source
# File lib/seekr/client.rb, line 25
def build_url(method, params={})
  query_params = default_params.merge(params).to_param
  "#{BASE_URL}#{method}.json?#{query_params}"
end
default_params() click to toggle source
# File lib/seekr/client.rb, line 30
def default_params
  timestamp = Time.zone.now.to_i
  hash = Digest::SHA1.hexdigest("#{Seekr.api_secret}#{timestamp}")
  {
    key: Seekr.api_key,
    ts: timestamp,
    hash: hash
  }
end