Customer Insights - Data API に関する作業

Dynamics 365 Customer Insights - Data には、Customer Insights のデータに基づいて独自のアプリケーションを構築するための API が用意されています。 これらのAPIの詳細は APIリファレンスで確認でき、操作、パラメータ、応答に関する情報が含まれています。

注

Customer Insights - Dataverse API を使用してデータ テーブルにアクセスすることもできます。 Dataverse API を使用して Customer Insights データのクエリを実行することをお勧めします。これらは、より広範なフィルター処理、スループットの向上、待機時間の短縮を実現するためです。 詳細については、 Customer Insights の Dataverse API を参照してください。

API の試用を開始する

管理者は、データへの API アクセスを有効にする必要があります。 アクセスが有効になると、すべてのユーザーはサブスクリプション キーで API を使用できます。

  1. Customer Insights - Data にサインインするか、Customer Insights の試用版にサインアップします。

  2. 設定>権限に移動し、API タブを選択します。

  3. 環境へのAPIアクセスが設定されていない場合は、「 Enable」を選択してください。

    APIを有効にすると、APIリクエストで使用する環境用のプライマリとセカンダリーのサブスクリプションキーが作成されます。 キーを再生成するには、APIタブで「Regenerate primary 」または「Regenerate secondary 」を選択してください。

  4. [Api の探索] を選択して、API を試します。

  5. API 操作を検索して選択し、[ 試してみる] を選択します。

    APIのテスト方法のスクリーンショットです。

  6. サイド ウィンドウで、[ 承認 ] ドロップダウン メニューの値を 暗黙的に設定します。 Authorization ヘッダーはベアラー トークンと共に追加されます。 サブスクリプション キーは自動的に入力されます。

  7. 必要に応じて、必要なすべてのクエリ パラメーターを追加します。

  8. サイド ウィンドウの下部までスクロールし、[ 送信] を選択します。

    ウィンドウの下部に HTTP 応答が表示されます。

Azure portal で新しいアプリ登録を作成する

AzureアプリケーションでAPIを使うために、委任された権限を使って新しいアプリ登録を作成します。

  1. 「はじめに」セクションを完了 します。

  2. Customer Insights データにアクセスできるアカウントで Azure portal にサインインします。

  3. [アプリの登録] を検索して選択します。

  4. 「新しい登録」を選択し、申請名を入力し、アカウントタイプを選択します。

    必要に応じて、リダイレクト URL を追加します。 http://localhost は、ローカル コンピューターでアプリケーションを開発するのに十分です。

  5. [登録] を選択します。

  6. 新しいアプリ登録でAPI 権限に行ってください。

  7. [ アクセス許可の追加] を選択し、サイド ウィンドウで Dynamics 365 AI for Customer Insights を選択します。

  8. [アクセス許可の種類] で、[委任されたアクセス許可] を選択し、user_impersonationアクセス許可を選択します。

  9. [アクセス許可の追加] を選択します.

  10. [ 管理者の同意を付与する]... を選択して、アプリの登録を完了します。

  11. ユーザーがサインインせずに API にアクセスするには、「 サーバー間アプリケーションのアクセス許可を設定する」に移動します。

このアプリを Microsoft Authentication Library (MSAL) に登録するためにアプリケーション/クライアント ID を使用して、API に要求と共に送信するベアラー トークンを取得できます。

クライアント ライブラリで API を使用する方法については、「 Customer Insights クライアント ライブラリ」を参照してください。

サーバー間アプリケーションのアクセス許可を設定する

ユーザーの操作を不要でサーバー上で動作できるアプリ登録を作成しましょう。

  1. Azure portal のアプリ登録で、 API のアクセス許可に移動します。

  2. [アクセス許可の追加] を選択します。

  3. 組織で 使用している API タブを選択し、一覧から Dynamics 365 AI for Customer Insights を選択します。

  4. [アクセス許可の種類] で、[アプリケーションのアクセス許可] を選択し、api.access アクセス許可を選択します。

  5. [アクセス許可の追加] を選択します.

  6. アプリ登録の API アクセス許可 に戻ります。

  7. [ 管理者の同意を付与する]... を選択して、アプリの登録を完了します。

  8. Customer Insights - Data にアプリ登録の名前をユーザーとして追加します。

    1. Customer Insights - Data を開き、 設定>Permissions に移動し、[ ユーザーの追加] を選択します。

    2. アプリ登録の名前を検索し、検索結果から選択し、[ 保存] を選択します。

サンプル クエリ

API で動作する OData サンプル クエリの短い一覧については、 OData クエリの例を参照してください。

Customer Insights クライアント ライブラリ

Customer Insights - Data API で使用できるクライアント ライブラリの使用を開始します。 すべてのライブラリのソースコードやサンプルアプリケーションはGitHubリポジトリで見つけることができます。

C# NuGet

NuGet.org の C# クライアント ライブラリを使用します。現在、このパッケージは netstandard2.0 および netcoreapp2.0 フレームワークを対象としています。 NuGetパッケージの詳細については、Microsoft.Dynamicsをご覧ください。CustomerInsights.Api。

C# クライアント ライブラリを C# プロジェクトに追加する

  1. Visual Studio で、プロジェクトの NuGet パッケージ マネージャー を開きます。

  2. Microsoft.Dynamics.CustomerInsights.Api を検索します。

  3. [ インストール] を選択して、プロジェクトにパッケージを追加します。

    または、 NuGet パッケージ マネージャー コンソールで次のコマンドを実行します。 Install-Package -Id Microsoft.Dynamics.CustomerInsights.Api -Source nuget.org -ProjectName <project name> [-Version <version>]

C# クライアント ライブラリを使用する

  1. Microsoft Authentication Library (MSAL) を使用して、既存の AccessToken により を取得しましょう。

  2. 認証してトークンを取得したら、新しい HttpClient を作成するか既存のものを使うことができます。 DefaultRequestHeadersの「Authorization」をベアラーの「access token」に設定し、Ocp-Apim-Subscription-KeyをCustomer Insights - Data環境のサブスクリプションキーに設定します。

    必要に応じて、Authorization ヘッダーをリセットします。 例えば、トークンが期限切れになったときなどです。

  3. この HttpClient を CustomerInsights クライアントの構築に渡します。

  4. "拡張メソッド" に対してクライアントを呼び出します (例: GetAllInstancesAsync)。 基盤 Microsoft.Rest.HttpOperationResponseへのアクセスを希望する場合は、「httpメッセージメソッド」、例えば GetAllInstancesWithHttpMessagesAsyncを使いましょう。

  5. メソッドは複数の型 (objectやIList<InstanceInfo>など) を返すことができるため、応答は型ApiErrorResult可能性があります。 戻り値の型を確認するには、その操作の API 詳細ページ で指定された応答の種類のオブジェクトを使用します。

    リクエストについてさらに情報が必要な場合は、 httpメッセージメソッド を使って生のレスポンスオブジェクトにアクセスしてください。

Node.js パッケージ

NPMで利用可能な Node.js クライアントライブラリをご利用ください: https://www.npmjs.com/package/@microsoft/customerinsights

Python パッケージ

PyPi で使用できる Python クライアント ライブラリを使用します。 https://pypi.org/project/customerinsights/