1.0.19 • Published 5 months ago

@devmehq/email-validator-js v1.0.19

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months 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.109

5 months ago

1.1.0-beta.108

5 months ago

1.1.0-beta.106

5 months ago

1.1.0-beta.107

5 months ago

1.1.0-beta.104

5 months ago

1.1.0-beta.105

5 months ago

1.1.0-beta.103

5 months ago

1.1.0-beta.102

5 months ago

1.1.0-beta.101

5 months ago

1.1.0-beta.98

5 months ago

1.1.0-beta.99

5 months ago

1.1.0-beta.97

5 months ago

1.1.0-beta.100

5 months ago

1.1.0-beta.96

5 months ago

1.1.0-beta.94

5 months ago

1.1.0-beta.95

5 months ago

1.1.0-beta.92

5 months ago

1.1.0-beta.93

5 months ago

1.1.0-beta.90

6 months ago

1.1.0-beta.91

6 months ago

1.1.0-beta.89

6 months ago

1.1.0-beta.88

6 months ago

1.1.0-beta.87

6 months ago

1.1.0-beta.86

6 months ago

1.1.0-beta.83

6 months ago

1.1.0-beta.84

6 months ago

1.1.0-beta.85

6 months ago

1.1.0-beta.82

6 months ago

1.1.0-beta.81

6 months ago

1.1.0-beta.80

6 months ago

1.1.0-beta.79

7 months ago

1.1.0-beta.78

7 months ago

1.1.0-beta.77

7 months ago

1.1.0-beta.76

7 months ago

1.1.0-beta.75

7 months ago

1.1.0-beta.21

10 months ago

1.1.0-beta.22

10 months ago

1.1.0-beta.20

10 months ago

1.1.0-beta.25

10 months ago

1.1.0-beta.26

10 months ago

1.1.0-beta.23

10 months ago

1.1.0-beta.24

10 months ago

1.1.0-beta.29

10 months ago

1.1.0-beta.27

10 months ago

1.1.0-beta.28

10 months ago

1.1.0-beta.32

9 months ago

1.1.0-beta.33

9 months ago

1.1.0-beta.30

9 months ago

1.1.0-beta.31

9 months ago

1.1.0-beta.36

9 months ago

1.1.0-beta.37

9 months ago

1.1.0-beta.34

9 months ago

1.1.0-beta.35

9 months ago

1.1.0-beta.38

9 months ago

1.1.0-beta.39

9 months ago

1.1.0-beta.40

9 months ago

1.1.0-beta.43

8 months ago

1.1.0-beta.44

8 months ago

1.1.0-beta.41

9 months ago

1.1.0-beta.42

8 months ago

1.1.0-beta.47

8 months ago

1.1.0-beta.48

8 months ago

1.1.0-beta.45

8 months ago

1.1.0-beta.46

8 months ago

1.1.0-beta.49

8 months ago

1.1.0-beta.50

8 months ago

1.1.0-beta.51

8 months ago

1.1.0-beta.54

8 months ago

1.1.0-beta.55

8 months ago

1.1.0-beta.52

8 months ago

1.1.0-beta.53

8 months ago

1.1.0-beta.58

8 months ago

1.1.0-beta.59

8 months ago

1.1.0-beta.56

8 months ago

1.1.0-beta.57

8 months ago

1.1.0-beta.61

7 months ago

1.1.0-beta.62

7 months ago

1.1.0-beta.60

8 months ago

1.1.0-beta.65

7 months ago

1.1.0-beta.66

7 months ago

1.1.0-beta.63

7 months ago

1.1.0-beta.64

7 months ago

1.1.0-beta.69

7 months ago

1.1.0-beta.67

7 months ago

1.1.0-beta.68

7 months ago

1.1.0-beta.72

7 months ago

1.1.0-beta.73

7 months ago

1.1.0-beta.70

7 months ago

1.1.0-beta.71

7 months ago

1.1.0-beta.74

7 months ago

1.1.0-beta.19

10 months ago

1.1.0-beta.18

10 months ago

1.1.0-beta.17

10 months ago

1.1.0-beta.16

10 months ago

1.1.0-beta.15

10 months ago

