Loading...
Loading...
Greifen Sie auf Asset-Daten in einem abgeflachten Format zu, das für Business-Intelligence-Tools optimiert ist. Alle Felder befinden sich auf der Wurzelebene für eine direkte Spaltenzuordnung.
Die BI-API gibt eine vollständig flache Struktur zurück – keine verschachtelten Objekte. Das macht sie perfekt für Tools, die tabellarische Daten erwarten:
| Methode | Endpunkt | Beschreibung |
|---|---|---|
| GET | /api/bi/v1/assets | Alle Assets im abgeflachten Format auflisten |
| GET | /api/bi/v1/assets/count | Gesamtanzahl der Assets abrufen |
| GET | /api/bi/v1/assets/{assetId} | Ein spezifisches Asset anhand der ID abrufen |
/assetsGibt eine paginierte Liste von Assets zurück, wobei alle Felder auf die Root-Ebene abgeflacht sind. Ideal für den Massenexport von Daten an BI-Tools.
| Parameter | Type | Description |
|---|---|---|
| status | string | Filtern nach Asset-Status (z. B. ACTIVE, INACTIVE) |
| policy | string | Filtern nach zugewiesenem Policy-Pfadnamen |
| page | integer | Seitennummer (0-indiziert, Standard: 0) |
| size | integer | Seitengröße (Standard: 20, Maximum: 100) |
| sort | string | Sortierfeld und Richtung (z. B. lastSyncAt,desc) |
curl -X GET "https://api.nomid.tech/emm/api/bi/v1/assets?status=ACTIVE&page=0&size=100" \
-H "X-API-Key: nm_acme_abc123..."{
"content": [
{
"pathName": "enterprises/acme/assets/asset_abc123",
"identification": "Warehouse Scanner 01",
"name": "WH-SCANNER-001",
"description": "Main warehouse barcode scanner",
"serialNumber": "ABC123XYZ",
"imeis": "123456789012345",
"brand": "Samsung",
"model": "Galaxy Tab Active3",
"status": "ACTIVE",
"lastSyncAt": "2026-01-29T08:15:00Z",
"enrollmentTime": "2025-01-15T10:30:00Z",
"policyPathName": "enterprises/acme/policies/warehouse",
"policyDisplayName": "Warehouse Policy",
"policyGroupName": "Warehouse",
"metadata": "{\"department\":\"logistics\",\"location\":\"warehouse-a\"}",
"tags": "warehouse,scanner,critical",
"operatingSystem": "Android",
"operatingSystemVersion": "13"
}
],
"totalElements": 156,
"totalPages": 2,
"size": 100,
"number": 0
}/assets/countGibt die Gesamtzahl der Assets zurück, die den Filterkriterien entsprechen. Nützlich für Paginierungsberechnungen.
curl -X GET "https://api.nomid.tech/emm/api/bi/v1/assets/count?status=ACTIVE" \
-H "X-API-Key: nm_acme_abc123..."{
"count": 156
}/assets/{assetId}Gibt ein einzelnes Asset im flachen Format anhand seiner Asset-ID zurück.
curl -X GET "https://api.nomid.tech/emm/api/bi/v1/assets/asset_abc123" \
-H "X-API-Key: nm_acme_abc123..."Jedes Asset-Objekt folgt der flachen Struktur von BiAssetDto. Alle Felder sind auf der Root-Ebene Strings – keine verschachtelten Objekte oder Arrays.
| Field | Type | Description |
|---|---|---|
| Identifikatoren | ||
| pathName | string | Vollständiger Asset-Pfad (z. B. Unternehmen/acme/assets/abc123) |
| identification | string | Benutzerfreundlicher Identifikator für das Asset |
| name | string | Gerätename |
| description | string | Gerätebeschreibung |
| Hardware-Info | ||
| serialNumber | string | Gerätenummer |
| imeis | string | IMEI-Nummern (bei mehreren durch Komma getrennt) |
| brand | string | Gerätehersteller/Marke |
| model | string | Gerätemodellname |
| Status & Zeitstempel | ||
| status | string | Asset-Status (AKTIV, INAKTIV) |
| lastSyncAt | string | Zeitstempel der letzten Synchronisierung (ISO 8601) |
| enrollmentTime | string | Zeitstempel der Geräteregistrierung (ISO 8601) |
| Richtlinieninfo | ||
| policyPathName | string | Vollständiger Pfad der zugewiesenen Richtlinie |
| policyDisplayName | string | Lesbarer Richtlinienname |
| policyGroupName | string | Richtliniengruppe zur Kategorisierung |
| Benutzerdefinierte Daten | ||
| metadata | string | Benutzerdefinierte Metadaten als JSON-String |
| tags | string | Tags als durch Kommas getrennter String |
| Betriebssystem | ||
| operatingSystem | string | Betriebssystemname (z. B. Android) |
| operatingSystemVersion | string | Betriebssystem-Versionsnummer |
Der Hauptunterschied liegt in der Antwortstruktur. Die Public API verwendet verschachtelte Objekte zur Organisation, während die BI API alles abflacht, um die Spaltenzuordnung zu erleichtern.
// Public API Response (nested)
{
"pathName": "enterprises/acme/assets/abc123",
"customData": {
"metadata": { "department": "logistics" },
"tags": ["warehouse", "scanner"]
},
"specifications": {
"imeis": ["123456789012345"],
"serialNumber": "ABC123XYZ",
"brand": "Samsung"
},
"managedDevice": {
"policyPathName": "enterprises/acme/policies/warehouse"
}
}// BI API Response (flat)
{
"pathName": "enterprises/acme/assets/abc123",
"metadata": "{\"department\":\"logistics\"}",
"tags": "warehouse,scanner",
"imeis": "123456789012345",
"serialNumber": "ABC123XYZ",
"brand": "Samsung",
"policyPathName": "enterprises/acme/policies/warehouse"
}Die Ergebnisse werden mit demselben Format wie die Public API paginiert. Verwenden Sie die Parameter page und size, um große Datensätze zu durchsuchen.
Tipp: Für Massenexporte verwenden Sie size=100 (maximal) und durchlaufen Sie alle Seiten. Die obigen Power BI- und Python-Beispiele zeigen, wie alle Seiten automatisch abgerufen werden.