Salesforce CRM 接続
概要 overview
Salesforce CRM は一般的な顧客関係管理(CRM)プラットフォームであり、以下に説明するプロファイルのタイプをサポートしています。
この Adobe Experience Platform 宛先は Salesforce composite API を活用します。これは、前述の両方のタイプのプロファイルをサポートします。
セグメントのアクティブ化を行う際に、リードまたは連絡先を選択し、属性とオーディエンスデータを Salesforce CRM に更新することができます。
Salesforce CRM は、Salesforce REST API と通信するための認証メカニズムとして、パスワード付与を使用した OAuth 2 を使用します。 Salesforce CRM インスタンスを認証する手順は、さらに下の宛先に対する認証の節にあります。
ユースケース use-cases
マーケターは、Adobe Experience Platform プロファイルの属性に基づいて、ユーザーにパーソナライズされたエクスペリエンスを提供できます。 オフラインデータからオーディエンスを作成し、これらのオーディエンスを Salesforce CRM に送信して、Adobe Experience Platformでオーディエンスとプロファイルが更新されるとすぐに CRM メンバーシップを更新できます。
前提条件 prerequisites
Experience Platformの前提条件 prerequisites-in-experience-platform
Salesforce CRM 宛先へのデータをアクティブ化する前に、 スキーマ、 データセットおよび セグメントを Experience Platform で作成する必要があります。
Salesforce CRM の前提条件 prerequisites-destination
Platform から Salesforce アカウントにデータを書き出すには、Salesforce CRM で次の前提条件に注意してください。
Salesforce アカウントが必要です prerequisites-account
Salesforce アカウントをまだお持ちでない場合は、Salesforce 体験版ページに移動し、登録して作成してください。
Salesforce 内での接続アプリケーションの設定 prerequisites-connected-app
まず、Salesforce アカウント内に Salesforce 接続されたアプリがない場合は、設定する必要があります。 Salesforce CRM は、接続されたアプリを利用して Salesforce に接続します。
次に、Salesforce connected app の OAuth Settings for API Integration を有効にします。 詳しくは、Salesforce ドキュメントを参照してください。
また、Salesforce connected app ージに対して以下に説明する スコープが選択されていることを確認します。
chatter_api
lightning
visualforce
content
openid
full
api
web
refresh_token
offline_access
最後に、Salesforce アカウント内で password
付与が有効になっていることを確認します。 ガイダンスが必要な場合は、Salesforce OAuth 2.0 ユーザー名 – パスワードフロー特別なシナリオに関するドキュメントを参照してください。
Salesforce 内でのカスタムフィールドの作成 prerequisites-custom-field
Salesforce CRM の宛先に対してオーディエンスをアクティブ化する場合、オーディエンススケジュール 手順で、アクティブ化された各オーディエンスの マッピング ID フィールドに値を入力する必要があります。
Salesforce CRM では、Experience Platformから受信するオーディエンスを正しく読み取って解釈し、Salesforce 内でオーディエンスステータスを更新するためにこの値が必要です。 オーディエンスのステータスに関するガイダンスが必要な場合は、 オーディエンスメンバーシップの詳細スキーマフィールドグループに関するExperience Platformドキュメントを参照してください。
Platform から Salesforce CRM に対してアクティブ化するオーディエンスごとに、Salesforce 内に Text Area (Long)
タイプのカスタムフィールドを作成する必要があります。 ビジネス要件に応じて、256~131,072 文字の任意のサイズのフィールド文字の長さを定義できます。 カスタムフィールドタイプについて詳しくは、Salesforce カスタムフィールドタイプのドキュメントページを参照してください。 また、フィールドの作成に関してサポートが必要な場合は、Salesforce のドキュメントを参照して カスタムフィールドの作成を確認してください。
(_)
文字を区切り文字として使用します。Salesforce 内で、アクティブ化された各 Platform セグメントの マッピング ID 内で指定された値と完全に一致する フィールド名 を持つカスタムフィールドを作成する必要があります。 例えば、以下のスクリーンショットは、
crm_2_seg
という名前のカスタムフィールドを示しています。 このExperience Platformに対してオーディエンスをアクティブ化する際に、crm_2_seg
を マッピング ID として追加し、宛先のオーディエンスをこのカスタムフィールドに入力します。Salesforce でのカスタムフィールド作成の例 手順 1 - データタイプを選択 を以下に示します。
Salesforce でのカスタムフィールド作成の例 手順 2 - カスタムフィールドの詳細を入力 は、次のとおりです。
- Platform オーディエンスに使用されるカスタムフィールドと、Salesforce 内の他のカスタムフィールドを区別するために、カスタムフィールドの作成時に認識できるプレフィックスやサフィックスを含めることができます。 例えば、
test_segment
の代わりに、Adobe_test_segment
またはtest_segment_Adobe
を使用します - Salesforce で既に他のカスタムフィールドを作成している場合は、Platform セグメントと同じ名前を使用して、Salesforce でオーディエンスを簡単に識別できます。
- Salesforce のオブジェクトは、25 個の外部フィールドに制限されています。 カスタムフィールド属性を参照してください。
- つまり、一度にアクティブにできるExperience Platformオーディエンスメンバーシップは最大 25 個までです。
- Salesforce 内でこの制限に達した場合、新しい マッピング ID を使用する前に、Experience Platform内の古いオーディエンスに対するオーディエンスステータスの保存に使用されていたカスタム属性を Salesforce から削除する必要があります。
Salesforce CRM 資格情報の収集 gather-credentials
Salesforce CRM の宛先に対して認証を行う前に、以下の項目をメモしておきます。
Username
Password
Security Token
セキュリティトークンがない場合に Salesforce インターフェイスからセキュリティトークンを再生成する方法については、Salesforce のドキュメント セキュリティトークンのリセットを参照してください。
Custom Domain
。
の場合
d5i000000isb4eak-dev-ed
.my.salesforce.com,値として
d5i000000isb4eak-dev-ed
が必要です。Client ID
Client Secret
ガードレール guardrails
Salesforce は、リクエスト、レート、タイムアウトの制限を課すことにより、トランザクションの負荷を分散させます。 詳しくは、API リクエストの制限と割り当てを参照してください。
Salesforce アカウント管理者が IP 制限を適用している場合は、Salesforce アカウントの信頼済み IP 範囲に 🔗1}Experience PlatformIP アドレス } を追加する必要があります。 追加のガイダンスが必要な場合は、Salesforce 接続されたアプリの信頼できる IP 範囲へのアクセスの制限ドキュメントを参照してください。
サポートされる ID supported-identities
Salesforce CRM では、以下の表で説明する ID の更新をサポートしています。ID についての詳細情報。
SalesforceId
書き出しのタイプと頻度 export-type-frequency
宛先の書き出しのタイプと頻度について詳しくは、以下の表を参照してください。
- セグメントのすべてのメンバーを、フィールドマッピングに従って、必要なスキーマフィールドと共に書き出します (例:メールアドレス、電話番号、姓)。
- Salesforce CRM の各オーディエンスステータスは、 オーディエンススケジュール手順で提供された マッピング ID 値に基づいて、Platform の対応するオーディエンスステータスとともに更新されます。
- ストリーミングの宛先は常に、API ベースの接続です。オーディエンス評価に基づいて Experience Platform 内でプロファイルが更新されるとすぐに、コネクタは更新を宛先プラットフォームに送信します。詳しくは、ストリーミングの宛先を参照してください。
宛先への接続 connect
この宛先に接続するには、宛先設定のチュートリアルの手順に従ってください。宛先の設定ワークフローで、以下の 2 つのセクションにリストされているフィールドに入力します。
宛先/カタログ 内で Salesforce CRM を検索します。または、CRM カテゴリの下に配置することもできます。
宛先に対する認証 authenticate
宛先に対して認証するには、以下の必須フィールドに入力し、「宛先に接続」を選択します。 詳しくは、Gather Salesforce CRM credentials の節を参照してください。
連結された値は、
{PASSWORD}{TOKEN}
の形式になります。注意:中括弧やスペースは使用しないでください。
例えば、Salesforce パスワードが
MyPa$$w0rd123
でセキュリティトークン SalesforceTOKEN12345....0000
の場合、「パスワード」フィールドで使用する連結された値は MyPa$$w0rd123TOKEN12345....0000
です。例えば、ドメインが
d5i000000isb4eak-dev-ed
.my.salesforce.com の場合、値として d5i000000isb4eak-dev-ed
を指定する必要があります。Consumer Key
。Consumer Secret
。
指定した詳細が有効な場合、UI に 接続済み ステータスと緑色のチェックマークが表示され、次の手順に進むことができます。
宛先の詳細を入力 destination-details
宛先の詳細を設定するには、以下の必須フィールドとオプションフィールドに入力します。UI のフィールドの横のアスタリスクは、そのフィールドが必須であることを示します。
-
名前:今後この宛先を認識するための名前。
-
説明:今後この宛先を識別するのに役立つ説明。
-
Salesforce ID タイプ:
- 書き出しまたは更新する ID のタイプが 連絡先 である場合は、連絡先 を選択します。
- 書き出しまたは更新する ID のタイプが リード である場合は、リード を選択します。
アラートの有効化 enable-alerts
アラートを有効にすると、宛先へのデータフローのステータスに関する通知を受け取ることができます。リストからアラートを選択して、データフローのステータスに関する通知を受け取るよう登録します。アラートについて詳しくは、UI を使用した宛先アラートの購読についてのガイドを参照してください。
宛先接続の詳細の入力を終えたら「次へ」を選択します。
この宛先に対してオーディエンスをアクティブ化 activate
この宛先にオーディエンスをアクティベートする手順は、ストリーミングオーディエンスの書き出し宛先へのプロファイルとオーディエンスのアクティベートを参照してください。
マッピングの考慮事項と例 mapping-considerations-example
Adobe Experience Platform から Salesforce CRM 宛先にオーディエンスデータを正しく送信するには、フィールドマッピングの手順を実行する必要があります。マッピングは、Platform アカウント内の Experience Data Model (XDM)スキーマフィールドと、ターゲット宛先から対応する同等のスキーマフィールドとの間にリンクを作成して構成されます。
ターゲットフィールド で指定する属性には、属性マッピングテーブルで説明されているとおりに正確に名前を付ける必要があります。これらの属性はリクエスト本文を形成するからです。
Source フィールドで指定された属性は そのような制限には従いません。 必要に応じてマッピングできますが、入力データの形式が Salesforce ドキュメントに従って有効であることを確認してください。 入力データが無効な場合、Salesforce への更新呼び出しは失敗し、連絡先/リードが更新されません。
XDM フィールドを (API) Salesforce CRM 宛先フィールドに正しくマッピングするには、次の手順に従います。
-
マッピング ステップで「新しいマッピングを追加」を選択すると、画面に新しいマッピング行が表示されます。
-
ソースフィールドを選択 ウィンドウで、属性を選択 カテゴリを選択して XDM 属性を選択するか、ID 名前空間を選択 を選択して ID を選択します。
-
ターゲットフィールドを選択 ウィンドウで、ID 名前空間を選択 を選択し、ID を選択するか、カスタム属性を選択 カテゴリを選択して属性を選択するか、必要に応じて 属性名 フィールドを使用して属性を定義します。 サポートされる属性について詳しくは、Salesforce CRM ドキュメントを参照してください。
- これらの手順を繰り返して、XDM プロファイルスキーマと (API) Salesforce CRM の間に次のマッピングを追加します。
連絡先の操作
-
セグメント内で 連絡先 を使用している場合は、Salesforce のオブジェクト参照( 連絡先を参照して、更新するフィールドのマッピングを定義してください。
-
必須フィールドは、上記のリンクのフィールドの説明で説明されている 必須 という単語を検索することで識別できます。
-
書き出しまたは更新するフィールドに応じて、XDM プロファイルスキーマと (API) Salesforce CRM の間のマッピングを追加します。
table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 ソースフィールド ターゲットフィールド メモ IdentityMap: crmID
Identity: SalesforceId
Mandatory
xdm: person.name.lastName
Attribute: LastName
Mandatory
。連絡先の姓(最大 80 文字)。xdm: person.name.firstName
Attribute: FirstName
連絡先の名(最大 40 文字)。 xdm: personalEmail.address
Attribute: Email
連絡先のメールアドレス。 -
これらのマッピングの使用例を次に示します。
リードの使用
-
セグメント内で リード を使用している場合は、Salesforce for リードのオブジェクト参照を参照して、更新するフィールドのマッピングを定義します。
-
必須フィールドは、上記のリンクのフィールドの説明で説明されている 必須 という単語を検索することで識別できます。
-
書き出しまたは更新するフィールドに応じて、XDM プロファイルスキーマと (API) Salesforce CRM の間のマッピングを追加します。
table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 ソースフィールド ターゲットフィールド メモ IdentityMap: crmID
Identity: SalesforceId
Mandatory
xdm: person.name.lastName
Attribute: LastName
Mandatory
。リードの姓(最大 80 文字)。xdm: b2b.companyName
Attribute: Company
Mandatory
。リードの会社。xdm: personalEmail.address
Attribute: Email
リードのメールアドレス。 -
これらのマッピングの使用例を次に示します。
宛先接続のマッピングの指定が完了したら、「次へ」を選択します。
オーディエンスの書き出しのスケジュールと例 schedule-segment-export-example
オーディエンスの書き出しをスケジュール手順を実行する際は、Platform からアクティブ化されたオーディエンスを、Salesforce の対応するカスタムフィールドに手動でマッピングする必要があります。
これを行うには、各セグメントを選択し、Salesforce から「Salesforce CRM マッピング ID」フィールドにカスタムフィールド名を入力します。 Salesforce でカスタムフィールドを作成する際のガイダンスとベストプラクティスについては、 内でのカスタムフィールドの作成 Salesforce の節を参照してください。
例えば、Salesforce カスタムフィールドが crm_2_seg
の場合、Salesforce CRM マッピング ID にこの値を指定し、Experience Platformのオーディエンスオーディエンスをこのカスタムフィールドに入力します。
Salesforce のカスタムフィールドの例を以下に示します。
カスタムフィールドを示す
Salesforce CRM マッピング ID の場所を示す例を以下に示し す。
上記のように、Salesforce フィールド名 は マッピング ID 内で指定された値 Salesforce CRM 完全に一致しま。
ユースケースに応じて、アクティブ化されたすべてのオーディエンスを同じ Salesforce カスタムフィールドまたは Salesforce CRM で異なる フィールド名 にマッピングできます。 上記の画像に基づく典型的な例は、です。
crm_1_seg
crm_1_seg
crm_2_seg
crm_2_seg
アクティブ化された各 Platform セグメントに対して、このセクションを繰り返します。
データの書き出しを検証する exported-data
宛先が正しく設定されていることを検証するには、次の手順に従います。
-
宛先/参照 を選択して、宛先のリストに移動します。
-
宛先を選択し、ステータスが「 有効」であることを確認します。
-
アクティベーションデータ タブに切り替えて、オーディエンス名を選択します。
-
オーディエンスの概要を監視し、プロファイルの数がセグメント内で作成された数と一致していることを確認します。
-
最後に、Salesforce web サイトにログインして、オーディエンスのプロファイルが追加または更新されたかどうかを検証します。
連絡先の操作
-
Platform セグメント内で 連絡先 を選択した場合は、Apps/Contacts ページに移動します。
-
連絡先 を選択し、フィールドが更新されているかどうかを確認します。 Salesforce CRM の各オーディエンスステータスが、 オーディエンスのスケジュール設定の際に指定された マッピング ID 値に基づいて、Platform から対応するオーディエンスステータスに更新されたことがわかります。
リードの使用
-
Platform セグメント内で リード を選択した場合は、Apps/リー Leads ページに移動します。
-
リード を選択し、フィールドが更新されたかどうかを確認します。 Salesforce CRM の各オーディエンスステータスが、 オーディエンスのスケジュール設定の際に指定された マッピング ID 値に基づいて、Platform から対応するオーディエンスステータスに更新されたことがわかります。
-
データの使用とガバナンス data-usage-governance
Adobe Experience Platform のすべての宛先は、データを処理する際のデータ使用ポリシーに準拠しています。Adobe Experience Platform がどのようにデータガバナンスを実施するかについて詳しくは、データガバナンスの概要を参照してください。
エラーとトラブルシューティング errors-and-troubleshooting
イベントを宛先にプッシュする際に不明なエラーが発生しました unknown-errors
-
データフローの実行を確認すると、次のエラーメッセージが表示される場合があります。
Unknown errors encountered while pushing events to the destination. Please contact the administrator and try again.
- このエラーを修正するには、アクティベーションワークフローで Salesforce CRM の宛先に指定した マッピング ID が、Salesforce で作成したカスタムフィールドタイプの値と完全に一致することを確認します。 詳しくは、 内でのカスタムフィールドの作成 Salesforce の節を参照してください。
-
セグメントをアクティブ化すると、次のエラーメッセージが表示される場合があります。
The client's IP address is unauthorized for this account. Allowlist the client's IP address...
- このエラーを修正するには、Salesforce アカウント管理者に問い合わせて、Experience Platformの IP アドレスを Salesforce アカウントの信頼できる IP 範囲に追加してください。 追加のガイダンスが必要な場合は、Salesforce 接続されたアプリの信頼できる IP 範囲へのアクセスの制限ドキュメントを参照してください。
その他のリソース additional-resources
Salesforce 開発者ポータルからのその他の役に立つ情報は次のとおりです。
- クイックスタート
- レコードの作成
- カスタム推奨オーディエンス
- 複合リソースの使用
- この宛先では、Upsert Single Record API 呼び出しの代わりに Upsert Multiple Records API を利用します。