1.0.19 • Published 3 days ago

@devmehq/email-validator-js v1.0.19

Weekly downloads
-
License
MIT
Repository
github
Last release
3 days ago

Advanced Email Validator

Build Status NPM version Downloads

Verify email address checking MX records, and SMTP connection, check for disposable email addresses and free email providers.

Features

✅ Check email address validity

✅ Check email address domain validity in domain TLD list

✅ Check email address MX records

✅ Check email address SMTP connection

✅ Check email address disposable or burnable status

✅ Check email address free email provider status

🚨 Check domain age and quality score - soon

🚨 Check domain registration status - soon

Use cases

  • Increase delivery rate of email campaigns by removing spam emails
  • Increase email open rate and your marketing IPs reputation
  • Protect your website from spam, bots and fake emails
  • Protect your product signup form from fake emails
  • Protect your website forms from fake emails
  • Protect your self from fraud orders and accounts using fake emails
  • Integrate email address verification into your website forms
  • Integrate email address verification into your backoffice administration and order processing

API / Cloud Hosted Service

We offer this email verification and validation and more advanced features in our Scalable Cloud API Service Offering - You could try it here Email Verification

Self-hosting - installation and usage instructions

Installation

Install the module through YARN:

yarn add @devmehq/email-validator-js

Or NPM

npm install @devmehq/email-validator-js

Examples

import { verifyEmail } from '@devmehq/email-validator-js';

const { validFormat, validSmtp, validMx } = await verifyEmail({ mailbox: 'foo@email.com', verifyMx: true, verifySmtp: true, timeout: 3000 });
// validFormat: true
// validMx: true
// validSmtp: true

When a domain does not exist or has no MX records, the domain validation will fail, and the mailbox validation will return null because it could not be performed:

const { validFormat, validSmtp, validMx } = await verifyEmail({ mailbox: 'foo@bad-domain.com', verifyMx: true, verifySmtp: true, timeout: 3000 });
// validFormat: true
// validMx: false
// validSmtp: null

A valid Yahoo domain will still return validSmtp true because their SMTP servers do not allow verifying if a mailbox exists.

Configuration options

timeout

Set a timeout in seconds for the smtp connection. Default: 10000.

verifyMx

Enable or disable domain checking. This is done in two steps: 1. Verify that the domain does indeed exist; 2. Verify that the domain has valid MX records. Default: false.

verifySmtp

Enable or disable mailbox checking. Only a few SMTP servers allow this, and even then whether it works depends on your IP's reputation with those servers. This library performs a best effort validation:

  • It returns null for Yahoo addresses, for failed connections, for unknown SMTP errors.
  • It returns true for valid SMTP responses.
  • It returns false for SMTP errors specific to the address's formatting or mailbox existence. Default: false.

Disposable email providers database ( ✅ Always Updated )

Disposable email providers

Free email providers database ( ✅ Always Updated )

Free email providers

Testing

yarn test

Contributing

Please feel free to open an issue or create a pull request and fix bugs or add features, All contributions are welcome. Thank you!

LICENSE MIT

1.1.0-beta.12

3 days ago

1.1.0-beta.11

4 days ago

1.1.0-beta.10

5 days ago

1.1.0-beta.9

12 days ago

1.1.0-beta.8

19 days ago

1.1.0-beta.7

24 days ago

1.1.0-beta.6

25 days ago

1.1.0-beta.5

26 days ago

1.1.0-beta.4

26 days ago

1.1.0-beta.3

29 days ago

1.1.0-beta.2

1 month ago

1.1.0-beta.1

1 month ago

1.0.20-beta.63

1 month ago

1.0.20-beta.61

1 month ago

1.0.20-beta.62

1 month ago

1.0.20-beta.60

1 month ago

1.0.20-beta.58

2 months ago

1.0.20-beta.59

2 months ago

1.0.20-beta.57

2 months ago

1.0.20-beta.56

2 months ago

1.0.20-beta.55

2 months ago

1.0.20-beta.53

2 months ago

1.0.20-beta.54

2 months ago

1.0.20-beta.52

2 months ago

1.0.20-beta.51

2 months ago

1.0.20-beta.49

2 months ago

1.0.20-beta.50

2 months ago

1.0.20-beta.48

2 months ago

1.0.20-beta.46

2 months ago

1.0.20-beta.47

2 months ago

1.0.20-beta.45

2 months ago

1.0.20-beta.43

2 months ago

1.0.20-beta.44

2 months ago

1.0.20-beta.42

3 months ago

1.0.20-beta.40

3 months ago

1.0.20-beta.41

3 months ago

1.0.20-beta.39

3 months ago

1.0.20-beta.37

3 months ago

1.0.20-beta.38

3 months ago

1.0.20-beta.36

3 months ago

1.0.20-beta.35

3 months ago

1.0.20-beta.34

3 months ago

1.0.20-beta.32

3 months ago

1.0.20-beta.33

3 months ago

1.0.20-beta.31

3 months ago

1.0.20-beta.30

3 months ago

1.0.20-beta.26

3 months ago

1.0.20-beta.27

3 months ago

1.0.20-beta.28

3 months ago

1.0.20-beta.29

3 months ago

1.0.20-beta.25

3 months ago

1.0.20-beta.24

3 months ago

1.0.20-beta.22

3 months ago

1.0.20-beta.23

3 months ago

1.0.20-beta.21

3 months ago

1.0.20-beta.19

3 months ago

1.0.20-beta.20

3 months ago

1.0.20-beta.16

4 months ago

1.0.20-beta.17

4 months ago

1.0.20-beta.18

4 months ago

1.0.20-beta.13

4 months ago

1.0.20-beta.14

4 months ago

1.0.20-beta.15

4 months ago

1.0.20-beta.11

4 months ago

1.0.20-beta.12

4 months ago

1.0.20-beta.10

4 months ago

1.0.20-beta.7

4 months ago

1.0.20-beta.9

4 months ago

1.0.20-beta.8

4 months ago

1.0.20-beta.6

4 months ago

1.0.20-beta.5

4 months ago

1.0.20-beta.4

4 months ago

1.0.20-beta.3

4 months ago

1.0.19-beta.7

4 months ago

1.0.20-beta.2

4 months ago

1.0.20-beta.1

4 months ago

1.0.19

5 months ago

1.0.19-beta.6

5 months ago

1.0.19-beta.5

5 months ago

1.0.19-beta.3

5 months ago

1.0.19-beta.4

5 months ago

1.0.19-beta.2

5 months ago

1.0.18

5 months ago

1.0.17

5 months ago

1.0.18-beta.1

5 months ago

1.0.17-beta.1

5 months ago

1.0.19-beta.1

5 months ago

1.0.16

1 year ago

1.0.15

1 year ago

1.0.15-beta.3

1 year ago

1.0.15-beta.2

1 year ago

1.0.15-beta.1

1 year ago

1.0.15-beta.4

1 year ago

1.0.14

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.11

2 years ago

1.0.10

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago