Экспорт отчетов Intune с помощью API Graph
Все отчеты, перенесенные в инфраструктуру отчетов Intune, будут доступны для экспорта из одного API экспорта верхнего уровня. Для выполнения вызова HTTP необходимо использовать API Graph Майкрософт. Microsoft Graph — это соответствующий ограничениям REST веб-API, обеспечивающий доступ к ресурсам службы Microsoft Cloud.
Примечание.
Сведения о вызовах REST API, включая средства для взаимодействия с Microsoft Graph, см. в статье Использование API Graph Майкрософт.
Microsoft Intune экспортирует отчеты с помощью следующей конечной точки Microsoft API Graph:
https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs
Примеры запросов и ответов на запросы к отчетам об устройствах
При выполнении запроса необходимо указать reportName
параметр в тексте запроса на основе отчета, который вы хотите экспортировать. Ниже приведен пример запроса на экспорт для отчета "Устройства ". В запросе необходимо использовать метод HTTP POST. Метод POST используется для создания нового ресурса или выполнения действия.
Пример запроса
Приведенный ниже запрос содержит метод HTTP, используемый в запросе к Microsoft Graph.
{
"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"
}
Затем можно напрямую скачать сжатый CSV-файл из url
поля.
Параметры отчета
Существует пять основных параметров, которые можно отправить в тексте запроса для определения запроса на экспорт:
reportName
:Обязательно. Этот параметр является именем отчета, который требуется указать.filter
: не требуется для большинства отчетов. Обратите внимание, что параметр фильтра представляет собой строку.select
: не требуется. Укажите нужные столбцы из отчета. Будут приняты только допустимые имена столбцов, относящиеся к вызываемом отчету.format
: не требуется. По умолчанию данные выводятся вcsv
формате. Укажитеjson
, чтобы вывести файл в формате JSON.localizationType
: этот параметр управляет поведением локализации для отчета. Возможные значения:LocalizedValuesAsAdditionalColumn
иReplaceLocalizableValues
.
Поведение локализации
Параметр localizationType
управляет поведением локализации для отчета. Возможные значения для этого параметра: LocalizedValuesAsAdditionalColumn
и ReplaceLocalizableValues
.
Значение отчета 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 |
Для столбцов без локализованных значений возвращается только один столбец с истинным именем столбца и истинными значениями столбцов.
Важно!
Параметр localizationType
относится к любому интерфейсу экспорта, размещенного в инфраструктуре отчетов Intune, за некоторыми исключениями. Devices
Типы отчетов и DevicesWithInventory
не будут учитывать параметр из-за localizationType
устаревших требований к совместимости.