有効化トリガーフローを使用したデータ配信の自動化
MuleSoft for Flow Integration コネクタまたは HTTP コールアウトアクションを使用して、Data 360 有効化を外部システムに自動的に接続します。
必要なエディション
| サポートされているエディションを表示する。 |
| 必要なユーザー権限 | |
|---|---|
| 有効化トリガーフローを作成、編集、保存、削除、有効化する | 従来の Data Cloud マーケティング管理者 または Data Cloud 有効化マネージャー または Data Cloud アーキテクト または Data Cloud 有効化スペシャリスト または 「フローの管理」 または 次のすべての権限。
|
有効化トリガーフローを使用して外部対象システムに接続する方法は 2 つあります。
- MuleSoft コネクタ: MuleSoft コネクタは Flow Builder 内で使用できます。フローでアクションを設定するときに、次のコネクタから選択できます。各コネクタでサポートされるアクションと必要なアドオンライセンスについては、「サードパーティコネクタ」を参照してください。
- 外部サービス (HTTP コールアウト): 外部サービスや指定ログイン情報などの既存の Salesforce Platform 機能を使用する HTTP コールアウトを介して接続できます。フローを作成する前に、外部システムの API エンドポイントと認証の詳細を設定するプラットフォームの機能を使用して指定ログイン情報を設定します。フローにアクションを追加するときに、[HTTP コールアウトを作成] オプションを選択し、以前に設定した指定ログイン情報を選択します。外部サービスの作成と管理についての詳細は、「外部サービスの登録」を参照してください。
アクティベーション トリガー フローを作成するには、セグメントのアクティベーションを作成するか、Data 360 でバッチ DMO のアクティベーションを作成する必要があります。アクティベーション トリガー フローでは、Data 360 アクティベーション ターゲット タイプのみがサポートされます。
有効化トリガーフローでは、他の API ベースの接続先に接続するときに次の認証方法がサポートされます。
- OAuth 2.0
- 認証コードフロー — ユーザー操作が Web ブラウザーを使用するアプリケーションに推奨されます。
- クライアントログイン情報フロー — ユーザーの関与なしでサーバー間のやり取りを行う場合に推奨されます。クライアントログイン情報を使用するには、トークンを取得および更新するための Salesforce と対象外部システム間のハンドシェイクが標準に準拠している必要があります。
- 基本認証 — user は、ユーザー名とパスワードを指定します。
- API キー — HTTP 要求に一意のキーを指定して API アクセスします。
認証についての詳細は、「有効化トリガーフローに関する考慮事項」を参照してください。
- フローの作成
有効化トリガーフローを作成します。 - トラブルシューティングとフロー評価指標およびレポートの表示
有効化トリガーフローの評価指標とレポートを表示するように組織を設定し、フローの実行を監視してトラブルシューティングできるようにします。 - 有効化トリガーフローに関する考慮事項
有効化トリガーフローに関するその他の考慮事項を参照してください。
フローの作成
有効化トリガーフローを作成します。
- Automation アプリケーションから [フロー] タブに移動し、[新規] をクリックします。
- [Activation-Triggered Flow (有効化トリガーフロー)] を検索して選択します。
-
有効化ライブラリから、フローをトリガーする Data 360 有効化を選択します。
有効化トリガーフローでは、有効化対象種別として Data 360 を使用して作成された有効化のみがサポートされます。Flow Builder の使用可能な有効化のリストには、 マーケティング などの他の対象種別の有効化が表示されることがありますが、Data 360 対象種別以外の有効化を選択すると、フローを保存しようとするとエラーが発生します。選択した有効化の対象種別が Data 360 であることを事前に知っておく必要があります。
- [開始] 要素で、必要に応じて終了ルールと再入力条件を設定します。終了ルールは、特定の条件を満たすとフローを終了します。終了ルールは、ユーザーの状況が時間と共に変化する場合に便利です。再入力条件によって、ユーザーが同じフローを再入力できるかどうかが決まります。
-
[
] をクリックし、[アクション] を選択します。
-
検索パネルで、[アクショングループ] を選択します。[コネクタ] を選択するか、[その他] を選択して HTTP コールアウト (外部サービス) を作成します。
- MuleSoft コネクタを使用する場合は、目的のコネクタを選択して接続の詳細を設定するか、既存の接続を選択します。
- 外部サービスを使用する場合は、事前設定された指定ログイン情報を選択し、API エンドポイント URL とサンプル JSON 要求と共に PUSH / PUT メソッドを使用して、既存の外部サービスまたは [HTTP コールアウトを作成] を選択します。
-
アクションを選択し、外部システムで必要な項目をトリガー有効化データから取得可能なデータに対応付けます。
関連属性の有効化データを最大 5 レベルの深さに対応付けることができます。
- アクティベーション データ関連アトリビュートを使用する必要がある場合は、まず関連アトリビュートを、Apex クラスやオブジェクトなど、サポートされている種別に変換する必要があります。たとえば、外部サービスで Apex クラスが必要な場合は、変換要素または割り当て要素を使用して Apex 対応付けを作成します。
- アクションに必要な Apex 種別を識別するには、新しいリソースを作成します。「新規リソース」ウィンドウで、「Apex クラス」フィールドの既存の値をコピーします。値をコピーしたら、ウィンドウをキャンセルまたは閉じます。
- アクション要素の前に変換要素を追加します。
- 変換要素で、データソースとして $ActivationData を選択し、対象データのデータ型として [Apex-Defined] を選択します。[Apex Class] の値を [Apex Class] フィールドに貼り付けます。[作成] をクリックします。
- 残りのフローの設定を指定します。
- フローを有効化します。
トラブルシューティングとフロー評価指標およびレポートの表示
有効化トリガーフローの評価指標とレポートを表示するように組織を設定し、フローの実行を監視してトラブルシューティングできるようにします。
予期しない動作が発生した場合:
- Data 360 有効化の作成に使用されたセグメントの公開ステータスを確認します。
- セグメントの公開状況が [成功] の場合、Data 360 のセグメント UI の [公開履歴] テーブルまたは Data 360 の有効化 UI の [有効化履歴] テーブルでセグメント数と対応する有効化数を確認します。
- セグメントと有効化数の公開状況が [成功] の場合、対応する有効化によって有効化トリガーフローがトリガーされます。
- アクティベーション後にアクティベーショントリガーフローがトリガーされ、フロー自体の実行が終了する前に、フローバージョン発生レコードが作成されます。フローが実行されると、フローバージョンの発生レコードで特定のフローバージョンのエントリ、終了、エラーが追跡されます。
- Flow Builder で有効化トリガーフローを表示するときに、キャンバスで個々の要素を選択し、その要素の総計値を確認できます。
フロー実行の詳細を表示するために、フロー要素実行レポートを作成することもできます。有効化トリガーフローでは、FlowRun および FlowElementRun DMO のデータストリームをリリースする必要があります。これらのデータストリームにより、フロー実行履歴ログが有効になります。フロー実行履歴は照会可能で、フロー実行の詳細を理解し、問題をトラブルシューティングするのに役立ちます。
- すべてのユーザーに Salesforce Data Cloud - Flow Integration パッケージをインストールします。
- Data 360 アプリケーションで、[データストリーム] タブを選択し、[新規] をクリックします。
- [New Data Stream (新規データストリーム)] ウィンドウで、[Installed Data Kits & Packages (インストール済みデータキットおよびパッケージ)] を選択し、[次へ] をクリックします。
- [データキット] リストから Data Cloud フローを選択
- [Flow_Ingestion] の横にあるチェックボックスをオンにしてすべてのデータストリームを選択し、[次へ] をクリックします。
- [コネクタ名] で、[新規コネクタ] を選択します。
- コネクタ名として「Flow Run Ingestion」と入力し、[保存] をクリックします。
- [Next]をクリックしてデータストリームをリリースできるようになるまで手順を進め、[Deploy]をクリックします。
- 次に、フローレコードストリームをリリースします。[設定] から、[クイック検索] ボックスに「権限セット」と入力し、選択します。
- [Data Cloud Salesforce コネクタ] 権限セットをクリックします。
- [アプリケーション] セクションで、[アプリケーション権限] をクリックします。
- [フローおよびフローオーケストレーション] セクションで、[フローを表示] を選択し、[保存] をクリックして確認します。
- Data 360 アプリケーションで、[データストリーム] タブを選択し、[新規] をクリックします。
- [新規データストリーム] ウィンドウで、[Salesforce CRM] を選択し、[次へ] をクリックします。
- [Custom Bundles (カスタムバンドル)] セクションで、[Flows (フロー)] を選択し、[Next (次へ)] をクリックします。
- [Next]をクリックしてデータストリームをリリースできるようになるまで手順を進め、[Deploy]をクリックします。
- レポートを作成するには、Data 360 アプリケーションで [レポート] タブに移動し、[新規レポート] をクリックします。
- Data Cloud カテゴリで、[Flow Element with Flow Element Run (フロー要素を使用したフロー要素の実行)] を選択し、[レポートを開始] をクリックします。
-
[アウトライン] タブで、次の列を追加します。
- フロー要素: 情報 - 名前
- フロー要素: 情報 - フローバージョン
- フロー要素: 情報 - エラー理由
- フロー要素: 情報 - エラーの説明
- フロー要素の実行: 情報 - スケジュール日時
- フロー要素の実行: 情報 - 完了日時
- [検索条件] タブで、[フローバージョン] の [次の文字列と一致する] 演算子を使用して空白の検索条件を追加します。
- [保存] をクリックします。
- レポート検索条件に必要なフローバージョン ID を取得するには、オートメーション Lightning アプリケーションで有効化トリガーフローを選択します。
- [関連] タブで、関連するフローバージョンを選択します。
-
ブラウザのアドレスバーで、フローバージョン ID をコピーします。 ID は
10vで始まります。 - 前に作成したレポートで、フローバージョン ID をフィルタに貼り付けて、[適用] をクリックします。
有効化トリガーフローに関する考慮事項
有効化トリガーフローに関するその他の考慮事項を参照してください。
レート制限に関する考慮事項
有効化トリガーフローのレート制限は、ライセンスによって異なります。レート制限は、1 時間あたりのアクション数で測定されます。アクションは、フローの 1 つのパス (フローの開始時や再開時など) の実行によって定義されます。フローは、待機要素の期間の期限切れやエンゲージメントイベントの受信など、何かが発生するのを待機した後に再開されます。
たとえば、待機要素がないフローは 1 つのアクションで実行されます。待機要素を含むフローは 2 つのアクションで実行され、最初のアクションには待機要素までのすべてが含まれ、2 番目のアクションにはフローの再開後のすべてが含まれます。
1 時間あたりのアクション数の制限に加えて、1 時間あたりのフロー実行数を決定する同時実行制限があります。通常、合計同時実行制限は実行中のフロー間で均等に分割されます。
| 実行制限 | 同時スレッド |
|---|---|
| 1 時間あたり 150,000 アクション | 2 |
| Starter: 1 時間あたり 1,000,000 アクション | 14 |
| Marketing Cloud Next、Data 360: 1 時間あたり 15,000,000 アクション | 210 |
数式(actions per hour * time to execute in seconds) / 3600 = required
concurrency per hourを使用して、フローが 1 時間あたりのアクションを最大化するために必要な同時実行制限を超えているかどうかを判断します。
たとえば、1 時間あたり 1,500 万件のアクションがプロビジョニングされている組織で、1 つのアクションの実行に平均 40 ミリ秒かかるフローがあるとします。(15,000,000 * 0.04) /
3600 = 167を参照してください。167 は同時実行制限の 210 を下回っているため、フローは 1 時間あたり 15,000,000 件のアクションを実行できます。
別のフローに 1 つのアクションがあり、外部サービスアクションのために実行に平均 150 ミリ秒かかる場合は、数式(15,000,000 * 0.15) / 3600 =
625を使用します。625 は同時実行制限の 210 を超えているため、フローで 210 個のスレッドをすべて使用する場合、1 時間あたり約 5,000,000 件のアクションを実行できます。
最後の制限要素は、フローのエラー率です。エラー率には、再試行可能なエラーのみが含まれます。フロー要素が 2.5% を超えて失敗すると、追加のレート制限がトリガーされます。同時実行制限は、エラー率が常に 2.5% を下回るまで調整されます。これらの調整は、外部サービスなどの下流サービスの保護に役立ちます。エラー率は、フローの 1 時間あたりの最大アクション実行能力に影響する最も一般的な制限要素です。
フォーム送信、SMS サインアップ、双方向 SMS メッセージ、優先度の高いトランザクションメールなど、リアルタイムの応答が必要なフローでは、同時実行制限に対して 50% の追加許可が与えられます。たとえば、同時実行制限が 210 の場合、リアルタイム応答が必要なフローは、さらに 105 の同時要求にアクセスできます (210 * 1.5 = 315)。
認証に関する考慮事項
有効化トリガーフローでは、2 つの OAuth 2.0 認証フローがサポートされます。
- 認証コードフロー
- 目的:主に、Web ブラウザーを介したユーザー操作が想定または必要とされるアプリケーションに使用されます。
- プロセス:
- ユーザーは外部アプリケーションの認証サーバーにリダイレクトされ、アプリケーションを認証および承認します。
- 認証に成功すると、認証コードはリダイレクト URI を介して Salesforce に返されます。
- アプリケーションは、この認証コードをアクセストークンと交換します。アクセストークンは、必要に応じて Salesforce によって更新されます。
- 使用事例: Web アプリケーションや、高度なセキュリティを必要とするアプリケーションに最適です。特に、ユーザーごとのアクセス権を必要とする場合に適しています。
- 参照:
- クライアントログイン情報フロー
- 目的: ユーザが関与しないサーバ間のやり取りに適しています。
- プロセス:
- クライアントアプリケーションは、クライアント ID とクライアントの秘密を含む要求を外部アプリケーションのトークンエンドポイントに直接送信します。
- 外部アプリケーションは、API 要求の認証に使用できるアクセストークンを返します。
- 使用事例:ユーザーの代わりにリソースにアクセスするバックエンド サービスまたはアプリケーションに最適です。
- 参照:
- 考慮事項: クライアントログイン情報を使用するには、トークンを取得および更新するための Salesforce と対象外部システム間のハンドシェイクが標準に準拠している必要があります。標準に準拠しない動作を示す特定のプロバイダーはサポートされません。
有効化トリガーフローでは、次の追加形式の認証がサポートされます。
- 基本認証
- 目的: クライアント-サーバー通信の簡単な方法。
- プロセス:
- クライアントは、要求ヘッダー内でユーザー名とパスワードを base64 でエンコードして HTTP 要求を送信します。
- サーバーは、アクセス権を付与する前にログイン情報を復号化して検証します。
- セキュリティの考慮事項:ベーシック認証は、資格情報を暗号化し、送信中に漏洩しないように、常に HTTPS 経由で慎重に使用する必要があります。
- 参照:
- API キー
- 目的:HTTP 要求に一意のキーを埋め込むことで、簡単な API アクセスを有効にします。
- プロセス:
- Salesforce では、API キーを HTTP 要求の一部として (通常はヘッダーに) 含め、サービスで認証します。
- サーバーは、要求を処理する前に API キーを検証します。
- 使用事例:複雑なセキュリティ要件よりも使いやすさが優先されるシステムの統合に便利です。
- 参照:
- API キーには業界標準や仕様はありません。外部アプリケーションのドキュメントを詳しく調べて、Salesforce でサポートされる内容との適合性のレベルを判断します。
- 指定ログイン情報を使用したカスタムヘッダーでの API キーの使用
その他の考慮事項
有効化などの Data 360 メタデータを Data 360 以外のメタデータと同じパッケージにパッケージ化することはできません。Data 360 有効化をフローでパッケージ化するには、2 つのパッケージを使用します。
MuleSoft コネクタを含むフローの実行では、オートメーションクレジットが消費されます。特定の内部エラーが原因で失敗したフローの実行では、オートメーションクレジットは消費されません。「MuleSoft: Automation Credits Usage and Rates (MuleSoft: オートメーションのクレジット使用量とレート)」を参照してください。

