Esistono due modi per inviare email utilizzando l'API Gmail:
- Puoi inviarlo direttamente utilizzando il metodo
messages.send
. - Puoi inviarlo da una bozza utilizzando il metodo
drafts.send
.
Le email vengono inviate come stringhe codificate in base64url all'interno della proprietà raw
di una
risorsa messaggio. Il flusso di lavoro generale
per inviare un'email è:
- Crea il contenuto dell'email in modo pratico e codificalo come stringa url base64.
- Crea una nuova risorsa di messaggio e imposta la relativa proprietà
raw
sulla stringa base64url che hai appena creato. - Chiama
messages.send
o, se invii una bozza,drafts.send
per inviare il messaggio.
I dettagli di questo flusso di lavoro possono variare a seconda della libreria client e del linguaggio di programmazione selezionati.
Creazione dei messaggi
L'API Gmail richiede messaggi email MIME compatibili con RFC 2822 e codificati come stringhe url base64. Molti linguaggi di programmazione dispongono di librerie o utilità che semplificano il processo di creazione e codifica dei messaggi MIME. I seguenti esempi di codice mostrano come creare un messaggio MIME utilizzando le librerie client delle API di Google per vari linguaggi.
Java
La creazione di un messaggio email può essere notevolmente semplificata con la classe MimeMessage
nel pacchetto javax.mail.internet
. L'esempio seguente mostra come creare il messaggio email, incluse le intestazioni:
Il passaggio successivo consiste nel codificare MimeMessage
, creare un'istanza di un oggetto Message
e impostare la stringa del messaggio codificata base64url come valore della proprietà raw
.
Python
Il seguente esempio di codice illustra la creazione di un messaggio MIME, la codifica in una stringa base64url e l'assegnazione al campo raw
della risorsa Message
:
Creazione di messaggi con allegati
La creazione di un messaggio con un allegato è simile a quella di qualsiasi altro messaggio, ma il processo di caricamento del file come messaggio MIME multiparte dipende dal linguaggio di programmazione. I seguenti esempi di codice mostrano i possibili modi per creare un messaggio MIME multiparte con un allegato.
Java
L'esempio seguente mostra come creare un messaggio MIME multiparte. I passaggi per la codifica e l'assegnazione sono gli stessi di cui sopra.
Python
Analogamente all'esempio precedente, questo esempio gestisce anche la codifica del messaggio in base64url e l'assegnazione al campo raw
della risorsa Message
.
l'invio di un messaggio e un altro
Dopo aver creato un messaggio, puoi inviarlo fornendolo nel corpo della richiesta di una chiamata a messages.send
, come mostrato negli esempi seguenti.
Java
Python
Se stai cercando di inviare una risposta e vuoi che l'email venga messa in thread, assicurati che:
- Le intestazioni
Subject
corrispondono - Le intestazioni
References
eIn-Reply-To
sono conformi allo standard RFC 2822.
Per informazioni sull'invio di un messaggio da una bozza, vedi Creare bozze.