Compartilhar via


Exportar relatórios Intune com Graph APIs

Todos os relatórios que foram migrados para a infraestrutura de relatórios Intune estarão disponíveis para exportação a partir de uma única API de exportação de nível superior. Tem de utilizar o microsoft API do Graph para efetuar a chamada HTTP. O Microsoft Graph é uma API Web RESTful que permite que você acesse os recursos de serviço do Microsoft Cloud.

Observação

Para obter informações sobre como fazer chamadas à API REST, incluindo ferramentas para interagir com o Microsoft Graph, consulte Utilizar o microsoft API do Graph.

Microsoft Intune exportará relatórios com o seguinte ponto final do Microsoft API do Graph:

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

Pedido e resposta de relatórios de dispositivos de exemplo

Ao fazer o pedido, tem de fornecer um reportName parâmetro como parte do corpo do pedido com base no relatório que pretende exportar. Segue-se um exemplo de um pedido de exportação para o relatório Dispositivos . Tem de utilizar o método POST HTTP no seu pedido. O método POST é utilizado para criar um novo recurso ou efetuar uma ação.

Exemplo de solicitação

O pedido abaixo contém o método HTTP utilizado no pedido para o Microsoft Graph.

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

Observação

Para obter dados, selecione colunas específicas, como as especificadas no exemplo acima. Não crie automatização em torno das colunas predefinidas de qualquer exportação de relatório. Deve criar a automatização para selecionar explicitamente colunas relevantes.

Exemplo de resposta

Com base no pedido POST acima, o Graph devolve uma mensagem de resposta. A mensagem de resposta são os dados que pediu ou o resultado da operação.

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

Em seguida, pode utilizar o id campo para consultar a status da exportação com um pedido GET:

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

Terá de continuar a chamar este URL até obter uma resposta com um status: completed atributo. Tem o seguinte aspeto:

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

Em seguida, pode transferir diretamente o CSV comprimido a url partir do campo .

Parâmetros do relatório

Existem cinco parâmetros main que pode submeter no corpo do pedido para definir o pedido de exportação:

  • reportName:Necessário. Este parâmetro é o nome do relatório que pretende especificar.
  • filter: não é necessário para a maioria dos relatórios. O parâmetro de filtro é uma cadeia.
  • select: não é necessário. Especifique as colunas do relatório que pretende. Só serão aceites nomes de coluna válidos relevantes para o relatório que está a chamar.
  • format: não é necessário. Por predefinição, os dados são apresentados no csv formato . Especifique para exportar json o ficheiro no formato JSON.
  • localizationType: este parâmetro controla o comportamento de localização do relatório. Os valores possíveis são: LocalizedValuesAsAdditionalColumn e ReplaceLocalizableValues.

Comportamento de localização

O localizationType parâmetro controla o comportamento de localização do relatório. Os valores possíveis para este parâmetro são LocalizedValuesAsAdditionalColumn e ReplaceLocalizableValues.

LocalizedValuesAsAdditionalColumn report value (Valor do relatório LocalizedValuesAsAdditionalColumn)

Este valor para o localizationType parâmetro é o valor predefinido. É inserido automaticamente se o localizationType parâmetro não for especificado. Este valor especifica que Intune fornece duas colunas para cada coluna localizável.

  • valor de enumeração: a coluna de valor de enumeração contém uma cadeia não processada ou um conjunto de números que não são alterados, independentemente da região. Esta coluna está abaixo do nome da coluna original (veja o exemplo).
  • valor de cadeia localizado: esta coluna é o nome da coluna original com _loc anexado. Contém valores de cadeia legíveis por humanos e condicionais de região (veja exemplo).

Exemplo

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

ReplaceLocalizableValues report value (Valor do relatório ReplaceLocalizableValues)

O valor do relatório ReplaceLocalizableValues devolverá apenas uma coluna por atributo localizado. Esta coluna contém o nome da coluna original com os valores localizados.

Exemplo

SO
Windows
Windows
Windows
iOS
Android
Mac

Para colunas sem valores localizados, apenas é devolvida uma única coluna com o nome de coluna verdadeiro e os valores de coluna verdadeiros.

Importante

O localizationType parâmetro é relevante para qualquer experiência de exportação alojada pela infraestrutura de relatórios do Intune com algumas exceções. OsDevices tipos de relatório e DevicesWithInventory não respeitarão o localizationType parâmetro devido aos requisitos de compatibilidade legados.

Condições de limitação da API

Para garantir que a exportJobs API não tem demasiados pedidos simultâneos, o que afetaria a taxa de resposta da API, são aplicados os limites de limitação abaixo.

  • As APIs suportarão até 100 pedidos por inquilino por minuto: este suporte abrange todos os utilizadores e aplicações num inquilino. Todos os pedidos adicionais iniciados por utilizadores ou aplicações no inquilino dentro do mesmo minuto serão limitados.
    • Se as APIs forem iniciadas por um utilizador, até 8 pedidos serão permitidos pelo mesmo utilizador dentro de um minuto. Os pedidos subsequentes do mesmo utilizador no mesmo minuto serão limitados.
    • Se as APIs forem iniciadas por uma aplicação, até 48 pedidos serão permitidos pela mesma aplicação dentro de um minuto. Os pedidos subsequentes da mesma aplicação no mesmo minuto serão limitados.

Próximas etapas