Salesforceがクリックを記録するのは、Salesforceがリンクを送った場合です。Account Engagementは自社のメール内のURLを書き換えてクリックをプロスペクトに帰属させ、カスタムリダイレクトがそれを、ほかの場所に貼るリンクへ広げます。ネイティブでできることは、これですべてです。
ElidoにはSalesforceコネクターがありません。計画中で、Salesforceのヘルプページにも同じことが書かれています。今できるのは、橋を自分で作ることです。自分が所有する短縮リンク、クリックを読むElido API、それを書き込むSalesforce APIの3つです。この記事では、ネイティブのツールが何をカバーするか、現実的なDIYの手順、そして配管よりも重要な判断を扱います。別のCRMで同じ問題を扱う例は、コンタクトのタイムラインに表示するHubSpotのリンククリックが参考になります。
ネイティブツールがカバーする範囲
仕組みは2つあり、どちらもSalesforceが送ったメッセージに限られます。
Account Engagementのメールリンク追跡は、各リンクをトラッカー用サブドメイン経由に書き換えるため、クリックはメールを送ったプロスペクトに対して記録されます。うまく機能しますが、機能するのはそこだけです。
カスタムリダイレクトはもう一歩進みます。追跡用のURLを生成してバナー、ソーシャルの投稿、文書で使うと、クリックがプロスペクトの活動として現れます。同じプロスペクトの繰り返しのクリックは一定期間内で抑制されるため、カウントは生の合計ではなく、特定のプロスペクトへの帰属は、訪問者がすでに識別されているかどうかに左右されます。なお、2026-10-25にこれらのページを再確認しようとしたところ、Salesforceのヘルプサイトはアクセスエラーを返したため、そこから制限や数字は述べていません。詳細はご自身の組織で確認してください。
Marketing Cloudにも、同じ原則の独自の追跡リンクモデルがあります。送ったものを計測する、というものです。
Elidoが現在できること、できないこと
- できること: 自社ドメインの短縮リンク、リンクごとのアナリティクス、直近のクリックのAPI(
GET /v1/analytics/workspaces/{workspace_id}/clicks/recent)とCSVエクスポート、そしてlink.created、link.updated、domain.verifiedなどのリンクとドメインのライフサイクルイベント向けの署名付きWebhook。 - できないこと: Salesforceコネクター、リードや商談の作成、項目のマッピング、双方向の同期、レコードに刻めるクリックごとの識別子。
click.createdのWebhookはありますが、訪問者の身元は含まれないため、どのリードがクリックしたかは分かりません。conversion.recordedとthreshold.exceededというイベントは計画中で、送信されません。存在するものは、Webhookガイドに一覧があります。
そのため、クリックデータはプッシュではなくプルで取得する必要があります。それが妥当なトレードオフである理由は、クリック追跡におけるWebhookとポーリングで扱っています。
DIYの手順
パターンは短いものです。定期ジョブが新しいクリックを読み、行に変換して、Salesforceに書き込みます。
まず、Elidoから読みます。APIキーで直近のクリックのエンドポイントを数分おきにポーリングし、最後に見たタイムスタンプをウォーターマークとして保持します。各クリックの行には、リンク、解決された遷移先(そのURLに含まれるキャンペーンパラメーターを含む)、国、デバイス、ブラウザー、時刻が含まれます。APIクイックスタートにRESTの呼び出し例があります。Go SDKは公開済み(v0.1.0)ですが、TypeScript、Python、Ruby SDKはまだパッケージレジストリに公開されていません。
次に、Salesforceに書き込みます。REST APIは、対象オブジェクトのsObjectコレクションへのPOSTでレコードを作成し、認証には、自分の組織で作成したConnected AppのOAuthアクセストークンを使います。代替案はSalesforceのプラットフォームイベントのドキュメントに説明があります。イベントを発行し、購読者に判断を任せる方法です。2026-10-25に、Salesforceの開発者向けページはどちらも私の取得に403を返したため、エンドポイントのパスや制限は照合し直していません。組織の現在のAPIバージョンを使い、コードを書く前にリファレンスを確認してください。
そして、書き込みの経路は平凡に保ちます。週末で済む作業になるか、繰り返し起きるインシデントになるかは、3つの選択で決まります。
管理者がフローを好むなら、直接書き込まずにプラットフォームイベントを発行します。クリックでキャンペーンメンバーを更新するか、タスクを作るか、そのキャンペーンでは何もしないかを、購読者が決めます。マーケティングが方針を変えたときは、スクリプトではなくフローを編集します。
自分で管理できるキーで重複を除きます。ポーラーが重なる期間を取得することがあるため、同じクリックが2度返ることがあります。リンク、タイムスタンプ、訪問者の項目から安定したキーを作り、外部IDとしてレコードに保存して、それをキーにupsertします。リンクAPIのレート制限と冪等性で、同じ規律を扱っています。
ElidoのWebhookも受け取る場合(たとえば新しいリンクをキャンペーンにミラーするためのリンク変更)は、最初に署名を検証します。配信にはそれぞれX-Elido-SignatureとX-Webhook-Timestampが付き、タイムスタンプと生のボディに対して計算されます。検証方法はリンクイベントのWebhookの記事にあります。
クリックを人に結びつける、正直なやり方
連携が静かに嘘をつくのはここなので、はっきり述べておく価値があります。
クリックが運ぶのは、リンクが運んでいたものだけです。受信者ごとに別々の短縮リンクを生成していれば、リンクIDが受信者を特定し、自信を持ってその人のレコードに書き込めます。400人が同じリンクを受け取ったなら、400件のクリックがあるだけで名前はなく、どんな巧みな結合でも復元できません。Elidoは、返送できるクリックIDを保存しないため、結合のキーは、あなたが発行したリンクです。
したがって、ユースケースごとに決めます。アウトバウンドのシーケンスや1対1のフォローアップは、メッセージをキューに入れるときにAPIで作る、受信者ごとのリンクに見合う価値があります。広いキャンペーンには見合わず、正直な出力はキャンペーン単位のカウント、つまり個人ではなくキャンペーンオブジェクトに紐づく、キャンペーン別、メディア別、リンク別のクリックです。受信者ごとの版が元を取れる場面は、B2B営業チーム向けURL短縮サービスで扱っています。
IPアドレスやタイミングの偶然から本人を推測してはいけません。パイプラインのレポートを汚すほど頻繁に外れますし、ヨーロッパでは、できれば弁明したくない処理上の判断になります。
何をどこに書くか
4つの書き込み先を、検討が必要な度合いの低い順に示します。
- カスタムのクリックオブジェクト。 コンタクトとキャンペーンへのルックアップを持つ
Click__cに、リンク、キャンペーンパラメーター、国、デバイス、タイムスタンプを入れます。長持ちする選択で、レポートが速いままになり、活動フィードも読みやすいままです。 - キャンペーンメンバーのステータス。 最初のクリックでメンバーをSentからRespondedに移すのは、ここで最も有用な唯一の自動化です。すでにあるすべてのキャンペーンレポートに反映されるからです。
- タスクは控えめに。 担当者が自分のフィードでタッチを見るべき、価値の高いリンクに便利です。既定にするのはよくありません。週に数千のタスクが、ほかのすべてを埋もれさせます。
- コンタクトの集計項目。 最終クリック日と累計カウントは、維持が安く、関連リストを開かなくても担当者の質問の大半に答えます。
キャンペーンパラメーターは、ジョブが行を書き込むときに項目にマッピングしてください。Elidoのクリック行には独立したUTM項目がないため、ポーラーの中で遷移先URLから一度だけ解析します。クリックレコードにutm_campaignがあれば、営業オペレーションのレポートが何とも結合せずにキャンペーンでグループ化できます。
誰も計画しない制約、量
クリックは集中して届きます。5万人へのニュースレターは、最初の10分で数千のクリックを生み、素朴なジョブはその1件ごとにAPI呼び出しをします。
Salesforceの組織には1日のAPI許容量があり、プラットフォームイベントの発行にも独自のクォータがあります。ベンダーのページを読み込めず引用できなかったので、お使いのエディションの数字を調べてください。公開前に、1分あたりのピーク時のクリック数と許容量を照らす計算をする価値があります。たいていの答えは、クリックごとの書き込みは収まらない、というものです。
抜け道は、望ましい順に3つあります。自分の側で集計して、キャンペーン単位のレポート向けに1時間ごとの要約を書き込む。リンクが気にするカウント、たとえば3回目のクリックを越えたときにだけ書く。あるいはバッチ処理で、クリックを少し保持してまとめて挿入する。クリックごとの版が失敗するのを、私は一度見ました。公開日の午前9時でした。そして、急場の修正は、事前に設計した修正より、いつも雑になります。
信頼する前のテスト
確認は5つです。テスト用のリンクを作ってクリックし、キャンペーンが紐づいたレコードが1件現れることを確かめる。同じ期間にジョブを2回走らせ、レコードが1件のままであることを確かめる。未知のコンタクトのリンクをクリックし、例外を投げずに帰属なしの行として入ることを確かめる。アクセストークンを取り消し、ジョブが大きく失敗することを確かめる。そして実際のキャンペーンを少量で走らせ、同じ期間のElidoのカウントとレコード数を突き合わせます。数パーセントの差はボットフィルターとタイミングによるもので、3割の差ならバグです。Elidoのボットフィルターはユーザーエージェントのリストなので、自動化されたクリックの一部は、それでもカウントされます。
コネクターが提供されたら何が変わるか
計画中のネイティブコネクターは、Connected App、ポーラー、項目のマッピングを、設定済みの連携に置き換えるためのものです。日付はお約束しません。クリックオブジェクトとキャンペーンメンバーのロジックは、その移行後も使えるはずで、今きれいにモデル化しておくもう1つの理由になります。変更履歴を見ていてください。
ブログの関連記事
よくある質問
ElidoにSalesforce連携はありますか?
まだありません。ネイティブのSalesforceコネクターは計画中で、未構築です。Connected Appも、リードや商談の作成も、項目のマッピングもありません。現時点では、リンクとドメインのイベントをWebhookで転送し、クリックデータをアナリティクスAPIから自前のジョブに取り込めます。この記事では、そのDIY手順を示します。
Salesforceはネイティブでリンクのクリックを追跡しますか?
自分が送ったリンクのクリックを追跡します。Account Engagementは、メール内のリンクをトラッカー用サブドメイン経由に書き換えてプロスペクトのクリックを記録し、カスタムリダイレクトがそれを、ほかの場所に置くリンクへ広げます。それらのツール以外から送ったもの、たとえば担当者自身のメールボックス、SMSキャンペーン、印刷したコードは、Salesforceにクリックをまったく生みません。
Account Engagementのカスタムリダイレクトとは何ですか?
Account Engagementの中で生成される追跡リンクで、クリックをプロスペクトレコードの活動として記録します。バナー広告、ソーシャルの投稿、ほかの場所にあるファイルに向いています。実際には2つの制限が重要です。同じプロスペクトの繰り返しのクリックは短い期間内で抑制され、リンクが個人を特定できるのは、訪問者にすでにクッキーが付いている場合だけです。
短縮リンクのクリックをSalesforceに入れるにはどうしますか?
Elidoには現在ネイティブのコネクターがなく、計画中です。DIYの手順は、ElidoのアナリティクスAPIからクリックを読み、Salesforce REST APIでレコードを書き込むか、フローがレコードに変えるプラットフォームイベントを発行する小さなジョブです。ElidoのWebhookが対象とするのはリンクとドメインの変更でクリックではないため、クリック側はポーリングにする必要があります。
クリックを特定のコンタクトに帰属させられますか?
リンクがそのコンタクト専用だった場合に限ります。1本のキャンペーンリンクを400人がクリックしても、得られるのは400件の匿名のクリックで、ペイロードの中身でそれは変わりません。個人単位の帰属が重要なら受信者ごとにリンクを生成し、重要でなければキャンペーン単位のレポートで十分とします。
クリックはタスクとカスタムオブジェクトのどちらにすべきですか?
量が本格的になったらカスタムオブジェクトです。タスクは活動のタイムラインに表示されるので便利ですが、週に数千行になるとノイズになり、ストレージも膨らみます。コンタクトとキャンペーンへのルックアップを持つカスタムのクリックオブジェクトなら、レポートが速いままで、活動フィードに触れずにカウントを集計できます。
Elidoを試す
URLを貼り付けて短縮リンクを取得
登録不要。リンクは30日間有効。永久に保存するには登録してください。
無料アカウントが必要です。無料プランには合計 25 件のリンクが含まれます。 アカウントをお持ちですか? ログイン