Als Reseller können Sie mit jedem Gerät Metadaten verknüpfen, z. B. eine Telefonnummer oder eine Auftragsnummer. Sie können Metadaten verknüpfen, indem Sie die API aufrufen oder eine CSV-Datei in das Zero-Touch-Portal hochladen. In Tabelle 1 ist aufgeführt, wer Metadaten verknüpfen und ansehen kann:
Tabelle 1: Berechtigungen für Metadaten
Aufgabe | Reseller | Kunden |
---|---|---|
Metadaten durch Aufrufen der API verknüpfen | ||
Metadaten durch Hochladen einer CSV-Datei in das Zero-Touch-Portal verknüpfen | ||
Gerätemetadaten in den Ergebnissen von API-Aufrufen ansehen | ||
Gerätemetadaten im Portal für die Zero-Touch-Registrierung ansehen |
Metadaten zuweisen
Rufen Sie die Methode partners.devices.metadata
auf, um Metadaten mit jedem Gerät zu verknüpfen. Mit den Schlüsseln aus der folgenden Tabelle 2 können Sie Telefon- und Bestellnummern für Ihre Android-Geräte hinzufügen:
Tabelle 2: Metadatenschlüssel für Android-Geräte
Daten | Schlüssel | Werttyp | Beispiel |
---|---|---|---|
Telefonnummer | phonenumber |
String | +49 (800) 5550100 |
Bestellnummer | ordernumber |
String | GOOG#123/ABC-123456 |
Beide Metadatenwerte sind Strings im freien Format, sodass Sie ein Format verwenden können, das für Ihr Unternehmen sinnvoll ist.
Für ChromeOS-Geräte können Sie die Schlüssel aus Tabelle 3 unten verwenden:
Tabelle 3. Metadatenschlüssel für ChromeOS-Geräte
Daten | Schlüssel | Werttyp | Beispiel |
---|---|---|---|
Bestellnummer | ordernumber |
String | GOOG#123/ABC-123456 |
Wenn Sie Metadaten beim Erstellen von Geräten zuweisen möchten, schließen Sie die Metadaten beim Aufruf von claimAsync
ein. Das folgende Beispiel zeigt, wie eine Telefonnummer und Bestellnummer für das vorhandene Gerät TARGET_DEVICE_ID
festgelegt werden:
Java
// Allowed metadata dictionary keys. private static String METADATA_KEY_PHONE_NUMBER = "phonenumber"; private static String METADATA_KEY_ORDER_NUMBER = "ordernumber"; // ... // Create the metadata record with the values. DeviceMetadata metadata = new DeviceMetadata(); Map<String,String> entries = new HashMap<String, String>(); entries.put(METADATA_KEY_ORDER_NUMBER, "GOOG123/ABC-#123456"); entries.put(METADATA_KEY_PHONE_NUMBER, "+1 (800) 555-0100"); metadata.setEntries(entries); // Set the metadata values on the target device. UpdateDeviceMetadataRequest body = new UpdateDeviceMetadataRequest(); body.setDeviceMetadata(metadata); DeviceMetadata response = service .partners() .devices() .metadata(PARTNER_ID, targetDeviceId, body) .execute();
.NET
// Allowed metadata dictionary keys. private static string MetadataKeyPhoneNumber = "phonenumber"; private static string MetadataKeyOrderNumber = "ordernumber"; // ... // Create the metadata record with the values. DeviceMetadata metadata = new DeviceMetadata { Entries = new Dictionary<string, string> { {MetadataKeyOrderNumber, "GOOG123/ABC-#123456"}, {MetadataKeyPhoneNumber, "+1 (800) 555-0100"} } }; // Set the metadata values on the target device. UpdateDeviceMetadataRequest body = new UpdateDeviceMetadataRequest { DeviceMetadata = metadata }; var request = service.Partners.Devices.Metadata(body, PartnerId, targetDeviceId); var results = request.Execute();
Python
# Allowed metadata dictionary keys. METADATA_KEY_ENTRIES = "entries"; METADATA_KEY_PHONE_NUMBER = "phonenumber"; METADATA_KEY_ORDER_NUMBER = "ordernumber"; # ... # Create the record with values. new_metadata = {METADATA_KEY_ENTRIES:{ \ METADATA_KEY_PHONE_NUMBER:'+1 (800) 555-0100', \ METADATA_KEY_ORDER_NUMBER:'GOOG123/ABC-#123456'}} # Set the metadata values on the target device. response = service.partners().devices().metadata( metadataOwnerId=PARTNER_ID, deviceId=target_device_id, body={'deviceMetadata':new_metadata}).execute()
Die Metadatenargumente ersetzen vorhandene Metadatenwerte für denselben Schlüssel.
Metadaten löschen
Sie können Ihre Metadaten von Geräten löschen. Übergeben Sie leere Strings für Metadatenwerte, die Sie löschen möchten. Das folgende Beispiel zeigt, wie die Telefonnummer gelöscht wird:
Java
// Create the metadata record with the values. DeviceMetadata metadata = new DeviceMetadata(); Map<String,String> entries = new HashMap<String, String>(); entries.put(METADATA_KEY_PHONE_NUMBER, ""); metadata.setEntries(entries); // Call partners().devices().metadata() to remove the phone metadata from the device...
.NET
// Create the metadata record with empty values. DeviceMetadata metadata = new DeviceMetadata { Entries = new Dictionary<string, string> { {MetadataKeyPhoneNumber, ""} } }; // Call Partners.Devices.Metadata to remove the phone metadata from the device...
Python
# Create the metadata record with empty values. metadata_to_remove = {METADATA_KEY_ENTRIES: {METADATA_KEY_PHONE_NUMBER:''}} # Call partners().devices().metadata() to remove the phone number # metadata from the device...