class Paymo::API

Public Class Methods

get(resource, method, options = {}) click to toggle source
# File lib/paymo/api.rb, line 9
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
methodize(resource, method) click to toggle source
# File lib/paymo/api.rb, line 4
def self.methodize(resource, method)
  method = method.to_s.gsub(/_([a-z]{1})/) { "#{$1.upcase}" }
  "#{resource}.#{method}"
end
post(resource, method, options = {}) click to toggle source
# File lib/paymo/api.rb, line 17
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