Class: Iterable::Experiments

Inherits:
ApiResource show all
Defined in:
lib/iterable/experiments.rb

Overview

Interact with /experiments API endpoints

Examples:

Creating experiments endpoint object

# With default config
templates = Iterable::Experiments.new [1, 2, 3]
templates.get

# With custom config
conf = Iterable::Config.new(token: 'new-token')
templates = Iterable::Experiments.new([1, 2, 3], config)

Instance Attribute Summary collapse

Attributes inherited from ApiResource

#conf

Instance Method Summary collapse

Methods inherited from ApiResource

default_config, #default_config

Constructor Details

#initialize(experiment_ids = [], conf = nil) ⇒ Experiments

Returns a new instance of Experiments.



33
34
35
36
# File 'lib/iterable/experiments.rb', line 33

def initialize(experiment_ids = [], conf = nil)
  @experiment_ids = experiment_ids
  super conf
end

Instance Attribute Details

#experiment_idsObject (readonly)

Returns the value of attribute experiment_ids.



17
18
19
# File 'lib/iterable/experiments.rb', line 17

def experiment_ids
  @experiment_ids
end

Instance Method Details

#metrics(campaign_ids = [], start_time = nil, end_time = nil) ⇒ Object



54
55
56
57
58
59
60
61
62
# File 'lib/iterable/experiments.rb', line 54

def metrics(campaign_ids = [], start_time = nil, end_time = nil)
  params = {
    experimentId: @experiment_ids,
    campaignId: campaign_ids
  }
  params[:startTime] = start_time.to_date.strftime(Iterable::DATE_FORMAT) if start_time
  params[:endTime] = end_time.to_date.strftime(Iterable::DATE_FORMAT) if end_time
  Iterable.request(conf, '/experiments/metrics', params).get
end