Categorygithub.com/badoux/checkmail
modulepackage
1.2.4
Repository: https://github.com/badoux/checkmail.git
Documentation: pkg.go.dev

# README

checkmail

Golang package for email validation.

GoDoc

Usage

Install the Checkmail package

go get github.com/badoux/checkmail

1. Format

func main() {
    err := checkmail.ValidateFormat("ç$€§/[email protected]")
    if err != nil {
        fmt.Println(err)
    }
}

output: invalid format

2. Domain

func main() {
    err := checkmail.ValidateHost("[email protected]")
    if err != nil {
        fmt.Println(err)
    }
}

output: unresolvable host

3. Host and User

If host is valid, requires valid SMTP serverHostName (see to online validator) and serverMailAddress to reverse validation for prevent SPAN and BOTS.

func main() {
    var (
        serverHostName    = "smtp.myserver.com" // set your SMTP server here
        serverMailAddress = "[email protected]"  // set your valid mail address here
    )
    err := checkmail.ValidateHostAndUser(serverHostName, serverMailAddress, "[email protected]")
    if smtpErr, ok := err.(checkmail.SmtpError); ok && err != nil {
        fmt.Printf("Code: %s, Msg: %s", smtpErr.Code(), smtpErr)
    }
}

output: Code: 550, Msg: 550 5.1.1 The email account that you tried to reach does not exist.

License

Checkmail is licensed under the MIT License.

# Functions

DialTimeout returns a new Client connected to an SMTP server at addr.
No description provided by the author
No description provided by the author
ValidateHost validate mail host.
ValidateHostAndUser validate mail host and user.
ValidateMX validate if MX record exists for a domain.

# Variables

No description provided by the author
No description provided by the author

# Structs

No description provided by the author