Sha256: 6f69300a36d610ff292370f72305ec5243452ac6504b86db1b7276dceb422ef1
Contents?: true
Size: 1020 Bytes
Versions: 1
Compression:
Stored size: 1020 Bytes
Contents
module Paymo class API def self.methodize(resource, method) method = method.to_s.gsub(/_([a-z]{1})/) { "#{$1.upcase}" } "#{resource}.#{method}" end def self.get(resource, method, options = {}) method = methodize(resource, method) options.merge!({ auth_token: Paymo.config.auth_token, api_key: Paymo.config.api_key, format: 'json' }) puts "curl #{API_ENDPOINT}paymo.#{method}?#{URI.encode_www_form(options)}" if Paymo.config.debug json = RestClient.get "#{API_ENDPOINT}paymo.#{method}", { params: options } JSON.parse(json) end def self.post(resource, method, options = {}) method = methodize(resource, method) options.merge!({ auth_token: Paymo.config.auth_token, api_key: Paymo.config.api_key, format: 'json' }) puts "curl -X POST -d '#{URI.encode_www_form(options)}' #{API_ENDPOINT}paymo.#{method}" if Paymo.config.debug json = RestClient.post "#{API_ENDPOINT}paymo.#{method}", options JSON.parse(json) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
paymo-0.0.2 | lib/paymo/api.rb |