分享方式:


使用圖形 API 匯出Intune報表

所有已移轉至Intune報表基礎結構的報表,都可以從單一最上層匯出 API 匯出。 您必須使用 Microsoft 圖形 API來進行 HTTP 呼叫。 Microsoft Graph 是一種 RESTful Web API,可讓您存取 Microsoft 雲端服務資源。

注意事項

如需進行 REST API 呼叫的相關資訊,包括與 Microsoft Graph 互動的工具,請參閱使用 Microsoft 圖形 API

Microsoft Intune會使用下列 Microsoft 圖形 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')

您必須繼續呼叫此 URL,直到您取得具有 屬性的 status: completed 回應為止。 看起來會像下列範例:

{ 
    "@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。

報表參數

您可以在要求本文中提交五個主要參數來定義匯出要求:

  • reportName:必填。 此參數是您想要指定的報表名稱。
  • filter:大部分報表都不需要 。 請注意,篩選參數是字串。
  • select:不需要。 指定您想要報表中的資料行。 只會接受與您要呼叫之報表相關的有效資料行名稱。
  • format:不需要。 根據預設,資料會以 csv 格式輸出。 指定 json 以 JSON 格式輸出檔案。
  • localizationType:此參數可控制報表的當地語系化行為。 可能的值為 LocalizedValuesAsAdditionalColumnReplaceLocalizableValues

當地語系化行為

參數 localizationType 會控制報表的當地語系化行為。 此參數的可能值為 LocalizedValuesAsAdditionalColumnReplaceLocalizableValues

LocalizedValuesAsAdditionalColumn 報表值

參數的這個 localizationType 值是預設值。 如果未指定 參數, localizationType 則會自動插入它。 這個值會指定Intune為每個可當地語系化的資料行提供兩個數據行。

  • 列舉值:列 舉值 資料行包含未經處理的字串,或一組不會變更的數位,不論地區設定為何。 此資料行會位於原始資料行名稱底下 (請參閱範例) 。
  • 當地語系化的字串值:此資料行會是附加_loc的原始資料行名稱。 它會包含人類可讀取的字串值,以及地區設定條件式 (請參閱範例) 。

範例

作業系統 OS_loc
1 Windows
1 Windows
1 Windows
2 iOS
3 Android
4 Mac

ReplaceLocalizableValues 報表值

ReplaceLocalizableValues 報表值只會傳回每個當地語系化屬性一個資料行。 此資料行將包含具有當地語系化值的原始資料行名稱。

範例

作業系統
Windows
Windows
Windows
iOS
Android
Mac

對於沒有當地語系化值的資料行,只會傳回具有 true 資料行名稱和 true 資料行值的單一資料行。

重要事項

參數 localizationType 與Intune的報告基礎結構所裝載的任何匯出體驗相關,但有幾個例外狀況。 DevicesWithInventoryDevices 報表類型將不會接受 參數, localizationType 因為舊版相容性需求。

後續步驟