今回はノーコードツール「Adalo」の質問に回答していきます。頂いた質問は次の通りです。
AdaloのClick Actionにて「Custom Action」でSendGridのAPIを使い、問い合わせや注文内容のメールを送受信できるようにしています。Body内のJSONにinputsで設定した例えば「問い合わせ詳細」のようなテキストフィールドを入れ、実際にアプリで問い合わせた場合にテキストフィールド内に改行が含まれているとメールが送信されません。SendGridにも届いていないようです。改行がなければ問題なくメールの送受信はできています。
質問内容より引用
解決したい内容
- AdaloでSendGridのAPIを使用して、メールを送信したい。
- カスタムアクションを使用してメールの送信は実装できたけど、メールの本文に改行が含まれるとメール送信のアクションが正常に実行されない。
今回目指すゴールは、「AdaloでSendGridのAPIを使用し、メール本文に改行を含んでいても正常にメールを送信させること」です。
Adaloで作ったアプリにメール送信機能を実装したい方はぜひ参考にして下さい。
Adaloでメール送信機能を実装すると、ワンタイムパスワードの発行・問い合わせメールの送信などをアプリに組み込むことができます。
SendGridとは?

SendGridは全世界で利用されているメール配信サービスです。
クラウドサービスのためアカウントを作成するだけで即日メールを送信でき、面倒でコストのかかるメールサーバの構築は不要です。SendGridは煩わしいメール配信業務をAPIを利用して、業務の効率化を実現できるのが強みです。
AdaloでSendGridのAPIを使用する方法
それでは、Adaloで作成していきましょう。簡単なメール送信アプリを作成していきます。
はじめにSendGridの設定
自分もSendGridを使用するのははじめてのため、仕様を確認しながら実装していきます。SendGridのアカウント作成がまだの方は、こちらからどうぞ。
アカウント作成しログインできたら、Integration Guideをクリックしてください。
Web API と SMTP Relayの選択が表示されますので、Web APIを選択して下さい。

続いて、アプリケーション構築に使用する言語を選択します。Adaloで実装する場合はcURLを選択して下さい。

続いてアプリの名前を入力します。

API Keyが発行されますので、ご確認をお願いします。

API Keyが発行されたら、ターミナルにて挙動のテストを実施していきます。ターミナルを立ち上げて次のコマンドを打ち込んでメールが送信できるか確認します。
curl --request POST \ --url https://api.sendgrid.com/v3/mail/send \
--header "Authorization: Bearer XXXXXXXXXXXXXXXX" \ --header 'Content-Type: application/json' \
--data '{"personalizations": [{"to": [{"email": "XXXXX@gmail.com"}]}],"from": {"email": "test@example.com"},"subject": "Sending with SendGrid is Fun","content": [{"type": "text/plain", "value": "and easy to do anywhere, \n even with cURL"}]}'
問題なく、指定のメールアドレスへメールが送信されることを確認できると思います。
続いて、Adalo側を設定していきましょう
Adaloで次のような簡易的なサイトを作成してみました。
構成は単純で、SendGridのAPI Keyを入力するとAdaloからSendGridを介してメールを送信することができます。

SENDボタンにアクションを設定していきます。SendGridのAPIを使用するためカスタムアクションを設定していきます。


カスタムアクションを設定していきます。アクションに好きな名前をつけTypeはCreateで作成していきます。

カスタムアクションはこのような形でインプットします。

スクリーン上に配置したインプットをボタンのカスタムアクションのインプットとして定義していきます。
これで一旦AdaloのアプリからEmailを送信することができるようになりました。
質問の内容確認はこれで検証できます。やはり、送信メールの本文に改行を入れると正しくアクションが動かないことが確認できました。
作成したアプリはこちら
次回は、改行を本文に入れても正しくメールを送信できるようにしていこうと思います。
それではまた。
コメント