Class: Mixpanel::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/sourmix/mixpanel_client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.



11
12
13
14
15
16
17
# File 'lib/sourmix/mixpanel_client.rb', line 11

def initialize options
  @api_key    = options.fetch :api_key
  @api_secret = options.fetch :api_secret
  @base_url   = options.fetch :base_url, 'https://mixpanel.com/api/2.0'
  @data_url   = options.fetch :data_url, 'https://data.mixpanel.com/api/2.0'
  @expire_at  = options.fetch :expire_at, 90 # seconds
end

Instance Attribute Details

#api_keyObject (readonly)

Returns the value of attribute api_key.



9
10
11
# File 'lib/sourmix/mixpanel_client.rb', line 9

def api_key
  @api_key
end

#api_secretObject (readonly)

Returns the value of attribute api_secret.



9
10
11
# File 'lib/sourmix/mixpanel_client.rb', line 9

def api_secret
  @api_secret
end

#base_urlObject (readonly)

Returns the value of attribute base_url.



9
10
11
# File 'lib/sourmix/mixpanel_client.rb', line 9

def base_url
  @base_url
end

#data_urlObject (readonly)

Returns the value of attribute data_url.



9
10
11
# File 'lib/sourmix/mixpanel_client.rb', line 9

def data_url
  @data_url
end

#expire_atObject (readonly)

Returns the value of attribute expire_at.



9
10
11
# File 'lib/sourmix/mixpanel_client.rb', line 9

def expire_at
  @expire_at
end

Instance Method Details

#request(endpoint, params) ⇒ Object



19
20
21
22
# File 'lib/sourmix/mixpanel_client.rb', line 19

def request endpoint, params
  resp = Net::HTTP.get request_uri(endpoint, params)
  resp.lines.map { |l| JSON.parse l }
end

#request_uri(endpoint, params) ⇒ Object



24
25
26
# File 'lib/sourmix/mixpanel_client.rb', line 24

def request_uri endpoint, params
  URI request_url(endpoint, params)
end