App Engine アプリケーションは、アプリのメール受信アドレスや、Google アカウントを持つユーザーに代わってメール メッセージを送信できます。アプリはさまざまなアドレスでメールを受信できます。アプリはメールサービスを使用してメッセージを送信し、App Engine から発信され、アプリにポストされる HTTP リクエストの形式でメッセージを受信します。
メールの送信
メールサービスは 1 人以上の受信者にメール メッセージを送信できます。メッセージには件名、プレーンテキスト形式の本文、HTML 形式の本文(オプション)が含まれます。また、添付ファイルや一部のヘッダーを含めることもできます。
受信者の任意のメールアドレスを使用できます。受信者は、メッセージの「to」フィールドや「cc」フィールドで指定することも、メッセージの受信者から隠すこと(「ブラインド カーボンコピー」つまり「bcc」)もできます。
アプリケーションがメールサービスを呼び出してメッセージを送信すると、そのメッセージはキューに追加され、呼び出しは直ちに戻ります。メールサービスは標準的な手順を使用して、各受信者のメールサーバーへの接続、メッセージの配信、メールサーバーに接続できなかった場合の再試行を実施します。
メールを送信できるユーザー
セキュリティ上の理由から、メッセージの送信者アドレスは次のいずれかにする必要があります。
- 現在ログインしているユーザーの Gmail または Google Workspace アカウント
anything@[MY_PROJECT_ID].appspotmail.com
またはanything@[MY_PROJECT_NUMBER].appspotmail.com
の形式のメールアドレス- Google Cloud コンソールの [Email API の承認済み送信者] に一覧表示されているメールアドレス
Email API の承認済み送信者リストに含まれているすべてのメールアドレスは、Gmail または Google がホストしているドメインの有効なアカウントである必要があります。アプリ管理者は承認済み送信者のリストに次のアカウントを追加できます。
- アプリ管理者自身のメールアドレス
- アプリ管理者がオーナーまたはマネージャーであるグループ
- Google Workspace ドメイン
noreply@[DOMAIN].com
でホストされているアプリケーション。ただし、noreply@[DOMAIN].com
が有効なアカウント(ユーザーまたはグループ)である場合のみ。
さらに、Google Workspace によって管理されているドメインのドメイン管理者は、そのドメインの任意のユーザーを承認済み送信者のリストに追加できます。
承認済み送信者の数は最大 50 人に制限されています。
Google Workspace からのメール
Google Workspace によって管理されているドメインからメールを送信する場合、Google が信頼できるメール送信元であることを示すために、ドメインの DNS SPF
レコードを設定する必要があります。この設定手順については、Google Workspace ヘルプセンターの SPF レコードをご覧ください。
Google Workspace ドメイン用に設定されたエイリアスを使用すると、ドメイン エイリアスを使用するメールアドレスからメールを送信できないことに注意してください。
メールが配信されなかった場合のバウンス通知
スパム、ウイルス、またはその他の悪意のあるコンテンツの既知の特徴と一致するメールは、配信を受け付けられない場合があります。
メールサービスがメッセージを配信できない場合、または受信者のメールサーバーがバウンス メッセージを返す場合(たとえば、システム上にそのアドレスのアカウントが存在しないため)、メッセージの送信者のアドレスにエラー メッセージをメールで送信できます。アプリケーション自体がメール配信の成功または失敗に関する通知を受信することはありません。
デフォルトで、メールバウンス通知は有効になりません。メールバウンス通知を受信するには、アプリケーションを構成する必要があります。詳細については、バウンス通知の受信をご覧ください。
メールと開発用サーバー
アプリのメール送信機能をテストするときに、コンピュータから直接メール メッセージを送信するように開発用サーバーを構成できます。選択した SMTP サーバーを使用するように開発用サーバーを構成することもできます。または、Sendmail がコンピュータにインストールされ、メール送信用に設定されている場合は、Sendmail を使用するように開発用サーバーに指示することもできます。
SMTP サーバーの構成または Sendmail の有効化を行わない場合は、アプリでメールサービスを呼び出したときに、開発用サーバーがメッセージの内容をログに記録します。実際にはメッセージが送信されません。
DomainKeys Identified Mail(DKIM)を使用した認証
メールを送信するとき、App Engine は DomainKeys Identified Mail(DKIM)規格を使用してドメインを認証します。アプリケーションが Google Workspace のドメインの一部であるメールアドレスからメッセージを送信する場合、App Engine は送信するメールに対して暗号による署名を行うことができます。この署名は、emma@example.com
から送信されたと主張しているメールが実際に example.com
から送信されたことを示します。受信者は、この署名をチェックして、署名が正しければ、送信者のドメインがなりすましされていないと認識します。
Google Workspace のメールアドレスから送信されるメッセージの DKIM 認証を有効にするには、Google Workspace ヘルプセンターのこちらの手順を実行します。Google Workspace ドメインで DKIM 認証が有効になるまでに、最長で 48 時間かかる可能性があるので注意してください。
Workspace がカスタム ドメインを使用していることと、Google Workspace ドメインと同じであることも確認する必要があります。また、subdomain.example.com
などのサブドメインを持つ Google Workspace ドメインは許可されないことにも注意してください。
送信者アドレスが DKIM が有効化された Google Workspace ドメインの一部である場合、App Engine はアプリケーションの送信メールに署名します。さらに、メールアドレスのドメイン部分が小文字のみで構成されるように、送信者アドレスの形式を合わせる必要があります。
割り当てと上限
アプリケーションの現在の割り当て使用量を確認するには、Google Cloud Console の割り当ての詳細ページに移動します。
各メールサービス リクエストは、Mail API の呼び出しの割り当てにカウントされます。送信できるメッセージの数、送信できる管理者メッセージの数、送信できるデータと添付ファイルの量に関しても、割り当てがあります。詳細については、メール割り当てをご覧ください。
この割り当ては毎日リセットされます。1 日の割り当てを超過した場合は、割り当て超過の例外が発生します。割り当ての許容量を超えるメールを送信する必要がある場合は、サードパーティのメール プロバイダ(SendGrid や Mailgun など)を利用できます。
割り当てに加えて、メールサービスには次の制限も適用されます。
制限 | 値 |
---|---|
送信するメール メッセージの最大サイズ(添付ファイルを含む) | 31.5 MB |
受信するメール メッセージの最大サイズ(添付ファイルを含む) | 31.5 MB |
管理者が受信者である場合のメッセージの最大サイズ | 16 KB |
承認済み送信者の最大数 | 50 件 |
次のステップ
- 一括メールのガイドラインを読む。
- Mail API を使用したメール送信とメール受信の方法を確認する。