Sha256: c8b0e07d71b6b38103de4d57e539e21e9f4a71108b32ea58d392027ad287fe17
Contents?: true
Size: 1.21 KB
Versions: 3
Compression:
Stored size: 1.21 KB
Contents
module TrakioClient class Company < EndPoint def run p = {} properties = p[:properties] || {} company_id = p[:company_id] || self.company_id check_parameters company_id, properties, (p[:people_distinct_ids] || []) params = { company_id: company_id, properties: properties, } distinct_ids = distinct_ids_from_params p params[:people_distinct_ids] = distinct_ids unless distinct_ids.empty? send_request 'company', params end def distinct_ids_from_params p ids = p[:people_distinct_ids] || [] distinct_id = p[:distinct_id] || self.distinct_id ids << distinct_id if distinct_id ids.reject!(&:nil?) ids.map!(&:to_s) ids end def check_parameters company_id, properties, distinct_ids if !company_id raise Exceptions::MissingParameter.new('The `company_id` parameter must be provided.') end if !properties.is_a?(Hash) raise Exceptions::InvalidParameter.new("The `properties` parameter must be a hash.") end if !distinct_ids.is_a?(Array) raise Exceptions::InvalidParameter.new('The `people_distinct_ids` parameter must be an array.') end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
trakio-ruby-0.2.3 | lib/trakio_client/company.rb |
trakio-ruby-0.2.2 | lib/trakio_client/company.rb |
trakio-ruby-0.2.1 | lib/trakio_client/company.rb |