次の方法で共有


Microsoft 365 API を呼び出して、API ベースのインポート用の組織データを転送する (手順 2/3) (プレビュー)

重要

この機能は、パブリック プレビューのお客様専用です。 プレビューの機能が完了していない可能性があり、より広範なリリースで利用できるようになる前に変更が加えられる可能性があります。

適用対象: Microsoft 365 グローバル管理者または組織データ ソース管理者または人事情報システム管理者

1. 設定された頻度でデータを準備してエクスポートする

社内のすべての従業員の組織データをインポートし、インポートするすべてのフィールドを .csv テンプレートに追加します。 このデータ ファイルを構成する方法について説明します。

決定した頻度 (月に 1 回、週に 1 回など) で、カスタム アプリで組織データをソース システムからエクスポートします。

2. API を呼び出してデータをインポートする

Microsoft 365 にデータをインポートするには、次の 4 つのオプションから選択できます。

  • API を使用して、選択した頻度でデータをエクスポートおよびインポートするカスタム アプリを構築します。 詳細情報を参照してください。

  • API に基づいて、本体で C# ソリューションを実行します。 詳細情報を参照してください。

  • PowerShell スクリプトを実行します。これは、API にも基づいています。 詳細情報を参照してください。

  • API ベースのインポートにデータを送信するには、Azure Data Factory (ADF) テンプレートを使用します。 詳細情報を参照してください。

注:

C# および PowerShell ソリューションは、Microsoft 365 の組織データにのみデータをインポートします。 ソース システムからデータをエクスポートしません。

以下のいずれかのオプションを使用する前に、この情報があることを確認してください。

  • アプリ (クライアント) ID。 登録されているアプリ情報の [アプリケーション (クライアント) ID] の下のMicrosoft Entra 管理センターで、この ID を見つけます。

  • クライアント シークレット: これは、トークンを要求するときにアプリケーションが ID を証明するために使用するシークレット文字列です。 アプリケーション パスワードとも呼ばれます。 このシークレットは、クライアント シークレットの作成時にのみ初めて表示されます。 新しいクライアント シークレットを作成するには、 次の手順に従います

  • 証明書名。 この名前は、登録済みアプリケーションで構成されます。 証明書をアップロードすると、Azure ポータルの [説明] に証明書名が表示されます。 証明書名は、クライアント シークレットの代わりに使用できます。

  • テナント ID をMicrosoft Entraします。 この ID は、アプリの概要ページの [ディレクトリ (テナント) ID] にあります

  • スケール ユニット: テナントに提供されるスケール ユニット ("novaprdwus2-01" など)。

  • .csv ファイルと、.csv ファイルへのパス。

データをプッシュする

Microsoft 365 API を呼び出してコンテンツをプッシュする 1P/3P アンケート アプリ

[POST] https://api.orginsights.viva.office.com/v1.0/tenants/{tenantid}/modis/connectors/HR/ingestions/fileIngestion

コネクタが設定されていない場合:

403: Forbidden

コネクタが設定されていても、以前のインジェストがまだ完了していない場合:

400: Bad request: Previous ingestion is not complete.

オプション 1: Microsoft 365 API を使用してカスタムインポート/エクスポート アプリを構築する

Microsoft 365 API を使用して、ソース システムからデータを自動的にエクスポートし、それをMicrosoft 365 管理センターにインポートするカスタム アプリを構築できます。

アプリは PowerShell スクリプトなどの任意の形式を使用できますが、選択した頻度でソース データを .csv ファイルとしてエクスポートし、そのファイルを Microsoft 365 アプリとサービスにインポートする必要があります。

オプション 2: カスタム アプリを使用してデータをエクスポートした後、C# ソリューションを通じてデータをインポートする

選択した頻度でソース データを .csv ファイルとしてエクスポートしたら、コンソールで DescriptiveDataUploadApp C# ソリューションを実行できます。 その後、DescriptiveDataUploadApp C# ソリューションを使用すると、ローカルに保存されたデータが Microsoft 365 に取り込まれます。 詳細については、GitHub をご覧ください

