class Malartu::Tracking::Data
Tracking::Data
lets you store data is the Malartu
system
Public Class Methods
create(topic: nil, value: 1)
click to toggle source
# File lib/malartu/tracking/data.rb, line 5 def self.create(topic: nil, value: 1) fail 'No topic' if topic.nil? res = Malartu.request('post', '/kpi/tracking/data', topic: topic, value: value) Malartu::Tracking::Data.new(res) end
find(id)
click to toggle source
# File lib/malartu/tracking/data.rb, line 11 def self.find(id) fail 'No ID given' if id.nil? path = "/kpi/tracking/data/#{id}" res = Malartu.request('get', path) Malartu::Tracking::Data.new(res) end
list(starting:, ending:, page: 1, paginate: false, topic: nil)
click to toggle source
# File lib/malartu/tracking/data.rb, line 18 def self.list(starting:, ending:, page: 1, paginate: false, topic: nil) params = { starting: starting, ending: ending, topic: topic, page: page }.select { |_, value| !value.nil? } res = Malartu.request('get', '/kpi/tracking/data', params) data = res['data'].map do |datum| Malartu::Tracking::Data.new(datum) end page = res["page"].to_i return data unless paginate?(res) # Paginated requests res = Malartu.request('get', '/kpi/tracking/data', params.merge(page: page + 1)) data + res['data'] end
update(id, topic: nil, value: 1)
click to toggle source
# File lib/malartu/tracking/data.rb, line 31 def self.update(id, topic: nil, value: 1) fail 'No Topic' if topic.nil? params = {} params[:topic] = topic unless topic.nil? params[:value] = value unless value.nil? fail 'No parameters to send' if params == {} path = "/kpi/tracking/data/#{id}" res = Malartu.request('patch', path, params) Malartu::Tracking::Data.new(res) end