Intune rapporten exporteren met graph-API's

Alle rapporten die zijn gemigreerd naar de Intune rapportage-infrastructuur, zijn beschikbaar voor export vanuit één export-API op het hoogste niveau. U moet de Microsoft-Graph API gebruiken om de HTTP-aanroep te doen. Microsoft Graph is een RESTful-web-API waarmee u toegang hebt tot microsoft cloudserviceresources.

Opmerking

Zie De Microsoft-Graph API gebruiken voor informatie over het maken van REST API-aanroepen, inclusief hulpprogramma's voor interactie met Microsoft Graph.

Microsoft Intune exporteert rapporten met behulp van het volgende Microsoft Graph API-eindpunt:

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

Voorbeeld van een apparaat dat aanvraag en antwoord rapporteert

Wanneer u de aanvraag indient, moet u een reportName parameter opgeven als onderdeel van de aanvraagbody op basis van het rapport dat u wilt exporteren. Hieronder ziet u een voorbeeld van een exportaanvraag voor het rapport Apparaten . U moet de HTTP-methode POST gebruiken voor uw aanvraag. De POST-methode wordt gebruikt om een nieuwe resource te maken of een actie uit te voeren.

Voorbeeld van aanvraag

De onderstaande aanvraag bevat de HTTP-methode die wordt gebruikt voor de aanvraag bij Microsoft Graph.

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

Opmerking

Als u gegevens wilt ophalen, selecteert u specifieke kolommen, zoals de kolommen die in het bovenstaande voorbeeld zijn opgegeven. Bouw geen automatisering rond standaardkolommen van een rapportexport. U moet uw automatisering bouwen om expliciet relevante kolommen te selecteren.

Antwoordvoorbeeld

Op basis van de bovenstaande POST-aanvraag retourneert Graph een antwoordbericht. Het antwoordbericht bestaat uit de gegevens die u hebt aangevraagd of het resultaat van de bewerking.

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

Vervolgens kunt u het id veld gebruiken om de status van de export op te vragen met een GET-aanvraag:

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

U moet deze URL blijven aanroepen totdat u een antwoord met een status: completed kenmerk krijgt. Dit ziet er als volgt uit:

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

Vervolgens kunt u het gecomprimeerde CSV-bestand rechtstreeks downloaden vanuit het url veld.

Rapportparameters

Er zijn vijf belangrijke parameters die u kunt indienen in de hoofdtekst van uw aanvraag om de exportaanvraag te definiëren:

  • reportName:Vereist. Deze parameter is de naam van het rapport dat u wilt opgeven.
  • filter: niet vereist voor de meeste rapporten. De filterparameter is een tekenreeks.
  • select: niet vereist. Geef op welke kolommen van het rapport u wilt gebruiken. Alleen geldige kolomnamen die relevant zijn voor het rapport dat u aanroept, worden geaccepteerd.
  • format: niet vereist. De gegevens worden standaard uitgevoerd in csv de indeling. Geef op json om het bestand uit te voeren in JSON-indeling.
  • localizationType: deze parameter bepaalt het lokalisatiegedrag voor het rapport. Mogelijke waarden zijn LocalizedValuesAsAdditionalColumn en ReplaceLocalizableValues.

Lokalisatiegedrag

De localizationType parameter bepaalt het lokalisatiegedrag voor het rapport. De mogelijke waarden voor deze parameter zijn LocalizedValuesAsAdditionalColumn en ReplaceLocalizableValues.

LocalizedValuesAsAdditionalColumn-rapportwaarde

Deze waarde voor de localizationType parameter is de standaardwaarde. Deze wordt automatisch ingevoegd als de localizationType parameter niet is opgegeven. Deze waarde geeft aan dat Intune twee kolommen biedt voor elke lokaliseerbare kolom.

  • enumwaarde: de kolom enumwaarde bevat een onbewerkte tekenreeks of een reeks getallen die niet veranderen, ongeacht de landinstelling. Deze kolom bevindt zich onder de oorspronkelijke kolomnaam (zie voorbeeld).
  • gelokaliseerde tekenreekswaarde: deze kolom is de oorspronkelijke kolomnaam met _loc toegevoegd. Deze bevat tekenreekswaarden die door mensen kunnen worden gelezen en voorwaardelijke landinstellingen (zie voorbeeld).

Voorbeeld

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

Rapportwaarde ReplaceLocalizableValues

De rapportwaarde ReplaceLocalizableValues retourneert slechts één kolom per gelokaliseerd kenmerk. Deze kolom bevat de oorspronkelijke kolomnaam met de gelokaliseerde waarden.

Voorbeeld

OS
Windows
Windows
Windows
iOS
Android
Mac

Voor kolommen zonder gelokaliseerde waarden wordt slechts één kolom met de werkelijke kolomnaam en de werkelijke kolomwaarden geretourneerd.

Belangrijk

De localizationType parameter is relevant voor elke exportervaring die wordt gehost door de rapportage-infrastructuur van Intune, met een paar uitzonderingen. DeDevices rapporttypen en DevicesWithInventory voldoen niet aan de localizationType parameter vanwege verouderde compatibiliteitsvereisten.

Volgende stappen