Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A plugin to validate submitted emails for format, which can also check that the domain exists.
branch: master
Failed to load latest commit information.
lib Hide some classes from the docs
test Everything is much cleaner when you don't have to pass around the opt…
.gitignore Ignore eclipse project file
README.rdoc .rdoc hint for github's sake
init.rb Changed Email#domain_has_servers? so that it is less mentally hilario…


Validates Email Veracity Of


Carsten Nielsen (




Rails Validation Plugin

Validates the form of an email address and verifies it's domain by checking if there are any mail exchange or address servers associated with it.


  • message

    • Changes the default error message.

  • domain_check

    • Skips server lookup unless true.

  • timeout

    • Time (in seconds) before the domain lookup is skipped. Default is 2.

  • fail_on_timeout

    • Causes validation to fail if a timeout occurs.

  • timeout_message

    • Changes the default timeout error message.

  • mx_only

    • When set, only mail exchange servers (MX) are looked up and the address server (A) lookup is skipped.

  • invalid_domains

    • An array of domain names that are not to be used. Useful for stuff like and other services.

  • invalid_domain_message

    • Changes the default invalid domain error message.


  • validates_email_veracity_of :email, :message => 'is not correct.'

    • Changes the default error message from 'is invalid.' to 'is not correct.'

  • validates_email_veracity_of :email, :domain_check => false

    • Domain lookup is skipped.

  • validates_email_veracity_of :email, :timeout => 0.5

    • Causes the domain lookup to timeout if it does not complete within half a second.

  • validates_email_veracity_of :email, :fail_on_timeout => true, :timeout_message => 'is invalid.'

    • Causes the validation to fail on timeout and changes the error message to 'is invalid.' to obfuscate it.

  • validates_email_veracity_of :email, :mx_only => true

    • The validator will only check the domain for mail exchange (MX) servers, ignoring address servers (A) records.

  • validates_email_veracity_of :email, :invalid_domains => %w[]

    • Any email addresses or will be rejected.


  • You will need to be connected to the internet to utilize the remote features of the plugin and to properly run the tests.

  • To run the tests type rake test in the console from the plugin's root directory.

  • The Resolv library has been known to screw up internally with a nil.include? error if your domain resolver is ill-configured or out of service.

Something went wrong with that request. Please try again.