Sha256: c1b79e00ccfb7934e0f3a04081d6221085c25de5cda19c3d982f8f73f8693204

Contents?: true

Size: 1.04 KB

Versions: 13

Compression:

Stored size: 1.04 KB

Contents

require 'sendgrid-ruby'
require 'date'

include SendGrid

sg_client = SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY']).client
stats = SendGrid::EmailStats.new(sendgrid_client: sg_client)

# Fetch stats by day, between 2 dates
from = Date.new(2017, 10, 1)
to = Date.new(2017, 10, 12)

email_stats = stats.by_day(from, to)

email_stats.metrics

unless email_stats.error?
  email_stats.metrics.each do |metric|
    puts "Date - #{metric.date}"
    puts "Number of Requests - #{metric.requests}"
    puts "Bounces - #{metric.bounces}"
    puts "Opens - #{metric.opens}"
    puts "Clicks - #{metric.clicks}"
  end
end

# Fetch stats by week, between 2 dates for a category
from = Date.new(2017, 10, 1)
to = Date.new(2017, 10, 12)
category = 'abcd'

email_stats = stats.by_week(from, to, category)

unless email_stats.error?
  email_stats.metrics.each do |metric|
    puts "Date - #{metric.date}"
    puts "Number of Requests - #{metric.requests}"
    puts "Bounces - #{metric.bounces}"
    puts "Opens - #{metric.opens}"
    puts "Clicks - #{metric.clicks}"
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
sendgrid-ruby-6.7.0 examples/helpers/stats/example.rb
sendgrid-ruby-6.6.2 examples/helpers/stats/example.rb
sendgrid-ruby-6.6.1 examples/helpers/stats/example.rb
sendgrid-ruby-6.6.0 examples/helpers/stats/example.rb
sendgrid-ruby-6.5.2 examples/helpers/stats/example.rb
sendgrid-ruby-6.5.1 examples/helpers/stats/example.rb
sendgrid-ruby-6.5.0 examples/helpers/stats/example.rb
sendgrid-ruby-6.4.0 examples/helpers/stats/example.rb
sendgrid-ruby-6.3.9 examples/helpers/stats/example.rb
sendgrid-ruby-6.3.8 examples/helpers/stats/example.rb
sendgrid-ruby-6.3.7 examples/helpers/stats/example.rb
sendgrid-ruby-6.3.6 examples/helpers/stats/example.rb
sendgrid-ruby-6.3.5 examples/helpers/stats/example.rb