class Mailgun::Address

Mailgun::Address is a simple interface to the Email Validation API.

Public Class Methods

new(api_key = "") click to toggle source

@param [String] api_key Mailgun API - public key

# File lib/mailgun/address.rb, line 9
def initialize(api_key = "")
  if api_key == "" then
    fail ParameterError.new('Public API key is required for Mailgun::Address.initialize()', nil)
  end

  @api_key = api_key
  @client = Mailgun::Client.new(api_key = api_key)
end

Public Instance Methods

parse(addresses, syntax_only = true) click to toggle source

Parses a delimiter separated list of email addresses into two lists: parsed addresses and unparsable portions. The parsed addresses are a list of addresses that are syntactically valid (and optionally have DNS and ESP specific grammar checks) the unparsable list is a list of characters sequences that the parser was not able to understand. These often align with invalid email addresses, but not always. Delimiter characters are comma (,) and semicolon (;).

@param [Array] addresses Addresses to parse @param [TrueClass|FalseClass] syntax_only Perform only syntax checks

# File lib/mailgun/address.rb, line 36
def parse(addresses, syntax_only = true)
  validate_addrs = addresses.join(";")

  res = @client.get "address/parse", {:addresses => validate_addrs,
                                      :syntax_only => syntax_only.to_s}
  return res.to_h!
end
validate(address) click to toggle source

Given an arbitrary address, validates it based on defined checks.

@param [String] address Email address to validate (max 512 chars.)

# File lib/mailgun/address.rb, line 21
def validate(address)
  res = @client.get "address/validate", {:address => address}
  return res.to_h!
end