Module: Nymeria::Email

Defined in:
lib/nymeria/email.rb

Class Method Summary collapse

Class Method Details

.bulk_verify(*args) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/nymeria/email.rb', line 23

def self.bulk_verify(*args)
  uri = URI("#{BASE_URL}/email/verify/bulk")
  req = Nymeria::request(Net::HTTP::Post.new(uri))
  req['Content-Type'] = 'application/json'
  req.body = JSON.dump({ requests: args })

  res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
    http.request(req)
  end

  return JSON.parse(res.body)
rescue => e
  OpenStruct.new(
    success?: false,
    error: "#{e}"
  )
end

.verify(email) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/nymeria/email.rb', line 4

def self.verify(email)
  uri = URI("#{BASE_URL}/email/verify")

  uri.query = URI.encode_www_form({ email: email.to_s.downcase.strip })

  req = Nymeria::request(Net::HTTP::Get.new(uri))

  res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
    http.request(req)
  end

  return OpenStruct.new(JSON.parse(res.body))
rescue => e
  OpenStruct.new(
    success?: false,
    error: "#{e}"
  )
end