module UkVehicleData
Constants
- API_BASE
- VERSION
Attributes
api_key[W]
Public Class Methods
api_key()
click to toggle source
# File lib/uk_vehicle_data.rb, line 23 def api_key end
request(method, resource, params={})
click to toggle source
# File lib/uk_vehicle_data.rb, line 29 def request method, resource, params={} vd_api_key = params[:auth_apikey] || UkVehicleData.api_key vd_api_nullitems = params[:api_nullitems] || 1 vd_version = params[:v] || 2 params.merge!({api_nullitems: vd_api_nullitems, v: vd_version, auth_apikey: vd_api_key}) defined? vd_api_key or raise( ConfigurationError, "UkVehicleData api key not configured" ) defined? method or raise( ArgumentError, "Request method has not been specified" ) defined? resource or raise( ArgumentError, "Request resource has not been specified" ) headers = { accept: :json, content_type: :json }.merge({params: params}) RestClient::Request.new({ method: method, url: API_BASE + resource, headers: headers }).execute do |response, request, result| str_response = response.to_str str_response.blank? ? '' : JSON.parse(str_response) end end