Class: Mailkick::Service::SendGridV2

Inherits:
Mailkick::Service show all
Defined in:
lib/mailkick/service/sendgrid_v2.rb

Constant Summary

Constants inherited from Mailkick::Service

Sendgrid

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Mailkick::Service

#fetch_opt_outs

Constructor Details

#initialize(options = {}) ⇒ SendGridV2

Returns a new instance of SendGridV2.



6
7
8
# File 'lib/mailkick/service/sendgrid_v2.rb', line 6

def initialize(options = {})
  @api_key = options[:api_key] || ENV["SENDGRID_API_KEY"]
end

Class Method Details

.discoverable?Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/mailkick/service/sendgrid_v2.rb', line 26

def self.discoverable?
  !!(defined?(::SendGrid::API) && ENV["SENDGRID_API_KEY"])
end

Instance Method Details

#bouncesObject



22
23
24
# File 'lib/mailkick/service/sendgrid_v2.rb', line 22

def bounces
  fetch(client.suppression.bounces, "bounce")
end

#opt_outsObject



10
11
12
# File 'lib/mailkick/service/sendgrid_v2.rb', line 10

def opt_outs
  unsubscribes + spam_reports + bounces
end

#spam_reportsObject



18
19
20
# File 'lib/mailkick/service/sendgrid_v2.rb', line 18

def spam_reports
  fetch(client.suppression.spam_reports, "spam")
end

#unsubscribesObject



14
15
16
# File 'lib/mailkick/service/sendgrid_v2.rb', line 14

def unsubscribes
  fetch(client.suppression.unsubscribes, "unsubscribe")
end