Exportieren von Intune Berichten mithilfe von Graph-APIs
Alle Berichte, die zur Intune Berichtsinfrastruktur migriert wurden, stehen für den Export aus einer einzelnen Export-API der obersten Ebene zur Verfügung. Sie müssen die Microsoft-Graph-API verwenden, um den HTTP-Aufruf zu tätigen. Microsoft Graph ist eine RESTful-Web-API, mit der Sie auf Microsoft Cloud-Dienstressourcen zugreifen können.
Hinweis
Informationen zum Ausführen von REST-API-Aufrufen, einschließlich Tools für die Interaktion mit Microsoft Graph, finden Sie unter Verwenden des Microsoft-Graph-API.
Microsoft Intune exportieren Berichte mithilfe des folgenden Microsoft Graph-API-Endpunkts:
https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs
https://graph.microsoft.com/v1.0/deviceManagement/reports/exportJobs
Beispielgeräte melden Anforderung und Antwort
Wenn Sie die Anforderung stellen, müssen Sie einen reportName
Parameter als Teil des Anforderungstexts basierend auf dem Bericht angeben, den Sie exportieren möchten. Im Folgenden finden Sie ein Beispiel für eine Exportanforderung für den Gerätebericht . Sie müssen die POST-HTTP-Methode für Ihre Anforderung verwenden. Die POST-Methode wird verwendet, um eine neue Ressource zu erstellen oder eine Aktion auszuführen.
Anforderungsbeispiel
Die folgende Anforderung enthält die HTTP-Methode, die für die Anforderung an Microsoft Graph verwendet wird.
{
"reportName": "Devices",
"filter":"(OwnerType eq '1')",
"localizationType": "LocalizedValuesAsAdditionalColumn",
"format": "json",
"select": [
"DeviceName",
"managementAgent",
"ownerType",
"complianceState",
"OS",
"OSVersion",
"LastContact",
"UPN",
"DeviceId"
]
}
Hinweis
Wählen Sie zum Abrufen von Daten bestimmte Spalten aus, z. B. die im obigen Beispiel angegebenen. Erstellen Sie keine Automatisierung für Standardspalten eines Berichtsexports. Sie sollten Ihre Automatisierung so erstellen, dass relevante Spalten explizit ausgewählt werden.
Anforderungsbeispiel
Basierend auf der obigen POST-Anforderung gibt Graph eine Antwortnachricht zurück. Die Antwortnachricht sind die angeforderten Daten oder das Ergebnis des Vorgangs.
{
"@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"
}
Anschließend können Sie das id
Feld verwenden, um die status des Exports mit einer GET-Anforderung abzufragen:
Beispiel: https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs('Devices_05e62361-783b-4cec-b635-0aed0ecf14a3')
oder https://graph.microsoft.com/beta/deviceManagement/reports/exportJobs/Devices_05e62361-783b-4cec-b635-0aed0ecf14a3
Sie müssen diese URL weiterhin aufrufen, bis Sie eine Antwort mit einem status: completed
-Attribut erhalten. Es sieht wie im folgenden Beispiel aus:
{
"@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"
}
Anschließend können Sie die komprimierte CSV-Datei direkt aus dem url
Feld herunterladen.
Berichtsparameter
Es gibt fünf Standard Parameter, die Sie in Ihrem Anforderungstext übermitteln können, um die Exportanforderung zu definieren:
-
reportName
:Erforderlich. Dieser Parameter ist der Name des Berichts, den Sie angeben möchten. -
filter
: Für die meisten Berichte nicht erforderlich. Der Filterparameter ist eine Zeichenfolge. -
select
: Nicht erforderlich. Geben Sie die gewünschten Spalten aus dem Bericht an. Es werden nur gültige Spaltennamen akzeptiert, die für den von Ihnen aufgerufenen Bericht relevant sind. -
format
: Nicht erforderlich. Standardmäßig werden die Daten imcsv
Format ausgegeben. Geben Sie anjson
, um die Datei im JSON-Format auszugeben. -
localizationType
: Dieser Parameter steuert das Lokalisierungsverhalten für den Bericht. Mögliche Werte sindLocalizedValuesAsAdditionalColumn
undReplaceLocalizableValues
.
Lokalisierungsverhalten
Der localizationType
Parameter steuert das Lokalisierungsverhalten für den Bericht. Die möglichen Werte für diesen Parameter sind LocalizedValuesAsAdditionalColumn
und ReplaceLocalizableValues
.
LocalizedValuesAsAdditionalColumn-Berichtswert
Dieser Wert für den localizationType
Parameter ist der Standardwert. Sie wird automatisch eingefügt, wenn der localizationType
Parameter nicht angegeben ist. Dieser Wert gibt an, dass Intune zwei Spalten für jede lokalisierbare Spalte bereitstellt.
- Enumerationswert: Die Enumerationswertspalte enthält entweder eine unformatierte Zeichenfolge oder eine Reihe von Zahlen, die sich unabhängig vom Gebietsschema nicht ändern. Diese Spalte befindet sich unter dem ursprünglichen Spaltennamen (siehe Beispiel).
- Lokalisierter Zeichenfolgenwert: Diese Spalte ist der ursprüngliche Spaltenname mit angefügtem _loc. Es enthält Zeichenfolgenwerte, die für Menschen lesbar sind, und gebietsschemabedingte (siehe Beispiel).
Beispiel
Betriebssystem | OS_loc |
---|---|
1 | Windows |
1 | Windows |
1 | Windows |
2 | iOS |
3 | Android |
4 | Mac |
Berichtswert "ReplaceLocalizableValues"
Der ReplaceLocalizableValues-Berichtswert gibt nur eine Spalte pro lokalisiertem Attribut zurück. Diese Spalte enthält den ursprünglichen Spaltennamen mit den lokalisierten Werten.
Beispiel
Betriebssystem |
---|
Windows |
Windows |
Windows |
iOS |
Android |
Mac |
Für Spalten ohne lokalisierte Werte wird nur eine einzelne Spalte mit dem wahren Spaltennamen und den wahren Spaltenwerten zurückgegeben.
Wichtig
Der localizationType
Parameter ist mit wenigen Ausnahmen für alle Exportfunktionen relevant, die von der Berichtsinfrastruktur von Intune gehostet werden. DieDevices
Berichtstypen und DevicesWithInventory
berücksichtigen den localizationType
Parameter aufgrund von Legacykompatibilitätsanforderungen nicht.
API-Einschränkungsbedingungen
Um sicherzustellen, dass die exportJobs
API nicht zu viele gleichzeitige Anforderungen aufweist, was sich auf die Antwortrate der API auswirken würde, werden die folgenden Drosselungsgrenzwerte angewendet.
-
Die APIs unterstützen bis zu 100 Anforderungen pro Mandant und Minute: Diese Unterstützung deckt alle Benutzer und Apps in einem Mandanten ab. Alle zusätzlichen Anforderungen, die innerhalb derselben Minute von Benutzern oder Apps im Mandanten initiiert werden, werden gedrosselt.
- Wenn die APIs von einem Benutzer initiiert werden, werden innerhalb einer Minute bis zu 8 Anforderungen vom gleichen Benutzer zugelassen. Nachfolgende Anforderungen desselben Benutzers innerhalb derselben Minute werden gedrosselt.
- Wenn die APIs von einer App initiiert werden, werden innerhalb einer Minute bis zu 48 Anforderungen von derselben App zugelassen. Nachfolgende Anforderungen derselben App innerhalb derselben Minute werden gedrosselt.