FlutterFlowとSendGridを使って、簡単にメールを送信する方法を解説します。
はじめに
FlutterFlowは、ノーコードでモバイルアプリを開発できるプラットフォームです。SendGridは、クラウドベースのメール配信サービスです。
この2つのサービスを組み合わせることで、コードを(ほとんど)書かずに、簡単にメールを送信することができます。
手順
Sendgridアカウントを作成する
SendGridアカウントを作成するには、SendGrid公式サイト にアクセスし、サインアップをクリックします。
SendgridのAPIキーを取得する
SendGridアカウントにログインしたら、[Settings] > [API Keys] に移動します。[Create API Key] をクリックして、新しいAPIキーを作成します。
メール送信画面を作成する
FlutterFlowプロジェクトで、メール送信画面を作成します。画面には、以下の要素を追加します。
- メールアドレス入力フィールド
- 件名入力フィールド
- 本文入力フィールド
- 送信ボタン
メール送信用のAPIを作成する
- API Calls > Addで新しいAPIを作成します。
- Method TypeはPOST、API URLは
https://api.sendgrid.com/v3/mail/send
です。
以下のページが参考です。
- HeaderにはSendgridのAPIキーとContent-Typeを設定してください。
- Variablesは以下のように受信者、件名、本文を渡せるようにしてください。この後テストをするためにDefault Valueは何か値を入力しておいてください。
- BodyはJSONで以下のように設定してください。こちらのコードをコピペしてから設定をすれば楽です。
{
"personalizations": [
{
"to": [
{
"email": "<enter_to_email>"
}
],
"subject": "<enter_to_subject>"
}
],
"content": [
{
"type": "text/plain",
"value": "<enter_content>"
}
],
"from": {
"email": "<enter_from_email>",
"name": "<enter_from_name>"
},
"reply_to": {
"email": "<enter_reply_to_email>",
"name": "<enter_reply_to_name>"
}
}
- Add callを押します。
- Response & TestでTest API Callを実施してください。http response 202が返却されます。
Default Valueに設定した通知先(toEmail)にSendgridからメールが通知されているかと思います。 - 作成したAPIは忘れずにSaveしておいてください。
API呼び出しをトリガーする
送信ボタンをクリックしたときに、API呼び出しをトリガーするように設定します。
- ActionはBackend/Database > API Callを設定します。
- Call APIのVariablesには画面上のメールアドレス、件名、メール本文を設定します。
- メール送信に成功した場合にメール送信結果用ページに遷移するようにします。
これで設定は完了です。
アプリをプレビューしてテストする
FlutterFlowアプリのプレビュー機能を使って、アプリをテストします。
メール送信画面でメールアドレス、件名、本文を入力して、送信ボタンをクリックします。メールが正しく送信されていることを確認します。
こんな感じで問題なくメールが届きました。
まとめ
今回はSendgridを使ったメール送信方法を作成しました。Sendgridの設定は必要ですが一度してしまえばこのように簡単に実装出来ます。
Sendgrid自体はいろいろなサービスで利用しやすい環境も整っているので無料アカウントを一つ持っておくととても便利です。
それでは今回は以上としたいと思います。
株式会社Spovisorではノーコード・ローコードツールを使ったシステム開発、アプリ開発を実施しています。
要件定義から伴走して支援し、安価・スピーディー・柔軟な開発を行います。無料でご相談もお受けしております。