The mail package

import ""


Package mail provides the means of sending email from an App Engine application.


msg := &mail.Message{
    Sender:  "",
    To:      []string{"Juliet <>"},
    Subject: "See you tonight",
    Body:    "Don't forget our plans. Hark, 'til later.",
if err := mail.Send(c, msg); err != nil {
    log.Errorf(c, "Alas, my user, the email failed to sendeth: %v", err)


func Send(c context.Context, msg *Message) error
func SendToAdmins(c context.Context, msg *Message) error
type Attachment
type Message

func Send

func Send(c context.Context, msg *Message) error

Send sends an email message.

func SendToAdmins

func SendToAdmins(c context.Context, msg *Message) error

SendToAdmins sends an email message to the application's administrators.

type Attachment

type Attachment struct {
    // Name must be set to a valid file name.
    Name      string
    Data      []byte
    ContentID string

An Attachment represents an email attachment.

type Message

type Message struct {
    // Sender must be set, and must be either an application admin
    // or the currently signed-in user.
    Sender  string
    ReplyTo string // may be empty

    // At least one of these slices must have a non-zero length,
    // except when calling SendToAdmins.
    To, Cc, Bcc []string

    Subject string

    // At least one of Body or HTMLBody must be non-empty.
    Body     string
    HTMLBody string

    Attachments []Attachment

    // Extra mail headers.
    // See
    // for permissible headers.
    Headers mail.Header

A Message represents an email message. Addresses may be of any form permitted by RFC 822.

Monitor your resources on the go

Get the Google Cloud Console app to help you manage your projects.

Send feedback about...

App Engine standard environment for Go