【Alteryx Analytics Cloud】PLANsとSendGridを組み合わせてメールを送信する

PlansとSendGridを組み合わせてメールを送信する方法をご紹介します

 

Alteryx Analytics CloudのPlansには、実行できるタスクの中に「HTTP」があります。

この「HTTP」タスクは以下のことが可能です。

  • Webhook通知を送信
  • 別のPlanを実行(API経由)
  • 外部APIへのリクエスト

 

つまり、RestAPIを叩けるということになります。

設定可能な項目は以下のようになっています。

 

これについて適切に設定を行うと、HTTPリクエスト、つまり外部のシステムと連携を行うことが可能です。

 

SendGridとは?

SendGrid は、「クラウドベースのメール配信サービス」とされています。開封確認などの機能があるため、マーケティングなどに主に使われます。また、SMTPもしくはAPI経由でメールを送信することが可能です。無料プランも準備されており、月12,000通まで送れます。

 

今回は、Alteryx Analytics CloudのHTTPタスクから、このAPI経由でのメール送信をSendGridから行うことで、Alteryx Analytics Cloudから自由にメールを送ってみたいと思います。

 

HTTPタスクの設定

SendGridでメールを送るには、以下のようにHTTPタスクに設定を行います。

 

オプション名
Method POST
URL https://api.sendgrid.com/v3/mail/send
Headers
パラメータ名
Content-Type application/json
Authorization Bearer SG.・・・・・・・・

Headersは複数項目を入力する必要があります。AuthorizationのBearerについては、SendGridのAPIキーの頭に「Bearer 」をつけたものになります(BearerとAPIキーの間には半角空白を1文字入れます)。詳細はこちら

Body {"personalizations": [{"to":[{"email": "送信先メアド"}],"subject":"AlteryxからRestAPIでメール送信するテスト"}],"from": {"email": "送信元メアド"},"content":[{"type":"text/plain","value": "出力ファイルのレコード数:{{$flow_qg.test_output.rowCount}}\nはろー。てすとめーる。\n"}]}

※Bodyの「送信先メアド」「送信元メアド」は実際のアドレスとなります

 

Bodyは基本的にJSON形式で記載しないといけないので、若干慣れが必要かと思います。内容自体は自由なので、ここではテスト的に適当な文言を入れています。書き方は、ドキュメント を参照願います。

本文中には、上流のタスクのメタデータを含むことができます。例えば、レコード数は「$flow_qg.test_output.rowCount」のような形で記述可能です(現在はTrifactaのフローの結果しか参照できないようです)。

これにより、以下のようにメール送信されます。

まとめ

Alteryx Analytics Cloudのスケジュール機能には、完了後にメールを送信する機能もありますが、SendGridとHTTPタスクを使えば、より細かく好きな形でメールを送信することが可能です。SendGridは無料プランでもそれなりの数のメールを送信することができるので、気軽に利用可能です。

Alteryx Analytics Cloudのスケジューラ機能自体にはJobの実行完了時にメールを送る機能はありますが、より細かくメールを送信したり、完了通知以外の内容のメールを送りたいといった際に利用可能です。

 

参考

 

Alteryxの導入はぜひKCMEで!

セルフサービスデータ分析ツール「Alteryx」は4週間無償トライアルが可能です。

製品に対する操作方法、技術的な質問などは導入前・導入後に関わらずメールにてお答えします。また、Alteryxを用いた環境構築、開発、ヘルプデスク対応、ハンズオン、トレーニング、ワークフロー作成なども承りますので、お気軽にご相談ください。

おすすめの記事