Skip to content

Latest commit

 

History

History
90 lines (60 loc) · 2.42 KB

README.md

File metadata and controls

90 lines (60 loc) · 2.42 KB

Mailify

Mailify is a Go package for validating email addresses by checking their format, verifying the existence of MX records for the domain, and attempting to connect to the mail servers using SMTP.

CLI

You can use this as a cli tool on your local machine by installing the mailify cli tool

go install github.com/yourusername/mailify-cli@latest

For more details, checkout CLI DOCS

Installation

To install the package, run:

go get github.com/adarsh-jaiss/mailify

Usage

Creating a Client

To create a new client, use the NewClient function:

client, err := mailify.NewClient("[email protected]")
if err != nil {
    log.Fatalf("Failed to create mailify client: %v", err)
}

Validating an Email Address

To validate an email address, use the ValidateEmail method:

result, err := client.ValidateEmail("[email protected]")
if err != nil {
    log.Fatalf("Failed to validate email: %v", err)
}

fmt.Println("Validation result:", client.FormatValidationResult("[email protected]", result))

Getting Mail Servers

To get the mail servers for a domain, use the GetMailServers method:

mailServers, err := client.GetMailServers("example.com")
if err != nil {
    log.Fatalf("Failed to get mail servers: %v", err)
}

fmt.Println("Mail servers:", mailServers)

To get the mail servers for a recipient email, use the GetMailServersFromReceipientEmail method:

mailServers, err := client.GetMailServersFromReceipientEmail("[email protected]")
if err != nil {
    log.Fatalf("Failed to get mail servers: %v", err)
}

fmt.Println("Mail servers:", mailServers)

Validate all the email addresses in an Excel file

This section demonstrates how to validate all email addresses in an Excel file using the ProcessAndValidateEmailsViaExcel method. The method takes the path to the Excel file and the sender's email as parameters. If there is an error during the processing of the file, it will print an error message and terminate the execution.

Example usage:

	err = client.ProcessAndValidateEmailsViaExcel("emails.xlsx",client.SenderEmail)
	if err!= nil {
         fmt.Printf("Error processing file: %v\n", err)
         return
	}

Example

Here is a complete example demonstrating how to use the package : check examples