ソリューションを実行するには:

  1. コマンド ラインで次のコマンドを実行して、このアプリをコンピューターに複製します。

    git clone https://github.com/microsoft/orgdata_apibasedimport.git.

  2. 次のコンソール値を含めます。

    • AppID/ClientID
    • .csv ファイルへの絶対パス。 次のようにパスを書式設定します。 C:\\Users\\JaneDoe\\OneDrive - Microsoft\\Desktop\\info.csv
    • テナント ID のMicrosoft Entra
    • 証明書名

オプション 3: カスタム アプリを介してデータをエクスポートした後に、DescriptiveDataUpload PowerShell ソリューションを実行する

オプション 2 と同様に、選択した頻度でソース データを .csv ファイルとしてエクスポートした後、コンソールで DescriptiveDataUpload PowerShell ソリューションを実行できます。 その後、DescriptiveDataUpload PowerShell ソリューションを使用すると、ローカルに保存されたデータが Microsoft 365 に取り込まれます。 詳細については、GitHub をご覧ください

  1. コマンド ラインで次のコマンドを実行して、ソース コードをコンピューターに複製します。

    git clone https://github.com/microsoft/orgdata_apibasedimport.git.

  2. 管理者として新しい PowerShell ウィンドウを開きます。

  3. PowerShell ウィンドウで、次のコマンドを実行します。

    Install-Module -Name MSAL.PS

    または、インストールの手順については、この PowerShell ギャラリーのリンク を参照してください。

  4. パラメーターを設定します。

    • ClientID
    • pathTocsvFile
    • TenantId
    • novaScaleUnit
    • ingressDataType: HR
    • ClientSecret または certificateName

オプション 4: Azure Data Factory (ADF) テンプレートを使用して、API ベースのインポートにデータを送信する

1. 新しいAzure Data Factoryを作成する
  1. https://adf.azure.com/en/datafactoriesにログインします。

  2. 新しいデータ ファクトリを作成するか、既存のデータ ファクトリを使用します。 フィールドに入力し、[ 作成] を選択します。

    新しいデータ ファクトリを作成するか、既存のデータ ファクトリを使用する方法を示すスクリーンショット。

2. 新しいパイプラインとアクティビティを作成する
  1. 新しいパイプラインを作成し、パイプラインの名前を入力します。

    新しいパイプラインを作成する方法を示すスクリーンショット。

  2. [ アクティビティ] で、[ データのコピー] を追加します

    コピー データを追加する方法を示すスクリーンショット。

3. データ アクティビティの設定をコピーする: 全般

[ データのコピー ] アクティビティを選択し、[ 全般 ] を選択して、以下のガイダンスを使用して各フィールドを完了します。

データ アクティビティの設定をコピーする方法を示すスクリーンショット。

  • [名前]: アクティビティの名前を入力します。
  • 説明: アクティビティの説明を入力します。
  • アクティビティの状態: [ アクティブ化] を選択します。 または、[ 非アクティブ化 ] を選択して、パイプラインの実行と検証からアクティビティを除外します。
  • タイムアウト: アクティビティを実行できる最大時間です。 既定値は 12 時間、最小値は 10 分、許可される最大時間は 7 日間です。 形式は D.HH:MM:SS です。
  • 再試行: 再試行の最大数。 これは 0 のままにできます。
  • 再試行間隔 (秒): 再試行の最大数。 再試行が 0 に設定されている場合、これは 30 のままにすることができます。
  • セキュリティで保護された出力: 選択すると、アクティビティからの出力はログにキャプチャされません。 この設定はオフのままにしておくことができます。
  • セキュリティで保護された入力: 選択すると、アクティビティからの入力はログにキャプチャされません。 この設定はオフのままにしておくことができます。
4. データ アクティビティの設定をコピーする: ソース
  1. [ ソース] を選択します

  2. 既存のソース データセットを選択するか、[ +新規 ] を選択して新しいソース データセットを作成します。 たとえば、[新しいデータセット] で [Azure Blob Storage] を選択し、データの形式の種類を選択します。

    新しいソース データセットを作成する方法を示すスクリーンショット。

  3. .csv ファイルのプロパティを設定します。 [名前] を入力し、[リンクされたサービス] で既存の場所を選択するか、[+ 新規] を選択します。

    csv ファイルのプロパティを設定する方法を示すスクリーンショット。

  4. [+新規] を選択した場合は、次のガイダンスを使用して、新しいリンクされたサービスの詳細を入力します。

    新しいリンクされたサービスの詳細を追加する方法を示すスクリーンショット。

  5. [ ソース データセット] の横にある [ 開く] を選択します。

    ソース データセットを開く方法を示すスクリーンショット。

  6. ヘッダーとして [最初の行] を選択します。

    最初の行をヘッダーとして選択する方法を示すスクリーンショット。

