Salesforce Marketing Cloudをデータパイプラインソースとして設定する
Salesforce Marketing Cloudをデータパイプラインソースとして設定し、サブスクライバー、リスト、メール送信、キャンペーン、ジャーニー、エンゲージメント追跡データを宛先に抽出します。
このガイドを使用して、Installed Packageの作成、コネクションの設定、パイプラインの設定、オブジェクトの追加、同期動作の確認、既知の制限事項の理解を行います。
サポートされている機能
Salesforce Marketing Cloudをパイプラインソースとして使用する場合、次の機能がサポートされます。
- クラウド接続: アカウントサブドメインとOAuth認証情報を使用し、HTTPS経由でSalesforce Marketing Cloudアカウントに接続します。 オンプレミスエージェントは不要です。
- フル同期と増分同期: オブジェクトに応じて、フル同期と増分同期をサポートします。 増分同期では、
CreatedDate、ModifiedDate、またはEventDateなどの時間ベースのカーソルを使用します。 詳細については、同期モードを参照してください。 - オブジェクトレベルの選択: アカウントのData Extensionsを含むSalesforce Marketing Cloudオブジェクトを選択し、宛先の個別のテーブルとして同期します。パイプラインはこれらを自動的に検出します。 完全なリストについては、サポートされているオブジェクトを参照してください。
- スキーマドリフトの検出と処理: 新しいフィールドを自動同期でスキーマの変更を自動的に検出して適用するか、新しいフィールドをブロックでスキーマを固定します。
- フィールドレベルのデータ保護: 機密フィールドをそのままレプリケートするか、宛先に到達する前にハッシュ化します。
- 構成可能な同期頻度: 時間ベースの間隔またはcron式を使用して同期をスケジュールします。 サポートされる最小間隔は15分です。
前提条件
Salesforce Marketing Cloudをデータパイプラインソースとして接続するには、次が必要です。
- Server-to-Server API Integrationコンポーネントを含むEnhanced Installed Packageを持つSalesforce Marketing Cloudアカウント。 設定手順については、Salesforce Marketing Cloud Installed Packageを作成するを参照してください。
- そのAPI IntegrationコンポーネントのClient ID、Client secret、およびアカウントサブドメイン。
BUSINESS UNITのスコープ
各コネクションのスコープは、認証情報が属するInstalled Packageによって決定される単一のBusiness Unitです。 組織で複数のBusiness Unitを使用している場合は、Business Unitごとに個別のInstalled Packageとパイプラインコネクションを作成します。 詳細については、Business Unitのスコープを参照してください。
Salesforce Marketing Cloud Installed Packageを作成する
Salesforce Marketing Cloudデータパイプラインは、OAuth 2.0クライアント認証情報グラントを使用して、Enhanced Installed PackageのServer-to-Server API Integrationコンポーネントを通じて認証します。 Workatoに接続する前に、Salesforce Marketing Cloud Setupからこのパッケージを作成します。 設定手順については、SalesforceのInstalled Packagesドキュメントを参照してください。
推奨権限
同期する予定のオブジェクトに合わせて、API Integrationコンポーネントで次の権限カテゴリに対する読み取りアクセスを付与します。
- リストとサブスクライバー
- メール
- 自動化
- ジャーニー
- 追跡イベント
- Data Extensions
- キャンペーン
サポートされるコネクションタイプ
Salesforce Marketing Cloudデータパイプラインは、次の認証方法をサポートしています。
- OAuth 2.0 Server-to-Server(クライアント認証情報): Enhanced Installed PackageのAPI Integrationコンポーネントから取得したClient IDとClient secretを、アカウントサブドメインとともに指定します。
Salesforce Marketing Cloudに接続する
Salesforce Marketing Cloudをデータパイプラインソースとして接続するには、次の手順を完了します。
Salesforce Marketing Cloudに接続する
Create > コネクションを選択します。
新規コネクションページでSalesforce Marketing Cloudを検索し、選択します。
コネクション名フィールドに名前を入力します。
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
新しいInstalled Packageを使用していますか?ドロップダウンメニューを使用して、はいを選択します。
レガシーINSTALLED PACKAGE
2019年08月01日より前に作成されたパッケージがある場合にのみ、いいえを選択します。
アカウントのサブドメインをサブドメインフィールドに入力します。 これはアカウントのAPIベースURI内の一意の識別子です。たとえば、https://mc4x9z....rest.marketingcloudapis.comのmc4x9z...部分です。
API IntegrationコンポーネントのクライアントIDをClient IDフィールドに入力します。
API IntegrationコンポーネントのクライアントシークレットをClient secretフィールドに入力します。
接続を選択して、コネクションを検証して保存します。 コネクションが確立されると、Workatoに成功メッセージが表示されます。
パイプラインの設定
Salesforce Marketing Cloudをデータパイプラインソースとして設定するには、次の手順を完了します。
作成 > データパイプラインを選択します。
データパイプライン名フィールドにデータパイプラインの名前を入力します。
データパイプライン設定
ロケーションドロップダウンメニューを使用して、データパイプラインを保存するプロジェクトを選択します。
ビルドを開始をクリックします。
ソースアプリから新規/更新済みレコードを抽出トリガーをクリックします。 このトリガーは、パイプラインがSalesforce Marketing Cloudからデータを取得する方法を定義します。
ソースアプリから新規/更新済みレコードを抽出トリガーを設定
接続済みソースアプリドロップダウンメニューを使用して、Salesforce Marketing Cloudを選択します。
このパイプラインで使用するSalesforce Marketing Cloudコネクションを選択します。 または、+ 新規コネクションをクリックして新しいコネクションを作成します。
オブジェクトを追加をクリックして、新しいオブジェクトを追加パネルを開きます。
オブジェクトを追加
使用可能なSalesforce Marketing Cloudオブジェクトのリストを検索または参照し、同期するオブジェクトを選択して、追加をクリックします。
オブジェクトを選択
DATA EXTENSIONS
アカウントのData Extensionsは個別のオブジェクトとして表示され、認証情報でアクセスできるBusiness Unit全体で自動的に検出されます。 詳細については、Data Extensionsを参照してください。
任意です。 オブジェクトの横にある設定アイコンをクリックしてオブジェクトの同期方法を設定し、同期モードドロップダウンメニューを使用して同期モードを選択します。 Salesforce Marketing Cloudがオブジェクトのタイムスタンプを提供しない場合、そのオブジェクトのデフォルトはフル同期になります。 詳細については、同期モードを参照してください。
選択した各オブジェクトのスキーマを確認してカスタマイズします。 パイプラインは、選択時にオブジェクトのスキーマを自動的に取得し、宛先がソースと一致するようにします。
任意のオブジェクトを展開して、そのフィールドを表示します。 使用可能なすべてのデータを抽出するにはすべてのフィールドを選択したままにし、データ抽出とスキーマレプリケーションから除外するには特定のフィールドの選択を解除します。
任意です。 オブジェクトを展開し、各フィールドの処理方法を選択して、フィールドレベルのデータ保護を設定します。
- そのまま複製: ソースのデータ値が宛先に同一に複製されます。
- ハッシュ: 宛先に同期する前に、フィールド内の機密データ値をハッシュ化します。
Workatoでは、個人を特定できる情報(PII)やその他の機密フィールドをハッシュ化することを推奨します。 PIIが一般的に含まれるフィールドのリストについては、機密データの処理を参照してください。
さらにオブジェクトを追加するには、もう一度オブジェクトを追加をクリックします。 この手順を繰り返して、追加のSalesforce Marketing Cloudオブジェクトをパイプラインに含めます。
スキーマ変更の処理方法を選択ドロップダウンメニューを使用して、スキーマドリフトの処理オプションを選択します。
- 新しいフィールドを自動同期: ソースに追加された新しいフィールドを自動的に検出して同期します。
- 新しいフィールドをブロック: パイプラインの開始後、スキーマを固定します。 新しいフィールドは手動で追加する必要があります。
任意です。 同時実行制限フィールドに値を入力して、同時実行操作数の上限を設定します。 Workatoによって設定されたデフォルトの制限を使用するには、このフィールドを空白のままにします。 最大値は100です。
頻度フィールドで、パイプラインがSalesforce Marketing Cloudから宛先にデータを同期する頻度を設定します。 標準の時間ベースのスケジュールを選択するか、カスタムcron式を定義します。
サポートされるオブジェクト
Salesforce Marketing Cloudデータパイプラインは、オブジェクトに応じてSOAP APIとREST APIを組み合わせてデータを同期します。 各オブジェクトは、宛先内の個別のテーブルとして同期されます。
Salesforce Marketing CloudのシステムData Views(_Sent、_Open、_Clickなど)は、APIから直接アクセスできません。 代わりにWorkatoが同期する、APIからアクセス可能な同等のオブジェクトは次のとおりです。
サブスクライバーとリスト
| オブジェクト | 同期モード | 削除追跡 |
|---|---|---|
| Subscriber | 完全同期、増分 | いいえ |
| リスト | 完全同期、増分 | いいえ |
| List Subscriber | 完全同期、増分 | いいえ |
ほとんどのアカウントで、Subscriberには最大量のデータが含まれており、初回同期の完了に数時間かかる場合があります。 List Subscriberは、ListとSubscriberの間の結合オブジェクトです。
メールと送信
| オブジェクト | 同期モード | 削除追跡 |
|---|---|---|
| メール | 完全同期、増分 | いいえ |
| Send | 完全同期、増分 | いいえ |
| Triggered Send Definition | 完全同期、増分 | いいえ |
| Content Area | 完全同期、増分 | いいえ |
| リンク | Full sync | はい(宛先で推定) |
Linkは、直接のリンクルックアップではなく、Salesforce Marketing CloudのLinkSendオブジェクトを通じて同期されます。 Linkオブジェクトは日付ベースのフィルターをサポートしていないため、常にフル同期されます。
エンゲージメント追跡イベント
| オブジェクト | 同期モード | 削除追跡 |
|---|---|---|
| Sent Event | 完全同期、増分 | いいえ |
| Open Event | 完全同期、増分 | いいえ |
| Click Event | 完全同期、増分 | いいえ |
| Bounce Event | 完全同期、増分 | いいえ |
| Unsub Event | 完全同期、増分 | いいえ |
| Forwarded Email Event | 完全同期、増分 | いいえ |
| Forwarded Email Opt In Event | 完全同期、増分 | いいえ |
| Survey Event | 完全同期、増分 | いいえ |
| Not Sent Event | 完全同期、増分 | いいえ |
これらのオブジェクトは追記専用の追跡ログです。
ジャーニー
| オブジェクト | 同期モード | 削除追跡 |
|---|---|---|
| Journey | 完全同期、増分 | いいえ |
| アクティビティ | 親Journeyオブジェクトと同期 | いいえ |
| 結果 | 親Journeyオブジェクトと同期 | いいえ |
Journeyでは各行がジャーニーIDとバージョンによってキー指定されるため、変更されたジャーニーは前のバージョンを上書きせず、追加の行として同期されます。 詳細については、増分同期を参照してください。
キャンペーン
| オブジェクト | 同期モード | 削除追跡 |
|---|---|---|
| キャンペーン | Full sync | はい(宛先で推定) |
| Campaign Asset | 親Campaignオブジェクトと同期 | はい(宛先で推定) |
Data Extensions
| オブジェクト | 同期モード | 削除追跡 |
|---|---|---|
| Data Extension | Full sync | はい(宛先で推定) |
| Data Extension Field | Full sync | はい(宛先で推定) |
| 個別のData Extensionオブジェクト | Full sync | はい(宛先で推定) |
Data ExtensionとData Extension Fieldには、アカウントのData Extensionsとそのフィールドのメタデータが一覧表示されます。 認証情報でアクセスできる各Data Extensionは独自のオブジェクトとしても表示され、認証情報でアクセスできるすべてのBusiness Unit全体で自動的に検出されます。 関連する制限事項については、Data Extensionの増分同期およびData Extensionオブジェクトとフィールドの制限を参照してください。
同期モード
Salesforce Marketing Cloudデータパイプラインは、フル同期と増分同期をサポートしています。 同期モードは、パイプラインに追加するときにオブジェクトごとに設定されます。
フル同期
フル同期では、選択したオブジェクトについてSalesforce Marketing Cloudから使用可能なすべてのレコードを読み取り、宛先テーブルを上書きします。 linkやcampaignなど、増分同期をサポートしていないオブジェクトでは、Salesforce Marketing Cloudがそれらに対する信頼性の高い日付フィルターを公開していないため、常にフル同期を使用します。 増分同期をサポートするオブジェクトでも、各実行で完全な概要が必要な場合はフル同期に設定できます。
増分同期
増分同期では、前回の正常な実行以降に変更されたレコードのみを抽出します。
subscriberはCreatedDateをカーソルとして使用します。list、email、send、triggered_send_definition、content_areaはModifiedDateをカーソルとして使用します。list_subscriberはModifiedDateをカーソルとして使用し、CreatedDateをフォールバックとして使用します。- 追跡イベントオブジェクトは
EventDateをカーソルとして使用します。 journeyとその子オブジェクトであるactivityおよびoutcomeでは、各行がジャーニーIDとバージョンによってキー指定されるため、変更されたジャーニーは前のバージョンを上書きせず、追加の行として同期されます。 関連する制限事項については、ジャーニー履歴は範囲が限定されたスキャンに依存するを参照してください。
各オブジェクトの同期モードを確認するには、サポートされるオブジェクトの表を参照してください。
削除追跡
削除の追跡はオブジェクトごとに行われ、同期モードに従います。
- フル同期オブジェクト: Salesforce Marketing Cloudは、サポートされているどのオブジェクトについてもネイティブの削除シグナルを公開していません。 Workatoは各フル同期を前回の実行と比較し、Salesforce Marketing Cloudに表示されなくなったレコードを宛先で削除済みとしてマークします。これは、これらのオブジェクトがフル同期されるためです。
- 増分オブジェクト: これらのオブジェクトは完全な概要ではなく、新規または変更されたレコードのみを同期するため、削除は検出されません。
削除追跡をサポートするオブジェクトを確認するには、サポートされているオブジェクトの表を参照してください。
スキーマとデータ型の処理
Salesforce Marketing Cloudからデータを同期する場合、スキーマとデータ型には次の考慮事項が適用されます。
タイムスタンプ
Salesforce Marketing Cloudは、日付と時刻を固定の中部標準時オフセット(UTC-6)で保存し、夏時間を適用しません。 Workatoは明示的なオフセットのないタイムスタンプをUTC-6として解釈し、宛先に到達する前にUTCに変換します。
データ型マッピング
Salesforce Marketing Cloudのフィールド型は、次の宛先型にマッピングされます。
| Salesforce Marketing Cloudの型 | 宛先の型 |
|---|---|
| 文字列、メールアドレス、テキスト、列挙値 | 文字列 |
| 整数、long、整数値 | 整数 |
| 小数、数値(Data Extensionフィールド) | 小数 |
| ブール値 | ブール値 |
| コアオブジェクトの日付および日時フィールド | タイムゾーン付きタイムスタンプ |
| Data Extensionの日付フィールド | 文字列 |
| ネストされたフィールドまたは複雑なフィールド(オブジェクト、配列) | フィールドが独自の列に明示的にフラット化されていない限り、JSON文字列 |
曖昧または認識されないData Extensionフィールド型は、同期に失敗するのではなく文字列としてレプリケートされます。
カスタムフィールドとData Extensions
Salesforce Marketing Cloudには、コアオブジェクト上の従来のカスタムフィールドはありません。 代わりに、次の2つのメカニズムがテナントごとのカスタムデータを保持します。
- プロファイル属性と設定属性: 顧客定義のサブスクライバー属性は、
subscriberオブジェクトの追加フィールドとして表示されます。 - Data Extensions: 任意のスキーマを持つ、完全に顧客定義のテーブル。 認証情報でアクセスできる各Data Extensionは、独自のオブジェクトとして同期されます。 詳細については、Data Extensionsを参照してください。
合成列
Workatoは、特定のオブジェクトの宛先テーブルに次の合成列を追加します:
| 列 | タイプ | 目的 |
|---|---|---|
_workato_is_deleted | ブール値 | Workatoが削除済みとして検出したレコードではtrueに設定されます。 フル同期オブジェクトに存在します。 詳細については、削除追跡を参照してください。 |
_workato_row_hash | 文字列 | Data Extensionが独自の主キーを定義していない場合に、選択したフィールドの値から派生して、Data Extensionオブジェクトの主キーとして機能します。 |
機密データの処理
Salesforce Marketing Cloudオブジェクトには、大量のPIIが含まれる場合があります。 次のオブジェクトには、一般的に機密フィールドが含まれます:
| オブジェクト | 機密フィールド |
|---|---|
subscriber | EmailAddress、SubscriberKey、および名前、電話番号、住所などのプロファイル属性 |
list_subscriber | SubscriberKey |
sent_event, open_event, click_event, bounce_event, unsub_event, forwarded_email_event, forwarded_email_opt_in_event, survey_event, not_sent_event | SubscriberKey |
| Data Extensionオブジェクト | Data Extensionsは完全に顧客定義であるため、任意のフィールド |
SubscriberKeyはサブスクライバーのメールアドレスに設定されることが多いため、明らかなメールフィールドでない場合でもPIIとして扱ってください。 組織がGDPR、CCPA、CAN-SPAM、HIPAA、または同様の規制の対象となる場合は、これらのオブジェクトのフィールドレベルのマスキングを確認し、特に任意の種類の機密データまたは規制対象データを含む可能性があるData Extensionsに注意してください。
パイプライン設定中にフィールドレベルのデータ保護でHashオプションを使用し、PIIが宛先に到達する前に保護します。 詳細については、パイプラインを構成手順を参照してください。
制限事項
Salesforce Marketing Cloudをデータパイプラインソースとして使用する場合、次の制限事項が適用されます。
Business Unitのスコープ
Salesforce Marketing Cloudコネクションのスコープは、認証情報が属するInstalled Packageによって決定される単一のBusiness Unitです。 組織で複数のBusiness Unitを使用している場合は、同期する予定のBusiness Unitごとに個別のInstalled Packageとパイプラインコネクションを作成します。 Data Extensionオブジェクトは例外です。 パイプラインは、単一のコネクションから認証情報でアクセスできるすべてのBusiness Unit全体のData Extensionsを検出します。
Data Extensionの増分同期
data_extension、data_extension_field、および個別のData Extensionオブジェクトは常にフル同期されます。 非常に大規模なData Extensionsは、別の低頻度のパイプラインで同期することを検討してください。
Data Extensionオブジェクトとフィールドの制限
パイプラインは最大1,000個のData Extensionsを検出します。
送信エンゲージメント集計が古くなる可能性がある
sendのUniqueClicksおよびUniqueOpensフィールドは、値が変更されてもそのレコードのModifiedDateを更新しないため、増分同期ではこれらの集計フィールドの後続の更新を見逃す可能性があります。 代わりに、open_eventとclick_eventを使用して最新のエンゲージメントメトリクスを導出します。
ジャーニー履歴は範囲が限定されたスキャンに依存する
journey、activity、outcomeは、実行のたびにアカウントのJourney Builderコレクション全体を、固定数のレコードまでスキャンします。 ジャーニー数が多いアカウントでは、最近のすべてのジャーニー変更を表示するために、複数回のパイプライン実行が必要になる場合があります。
最小同期頻度
サポートされる最小同期間隔は15分です。 これより高い頻度で同期をトリガーすることはできません。
最終更新日: