Les applications App Engine peuvent envoyer des messages e-mail au nom des adresses de réception de l'application ainsi qu'au nom de certains utilisateurs disposant d'un compte Google. Les applications ont la possibilité de recevoir des e-mails à des adresses différentes. Elles envoient des messages à l'aide du service Mail, et en reçoivent sous la forme de requêtes HTTP soumises par App Engine et transmises à l'application.
Envoyer des e-mails
Le service Mail peut envoyer des e-mails à un ou plusieurs destinataires. Un message contient un objet, un corps en texte brut et un corps HTML facultatif. Il peut également contenir des pièces jointes et un nombre limité d'en-têtes.
Vous pouvez utiliser n'importe quelle adresse e-mail en tant que destinataire. Le destinataire peut être indiqué dans le champ "À" du message ou dans le champ "Cc". Il peut également ne pas être visible par les autres destinataires du message (champ "Copie carbone invisible" ou "Cci").
Lorsqu'une application appelle le service Mail afin d'envoyer un message, ce dernier est placé en file d'attente, et l'appel renvoie immédiatement une réponse. Le service Mail utilise des procédures standards pour contacter le serveur de messagerie de chaque destinataire, transmettre le message ou faire une nouvelle tentative si le serveur de messagerie ne peut pas être contacté.
Utilisateurs pouvant envoyer des e-mails
Pour des raisons de sécurité, l'adresse de l'expéditeur d'un message doit correspondre à l'un des éléments suivants :
- Le compte Gmail ou Google Workspace de l'utilisateur actuellement connecté
- Toute adresse e-mail au format
anything@[MY_PROJECT_ID].appspotmail.com
ouanything@[MY_PROJECT_NUMBER].appspotmail.com
- Toute adresse e-mail répertoriée dans la console Google Cloud sous Expéditeurs autorisés pour l'API Email
Toutes les adresses e-mail de la liste Email API Authorized Senders (Expéditeurs autorisés pour l'API Email) doivent correspondre à des comptes de domaine valides qui sont hébergés par Google ou Gmail. Les administrateurs d'applications peuvent ajouter les comptes ci-dessous à la liste des expéditeurs autorisés.
- Leur propre adresse e-mail
- Tout groupe pour lequel ils disposent du rôle de propriétaire ou de gestionnaire
- Les applications hébergées dans un domaine Google Workspace :
noreply@[DOMAIN].com
, à condition quenoreply@[DOMAIN].com
soit un compte valide (utilisateur ou groupe)
En outre, les administrateurs de domaines gérés par Google Workspace peuvent ajouter n'importe quel utilisateur de leur domaine à la liste des expéditeurs autorisés.
Vous pouvez définir 50 expéditeurs autorisés au maximum.
Messagerie de Google Workspace
Si vous souhaitez envoyer des e-mails à partir d'un domaine géré par Google Workspace, vous devez définir les enregistrements SPF
DNS de votre domaine pour indiquer que Google est une source fiable pour vos e-mails. Pour savoir comment procéder, consultez la section Enregistrements SPF du centre d'aide Google Workspace.
Notez que si vous utilisez des alias configurés pour votre domaine Google Workspace, vous ne pouvez pas envoyer d'e-mails à partir d'adresses utilisant l'alias de domaine.
Notifications de non-distribution lorsqu'un message n'est pas remis au destinataire
La distribution des e-mails qui correspondent à une signature connue pour propager des spams, des virus ou tout autre contenu malveillant peut ne pas être acceptée.
Si le service Mail ne peut pas distribuer un message ou si le serveur de messagerie d'un destinataire renvoie un message d'erreur automatique (dans le cas, par exemple, où aucun compte ne correspond à cette adresse sur ce système), un message d'erreur peut être envoyé par e-mail à l'adresse de l'expéditeur. L'application elle-même ne reçoit aucune notification indiquant si le message a été ou non distribué.
Par défaut, les notifications de non-distribution d'e-mail ne sont pas activées. Pour en recevoir, vous devez configurer votre application. Pour en savoir plus, consultez la page Recevoir une notification de non-distribution.
Service Mail et serveur de développement
Vous pouvez configurer le serveur de développement de sorte qu'il transmette des messages directement depuis votre ordinateur lorsque vous testez une fonctionnalité de votre application qui envoie des e-mails. Vous avez la possibilité de le paramétrer pour qu'il utilise le serveur SMTP de votre choix. Il est également possible de lui demander d'employer le service Sendmail si ce dernier est installé sur votre ordinateur et configuré pour l'envoi d'e-mails.
Si vous ne configurez pas de serveur SMTP ou si vous n'activez pas Sendmail, le serveur de développement consigne le contenu du message lorsque votre application appelle le service Mail. Le message n'est pas réellement envoyé.
Authentification à l'aide de la norme DKIM (DomainKeys Identified Mail)
Lorsque vous envoyez un message, App Engine utilise la norme DKIM (DomainKeys Identified Mail) pour authentifier le domaine. Si votre application envoie des messages à partir d'une adresse e-mail faisant partie d'un domaine Google Workspace, App Engine peut signer de manière cryptographique les e-mails qu'il envoie. Cette signature indique qu'un e-mail censé émaner de emma@example.com
provient bien de example.com
. Le destinataire peut vérifier cette signature. Si elle est correcte, il sait que le domaine de l'expéditeur n'a pas été usurpé.
Pour activer l'authentification DKIM pour les messages envoyés depuis des adresses e-mail Google Workspace, suivez ces instructions dans le centre d'aide Google Workspace. Notez que l'activation de l'authentification DKIM pour votre domaine Google Workspace peut prendre jusqu'à 48 heures.
Vous devez également vous assurer que votre application utilise un domaine personnalisé qui correspond à votre domaine Google Workspace. Notez également que les domaines Google Workspace comportant des sous-domaines tels que subdomain.example.com
ne sont pas autorisés.
App Engine signe les e-mails sortants de l'application si l'adresse de l'expéditeur fait partie d'un domaine Google Workspace pour lequel l'authentification DKIM est activée. En outre, l'adresse de l'expéditeur doit être mise en forme de sorte que la partie correspondant au domaine ne soit composée que de lettres minuscules.
Quotas et limites
Pour connaître l'utilisation actuelle du quota de votre application, accédez à la page "Détails des quotas" dans Google Cloud Console.
Accéder à la page des détails des quotas
Chaque requête du service Mail est comptabilisée dans le quota Appels à l'API Mail. Des quotas s'appliquent également aux messages que vous pouvez distribuer, aux messages que vous pouvez transmettre en tant qu'administrateur, ainsi qu'à la quantité de données et de pièces jointes susceptibles d'être envoyées. Pour plus de détails, consultez la page Quotas de messagerie.
Le quota est réinitialisé quotidiennement. Si vous dépassez le quota quotidien, vous recevrez une exception de dépassement de quota. Si vous devez envoyer plus de messages que le quota ne le permet, vous pouvez utiliser un fournisseur de messagerie tiers, tel que SendGrid ou Mailgun.
Outre les quotas, les limites ci-dessous s'appliquent au service Mail.
Limite | Volume |
---|---|
Taille maximale des messages sortants, pièces jointes comprises | 31,5 Mo |
Taille maximale des messages entrants, pièces jointes comprises | 31,5 Mo |
Taille maximale des messages lorsqu'un administrateur est destinataire | 16 Ko |
Nombre maximal d'expéditeurs autorisés | 50 |
Étapes suivantes
- Lisez les consignes relatives à l'envoi de messages en masse.
- Apprenez à envoyer et recevoir des messages avec l'API Mail.
- Reportez-vous à la documentation de référence sur le package
mail
.