module ActiveCampaign::Request
Public Instance Methods
delete(path)
click to toggle source
Perform an HTTP DELETE request
# File lib/active-campaign-simple/request.rb, line 26 def delete(path) request(:delete, path) end
get(path)
click to toggle source
Perform an GET request
# File lib/active-campaign-simple/request.rb, line 6 def get(path) request(:get, path) end
patch(path, payload: {})
click to toggle source
Perform an HTTP PATCH request
# File lib/active-campaign-simple/request.rb, line 21 def patch(path, payload: {}) request(:patch, path, payload) end
post(path, payload: {})
click to toggle source
Perform an HTTP POST request
# File lib/active-campaign-simple/request.rb, line 11 def post(path, payload: {}) request(:post, path, payload) end
put(path, payload: {})
click to toggle source
Perform an HTTP PUT request
# File lib/active-campaign-simple/request.rb, line 16 def put(path, payload: {}) request(:put, path, payload) end
Private Instance Methods
request(method, path, payload={})
click to toggle source
Perform request
# File lib/active-campaign-simple/request.rb, line 33 def request(method, path, payload={}) path = "/#{path}" unless path.start_with?('/') header = { 'Api-Token': api_key, content_type: :json, accept: :json, } opts = { method: method, url: api_url + '/api/3' + path, headers: header } opts.merge!( { payload: payload.to_json }) unless payload.empty? resp = RestClient::Request.execute(opts) rescue RestClient::ExceptionWithResponse => err # log error? else return JSON.parse(resp.body) if resp.body # Some calls respond w nothing end