Class: PirschApi::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/pirsch_api/client.rb

Constant Summary collapse

BASE_URL =
"https://api.pirsch.io/api/v1"

Instance Method Summary collapse

Constructor Details

#initialize(client_id:, client_secret:) ⇒ Client

Returns a new instance of Client.



7
8
9
10
# File 'lib/pirsch_api/client.rb', line 7

def initialize(client_id:, client_secret:)
  @client_id = client_id.to_s
  @client_secret = client_secret.to_s
end

Instance Method Details

#active(domain:, filters: {}) ⇒ Object



38
39
40
# File 'lib/pirsch_api/client.rb', line 38

def active(domain:, filters: {})
  ActiveResource.new(client: self, filters: filters, domain: domain).run
end

#domainsObject



22
23
24
# File 'lib/pirsch_api/client.rb', line 22

def domains
  DomainResource.new(client: self).run
end

#duration_page(domain:, filters: {}) ⇒ Object



66
67
68
# File 'lib/pirsch_api/client.rb', line 66

def duration_page(domain:, filters: {})
  DurationPageResource.new(client: self, filters: filters, domain: domain).run
end

#duration_session(domain:, filters: {}) ⇒ Object



62
63
64
# File 'lib/pirsch_api/client.rb', line 62

def duration_session(domain:, filters: {})
  DurationSessionResource.new(client: self, filters: filters, domain: domain).run
end

#events(domain:, filters: {}) ⇒ Object



46
47
48
# File 'lib/pirsch_api/client.rb', line 46

def events(domain:, filters: {})
  EventResource.new(client: self, filters: filters, domain: domain).run
end

#growth(domain:, filters: {}) ⇒ Object



42
43
44
# File 'lib/pirsch_api/client.rb', line 42

def growth(domain:, filters: {})
  GrowthResource.new(client: self, filters: filters, domain: domain).run
end

#pages(domain:, filters: {}) ⇒ Object



30
31
32
# File 'lib/pirsch_api/client.rb', line 30

def pages(domain:, filters: {})
  PageResource.new(client: self, filters: filters, domain: domain).run
end

#referrers(domain:, filters: {}) ⇒ Object



34
35
36
# File 'lib/pirsch_api/client.rb', line 34

def referrers(domain:, filters: {})
  ReferrerResource.new(client: self, filters: filters, domain: domain).run
end

#tokenObject



18
19
20
# File 'lib/pirsch_api/client.rb', line 18

def token
  @token ||= TokenResource.new(@client_id, @client_secret).run
end

#utm_campaign(domain:, filters: {}) ⇒ Object



58
59
60
# File 'lib/pirsch_api/client.rb', line 58

def utm_campaign(domain:, filters: {})
  UtmCampaignResource.new(client: self, filters: filters, domain: domain).run
end

#utm_medium(domain:, filters: {}) ⇒ Object



54
55
56
# File 'lib/pirsch_api/client.rb', line 54

def utm_medium(domain:, filters: {})
  UtmMediumResource.new(client: self, filters: filters, domain: domain).run
end

#utm_source(domain:, filters: {}) ⇒ Object



50
51
52
# File 'lib/pirsch_api/client.rb', line 50

def utm_source(domain:, filters: {})
  UtmSourceResource.new(client: self, filters: filters, domain: domain).run
end

#valid?Boolean

Returns:

  • (Boolean)


12
13
14
15
16
# File 'lib/pirsch_api/client.rb', line 12

def valid?
  true if token
rescue
  false
end

#visitors(domain:, filters: {}) ⇒ Object



26
27
28
# File 'lib/pirsch_api/client.rb', line 26

def visitors(domain:, filters: {})
  VisitorResource.new(client: self, filters: filters, domain: domain).run
end