Graph API を使用してIntune レポートをエクスポートする
Intune レポート インフラストラクチャに移行されたすべてのレポートは、単一の最上位レベルのエクスポート API からエクスポートできます。 HTTP 呼び出しを行うには、Microsoft Graph APIを使用する必要があります。 Microsoft Graph は、Microsoft Cloud サービス リソースへのアクセスを可能にする RESTful Web API です。
注:
Microsoft Graph と対話するためのツールなど、REST API 呼び出しの詳細については、「Microsoft Graph APIを使用する」を参照してください。
Microsoft Intuneは、次の Microsoft Graph API エンドポイントを使用してレポートをエクスポートします。
https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs
https://graph.microsoft.com/v1.0/deviceManagement/reports/exportJobs
デバイスレポートの要求と応答の例
要求を行うときは、エクスポートするレポートに基づいて、要求本文の一部として reportName
パラメーターを指定する必要があります。 次に、 デバイス レポートのエクスポート要求の例を示します。 要求に対して POST HTTP メソッドを使用する必要があります。 POST メソッドは、新しいリソースを作成したり、アクションを実行したりするために使用されます。
要求の例
次の要求には、Microsoft Graph への要求で使用される HTTP メソッドが含まれています。
{
"reportName": "Devices",
"filter":"(OwnerType eq '1')",
"localizationType": "LocalizedValuesAsAdditionalColumn",
"format": "json",
"select": [
"DeviceName",
"managementAgent",
"ownerType",
"complianceState",
"OS",
"OSVersion",
"LastContact",
"UPN",
"DeviceId"
]
}
注:
データを取得するには、上記の例で指定した列など、特定の列を選択します。 レポートエクスポートの既定の列を中心に自動化を構築しないでください。 関連する列を明示的に選択するように自動化を構築する必要があります。
応答の例
上記の POST 要求に基づいて、Graph は応答メッセージを返します。 応答メッセージは、要求したデータまたは操作の結果です。
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#deviceManagement/reports/exportJobs/$entity",
"id": "Devices_05e62361-783b-4cec-b635-0aed0ecf14a3",
"reportName": "Devices",
"filter":"(OwnerType eq '1')",
"localizationType": "LocalizedValuesAsAdditionalColumn",
"select": [
"DeviceName",
"managementAgent",
"ownerType",
"complianceState",
"OS",
"OSVersion",
"LastContact",
"UPN",
"DeviceId"
],
"format": "csv",
"snapshotId": null,
"status": "notStarted",
"url": null,
"requestDateTime": "2020-08-19T03:43:32.1405758Z",
"expirationDateTime": "0001-01-01T00:00:00Z"
}
その後、 id
フィールドを使用して、GET 要求を使用してエクスポートの状態を照会できます。
例: https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs('Devices_05e62361-783b-4cec-b635-0aed0ecf14a3')
または https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs/Devices_05e62361-783b-4cec-b635-0aed0ecf14a3
status: completed
属性を持つ応答が返されるまで、この URL の呼び出しを続行する必要があります。 次の例のようになります。
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#deviceManagement/reports/exportJobs/$entity",
"id": "Devices_05e62361-783b-4cec-b635-0aed0ecf14a3",
"reportName": "Devices",
"filter":"(OwnerType eq '1')",
"localizationType": "LocalizedValuesAsAdditionalColumn",
"select": [
"DeviceName",
"managementAgent",
"ownerType",
"complianceState",
"OS",
"OSVersion",
"LastContact",
"UPN",
"DeviceId"
],
"format": "csv",
"snapshotId": null,
"status": "completed",
"url": "https://amsua0702repexpstorage.blob.core.windows.net/cec055a4-97f0-4889-b790-dc7ad0d12c29/Devices_05e62361-783b-4cec-b635-0aed0ecf14a3.zip?sv=2019-02-02&sr=b&sig=%2BP%2B4gGiZf0YzlQRuAV5Ji9Beorg4nnOtP%2F7bbFGH7GY%3D&skoid=1db6df02-4c8b-4cb3-8394-7ac2390642f8&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2020-08-19T03%3A48%3A32Z&ske=2020-08-19T09%3A44%3A23Z&sks=b&skv=2019-02-02&se=2020-08-19T09%3A44%3A23Z&sp=r",
"requestDateTime": "2020-08-19T03:43:32.1405758Z",
"expirationDateTime": "2020-08-19T09:44:23.8540289Z"
}
その後、[ url
] フィールドから圧縮された CSV を直接ダウンロードできます。
レポートのパラメーター
エクスポート要求を定義するために、要求本文に送信できるメインパラメーターは 5 つあります。
-
reportName
:必須。 このパラメーターは、指定するレポートの名前です。 -
filter
: ほとんどのレポートには必要ありません。 filter パラメーターは文字列です。 -
select
: 必須ではありません。 必要なレポートの列を指定します。 呼び出しているレポートに関連する有効な列名のみが受け入れられます。 -
format
: 必須ではありません。 既定では、データはcsv
形式で出力されます。 ファイルを JSON 形式で出力するjson
を指定します。 -
localizationType
: このパラメーターは、レポートのローカライズ動作を制御します。 可能な値は、LocalizedValuesAsAdditionalColumn
とReplaceLocalizableValues
です。
ローカライズの動作
localizationType
パラメーターは、レポートのローカライズ動作を制御します。 このパラメーターに使用できる値は、 LocalizedValuesAsAdditionalColumn
と ReplaceLocalizableValues
です。
LocalizedValuesAsAdditionalColumn レポート値
localizationType
パラメーターのこの値が既定値です。
localizationType
パラメーターが指定されていない場合は、自動的に挿入されます。 この値は、ローカライズ可能な列ごとに 2 つの列Intune提供することを指定します。
- enum value: enum value 列には、ロケールに関係なく、未加工の文字列または変更されない数値のセットが含まれています。 この列は元の列名の下にあります (例を参照)。
- ローカライズされた文字列値: この列は、_loc追加された元の列名です。 これには、人間が読み取り可能な文字列値と、ロケールの条件付き値が含まれています (例を参照)。
例
OS | OS_loc |
---|---|
1 | Windows |
1 | Windows |
1 | Windows |
2 | iOS |
3 | Android |
4 | Mac |
ReplaceLocalizableValues レポート値
ReplaceLocalizableValues レポート値は、ローカライズされた属性ごとに 1 つの列のみを返します。 この列には、ローカライズされた値を含む元の列名が含まれています。
例
OS |
---|
Windows |
Windows |
Windows |
iOS |
Android |
Mac |
ローカライズされた値のない列の場合は、true 列名と true 列値を持つ 1 つの列のみが返されます。
重要
localizationType
パラメーターは、いくつかの例外を除き、Intuneのレポート インフラストラクチャによってホストされるエクスポート エクスペリエンスに関連します。 レポートの種類Devices
と DevicesWithInventory
は、従来の互換性要件のため、 localizationType
パラメーターを受け入れません。
API 調整条件
exportJobs
API に同時要求が多すぎないようにするため、API の応答速度に影響を与える可能性があります。以下の調整制限が適用されます。
-
API は、テナントごとに 1 分あたり最大 100 件の要求をサポートします。このサポートは、テナント内のすべてのユーザーとアプリを対象としています。 同じ時間内にテナント内のユーザーまたはアプリによって開始された追加の要求はすべて調整されます。
- API がユーザーによって開始された場合、1 分以内に同じユーザーによって最大 8 つの要求が許可されます。 同じ 1 分以内に同じユーザーによる後続の要求が調整されます。
- API がアプリによって開始された場合、同じアプリで 1 分以内に最大 48 件の要求が許可されます。 同じ 1 分以内に同じアプリによる後続の要求が調整されます。