Flow Service APIを使用してMicrosoft DynamicsをExperience Platformに接続します
このガイドでは、Flow Service APIを使用してMicrosoft Dynamics ソースをAdobe Experience Platformに接続する方法について説明します。
基本を学ぶ
このガイドは、Adobe Experience Platform の次のコンポーネントを実際に利用および理解しているユーザーを対象としています。
- ソース : Experience Platformを使用すると、様々なソースからデータを取り込むことができますが、Experience Platform サービスを使用して着信データを構造化、ラベル付け、強化することができます。
- サンドボックス : Experience Platformは、1つのExperience Platform インスタンスを個別のバーチャル環境に分割して、デジタルエクスペリエンスアプリケーションの開発と進化に役立つバーチャルサンドボックスを提供します。
Experience Platform APIの使用
Experience Platform APIの呼び出しを正常に行う方法について詳しくは、Experience Platform APIの概要に関するガイドを参照してください。
以下の節では、Flow Service APIを使用してExperience PlatformをDynamics アカウントに正常に接続するために必要な追加情報を示します。
必要な資格情報の収集
Flow Service を Dynamics に接続するには、次の接続プロパティの値を指定する必要があります。
| table 0-row-2 1-row-2 2-row-2 3-row-2 | |
|---|---|
| 資格情報 | 説明 |
serviceUri |
Dynamics インスタンスのサービス URL。 |
username |
Dynamics ユーザーアカウントのユーザー名。 |
password |
Dynamics アカウントのパスワード。 |
| table 0-row-2 1-row-2 2-row-2 | |
|---|---|
| 資格情報 | 説明 |
servicePrincipalId |
Dynamics アカウントのクライアント ID。 このIDは、サービスプリンシパルとキーベースの認証を使用する場合に必要です。 |
servicePrincipalKey |
サービス プリンシパル秘密鍵。 この資格情報は、サービスプリンシパルとキーベースの認証を使用する場合に必要です。 |
開始の詳細については、this Dynamics documentを参照してください。
ベース接続の作成
ベース接続は、ソースの認証情報、接続の現在の状態、一意のベース接続IDなど、ソースとExperience Platform間の情報を保持します。 ベース接続 ID により、ソース内からファイルを参照および移動し、データタイプやフォーマットに関する情報を含む、取り込みたい特定の項目を識別することができます。
ベース接続 ID を作成するには、/connections エンドポイントに POST リクエストを実行し、Dynamics 認証資格情報をリクエストパラメーターの一部として使用します。
API 形式
POST /connections
基本認証を使用してDynamics ベース接続を作成するには、接続のserviceUri、username、passwordの値を指定しながら、Flow Service APIにPOST リクエストを行います。
リクエスト
次のリクエストは、基本認証を使用してDynamics ソースのベース接続を作成します。
| accordion | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 選択してリクエストの例を表示 | ||||||||||||||
|
応答
応答が成功すると、新しく作成されたベース接続(一意の識別子(id)を含む)が返されます。
| accordion | ||
|---|---|---|
| 選択して応答の例を表示 | ||
|
サービスプリンシパルキーベース認証を使用してDynamics ベース接続を作成するには、接続のserviceUri、servicePrincipalId、およびservicePrincipalKeyの値を指定しながら、Flow Service APIにPOST リクエストを行います。
リクエスト
次のリクエストは、基本サービスプリンシパルキーベース認証を使用して、Dynamics ソースのベース接続を作成します。
| accordion | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 選択してリクエストの例を表示 | ||||||||||||||
|
応答
リクエストが成功した場合は、一意の ID(id)を含む、新しく作成された接続が応答として返されます。
| accordion | ||
|---|---|---|
| 選択して応答の例を表示 | ||
|
データテーブルの探索
Dynamics データテーブルを検索するには、/connections/{BASE_CONNECTION_ID}/explore エンドポイントにGET リクエストを行い、クエリパラメーターの一部としてベース接続IDを指定します。
API 形式
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=root
{BASE_CONNECTION_ID}リクエスト
次のリクエストは、ベース接続ID dd668808-25da-493f-8782-f3433b976d1eを持つDynamics ソースの使用可能なテーブルとビューのリストを取得します。
| code language-shell |
|---|
|
応答
応答が成功すると、ルートレベルでDynamics テーブルとビューディレクトリが返されます。
| code language-json |
|---|
|
プライマリキーを使用したデータ探索の最適化
クエリ パラメーターの一部としてprimaryKeyを指定することで、探索クエリを最適化できます。 primaryKeyをクエリパラメーターとして含める場合は、Dynamics テーブルのプライマリキーを指定する必要があります。
API 形式
GET /connections/{BASE_CONNECTION_ID}/explore?preview=true&object={OBJECT}&objectType={OBJECT_TYPE}&previewCount=10&primaryKey={PRIMARY_KEY}
{BASE_CONNECTION_ID}preview{OBJECT}{OBJECT_TYPE}previewCount{PRIMARY_KEY}リクエスト
| code language-shell |
|---|
|
テーブルの構造を調べる
特定のテーブルの構造を調べるには、/connections/{BASE_CONNECTION_ID}/exploreにGET リクエストを行い、特定のテーブルへのパスをクエリパラメーターとして指定します。
API 形式
GET /connections/{BASE_CONNECTION_ID}/explore?object={TABLE_PATH}&objectType=table
{BASE_CONNECTION_ID}{TABLE_PATH}リクエスト
次のリクエストは、パス workflowdependencyを持つDynamics テーブルの構造と内容を取得します。
| code language-shell |
|---|
|
応答
応答が成功すると、パス workflowdependencyの内容が返されます。
| code language-json |
|---|
|
ビューの構造を調べる
Dynamicsのビューでは、表示する列、各列の幅、レコードのリストが並べ替えられる既定のシステム、リストに表示されるレコードを制限するために適用される既定のフィルターを参照します。
ビューの構造を調べるには、/connections/{BASE_CONNECTION_ID}/exploreにGET リクエストを行い、クエリパラメーターにビューパスを指定します。 さらに、objectTypeをviewとして指定する必要があります。
API 形式
GET /connections/{BASE_CONNECTION_ID}/explore?object={VIEW_PATH}&objectType=view
{BASE_CONNECTION_ID}{VIEW_PATH}リクエスト
次のリクエストはaccountView1を取得します。
| code language-shell |
|---|
|
応答
応答が成功すると、accountView1の構造が返されます。
| code language-json |
|---|
|
エンティティ タイプ ビューのプレビュー
ビューの内容をプレビューするには、/connections/{BASE_CONNECTION_ID}/exploreにGET リクエストを行い、クエリ パラメーターにビューパスとpreview=trueを含めます。
API 形式
GET /connections/{BASE_CONNECTION_ID}/explore?object={VIEW_PATH}&preview=true&objectType=view
{BASE_CONNECTION_ID}{VIEW_PATH}リクエスト
次のリクエストは、accountView1の内容をプレビューします。
| code language-shell |
|---|
|
応答
応答が成功すると、accountView1の内容が返されます。
| code language-json |
|---|
|
インジェストビューへのソース接続の作成
ソース接続を作成してビューを取り込むには、/sourceConnections エンドポイントにPOST リクエストを行い、テーブル名を指定し、リクエスト本文にentityTypeをviewとして指定します。
API 形式
POST /sourceConnections
リクエスト
次のリクエストは、Dynamics ソース接続を作成し、ビューを取り込みます。
| code language-shell |
|---|
|
応答
応答が成功すると、新しく生成されたソース接続IDとそれに対応するタグが返されます。
| code language-json |
|---|
|
プライマリキーを使用したデータフローの最適化
また、リクエスト本文パラメーターの一部としてプライマリキーを指定することで、Dynamics データフローを最適化することもできます。
API 形式
POST /sourceConnections
リクエスト
次のリクエストは、プライマリキーをcontactidとして指定する際にDynamics ソース接続を作成します。
| code language-shell |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 | |
|---|---|
| プロパティ | 説明 |
baseConnectionId |
ベース接続のID。 |
data.format |
データの形式。 |
params.tableName |
Dynamicsのテーブルの名前。 |
params.primaryKey |
クエリを最適化するテーブルのプライマリキー。 |
connectionSpec.id |
Dynamics ソースに対応する接続仕様ID。 |
応答
応答が成功すると、新しく生成されたソース接続IDとそれに対応するタグが返されます。
| code language-json |
|---|
|
次の手順
このチュートリアルでは、Flow Service API を使用して Microsoft Dynamics ベース接続を作成しました。 このベース接続 ID は、次のチュートリアルで使用できます。