Exporteer Intune rapporten met behulp van Graph API's

Alle rapporten die naar de Intune-rapportage-infrastructuur zijn gemigreerd, kunnen worden geëxporteerd vanuit één export-API op het hoogste niveau. U moet de Microsoft Graph API gebruiken om de HTTP-aanroep te plaatsen. Microsoft Graph is een RESTful-web-API waarmee u toegang hebt tot resources van Microsoft Cloud-services.

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
https://graph.microsoft.com/v1.0/deviceManagement/reports/exportJobs

Voorbeeldapparaatrapport aanvraag en antwoord

Wanneer u de aanvraag indient, moet u een reportName parameter opgeven als onderdeel van de aanvraagtekst op basis van het rapport dat u wilt exporteren. Hieronder ziet u een voorbeeld van een exportaanvraag voor het rapport Apparaten . U moet de POST HTTP-methode 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 bepaalde kolommen, zoals de kolommen die in het bovenstaande voorbeeld zijn opgegeven. Bouw geen automatisering op rond standaardkolommen van een rapportexport. U moet uw automatisering bouwen om relevante kolommen expliciet te selecteren.

Voorbeeld van antwoord

Op basis van het bovenstaande POST-verzoek retourneert Graph een antwoordbericht. Het antwoordbericht bestaat uit de gegevens die u hebt opgevraagd 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') of 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 eruit als in het volgende voorbeeld:

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

U kunt het gecomprimeerde CSV-bestand dan rechtstreeks downloaden vanuit het url veld.

Rapportparameters

Er zijn vijf belangrijke parameters die u in de hoofdtekst van uw aanvraag kunt indienen 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 uit het rapport u wilt gebruiken. Alleen geldige kolomnamen die relevant zijn voor het rapport dat u belt, worden geaccepteerd.
  • format: Niet vereist. Standaard worden de gegevens in csv de indeling uitgevoerd. Geef op json dat u het bestand in JSON-indeling wilt uitvoeren.
  • 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. De parameter wordt automatisch ingevoegd als de localizationType parameter niet is opgegeven. Deze waarde geeft aan dat Intune twee kolommen levert voor elke lokaliseerbare kolom.

  • Opsommingswaarde: de kolom Opsommingswaarde bevat een onbewerkte tekenreeks of een reeks getallen die niet veranderen, ongeacht de landinstelling. Deze kolom staat onder de oorspronkelijke kolomnaam (zie voorbeeld).
  • Gelokaliseerde tekenreekswaarde: Deze kolom is de oorspronkelijke kolomnaam waaraan _loc toegevoegd. Het bevat tekenreekswaarden die door mensen kunnen worden gelezen en landinstellingsvoorwaardelijk zijn (zie voorbeeld).

Voorbeeld

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

Waarde van rapport ReplaceLocalizableValues

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

Voorbeeld

Besturingssysteem
Windows
Windows
Windows
iOS
Android
Mac

Voor kolommen zonder gelokaliseerde waarden wordt slechts één kolom met de Waar-kolomnaam en de Waar-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 en rapporttypen houden zich niet aan de localizationType parameter vanwege verouderde compatibiliteitsvereistenDevicesWithInventory.

Voorwaarden voor API-beperking

Om ervoor te zorgen dat de exportJobs API niet te veel gelijktijdige aanvragen heeft, wat van invloed zou zijn op de reactiesnelheid van de API, worden de onderstaande beperkingslimieten toegepast.

  • De API's ondersteunen maximaal 100 aanvragen per tenant per minuut: Deze ondersteuning geldt voor alle gebruikers en apps in een tenant. Alle extra aanvragen die binnen dezelfde minuut worden geïnitieerd door gebruikers of apps in de tenant, worden beperkt.
    • Als de API's door een gebruiker worden geïnitieerd, worden maximaal 8 verzoeken binnen een minuut door dezelfde gebruiker toegestaan. Volgende aanvragen door dezelfde gebruiker binnen dezelfde minuut worden beperkt.
    • Als de API's door een app worden geïnitieerd, worden binnen een minuut maximaal 48 aanvragen toegestaan door dezelfde app. Volgende aanvragen door dezelfde app binnen dezelfde minuut worden beperkt.

Volgende stappen