Class: MailEngine::Sendgrid::RestApi

Inherits:
Object
  • Object
show all
Includes:
HTTParty
Defined in:
lib/mail_engine/sendgrid/rest_api.rb

Class Method Summary collapse

Class Method Details

.blocks(options = {}) ⇒ Object

<blocks>

<block>
  <email>[email protected]</email>
  <status></status>
  <reason>Some random block reason</reason>
  <created>2010-11-08 20:39:29</created>
</block>

</blocks>



77
78
79
80
# File 'lib/mail_engine/sendgrid/rest_api.rb', line 77

def blocks options = {}
  response = get "/blocks.get.xml", :query => options
  response["blocks"].try(:send, :[], "block")
end

.bounces(options = {}) ⇒ Object

<bounces>

<bounce>
  <email>[email protected]</email>
  <status>5.1.1</status>
  <reason>host [127.0.0.1] said: 550 5.1.1 unknown or illegal user: [email protected]</reason>
  <created>2009-06-10 12:40:30</created>
</bounce>

</bounces>



41
42
43
44
# File 'lib/mail_engine/sendgrid/rest_api.rb', line 41

def bounces options = {}
  response = get "/bounces.get.xml", :query => options
  response["bounces"].try(:send, :[], "bounce")
end

.invalidemails(options = {}) ⇒ Object

<invalidemails>

<invalidemail>
  <email>[email protected]</email>
  <reason>Mail domain mentioned in email address is unknown</reason>
  <created>2009-06-10 12:40:30</created>
</invalidemail>

</invalidemails>



64
65
66
67
# File 'lib/mail_engine/sendgrid/rest_api.rb', line 64

def invalidemails options = {}
  response = get "/invalidemails.get.xml", :query => options
  response["invalidemails"].try(:send, :[], "invalidemail")
end

.spamreports(options = {}) ⇒ Object

<spamreports>

<spamreport>
  <email>[email protected]</email>
  <created>2009-06-10 12:40:30</created>
</spamreport>

</spamreports>



52
53
54
55
# File 'lib/mail_engine/sendgrid/rest_api.rb', line 52

def spamreports options = {}
  response = get "/spamreports.get.xml", :query => options
  response["spamreports"].try(:send, :[], "spamreport")
end

.stats(options = {}) ⇒ Object

<stats>

<day>
  <date>2009-06-20</date>
  <requests>12342</requests>
  <bounces>12</bounces>
  <clicks>10223</clicks>
  <opens>9992</opens>
  <spamreports>5</spamreports>
  <unique_clicks>3</unique_clicks>
  <unique_opens>6</unique_opens>
  <blocked>7</blocked>
</day>

</stats>



28
29
30
31
# File 'lib/mail_engine/sendgrid/rest_api.rb', line 28

def stats options = {}
  response = get "/stats.get.xml", :query => options
  response["stats"].try(:send, :[], "day")
end