class Synapsis::APIResource

Public Class Methods

class_name() click to toggle source
# File lib/synapsis/api_resource.rb, line 10
def self.class_name
  name.partition('::').last.downcase
end
parse_as_synapse_resource(response) click to toggle source
# File lib/synapsis/api_resource.rb, line 28
def self.parse_as_synapse_resource(response)
  return JSON.parse(response.body, object_class: Synapsis::Response)
end
request(method = :post, url, params) click to toggle source
# File lib/synapsis/api_resource.rb, line 2
def self.request(method = :post, url, params)
  Synapsis.connection.send(method) do |req|
    req.headers['Content-Type'] = 'application/json'
    req.url url
    req.body = JSON.generate(params)
  end
end
return_response(response) click to toggle source
# File lib/synapsis/api_resource.rb, line 18
def self.return_response(response)
  parsed_response = JSON.parse(response.body, object_class: Synapsis::Response)

  if response.success?
    return parsed_response
  else
    raise Synapsis::Error, parsed_response[class_name] || parsed_response['reason'] || parsed_response['error_message']
  end
end

Public Instance Methods

class_name() click to toggle source
# File lib/synapsis/api_resource.rb, line 14
def class_name
  self.class.name.partition('::').last.downcase
end