App Engine アプリでは、サードパーティ企業のサービスを利用して、メールや SMS メッセージの送信、電話の発着信を行えます。たとえば、ビジネス トランザクションやユーザー アカウントの作成を確認するためのメールの送信や、マーケティング関連のメール配信を行うことができます。
このページでは、App Engine アプリで使用できる通信サービスとクライアント ライブラリを提供している企業の例を紹介します。
Mailgun
Mailgun は、メール送信用の RESTful API とクライアント ライブラリの両方を、すべてのユーザーへの無料割り当てとともに提供しています。追加のメッセージに対する料金設定やボリューム ディスカウントについては、お申し込みページの月額料金計算ツールでご確認ください。
Mailgun の詳細については次をご覧ください。
Mailjet
Mailjet は、App Engine ユーザーに無料枠を提供するグローバル メールサービスです。この特典を利用するには、次のリンクをクリックして Mailjet アカウントを作成してください。
Mailjet の詳細については次をご覧ください。
SendGrid
SendGrid は App Engine のメール機能を強化します。SendGrid を使用すると、メールの到達率が向上し、アプリから送信されたメールの状況をより明確に把握できます。SendGrid のインターフェースまたは API を介して、開封数、クリック数、登録解除、スパムレポートなどに関する統計情報を確認できます。
App Engine のお客様は、Google Cloud コンソールから SendGrid Email API プランを申し込むと、無料割り当てをご利用いただけます。お客様が有料パッケージを申し込むと Google に報酬が支払われます。
SendGrid の詳細については次をご覧ください。
Twilio を介した SMS サービスと音声サービス
Twilio を使用すると、音声、VoIP、メッセージをアプリケーションに埋め込むことができます。Twilio プラットフォームは、Twilio マークアップ言語(TwiML)、RESTful API、VoIP SDK(ウェブブラウザ、Android、iOS 用)で構成されています。
Twilio の詳細については次をご覧ください。
クライアント ライブラリとサードパーティ API キーをアプリに追加する
クライアント ライブラリを App Engine 開発環境とデプロイ環境で使用できるようにするには、ライブラリを依存関係として指定します。たとえば、Node.js ランタイムの依存関係を指定するには、こちらをご覧ください。
サードパーティのほとんどのサービスでは API キーを使用してアプリの認証を行います。鍵は、サードパーティのサイトで生成します。アプリでサードパーティの API キーを使用するには、次のようにします。
API キーを Secret Manager に保存し、インスタンスの起動時に鍵を安全に取得します。
Cloud Key Management Service で鍵を暗号化し、暗号化された鍵を環境変数に保存して、インスタンスの起動時にプログラムで復号します。
非本番環境では、鍵自体を環境変数に保存してかまいません。
app.yaml
ファイルにアクセスできるユーザーは、自分の鍵にもアクセスできることに注意してください。
各方法の利点については、シークレット管理ソリューションの選択をご覧ください。
鍵または暗号化された鍵の値を環境変数に保存するには、次のようにします。
鍵または暗号化された鍵の値を、アプリの
app.yaml
ファイル内の環境変数セクションに追加します。次に例を示します。
env_variables: EMAIL_API_KEY: key-from-third-party OR encrypted-key
.NET ランタイムを使用している場合は、アプリの
appsettings.json
ファイル内の構成変数にキーを追加します。Node.js ランタイムを使用している場合は、アプリのapp.flexible.yaml
ファイルで、アプリの環境変数セクションの構成変数にキーを追加します。アプリのコードで、環境変数から鍵または暗号化された鍵を取得します。
たとえば、Python ランタイムを使用している場合は、次のようにします。
EMAIL_API_KEY = os.environ['EMAIL_API_KEY']
サードパーティの API の要求に応じて鍵を渡します。以前に暗号化した鍵は、確実に復号してください。