Invio di email con l'API Mail

Questa guida descrive come utilizzare l'API Mail per inviare email.

L'API Mail offre due modi per inviare un messaggio email: la mail.send_mail() funzione e la EmailMessage classe.

L'invio è asincrono: la funzione mail.send_mail() e il metodo EmailMessage.send() trasmettono i dati del messaggio al servizio di posta, quindi vengono restituiti. Il servizio di posta mette in coda il messaggio, quindi tenta di inviarlo, riprovando se il server di posta di destinazione non è disponibile. I messaggi di errore e di mancato recapito vengono inviati all'indirizzo del mittente del messaggio email.

Prima di iniziare

Registra le email del mittente come mittenti autorizzati. Per saperne di più, consulta Chi può inviare email.

Invio di email con mail.send_mail()

Per inviare email utilizzando la funzione mail.send_mail(), utilizza i campi del messaggio email come parametri, inclusi il mittente, i destinatari, l'oggetto e il corpo del messaggio. Ad esempio:

    mail.send_mail(sender=sender_address,
                   to="Albert Johnson <Albert.Johnson@example.com>",
                   subject="Your account has been approved",
                   body="""Dear Albert:

Your example.com account has been approved.  You can now visit
http://www.example.com/ and sign in using your Google Account to
access new features.

Please let us know if you have any questions.

The example.com Team
""")

Invio di email con EmailMessage

Per inviare email utilizzando oggetti con la EmailMessage classe, passa i campi del messaggio email al EmailMessage costruttore e utilizza gli attributi dell'istanza per aggiornare il messaggio.

Il metodo EmailMessage.send() invia il messaggio email rappresentato dagli attributi dell'istanza. Un'applicazione può riutilizzare un'istanza EmailMessage modificando gli attributi e chiamando di nuovo il metodo send().

    message = mail.EmailMessage(
        sender=sender_address,
        subject="Your account has been approved")

    message.to = "Albert Johnson <Albert.Johnson@example.com>"
    message.body = """Dear Albert:

Your example.com account has been approved.  You can now visit
http://www.example.com/ and sign in using your Google Account to
access new features.

Please let us know if you have any questions.

The example.com Team
"""
    message.send()

Invio di email collettive

Consulta le linee guida per l'invio di email collettive per le considerazioni sull'invio di email collettive.

Scopri di più sulle considerazioni sulla migrazione per l'API Mail nella guida Gestori di posta.