Sample code for 30+ languages & platforms
Go

SMTP Connect and Authenticate

Demonstrates how to connect and then authenticate with an SMTP server.

Chilkat Go Downloads

Go
    success := false

    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    mailman := chilkat.NewMailMan()

    mailman.SetSmtpHost("smtp.mail.us-west-2.awsapps.com")
    mailman.SetSmtpSsl(true)
    mailman.SetSmtpPort(465)

    success = mailman.SmtpConnect()
    if success == false {
        fmt.Println(mailman.LastErrorText())
        mailman.DisposeMailMan()
        return
    }

    mailman.SetSmtpUsername("john@example.com")
    mailman.SetSmtpPassword("the_password")

    success = mailman.SmtpAuthenticate()
    if success == false {
        fmt.Println(mailman.LastErrorText())
        mailman.DisposeMailMan()
        return
    }

    fmt.Println("Authenticated!")

    fmt.Println(mailman.SmtpSessionLog())

    // Sample session log:

    // 220 smtp.us-west-2.mail.awsapps.com ESMTP Amazon WorkMail SMTP Service
    // EHLO SLICE<CRLF>
    // 250-smtp.us-west-2.mail.awsapps.com
    // 250-8BITMIME
    // 250-AUTH PLAIN LOGIN
    // 250 Ok
    // AUTH LOGIN<CRLF>
    // 334 VXNlcm5hbWU6
    // am9obkBleGFtcGxlLmNvbQ==<CRLF>
    // 334 UGFzc3dvcmQ6
    // {PasswordOrCredentials}
    // 235 Authentication successful.

    mailman.DisposeMailMan()