1.1.0-beta.14

10 months ago

1.1.0-beta.13

10 months ago

1.1.0-beta.12

11 months ago

1.1.0-beta.11

11 months ago

1.1.0-beta.10

11 months ago

1.1.0-beta.9

11 months ago

1.1.0-beta.8

11 months ago

1.1.0-beta.7

11 months ago

1.1.0-beta.6

11 months ago

1.1.0-beta.5

11 months ago

1.1.0-beta.4

11 months ago

1.1.0-beta.3

12 months ago

1.1.0-beta.2

12 months ago

1.1.0-beta.1

12 months ago

1.0.20-beta.63

12 months ago

1.0.20-beta.61

12 months ago

1.0.20-beta.62

12 months ago

1.0.20-beta.60

12 months ago

1.0.20-beta.58

12 months ago

1.0.20-beta.59

12 months ago

1.0.20-beta.57

12 months ago

1.0.20-beta.56

12 months ago

1.0.20-beta.55

1 year ago

1.0.20-beta.53

1 year ago

1.0.20-beta.54

1 year ago

1.0.20-beta.52

1 year ago

1.0.20-beta.51

1 year ago

1.0.20-beta.49

1 year ago

1.0.20-beta.50

1 year ago

1.0.20-beta.48

1 year ago

1.0.20-beta.46

1 year ago

1.0.20-beta.47

1 year ago

1.0.20-beta.45

1 year ago

1.0.20-beta.43

1 year ago

1.0.20-beta.44

1 year ago

1.0.20-beta.42

1 year ago

1.0.20-beta.40

1 year ago

1.0.20-beta.41

1 year ago

1.0.20-beta.39

1 year ago

1.0.20-beta.37

1 year ago

1.0.20-beta.38

1 year ago

1.0.20-beta.36

1 year ago

1.0.20-beta.35

1 year ago

1.0.20-beta.34

1 year ago

1.0.20-beta.32

1 year ago

1.0.20-beta.33

1 year ago

1.0.20-beta.31

1 year ago

1.0.20-beta.30

1 year ago

1.0.20-beta.26

1 year ago

1.0.20-beta.27

1 year ago

1.0.20-beta.28

1 year ago

1.0.20-beta.29

1 year ago

1.0.20-beta.25

1 year ago

1.0.20-beta.24

1 year ago

1.0.20-beta.22

1 year ago

1.0.20-beta.23

1 year ago

1.0.20-beta.21

1 year ago

1.0.20-beta.19

1 year ago

1.0.20-beta.20

1 year ago

1.0.20-beta.16

1 year ago

1.0.20-beta.17

1 year ago

1.0.20-beta.18

1 year ago

1.0.20-beta.13

1 year ago

1.0.20-beta.14

1 year ago

1.0.20-beta.15

1 year ago

1.0.20-beta.11

1 year ago

1.0.20-beta.12

1 year ago

1.0.20-beta.10

1 year ago

1.0.20-beta.7

1 year ago

1.0.20-beta.9

1 year ago

1.0.20-beta.8

1 year ago

1.0.20-beta.6

1 year ago

1.0.20-beta.5

1 year ago

1.0.20-beta.4

1 year ago

1.0.20-beta.3

1 year ago

1.0.19-beta.7

1 year ago

1.0.20-beta.2

1 year ago

1.0.20-beta.1

1 year ago

1.0.19

1 year ago

1.0.19-beta.6

1 year ago

1.0.19-beta.5

1 year ago

1.0.19-beta.3

1 year ago

1.0.19-beta.4

1 year ago

1.0.19-beta.2

1 year ago

1.0.18

1 year ago

1.0.17

1 year ago

1.0.18-beta.1

1 year ago

1.0.17-beta.1

1 year ago

1.0.19-beta.1

1 year ago

1.0.16

2 years ago

1.0.15

2 years ago

1.0.15-beta.3

2 years ago

1.0.15-beta.2

2 years ago

1.0.15-beta.1

2 years ago

1.0.15-beta.4

2 years ago

1.0.14

3 years ago

1.0.13

3 years ago

1.0.12

3 years ago

1.0.11

3 years ago

1.0.10

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago