Exportación de informes de Intune mediante graph API

Todos los informes que se han migrado a la infraestructura de informes de Intune estarán disponibles para su exportación desde una única API de exportación de nivel superior. Debe usar microsoft Graph API para realizar la llamada HTTP. Microsoft Graph es una API para web REST que permite tener acceso a los recursos del servicio Microsoft Cloud.

Nota:

Para obtener información sobre cómo realizar llamadas a la API REST, incluidas las herramientas para interactuar con Microsoft Graph, consulte Uso de microsoft Graph API.

Microsoft Intune exportará informes mediante el siguiente punto de conexión de Microsoft Graph API:

https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs

Ejemplo de solicitud y respuesta de informes de dispositivos

Al realizar la solicitud, debe proporcionar un reportName parámetro como parte del cuerpo de la solicitud en función del informe que desea exportar. A continuación se muestra un ejemplo de una solicitud de exportación para el informe Dispositivos . Debe usar el método HTTP POST en la solicitud. El método POST se usa para crear un nuevo recurso o realizar una acción.

Ejemplo de solicitud

La solicitud siguiente contiene el método HTTP usado en la solicitud a Microsoft Graph.

{ 
    "reportName": "Devices", 
    "filter":"(OwnerType eq '1')", 
    "localizationType": "LocalizedValuesAsAdditionalColumn", 
    "format": "json",
    "select": [ 
        "DeviceName", 
        "managementAgent", 
        "ownerType", 
        "complianceState", 
        "OS", 
        "OSVersion", 
        "LastContact", 
        "UPN", 
        "DeviceId" 
    ]
} 

Nota:

Para recuperar datos, seleccione columnas específicas, como las especificadas en el ejemplo anterior. No compile la automatización en torno a las columnas predeterminadas de ninguna exportación de informes. Debe compilar la automatización para seleccionar explícitamente las columnas pertinentes.

Ejemplo de respuesta

En función de la solicitud POST anterior, Graph devuelve un mensaje de respuesta. El mensaje de respuesta son los datos que solicitó o el resultado de la operación.

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

A continuación, puede usar el id campo para consultar el estado de la exportación con una solicitud GET:

Por ejemplo: https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs('Devices_05e62361-783b-4cec-b635-0aed0ecf14a3')

Tendrá que seguir llamando a esta dirección URL hasta que obtenga una respuesta con un status: completed atributo . Tendrá un aspecto similar al siguiente ejemplo:

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

A continuación, puede descargar directamente el ARCHIVO CSV comprimido desde el url campo.

Parámetros del informe

Hay cinco parámetros principales que puede enviar en el cuerpo de la solicitud para definir la solicitud de exportación:

  • reportName:Obligatorio. Este parámetro es el nombre del informe que desea especificar.
  • filter: no es necesario para la mayoría de los informes. Tenga en cuenta que el parámetro de filtro es una cadena.
  • select: no es necesario. Especifique qué columnas del informe desea. Solo se aceptarán los nombres de columna válidos relevantes para el informe al que llama.
  • format: no es necesario. De forma predeterminada, los datos se generan en csv formato. Especifique json para generar el archivo en formato JSON.
  • localizationType: este parámetro controla el comportamiento de localización del informe. Valores posibles: LocalizedValuesAsAdditionalColumn y ReplaceLocalizableValues.

Comportamiento de localización

El localizationType parámetro controla el comportamiento de localización del informe. Los valores posibles para este parámetro son LocalizedValuesAsAdditionalColumn y ReplaceLocalizableValues.

Valor del informe LocalizedValuesAsAdditionalColumn

Este valor para el localizationType parámetro es el valor predeterminado. Se insertará automáticamente si no se especifica el localizationType parámetro . Este valor especifica que Intune proporciona dos columnas para cada columna localizable.

  • valor de enumeración: la columna de valor de enumeración contiene una cadena sin procesar o un conjunto de números que no cambian, independientemente de la configuración regional. Esta columna estará bajo el nombre de columna original (vea el ejemplo).
  • valor de cadena localizada: esta columna será el nombre de columna original con _loc anexado. Contendrá valores de cadena legibles y condicionales de configuración regional (vea el ejemplo).

Ejemplo:

SO OS_loc
1 Windows
1 Windows
1 Windows
2 iOS
3 Android
4 Mac

Valor del informe ReplaceLocalizableValues

El valor del informe ReplaceLocalizableValues solo devolverá una columna por atributo localizado. Esta columna contendrá el nombre de la columna original con los valores localizados.

Ejemplo:

SO
Windows
Windows
Windows
iOS
Android
Mac

En el caso de las columnas sin valores localizados, solo se devuelve una sola columna con el nombre de columna verdadero y los valores de columna verdaderos.

Importante

El localizationType parámetro es relevante para cualquier experiencia de exportación hospedada por la infraestructura de informes de Intune con algunas excepciones. LosDevices tipos de informe y DevicesWithInventory no respetarán el localizationType parámetro debido a los requisitos de compatibilidad heredados.

Pasos siguientes