class IdentityCRM::Resource
Public Class Methods
new(url, user, token)
click to toggle source
# File lib/identity_crm/resource.rb, line 2 def initialize url, user, token @url = url.chomp('/') @user = user @token = token end
Public Instance Methods
create(params: {})
click to toggle source
# File lib/identity_crm/resource.rb, line 8 def create params: {}, options: {} request :post, body: params, options: options end
get(id = nil, params: {})
click to toggle source
# File lib/identity_crm/resource.rb, line 12 def get id = nil, params: {}, options: {} request :get, path: id.to_s, query: params, options: options end
Private Instance Methods
request(method, path: '', query: {})
click to toggle source
# File lib/identity_crm/resource.rb, line 18 def request method, path: '', query: {}, options: {}, body: nil url = @url if path.present? url += '/' + path end request = { method: method, url: url, user: @user, password: @token, headers: { params: query, }, } if body.present? request[:payload] = body.as_json request[:content_type] = :json end if options.include? :timeout request[:timeout] = options[:timeout] end JSON.parse RestClient::Request.execute(request).body, object_class: OpenStruct end