Module: SendGrid4r::REST::Stats::Advanced

Includes:
Request
Included in:
API
Defined in:
lib/sendgrid4r/rest/stats/advanced.rb

Overview

SendGrid Web API v3 Stats - Advanced

Constant Summary

Constants included from Request

Request::BASE_URL

Instance Method Summary collapse

Methods included from Request

#create_args, #delete, #execute, #finish, #get, #patch, #post, #process_array_params, #process_url_params, #put

Instance Method Details

#get_browsers_stats(start_date:, end_date: nil, aggregated_by: nil, browsers: nil, &block) ⇒ Object



94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/sendgrid4r/rest/stats/advanced.rb', line 94

def get_browsers_stats(
    start_date:,
    end_date: nil,
    aggregated_by: nil,
    browsers: nil,
    &block
)
  params = {
    start_date: start_date,
    end_date: end_date,
    aggregated_by: aggregated_by,
    browsers: browsers
  }
  resp = get(@auth, "#{BASE_URL}/browsers/stats", params, &block)
  finish(resp, @raw_resp) { |r| Stats.create_top_stats(r) }
end

#get_clients_stats(start_date:, end_date: nil, aggregated_by: nil, &block) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/sendgrid4r/rest/stats/advanced.rb', line 43

def get_clients_stats(
    start_date:,
    end_date: nil,
    aggregated_by: nil,
    &block
)
  params = {
    start_date: start_date,
    end_date: end_date,
    aggregated_by: aggregated_by
  }
  resp = get(@auth, "#{BASE_URL}/clients/stats", params, &block)
  finish(resp, @raw_resp) { |r| Stats.create_top_stats(r) }
end

#get_clients_type_stats(start_date:, end_date: nil, aggregated_by: nil, client_type:, &block) ⇒ Object



58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/sendgrid4r/rest/stats/advanced.rb', line 58

def get_clients_type_stats(
    start_date:,
    end_date: nil,
    aggregated_by: nil,
    client_type:,
    &block
)
  params = {
    start_date: start_date,
    end_date: end_date,
    aggregated_by: aggregated_by,
    client_type: client_type
  }
  endpoint = "#{BASE_URL}/clients/#{client_type}/stats"
  resp = get(@auth, endpoint, params, &block)
  finish(resp, @raw_resp) { |r| Stats.create_top_stats(r) }
end

#get_devices_stats(start_date:, end_date: nil, aggregated_by: nil, &block) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/sendgrid4r/rest/stats/advanced.rb', line 28

def get_devices_stats(
    start_date:,
    end_date: nil,
    aggregated_by: nil,
    &block
)
  params = {
    start_date: start_date,
    end_date: end_date,
    aggregated_by: aggregated_by
  }
  resp = get(@auth, "#{BASE_URL}/devices/stats", params, &block)
  finish(resp, @raw_resp) { |r| Stats.create_top_stats(r) }
end

#get_geo_stats(start_date:, end_date: nil, aggregated_by: nil, country: nil, &block) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/sendgrid4r/rest/stats/advanced.rb', line 11

def get_geo_stats(
    start_date:,
    end_date: nil,
    aggregated_by: nil,
    country: nil,
    &block
)
  params = {
    start_date: start_date,
    end_date: end_date,
    aggregated_by: aggregated_by,
    country: country
  }
  resp = get(@auth, "#{BASE_URL}/geo/stats", params, &block)
  finish(resp, @raw_resp) { |r| Stats.create_top_stats(r) }
end

#get_mailbox_providers_stats(start_date:, end_date: nil, aggregated_by: nil, mailbox_providers: nil, &block) ⇒ Object



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/sendgrid4r/rest/stats/advanced.rb', line 76

def get_mailbox_providers_stats(
    start_date:,
    end_date: nil,
    aggregated_by: nil,
    mailbox_providers: nil,
    &block
)
  params = {
    start_date: start_date,
    end_date: end_date,
    aggregated_by: aggregated_by,
    mailbox_providers: mailbox_providers
  }
  endpoint = "#{BASE_URL}/mailbox_providers/stats"
  resp = get(@auth, endpoint, params, &block)
  finish(resp, @raw_resp) { |r| Stats.create_top_stats(r) }
end