Skip to content

フォームの回答を CRM に追加する ​

お問い合わせやイベント申し込みなどの DECA Forms のフォームに回答があったら、回答者を DECA CRM に追加します。すでに登録されていれば、そのレコードを更新します。メールアドレスで照合するので、何度フォームに回答しても 1 人につき 1 件のレコードに保たれます。

準備するもの:

  • 少なくともメールアドレスを尋ねる DECA Forms のフォーム。
  • 人を管理する DECA CRM のオブジェクト(例: コンタクト)。メールアドレスのフィールドと、残したい回答ごとのフィールドを用意します。

1. 回答が届いたらフローを開始する ​

  1. フローを作成し、トリガーを追加 をクリックします。
  2. DECA Cloud を開き、フォーム を選んでから、イベント 回答作成 を選びます。

このトリガーは組織内の すべての フォームの新しい回答で発火します。フォームの回答をテーブルに保存する と同じように、対象のフォームだけ続行する パス を追加します。

2. レコードを追加または更新する ​

  1. パスの分岐で ステップを追加 をクリックし、DECA Cloud を開いて CRM を選び、レコードを更新または作成 を選びます。

  2. ワークスペースID と、コンタクトのオブジェクトの オブジェクトID を入力します。CRM でオブジェクトを開いたときの URL からコピーできます。

  3. フィルター: 既存のレコードの探し方です。行を 1 つ追加し、メールアドレスのフィールドと、値にメールアドレスの回答を設定します。

    $string($trigger.output.answers[question.label="メールアドレス"].response.flatAnswer)

    メールアドレス は、フォームの質問のラベルと完全に一致させてください。

  4. Data: 書き込むフィールドです。フィールドごとに行を追加し、同じ方法で対応する回答を設定します。メールアドレスのフィールドもここに入れてください。 CRM はフィルターの値を新しいレコードにコピーしないため、入れないと同じ人の次の回答で重複したレコードが作られます。

CRM の選択肢のフィールドには、メールマガジン のような選択肢のラベルを渡せます。CRM が一致する選択肢を探します。

レコードを更新または作成の設定。ワークスペースID とオブジェクトID が入力され、フィルターに email の行、Data に email と name の行があり、それぞれフォームの回答への式が設定されている

更新または作成の動き ​

フィルターに一致するレコード結果
なしData から新しいレコードを作成します。
1〜10 件それらのレコードを Data で更新します。
11 件以上何も書き込まず、ステップは失敗します。

どうなったかは出力でわかります。data.created は新しいレコードなら true、更新なら false で、data.records に書き込んだレコードが入ります。

3. 新しいコンタクトに対応する ​

出力で新規か既存かを区別できるので、扱いを変えられます。更新または作成のステップの後に、条件 data.created 真 のパスを追加し、その分岐で次のような処理をします。

  • 営業チャンネルに投稿する。通知を送る を参照してください。
  • メール › メール送信 でウェルカムメールを送る。
  • CRM › アクティビティ作成 で流入元を記録する。

4. 公開してテストする ​

フォームの回答は 公開済み のフローを実行するため、公開 をクリックします。同じメールアドレスでフォームを 2 回送信し、実行履歴 を開きます。1 回目は created: true、2 回目は created: false になり、CRM のレコードは 1 件のはずです。

うまくいかないとき ​

症状考えられる原因
回答のたびに重複したレコードができるメールアドレスのフィールドが フィルター にあって Data にない。
一致が多すぎてステップが失敗するメールアドレスの回答が空だったなどの理由で、フィルターが 11 件以上に一致した。ステップの前に、メールアドレスが 空でない ときだけ続行するパスを追加する。
フィールドが空のまま式の質問ラベルがフォームと完全に一致していない。
既存のレコードと一致しないCRM は値を完全一致で比べる。CRM のデータが小文字なら、$lowercase(...) で回答を小文字にする。

関連ページ ​