弊社では、シャノン社が提供しているkintoneと連携できるMA(マーケティングオートメーション)ツール「シャキーン」を利用しています。元々はメール配信サービスであるSendGridを使用していたのですが、シャキーンのパートナーになったことをきっかけに、SendGridからシャキーンに切り替えて活用しています。
参考記事:SendGridからシャキーンへの切替に伴う自社の変化点まとめ
元々使用していたSendGridでは、大きく次の2種類の使い方をしていました。
- メルマガやプラグインバージョンアップのアナウンス用の一斉配信
- お問い合わせ対応用の個別メール配信
このうち個別メール配信に関しては、kintoneの詳細画面からSendGridのAPIを使用したカスタマイズを行い、メール送信できるように対応していました。シャキーンへ切り替えた当初は「kintoneから直接送る運用は諦めるしかないか・・」とも思いましたが、調べてみるとシャキーンにもメール送信APIが存在することが判明。これを利用することで、無事に以前と変わらない運用体制を維持できています。
この記事では、シャキーンのメール送信APIを使用して、kintone上から直接メール送信するカスタマイズの概要をご紹介します。シャッキーンを使用しているけれど、kintoneに保持しているリード情報を使ってkintoneからも直接メール送信もしたいことがある。そんな方向けに参考となる内容となっています。
メール配信用アプリの全体構成
本カスタマイズでは、役割の異なる3つのkintoneアプリを組み合わせて運用しています。

- お問い合わせアプリ
HPからのお問い合わせデータが格納されるメインアプリ。このアプリの詳細画面に個別メール送信用のカスタマイズを実装(送信ボタンや確認画面など)。 - リードアプリ
お問い合わせいただいた方の氏名やメールアドレスを一元管理するアプリ(シャキーンと連携)。 - メールテンプレートアプリ
送信メールの定型文を管理するアプリ。「件名」や「本文」を保持し、{{会社名}}や{{氏名}}のようにフィールドの値を自動で差し込みできるようなカスタマイズを実装。
kintone詳細画面からのメール送信処理の流れ
実際の画面操作と裏側の処理の流れは以下の通りです。
リード情報の自動登録
お問い合わせアプリに新規データが登録された際、リードアプリに未登録のメールアドレスであれば自動でリード情報を作成するカスタマイズを入れています。リードアプリはシャキーンと連携しているので、登録後一定時間経過すれば自動で同期されます。
テンプレートの選択
お問い合わせアプリの詳細画面に「メール送信」ボタンが表示されます。

ボタンをクリックすると、テンプレートアプリに登録されているレコードを元に、テンプレート選択画面が立ち上がります。

文面の確認・個別調整
テンプレートを選ぶとメール送信確認画面に進みます。自動置換された件名・本文・送信先を確認でき、必要に応じてこの画面上で文面を直接微調整することも可能です。

APIによるメール送信と履歴の記録
内容確認後に送信ボタンをクリックすると、シャキーンのメール送信APIを経由してメールが送られます。API経由の送信であってもシャキーン管理画面の「個別配信履歴」にログが残るため、後からの確認も可能です。

補足
リード宛メール送信APIを使ったメール送信の場合、個別配信履歴一覧内の「最新開封日時」には何も表示されません。(シャキーンの画面から配信した場合は、「未開封」または開封した日時が表示されます)
シャキーンのAPIを使ったメール送信時の注意点
APIを使ったメール送信は、大まかに次のような流れで動かしています。
- 認証トークンを発行(クライアントアプリケーション認証API)
- 宛先メールアドレスからリードIDを特定(リード情報取得API)
- リードIDを使用してメール送信(リード宛メール送信API)
SendGridの場合と違うのが、リードIDを元にメール送信が行われるという点です。メール送信時は「リード宛メール送信API」を使用していますが、HTTPリクエストボディにメールアドレスの指定はできません。2の処理においてメールアドレスからリードIDを特定するような処理を入れていますが、ここはメール送信ボタンを表示しているアプリ内にメールアドレスとあわせてリードIDもフィールドとして持っていれば、この処理自体が不要になります。
また、リード宛メール送信APIのリクエスト・レスポンスが共にXML形式であるため、ちょっとした加工が必要となります。この点については、SendGridのメール送信APIのほうが使いやすいという感覚です。
kintoneから直接メール送信の応用として
現在使用しているのは「kintoneの詳細画面からメール送信する」という形のため、1メールアドレスずつのメール送信するのが基本となっています。少し応用してカスタマイズすると、登録済みのリードアプリから送信先を選択してまとめてメール送信するということも可能です。
個別メール送信の応用例
- 一覧画面に「メール送信」ボタンを表示
- ボタンクリックで、テンプレート一覧画面を表示(テンプレート管理用の別アプリのレコードを表示)。どのテンプレートを使用するかを選択する。
- リード一覧を表示(リード管理管理用の別アプリのレコードを表示)。誰にメール送信するかを選択する。
- 送信前確認画面を表示(サンプルとして1社分)。OKであれば、指定した宛先へメールを送信する。
上記の例では都度配信先を指定しますが、「一覧表示中のレコードを対象にする」というような形も可能なので、これであれば1プロセス分削減することもできます。
まとめ
シャキーンのメール送信APIを活用することで、SendGridからの移行後も「kintone上のデータを活かした直接メール送信」という従来の運用体制を問題なく継続できました。
3つのkintoneアプリ連携とAPI処理を組み合わせることで、MAツール(シャキーン)の機能+kintoneから直接メール送信という操作性向上も実現できます。
「kintoneとシャキーンを連携させてさらに業務を効率化したい」「シャキーンの管理画面からではなくkintoneから直接メール送信がしたい」という方は、ぜひ本記事の構成を参考にカスタマイズを検討してみてください。
