Como revendedor, puedes asociar metadatos, como un número de teléfono o una número de orden de compra de cada dispositivo. Puedes asociar metadatos llamando la API o subiendo un archivo CSV en el portal de inscripción automática. En la tabla 1, se muestra quién puede asociar y ver los metadatos:
Tabla 1. Permisos de metadatos
Tarea | Revendedores | Clientes |
---|---|---|
Llama a la API para asociar metadatos | ||
Sube un archivo CSV al portal de inscripción automática para asociar metadatos | ||
Cómo ver los metadatos del dispositivo en los resultados de las llamadas a la API | ||
Ver metadatos de dispositivos en el portal de inscripción automática |
Asignar metadatos
Para asociar metadatos con cada dispositivo, llama al
partners.devices.metadata
. Puedes agregar
números de teléfono y de pedido para tus dispositivos Android utilizando las teclas de la tabla 2
a continuación:
Tabla 2. Claves de metadatos para dispositivos Android
Datos | Clave | Tipo de valor | Ejemplo |
---|---|---|---|
Número de teléfono | phonenumber |
String | +1 (800) 555-0100 |
Número de pedido | ordernumber |
String | GOOG#123/ABC-123456 |
Ambos valores de metadatos son cadenas de formato libre, por lo que puedes usar un formato que tenga sentido para tu organización.
En los dispositivos ChromeOS, puedes usar las claves de la tabla 3 que se incluye a continuación:
Tabla 3. Claves de metadatos para dispositivos ChromeOS
Datos | Clave | Tipo de valor | Ejemplo |
---|---|---|---|
Número de pedido | ordernumber |
String | GOOG#123/ABC-123456 |
Para asignar metadatos a medida que creas dispositivos, inclúyelos cuando llames a claimAsync
. En el siguiente ejemplo, se muestra cómo configurar un número de teléfono y un número de pedido para el dispositivo existente TARGET_DEVICE_ID
:
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()
Tus argumentos de metadatos reemplazan los valores de metadatos existentes para la misma clave.
Borrar metadatos
Puedes borrar los metadatos de los dispositivos. Pasa cadenas vacías para metadatos valores que quieres borrar. En el siguiente ejemplo, se muestra cómo borrar el teléfono número:
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...