5. データ アクティビティの設定をコピーする: シンク
  1. [ シンク] を選択します。

  2. [ +新規 ] を選択して、Viva Insights Import API に接続するように新しい rest リソースを構成します。 "Rest" を検索し、[ 続行] を選択します。

    Viva Insights Import API に接続するように新しい rest リソースを構成する方法を示すスクリーンショット。

  3. サービスに名前を付けます。 [ リンクされたサービス ] で、[ +新規] を選択します。

    サービスに名前を付け、新しいリンクされたサービスを追加する方法を示すスクリーンショット。

  4. "Rest" を検索して選択します。

    Rest データセットを検索する方法を示すスクリーンショット。

  5. 以下のガイダンスを使用して、フィールドを入力します。

    データセットのフィールドを入力する方法を示すスクリーンショット。

  • [名前]: 新しいリンクされたサービスの名前を入力します。
  • 説明: 新しいリンクされたサービスの説明を入力します。
  • 統合ランタイム経由で接続する: 優先する方法を入力します。
  • ベース URL: 以下の URL を使用し、<TENANT_ID> をテナント ID に置き換えます:https://api.orginsights.viva.office.com/v1.0/scopes/<TENANT_ID>/ingress/connectors/HR/ingestions/fileIngestion
  • 認証の種類: サービス プリンシパルとして認証の種類を選択し、[ シークレット ] または [証明書] を選択 します。 サービス プリンシパルの例:
    • [インライン]: 選択します。

    • サービス プリンシパル ID: API コネクタに対して承認されたアプリ ID を入力します。

    • サービス プリンシパル キー: キーを入力します。

      サービス プリンシパル キーを入力する方法を示すスクリーンショット。

    • テナント: テナント ID を入力します。

    • Microsoft Entra ID リソース:https://api.orginsights.viva.office.com

    • Azureクラウドの種類: Azureクラウドの種類を選択します。

    • サーバー証明書の検証: [有効] を選択します。

  1. 次のガイダンスを使用して、シンク設定を入力します。

    シンク設定を入力する方法を示すスクリーンショット。

  • シンク データセット: 既存または新しく作成されたデータセットを選択します。
  • 要求方法: [POST] を選択します。
  • 要求タイムアウト: 既定値は 5 分です。
  • 要求間隔 (ms): 10 が既定です。
  • 書き込みバッチ サイズ: バッチ サイズは、ファイル内の行の最大数より大きくする必要があります。
  • Http 圧縮の種類: 既定値は [なし] です。 または、GZip を使用することもできます。
  • 追加のヘッダー: [+新規] を選択します。
    • ボックス 1: x-nova-scaleunit
    • : 値は、->Organization データ タブ -> [データ ソースの管理 ] ->[API ベースのインポートの選択] に移動することで、Workplace Analytics から取得できます。
6. データ アクティビティの設定をコピーする: マッピング
  1. [ マッピング] を選択します

  2. ブートストラップアップロードの場合は、マッピング (宛先名) に PersonIdManagerIdOrganization を必ず含めます。 増分アップロードの場合は、宛先名が PersonId と共に、前のアップロードの名前と一致していることを確認します。 新しい列で増分アップロードを実行することはできません。また、すべてのアップロードで PersonId が必要です。

    マッピングのアクティビティ設定を入力する方法を示すスクリーンショット。

7. データ アクティビティの設定をコピーする: 設定とユーザープロパティ

設定またはユーザー プロパティに他のカスタマイズは必要ありません。 必要に応じて、これらの設定をケースバイケースで編集できます。

8. データ アクティビティのコピー: トリガーのセットアップ (オートメーション)

自動化セットアップにトリガーを追加するには、[トリガーの 追加] を選択します。 推奨される自動化は毎週です。 頻度をカスタマイズすることもできます。

トリガーを設定する方法を示すスクリーンショット。