連絡先とMailInAppからの送信
ESP向けにHTMLをエクスポートする以外にも、ダッシュボードから完成したメールを直接送信できます — 1件の連絡先、選択した一部、またはリスト全体のいずれにも対応します。配信は引き続き自分のSMTPリレー経由で行われるため、送信ドメインとレピュテーションは自分のものです。
連絡先リスト
連絡先タブにリストが格納されます。すべてのリストにはemail列(これがあることで送信可能になります)に加えて、名前・プラン・都市など好きな列を追加できます。各列はスタジオ内で{{field}}マージタグとしても機能します。
連絡先リストは他のものと同じデータソースです。スタジオのDataパネルでオーディエンスロールとして接続すると、メールの送信先であると同時に、単純な{{field}}マージタグが受信者ごとの値を取得する場所にもなります — キャンバスは実際の連絡先データでプレビューされます。データソースとマージタグを参照してください。
CSVをインポートする
連絡先がすでに別の場所にありますか?CSVをインポート(連絡先タブ、またはリスト内で既存リストに追加する場合)は、ESPやスプレッドシートが出力するファイルを受け付けます: カンマ区切り・セミコロン区切り・タブ区切り、ヘッダー行付きです。引用符付きの値、ExcelのBOM、""エスケープも処理されます。
ヘッダー名がそのまま列名になります。emailという名前の列がない場合、インポートは実際にアドレスを含む列(例:「E-Mail Address」)を探し、それをメール列として使用します。保存を押すまで何も保存されないため、先にテーブルを確認 — 修正 — できます。
CSVをエクスポートする
リスト(およびサプレッションパネル)のCSVをダウンロードは、いつでもスナップショットのバックアップを取得できます — 大規模なフィルタ送信の前や、プラットフォーム外にコピーを残しておきたいときに便利です。上記と同じインポーターで往復できます。
送信方法を一度だけ設定する
直接送信には、以下いずれかの方法で設定に送信方法を設定する必要があります:
- **まだESPがありませんか?自分のドメインを認証**すれば、MailInAppが代わりに送信します — SMTP認証情報の発行やローテーションも不要です。SMTP対応のプロバイダーをまだ持っていない場合は、これが推奨される既定の方法です。
- すでにESPがありますか?MailInAppをそのSMTPリレーに接続してください — SendGrid、Brevo、Mailgun、Amazon SES、小規模なテスト用途ならGmailのアプリパスワードでも構いません。SMTPエンドポイントを持つプロバイダーであれば何でも使用できます。最初の送信前にテストして保存で接続を確認してください。SMTPパスワードは認証情報です: サーバー側にのみ保存され、どこに表示される際もマスクされます。
どちらの方法も同じ送信パイプラインに流れます — 手動送信、スケジュール送信、このページの他のすべての機能は、どちらの方法でも同じように動作します。
まずテスト送信する
リストへの送信前に、テスト送信を使って完全にレンダリングされたコピーを自分宛て(または任意の相手)に送りましょう。件名には自分のアカウントのメールアドレスがあらかじめ入力され、[Test]という接頭辞が付き、実際に動作するライブビューリンクが含まれるため、インタラクティブブロックを実際にテストできます。テスト送信はデータソースに触れず、200件の受信者上限にも数えられず、送信履歴にも表示されません。
送信
ダッシュボード上のメールのカードから送信を押します:
- 受信者は、そのメールのオーディエンス — スタジオのDataパネルでオーディエンスロールとして接続された連絡先リスト — から取得されます。まだリストが紐付けられていない場合は、その場で選択できます。
- 全員を選択するか、個々の連絡先にチェックを入れます — 1件の連絡先への送信は、1行だけの選択です。すでに送信済みの行には最終送信日のラベルが付くため、誰にすでに届いたかを見失うことがありません(これは情報表示のみであり、選択内容を自動的に変更するものではありません)。
- 件名を設定します(ここでもマージタグが使え、✨提案を押すとAIがいくつかの候補を作成します — AI支援コピーを参照)して送信します。
各受信者は、それぞれ個別にコンパイルされたメールを受け取ります: マージタグはその行から解決され、個人ごとに署名されたライブビューリンクが付きます。インタラクティブブロックは静的フォールバックティアでレンダリングされ、リンクを起点としたインタラクションになります。投票の選択肢や評価は、記録前に確認を求めるリンクです。フォームやカルーセルはホスティングされたライブビューを開きます。このメールはどのクライアントでも動作し、単純なリンクのプリフェッチからは何も記録されません。
A/Bテスト
最大4つのバリアントを追加(合計2〜5個)して、送信を分割テストできます。各バリアントは件名、送信者情報、または別のプロジェクトを指定してメール全体のコンテンツを変更できます。すべての受信者は、そのメールアドレスに基づいて確定的にいずれかのバリアントに割り当てられるため、再試行や再送信によって誰がどのバリアントを見たかが入れ替わることはありません。
任意で自動的に勝者を選ぶを有効にすると、まずサンプルにのみ送信し、十分なデータが集まった時点でMailInAppが最も成果の良かったバリアントを残りの全員に送信します。A/Bテストと自動勝者選定を参照してください。繰り返し送信は現時点では単一バリアントのままで、スケジュールのフォームにバリアント選択はありません。
オーディエンスをセグメントする
受信者リストの上にあるオーディエンスフィルターは、データソースのフィールドに対するルール(例:ticket_status = Resolvedかつresolved_dateが過去7日以内)を作成し、フィルターを選択に適用を押すと、現在マッチしているものすべてに選択内容を設定します — 一回限りの手動選択ではなく、変動するセグメントになります。ルールの組み合わせは、スタジオのブロックの表示条件で既に使っているのと同じ方法でAND/ORを使います。
送信をソフトローンチする
ソフトローンチは、現在の選択のうちランダムな一部をサンプリングします — 割合を設定しサンプルを押すと、まずその割合に送信します。結果に納得できたら、残り(未送信)を選択を押すと、このメールをまだ受け取っていないリスト内の全員を選択できるため、後続の送信でサンプルへの二重送信が発生しません。
割引オファー
オーディエンスの連絡先リストにShopifyまたはWooCommerceのストアが接続されると、スタジオのブロックパレットにEコマース割引ブロックが表示されます — 購入履歴セグメントと組み合わせるためのものです: 過去の購入者にマッチさせ、実際に何かを提供します。他のブロックと同様、メール内のどこにでも配置できます。ストアが接続されるまではパレットに表示されません。
割引率または固定額、コードが有効な日数、同じ連絡先に再度オファーするまでの待機日数、そして任意でスコープ(同期済みの商品カタログを検索できるピッカー)を設定してストア全体ではなく1つの商品に限定できます。マッチした各受信者のメールがレンダリングされる直前に、MailInAppは自分が接続しているストア上で実際の使い切り型の割引コード(Shopifyの割引コードまたはWooCommerceのクーポンで、その顧客のメールアドレスに限定)を発行し、そのコードを中心にブロック自身のコード表示と「今すぐ購入」ボタンを構築します — 手動で配置するマージタグはありません。有効期限のカウントダウンを表示をオンにすると、同じカード内にコードの有効期限に連動したライブカウントダウン画像が追加されます。
知っておくべきこと:
- 引き換えは完全に自分のストア自身のチェックアウト上で行われます — MailInApp自身の商品ブロックチェックアウトではありません。これは意図的な設計です: 実際のストア購入からセグメントされたオーディエンスはすでにそのストアで購入しているため、割引はそのストアの既存の在庫・税・価格ルールを再利用し、別の決済手段を用意しません。
- 各ブロックは独立して発行とクールダウンを行い、そのブロックに紐付いています — 同じメールに複数の割引ブロックを配置しても(またはプロジェクト間でブロックを再利用しても)、別のブロックのコード発行を妨げることはありません。
- 受信者の注文は、他のストアクリックと同様の方法で、コードを送信したキャンペーンに紐付けて帰属します — Shopifyの注文・チェックアウト・売上のトラッキングを参照してください。
- ある受信者に対して発行が失敗した場合(ストアが未接続、またはトークンの再接続が必要な場合)でも、その受信者へのメールは送信されます — 実際のコードの代わりに、ブロックの単純なフォールバックラベルが表示されるだけです。割引ブロックが原因で送信がブロックされることはありません。
- 繰り返しスケジュールも手動送信と同じ方法でこれを取り込み、実行ごとに新しいコードを発行します — ローリングウィンドウ型のスケジュールが、以前の実行時の古いコードを配布することはありません。
- オーディエンスフィルターなしで、1つの特定の商品に紐付けた割引を行いたい場合は、商品ブロック自身が独立した商品単位の割引トグルを備えています — 両者の比較についてはストアネイティブな割引を、実践的な手順についてはShopify商品割引コード/WooCommerce商品割引コードを参照してください。
繰り返し送信
オーディエンスは時間とともに変化します — 「3〜7日前に解決」は毎日異なる行にマッチします。繰り返し送信は、紐付けられたデータソースの現在の行に対してオーディエンスフィルターを再評価するスケジュールです(毎日または毎週、選択したUTC時刻)。まだこのメールを受け取っていないマッチのみに送信し、前回の実行の続きから処理します。各実行は、手動送信と同様に通常の送信履歴レコードを書き込みます。リレーがすべての受信者に対して3回連続で失敗したスケジュールは、リストを黙って消耗させ続けるのではなく、自動的に無効化されます。
スケジュールは、繰り返しの周期の代わりに一度だけ(指定日)にすることもできます — 特定の日付に一度だけ送信され、その後は繰り返されず自動的に無効化されます。これは、12か月キャンペーンカレンダーのこの送信をスケジュールボタンが内部で使っているのと同じ仕組みです: カレンダー上で日付を選ぶと、そのプロジェクトをその特定の日に対象とする一度限りのスケジュールが作成されるため、日付が来たときに手動で送信しに戻る必要がありません。
ヘルプデスクやCRMから連絡先をプッシュする
送信のたびにCSVを再エクスポートする代わりに、連絡先リストは直接プッシュを受け付けられます。連絡先タブのリスト設定でAPIキーを発行し、自分のシステム(ヘルプデスクのオートメーション、CRMのワークフロー)から次のように呼び出します:
POST /api/datasources/<datasourceId>/rows
Authorization: Bearer <apiKey>
Content-Type: application/json
{ "rows": [{ "email": "[email protected]", "ticket_status": "Resolved" }] }
行は小文字化したメールアドレスをキーにアップサートされます — 既知のアドレスはその場で更新され、新しいものは末尾に追加されます — 既存の行が並べ替えられたり削除されたりすることはありません。回答の帰属が位置(row:<n>)に基づいており、並べ替えると過去の結合が壊れてしまうためです。バッチは500行までに制限され、キーごとにレート制限がかかります。キーは発行(または再発行)時に一度だけ表示され、その後はMailInAppの他のすべての認証情報と同様にどこでもマスクされます。取り消しは既存の行に影響を与えずに連携を無効化します。
送信履歴
実際の送信(テスト送信は除く)はすべて記録され、受信者ピッカーの上に表示されます — 日付、件名、送信・失敗・スキップの件数です。更新時にクライアント側で何かが削除されることはありません。履歴は実際に何が送信されたかを示す唯一の正しい記録です。
配信停止とサプレッション
フッタープリセットには{{unsubscribe_url}}マージタグが含まれており、その特定の受信者向けのワンクリック配信停止ページに解決されます。配信停止はアカウント全体に適用されます: クリックした1つのプロジェクトだけでなく、自分が送信するすべてのプロジェクトからそのアドレスをサプレッションするため、受信者がキャンペーンごとに個別にオプトアウトする必要はありません。
自分のSMTPリレーが送信時に同期的に拒否したアドレス(無効なメールボックス、リレーの拒否)も同様にサプレッションされるため、死んだアドレスに今後の送信で再試行することはありません。(リレーがメッセージを受け付けた後に非同期でバウンスさせるケースは、ESP固有のWebhookなしでは観測できないため、現時点では対象外です。)
サプレッションされたアドレスは、連絡先タブでバウンスまたは配信停止のバッジが表示されます。どちらも再登録可能です — メールボックスが一杯だった場合や誤クリックが必ずしも永続的とは限らないためです — サプレッションされた行は今後の送信で自動的にスキップされ(失敗とは別に報告されます)。
送信後
ESPからの送信と全く同様に、インタラクションは回答へ連絡先ごとにグループ化されて流れ込み、Webhookを設定していればイベントごとに発火します。
上限
- 1回の送信につき最大200件の受信者(1つのリスト、または繰り返しスケジュールの1回の実行につき)。より大きなオーディエンス向けにはエクスポート&ESPのワークフローを使用してください。繰り返し送信も、次回の実行で残りの対象者に追いついていきます。
- 有効なメールアドレスを持たない行はスキップされ、送信後に報告されます。
- CSVのインポートでは、同じファイル内でそれ以前に既に出現したメールアドレスを持つ行が除外されるため、重複するエクスポートを再インポートしても重複送信は発生しません — 「N件の重複メールをスキップしました」という通知が表示されます。
- 連絡先プッシュAPIは1バッチあたり500行までに制限されます。