REST Resource: enterprises.devices

Recurso: Device

Un dispositivo que pertenece a una empresa. A menos que se indique lo contrario, todos los campos son de solo lectura y enterprises.devices.patch no los puede modificar.

Representación JSON
{
  "name": string,
  "userName": string,
  "managementMode": enum (ManagementMode),
  "state": enum (DeviceState),
  "appliedState": enum (DeviceState),
  "policyCompliant": boolean,
  "nonComplianceDetails": [
    {
      object (NonComplianceDetail)
    }
  ],
  "enrollmentTime": string,
  "lastStatusReportTime": string,
  "lastPolicyComplianceReportTime": string,
  "lastPolicySyncTime": string,
  "policyName": string,
  "appliedPolicyName": string,
  "appliedPolicyVersion": string,
  "apiLevel": integer,
  "enrollmentTokenData": string,
  "enrollmentTokenName": string,
  "disabledReason": {
    object (UserFacingMessage)
  },
  "softwareInfo": {
    object (SoftwareInfo)
  },
  "hardwareInfo": {
    object (HardwareInfo)
  },
  "displays": [
    {
      object (Display)
    }
  ],
  "applicationReports": [
    {
      object (ApplicationReport)
    }
  ],
  "previousDeviceNames": [
    string
  ],
  "networkInfo": {
    object (NetworkInfo)
  },
  "memoryInfo": {
    object (MemoryInfo)
  },
  "memoryEvents": [
    {
      object (MemoryEvent)
    }
  ],
  "powerManagementEvents": [
    {
      object (PowerManagementEvent)
    }
  ],
  "hardwareStatusSamples": [
    {
      object (HardwareStatus)
    }
  ],
  "deviceSettings": {
    object (DeviceSettings)
  },
  "user": {
    object (User)
  },
  "systemProperties": {
    string: string,
    ...
  },
  "securityPosture": {
    object (SecurityPosture)
  },
  "ownership": enum (Ownership),
  "commonCriteriaModeInfo": {
    object (CommonCriteriaModeInfo)
  },
  "appliedPasswordPolicies": [
    {
      object (PasswordRequirements)
    }
  ],
  "dpcMigrationInfo": {
    object (DpcMigrationInfo)
  }
}
Campos
name

string

Es el nombre del dispositivo con el formato enterprises/{enterpriseId}/devices/{deviceId}.

userName

string

Es el nombre de recurso del usuario propietario de este dispositivo, en el formato enterprises/{enterpriseId}/users/{userId}.

managementMode

enum (ManagementMode)

Es el tipo de modo de administración que Android Device Policy aplica en el dispositivo. Esto influye en la configuración de políticas que se admite.

state

enum (DeviceState)

El estado que se aplicará al dispositivo. Este campo se puede modificar mediante una solicitud de parche. Ten en cuenta que, cuando llames a enterprises.devices.patch, ACTIVE y DISABLED son los únicos valores permitidos. Para que el dispositivo entre en estado DELETED, llama a enterprises.devices.delete.

appliedState

enum (DeviceState)

El estado que se aplica actualmente al dispositivo.

policyCompliant

boolean

Si el dispositivo cumple con su política.

nonComplianceDetails[]

object (NonComplianceDetail)

Detalles sobre la configuración de políticas con la que no cumple el dispositivo

enrollmentTime

string (Timestamp format)

La hora de inscripción del dispositivo.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

lastStatusReportTime

string (Timestamp format)

La última vez que el dispositivo envió un informe de estado.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

lastPolicyComplianceReportTime
(deprecated)

string (Timestamp format)

Obsoleta.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

lastPolicySyncTime

string (Timestamp format)

La última vez que el dispositivo recuperó su política

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

policyName

string

Es el nombre de la política aplicada al dispositivo, en el formato enterprises/{enterpriseId}/policies/{policyId}. Si no se especifica, se aplica el policyName para el usuario del dispositivo. Este campo se puede modificar mediante una solicitud de parche. Puedes especificar solo policyId cuando llames a enterprises.devices.patch, siempre y cuando policyId no contenga barras diagonales. Se infiere el resto del nombre de la política.

appliedPolicyName

string

Es el nombre de la política que se aplica actualmente al dispositivo.

appliedPolicyVersion

string (int64 format)

Es la versión de la política que se aplica actualmente al dispositivo.

apiLevel

integer

Es el nivel de API de la versión de la plataforma de Android que se ejecuta en el dispositivo.

enrollmentTokenData

string

Si el dispositivo se inscribió con un token de inscripción con datos adicionales proporcionados, este campo contiene esos datos.

enrollmentTokenName

string

Si el dispositivo se inscribió con un token de inscripción, este campo contiene el nombre del token.

disabledReason

object (UserFacingMessage)

Si el estado del dispositivo es DISABLED, se mostrará un mensaje opcional en el dispositivo que indica el motivo por el que está inhabilitado. Este campo se puede modificar mediante una solicitud de parche.

softwareInfo

object (SoftwareInfo)

Información detallada sobre el software del dispositivo. Esta información solo está disponible si softwareInfoEnabled es verdadero en la política del dispositivo.

hardwareInfo

object (HardwareInfo)

Información detallada sobre el hardware del dispositivo.

displays[]

object (Display)

Información detallada sobre las pantallas del dispositivo. Esta información solo está disponible si displayInfoEnabled es verdadero en la política del dispositivo.

applicationReports[]

object (ApplicationReport)

Informes de las apps instaladas en el dispositivo Esta información solo está disponible cuando applicationReportsEnabled es verdadero en la política del dispositivo.

previousDeviceNames[]

string

Si el mismo dispositivo físico se inscribió varias veces, este campo contiene los nombres anteriores del dispositivo. El número de serie se usa como identificador único para determinar si el mismo dispositivo físico se inscribió anteriormente. Los nombres están en orden cronológico.

networkInfo

object (NetworkInfo)

Información de red del dispositivo Esta información solo está disponible si networkInfoEnabled es verdadero en la política del dispositivo.

memoryInfo

object (MemoryInfo)

Información de la memoria: Contiene información sobre la memoria y el almacenamiento del dispositivo.

memoryEvents[]

object (MemoryEvent)

Eventos relacionados con las mediciones de memoria y almacenamiento en orden cronológico. Esta información solo estará disponible si el valor de memoryInfoEnabled es verdadero en la política del dispositivo.

Los eventos se retienen durante un período determinado y los eventos antiguos se borran.

powerManagementEvents[]

object (PowerManagementEvent)

Eventos de administración de energía en el dispositivo en orden cronológico. Esta información solo estará disponible si el valor de powerManagementEventsEnabled es verdadero en la política del dispositivo.

hardwareStatusSamples[]

object (HardwareStatus)

Ejemplos de estado del hardware en orden cronológico. Esta información solo está disponible si hardwareStatusEnabled es verdadero en la política del dispositivo.

deviceSettings

object (DeviceSettings)

Información de la configuración del dispositivo. Esta información solo está disponible si deviceSettingsEnabled es verdadero en la política del dispositivo.

user

object (User)

El usuario propietario del dispositivo.

systemProperties

map (key: string, value: string)

Mapa de las propiedades del sistema seleccionadas y su valor relacionados con el dispositivo. Esta información solo está disponible si systemPropertiesEnabled es verdadero en la política del dispositivo.

Es un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

securityPosture

object (SecurityPosture)

Es el valor de la postura de seguridad del dispositivo que refleja qué tan seguro es.

ownership

enum (Ownership)

Es la propiedad del dispositivo administrado.

commonCriteriaModeInfo

object (CommonCriteriaModeInfo)

Información sobre el modo Common Criteria: estándares de seguridad definidos en los Common Criteria for Information Technology Security Evaluation (CC).

Esta información solo está disponible si statusReportingSettings.commonCriteriaModeEnabled es true en la política del dispositivo y el dispositivo pertenece a la empresa.

appliedPasswordPolicies[]

object (PasswordRequirements)

Son los requisitos de contraseña que se aplican actualmente al dispositivo.

  • En algunos casos, los requisitos aplicados pueden diferir ligeramente de los especificados en passwordPolicies.
  • fieldPath se establece en función de passwordPolicies.
dpcMigrationInfo

object (DpcMigrationInfo)

Solo salida. Información relacionada con si este dispositivo se migró de otro controlador de política de dispositivo (DPC) que lo administraba.

DeviceState

Son los estados que se pueden aplicar a un dispositivo.

Enumeraciones
DEVICE_STATE_UNSPECIFIED Este valor no se permite.
ACTIVE El dispositivo está activo.
DISABLED El dispositivo está inhabilitado.
DELETED Se borró el dispositivo. Una llamada a la API nunca muestra este estado, pero se usa en el informe de estado final cuando el dispositivo confirma la eliminación. Si se borra el dispositivo a través de la llamada a la API, este estado se publica en Pub/Sub. Si el usuario borra el perfil de trabajo o restablece el dispositivo, el servidor no conocerá el estado del dispositivo.
PROVISIONING Se está aprovisionando el dispositivo. Los dispositivos recién inscritos se encuentran en este estado hasta que se les aplica una política.
LOST Se perdió el dispositivo. Este estado solo es posible en dispositivos que pertenecen a la organización.
PREPARING_FOR_MIGRATION El dispositivo se está preparando para migrar a la API de Android Management. No es necesario realizar ninguna otra acción para que la migración continúe.
DEACTIVATED_BY_DEVICE_FINANCE Es un dispositivo financiado que el agente de financiación “bloqueó”. Esto significa que se aplicó cierto parámetro de configuración de políticas que limita la funcionalidad del dispositivo hasta que el agente de financiación lo “desbloquee”. El dispositivo seguirá aplicando la configuración de políticas, excepto las que anule el agente de financiación. Cuando el dispositivo está "bloqueado", el estado se informa en appliedState como DEACTIVATED_BY_DEVICE_FINANCE.

NonComplianceDetail

Proporciona detalles sobre el incumplimiento de una configuración de política.

Representación JSON
{
  "settingName": string,
  "nonComplianceReason": enum (NonComplianceReason),
  "packageName": string,
  "fieldPath": string,
  "currentValue": value,
  "installationFailureReason": enum (InstallationFailureReason),
  "specificNonComplianceReason": enum (SpecificNonComplianceReason),
  "specificNonComplianceContext": {
    object (SpecificNonComplianceContext)
  }
}
Campos
settingName

string

Es el nombre de la configuración de la política. Este es el nombre del campo JSON de un campo Policy de nivel superior.

nonComplianceReason

enum (NonComplianceReason)

El motivo por el que el dispositivo no cumple con la configuración

packageName

string

Es el nombre del paquete que indica qué aplicación no cumple con las políticas, si corresponde.

fieldPath

string

En el caso de la configuración con campos anidados, si un campo anidado en particular no cumple con los requisitos, se especifica la ruta de acceso completa al campo infractor. La ruta de acceso tiene el mismo formato que el campo JSON de la política al que se hace referencia en JavaScript, es decir: 1) En el caso de los campos de tipo de objeto, el nombre del campo está seguido de un punto y, luego, de un nombre de subcampo. 2) En el caso de los campos de tipo array, el nombre del campo va seguido del índice del array encerrado entre corchetes. Por ejemplo, para indicar un problema con el campo url en el campo externalData de la 3ª aplicación, la ruta de acceso sería applications[2].externalData.url.

currentValue

value (Value format)

Si no se pudo aplicar la configuración de la política, el valor actual de la configuración en el dispositivo

installationFailureReason

enum (InstallationFailureReason)

Si se establece packageName y el motivo del incumplimiento es APP_NOT_INSTALLED o APP_NOT_UPDATED, el motivo detallado por el que no se puede instalar ni actualizar la app.

specificNonComplianceReason

enum (SpecificNonComplianceReason)

El motivo específico de la política por el que el dispositivo no cumple con la configuración.

specificNonComplianceContext

object (SpecificNonComplianceContext)

Contexto adicional para specificNonComplianceReason.

InstallationFailureReason

Motivos por los que puede fallar la instalación de una app

Enumeraciones
INSTALLATION_FAILURE_REASON_UNSPECIFIED Este valor no se permite.
INSTALLATION_FAILURE_REASON_UNKNOWN Una condición desconocida impide que se instale la app. Algunos motivos posibles son que el dispositivo no tiene suficiente almacenamiento, que la conexión de red del dispositivo no es confiable o que la instalación tarda más de lo esperado. La instalación se volverá a intentar automáticamente.
IN_PROGRESS La instalación aún está en curso.
NOT_FOUND No se encontró la app en Play.
NOT_COMPATIBLE_WITH_DEVICE La app no es compatible con el dispositivo.
NOT_APPROVED El administrador no aprobó la app.
PERMISSIONS_NOT_ACCEPTED La app tiene permisos nuevos que el administrador no aceptó.
NOT_AVAILABLE_IN_COUNTRY La app no está disponible en el país del usuario.
NO_LICENSES_REMAINING No hay licencias disponibles para asignar al usuario.
NOT_ENROLLED La empresa ya no está inscrita en Google Play administrado o el administrador no aceptó las Condiciones del Servicio más recientes de Google Play administrado.
USER_INVALID El usuario ya no es válido. Es posible que se haya borrado o inhabilitado al usuario.
NETWORK_ERROR_UNRELIABLE_CONNECTION

Un error de red en el dispositivo del usuario impidió que la instalación se realizara correctamente. Por lo general, esto sucede cuando se degrada la conectividad a Internet del dispositivo, no está disponible o hay un problema de configuración de red. Asegúrate de que el dispositivo tenga acceso a una conexión a Internet completa en una red que cumpla con los requisitos de Android Enterprise Network Requirements. La instalación o actualización de apps se reanudará automáticamente una vez que esto ocurra.

INSUFFICIENT_STORAGE El dispositivo del usuario no tiene suficiente espacio de almacenamiento para instalar la app. Para resolver este problema, libera espacio de almacenamiento en el dispositivo. La instalación o actualización de la app se reanudará automáticamente una vez que el dispositivo tenga suficiente almacenamiento.

SpecificNonComplianceReason

Más detalles sobre el motivo por el que un dispositivo podría no cumplir con la configuración de una política. Se pueden agregar valores nuevos a la enumeración en el futuro.

Enumeraciones
SPECIFIC_NON_COMPLIANCE_REASON_UNSPECIFIED No se especifica el motivo específico del incumplimiento. No se configuraron los campos de specificNonComplianceContext.
PASSWORD_POLICIES_USER_CREDENTIALS_CONFIRMATION_REQUIRED El usuario debe ingresar el bloqueo de pantalla para confirmar las credenciales. No se configuraron los campos de specificNonComplianceContext. nonComplianceReason se configura como USER_ACTION.
PASSWORD_POLICIES_PASSWORD_EXPIRED La contraseña del dispositivo o del perfil venció. Se estableció passwordPoliciesContext. nonComplianceReason se configura como USER_ACTION.
PASSWORD_POLICIES_PASSWORD_NOT_SUFFICIENT La contraseña del dispositivo no cumple con los requisitos de contraseña. Se configuró passwordPoliciesContext. nonComplianceReason se configura como USER_ACTION.
ONC_WIFI_INVALID_VALUE Hay un valor incorrecto en la configuración de Wi-Fi de ONC. fieldPath especifica qué valor de campo es incorrecto. Se estableció oncWifiContext. nonComplianceReason se configura como INVALID_VALUE.
ONC_WIFI_API_LEVEL El parámetro de configuración Wi-Fi de ONC no es compatible con el nivel de API de la versión de Android que se ejecuta en el dispositivo. fieldPath especifica qué valor de campo no es compatible. Se estableció oncWifiContext. nonComplianceReason se configura como API_LEVEL.
ONC_WIFI_INVALID_ENTERPRISE_CONFIG A la red Wi-Fi empresarial le falta la AC raíz o el nombre de dominio. nonComplianceReason se configura en INVALID_VALUE.
ONC_WIFI_USER_SHOULD_REMOVE_NETWORK El usuario debe quitar manualmente la red Wi-Fi configurada. Esto solo se aplica a los perfiles de trabajo en dispositivos de propiedad personal. nonComplianceReason se configura en USER_ACTION.
ONC_WIFI_KEY_PAIR_ALIAS_NOT_CORRESPONDING_TO_EXISTING_KEY El alias del par de claves especificado a través del campo ClientCertKeyPairAlias en openNetworkConfiguration no corresponde a una clave existente instalada en el dispositivo. nonComplianceReason se configura como INVALID_VALUE.

SpecificNonComplianceContext

Contexto adicional para SpecificNonComplianceReason.

Representación JSON
{
  "oncWifiContext": {
    object (OncWifiContext)
  },
  "passwordPoliciesContext": {
    object (PasswordPoliciesContext)
  }
}
Campos
oncWifiContext

object (OncWifiContext)

Contexto adicional para los incumplimientos relacionados con la configuración de Wi-Fi. Consulta ONC_WIFI_INVALID_VALUE y ONC_WIFI_API_LEVEL

passwordPoliciesContext

object (PasswordPoliciesContext)

Contexto adicional para el incumplimiento relacionado con las políticas de contraseñas Consulta PASSWORD_POLICIES_PASSWORD_EXPIRED y PASSWORD_POLICIES_PASSWORD_NOT_SUFFICIENT.

OncWifiContext

Contexto adicional para los incumplimientos relacionados con la configuración de Wi-Fi.

Representación JSON
{
  "wifiGuid": string
}
Campos
wifiGuid

string

El GUID de la configuración de Wi-Fi que no cumple con los requisitos

PasswordPoliciesContext

Contexto adicional para los incumplimientos relacionados con las políticas de contraseñas.

Representación JSON
{
  "passwordPolicyScope": enum (PasswordPolicyScope)
}
Campos
passwordPolicyScope

enum (PasswordPolicyScope)

El alcance de la contraseña que no cumple con los requisitos

SoftwareInfo

Información sobre el software del dispositivo.

Representación JSON
{
  "androidVersion": string,
  "androidDevicePolicyVersionCode": integer,
  "androidDevicePolicyVersionName": string,
  "androidBuildNumber": string,
  "deviceKernelVersion": string,
  "bootloaderVersion": string,
  "androidBuildTime": string,
  "securityPatchLevel": string,
  "primaryLanguageCode": string,
  "deviceBuildSignature": string,
  "systemUpdateInfo": {
    object (SystemUpdateInfo)
  }
}
Campos
androidVersion

string

Es la cadena de versión de Android visible para el usuario. Por ejemplo, 6.0.1.

androidDevicePolicyVersionCode

integer

Es el código de versión de la app de Android Device Policy.

androidDevicePolicyVersionName

string

Es la versión de la app de Android Device Policy que se muestra al usuario.

androidBuildNumber

string

Es una cadena de ID de compilación de Android destinada a mostrarse al usuario. Por ejemplo, shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys.

deviceKernelVersion

string

Versión del kernel, por ejemplo, 2.6.32.9-g103d848.

bootloaderVersion

string

Es el número de versión del bootloader del sistema, p.ej., 0.6.7.

androidBuildTime

string (Timestamp format)

Tiempo de compilación.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

securityPatchLevel

string

Nivel de parche de seguridad, p.ej., 2016-05-01.

primaryLanguageCode

string

Es un código de idioma IETF BCP 47 para la configuración regional principal del dispositivo.

deviceBuildSignature

string

Es el hash SHA-256 de android.content.pm.Signature asociado con el paquete del sistema, que se puede usar para verificar que no se haya modificado la compilación del sistema.

systemUpdateInfo

object (SystemUpdateInfo)

Información sobre una posible actualización pendiente del sistema.

SystemUpdateInfo

Información sobre una posible actualización pendiente del sistema.

Representación JSON
{
  "updateStatus": enum (UpdateStatus),
  "updateReceivedTime": string
}
Campos
updateStatus

enum (UpdateStatus)

El estado de una actualización, es decir, si existe y de qué tipo es.

updateReceivedTime

string (Timestamp format)

La hora en la que la actualización estuvo disponible por primera vez. Un valor cero indica que este campo no está configurado. Este campo solo se establece si hay una actualización disponible (es decir, updateStatus no es UPDATE_STATUS_UNKNOWN ni UP_TO_DATE).

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

UpdateStatus

El estado de una actualización: si existe y de qué tipo es.

Enumeraciones
UPDATE_STATUS_UNKNOWN No se sabe si hay una actualización del sistema pendiente. Esto sucede cuando, por ejemplo, el nivel de API del dispositivo es inferior a 26 o si la versión de la Política de dispositivos de Android está desactualizada.
UP_TO_DATE No hay ninguna actualización del sistema pendiente disponible en el dispositivo.
UNKNOWN_UPDATE_AVAILABLE Hay una actualización del sistema pendiente disponible, pero se desconoce su tipo.
SECURITY_UPDATE_AVAILABLE Hay una actualización de seguridad pendiente disponible.
OS_UPDATE_AVAILABLE Hay una actualización pendiente del SO disponible.

HardwareInfo

Información sobre el hardware del dispositivo. Los campos relacionados con los umbrales de temperatura solo están disponibles si hardwareStatusEnabled es verdadero en la política del dispositivo.

Representación JSON
{
  "brand": string,
  "hardware": string,
  "deviceBasebandVersion": string,
  "manufacturer": string,
  "serialNumber": string,
  "model": string,
  "batteryShutdownTemperatures": [
    number
  ],
  "batteryThrottlingTemperatures": [
    number
  ],
  "cpuShutdownTemperatures": [
    number
  ],
  "cpuThrottlingTemperatures": [
    number
  ],
  "gpuShutdownTemperatures": [
    number
  ],
  "gpuThrottlingTemperatures": [
    number
  ],
  "skinShutdownTemperatures": [
    number
  ],
  "skinThrottlingTemperatures": [
    number
  ],
  "enterpriseSpecificId": string
}
Campos
brand

string

Es la marca del dispositivo. Por ejemplo, Google.

hardware

string

Es el nombre del hardware. Por ejemplo, Angler.

deviceBasebandVersion

string

Versión de banda base. Por ejemplo, MDM9625_104662.22.05.34p.

manufacturer

string

Fabricante Por ejemplo, Motorola.

serialNumber

string

El número de serie del dispositivo.

model

string

Es el modelo del dispositivo. Por ejemplo, Asus Nexus 7.

batteryShutdownTemperatures[]

number

Umbrales de temperatura de apagado de la batería en grados Celsius para cada batería del dispositivo

batteryThrottlingTemperatures[]

number

Umbrales de temperatura de limitación de la batería en grados Celsius para cada batería del dispositivo

cpuShutdownTemperatures[]

number

Los umbrales de temperatura de apagado de la CPU en Celsius para cada CPU en el dispositivo.

cpuThrottlingTemperatures[]

number

Umbrales de temperatura de limitación de la CPU en grados Celsius para cada CPU del dispositivo

gpuShutdownTemperatures[]

number

Umbrales de temperatura de apagado de la GPU en grados Celsius para cada GPU del dispositivo

gpuThrottlingTemperatures[]

number

Umbrales de temperatura de limitación de la GPU en grados Celsius para cada GPU del dispositivo

skinShutdownTemperatures[]

number

Límites de temperatura de apagado de la máscara del dispositivo en grados Celsius.

skinThrottlingTemperatures[]

number

Umbrales de temperatura de limitación de la piel del dispositivo en Celsius.

enterpriseSpecificId

string

Solo salida. ID que identifica de manera inequívoca un dispositivo de propiedad personal en una organización determinada. En el mismo dispositivo físico, cuando está inscrito en la misma organización, este ID persiste en todas las configuraciones y hasta en los restablecimientos de la configuración de fábrica. Este ID está disponible en dispositivos personales con un perfil de trabajo en dispositivos que ejecutan Android 12 y versiones posteriores.

Display

Información sobre la pantalla del dispositivo.

Representación JSON
{
  "name": string,
  "displayId": integer,
  "refreshRate": integer,
  "state": enum (DisplayState),
  "width": integer,
  "height": integer,
  "density": integer
}
Campos
name

string

Es el nombre de la pantalla.

displayId

integer

ID visible único

refreshRate

integer

Es la frecuencia de actualización de la pantalla en fotogramas por segundo.

state

enum (DisplayState)

Estado de la pantalla.

width

integer

Es el ancho de la pantalla en píxeles.

height

integer

Es la altura de la pantalla en píxeles.

density

integer

Es la densidad de la pantalla expresada en puntos por pulgada.

DisplayState

Es el estado de una pantalla.

Enumeraciones
DISPLAY_STATE_UNSPECIFIED Este valor no se permite.
OFF La pantalla está apagada.
ON La pantalla está encendida.
DOZE La pantalla adormece cuando el dispositivo tiene poca batería
SUSPENDED La pantalla está suspendida en un estado de bajo consumo.

ApplicationReport

Es la información informada sobre una app instalada.

Representación JSON
{
  "packageName": string,
  "versionName": string,
  "versionCode": integer,
  "events": [
    {
      object (ApplicationEvent)
    }
  ],
  "displayName": string,
  "packageSha256Hash": string,
  "signingKeyCertFingerprints": [
    string
  ],
  "installerPackageName": string,
  "applicationSource": enum (ApplicationSource),
  "state": enum (ApplicationState),
  "keyedAppStates": [
    {
      object (KeyedAppState)
    }
  ],
  "userFacingType": enum (UserFacingType)
}
Campos
packageName

string

Es el nombre de paquete de la app.

versionName

string

Es la versión de la app que se muestra al usuario.

versionCode

integer

Es el código de versión de la app, que se puede usar para determinar si una versión es más reciente que otra.

events[]

object (ApplicationEvent)

Es la lista de eventos de la aplicación que se produjeron en las últimas 30 horas.

displayName

string

Es el nombre visible de la app.

packageSha256Hash

string

El hash SHA-256 del archivo APK de la app, que se puede usar para verificar que la app no se haya modificado. Cada byte del valor hash se representa como un número hexadecimal de dos dígitos.

signingKeyCertFingerprints[]

string

El hash SHA-1 de cada android.content.pm.Signature asociado con el paquete de la app Cada byte de cada valor de hash se representa como un número hexadecimal de dos dígitos.

installerPackageName

string

Es el nombre del paquete de la app que instaló esta app.

applicationSource

enum (ApplicationSource)

Es la fuente del paquete.

state

enum (ApplicationState)

Estado de la aplicación.

keyedAppStates[]

object (KeyedAppState)

Lista de estados de app con clave que informó la app.

userFacingType

enum (UserFacingType)

Si la app está orientada al usuario

ApplicationEvent

Un evento relacionado con la app.

Representación JSON
{
  "eventType": enum (ApplicationEventType),
  "createTime": string
}
Campos
eventType

enum (ApplicationEventType)

Tipo de evento de la aplicación.

createTime

string (Timestamp format)

La hora de creación del evento.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

ApplicationEventType

Es un tipo de evento relacionado con la app.

Enumeraciones
APPLICATION_EVENT_TYPE_UNSPECIFIED No se permite este valor.
INSTALLED Se instaló la app.
CHANGED Se cambió la app; por ejemplo, se habilitó o inhabilitó un componente.
DATA_CLEARED Se borraron los datos de la app.
REMOVED Se quitó la app.
REPLACED Se instaló una nueva versión de la app que reemplaza a la anterior.
RESTARTED Se reinició la app.
PINNED La app se fijó en primer plano.
UNPINNED Se dejó de fijar la app.

ApplicationSource

La fuente que proporcionó una app.

Enumeraciones
APPLICATION_SOURCE_UNSPECIFIED La app se transfirió desde una fuente no especificada.
SYSTEM_APP_FACTORY_VERSION Esta es una app del sistema de la imagen de fábrica del dispositivo.
SYSTEM_APP_UPDATED_VERSION Esta es una app del sistema actualizada.
INSTALLED_FROM_PLAY_STORE La app se instaló desde Google Play Store.

ApplicationState

El estado actual de la instalación.

Enumeraciones
APPLICATION_STATE_UNSPECIFIED El estado de la app no está especificado
REMOVED Se quitó la app del dispositivo
INSTALLED La app está instalada en el dispositivo

KeyedAppState

Estado de la app con clave que informa la app.

Representación JSON
{
  "key": string,
  "severity": enum (Severity),
  "message": string,
  "data": string,
  "createTime": string,
  "lastUpdateTime": string
}
Campos
key

string

Es la clave del estado de la app. Actúa como punto de referencia para lo que la app proporciona el estado. Por ejemplo, cuando se proporcionan comentarios sobre la configuración administrada, esta podría ser la clave de configuración administrada.

severity

enum (Severity)

La gravedad del estado de la app.

message

string

De manera opcional, una cadena de mensaje de formato libre para explicar el estado de la app Si un valor en particular activó el estado (p.ej., un valor de configuración administrado), se debe incluir en el mensaje.

data

string

De manera opcional, un valor legible por máquinas que el EMM debe leer. Por ejemplo, establecer valores que el administrador pueda consultar en la consola de EMM (p.ej., "notificarme si los datos de battery_warning son < 10").

createTime

string (Timestamp format)

Es la hora de creación del estado de la app en el dispositivo.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

lastUpdateTime

string (Timestamp format)

Es la hora en la que se actualizó el estado de la app por última vez.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

Gravedad

La gravedad del estado de la app.

Enumeraciones
SEVERITY_UNSPECIFIED Nivel de gravedad no especificado.
INFO Nivel de gravedad de la información.
ERROR Nivel de gravedad del error. Esto solo se debe establecer para condiciones de error reales que una organización de administración deba corregir.

UserFacingType

Indica si la app está orientada al usuario.

Enumeraciones
USER_FACING_TYPE_UNSPECIFIED El tipo de usuario de la app no está especificado.
NOT_USER_FACING La app no está orientada al usuario.
USER_FACING La app está orientada al usuario.

NetworkInfo

Información de la red del dispositivo

Representación JSON
{
  "imei": string,
  "meid": string,
  "wifiMacAddress": string,
  "networkOperatorName": string,
  "telephonyInfos": [
    {
      object (TelephonyInfo)
    }
  ]
}
Campos
imei

string

Número de IMEI del dispositivo GSM. Por ejemplo, A1000031212.

meid

string

Número MEID del dispositivo CDMA Por ejemplo, A00000292788E1.

wifiMacAddress

string

Dirección MAC de Wi-Fi del dispositivo. Por ejemplo, 7c:11:11:11:11:11.

networkOperatorName
(deprecated)

string

Es el nombre alfabético del operador registrado actual. Por ejemplo, Vodafone.

telephonyInfos[]

object (TelephonyInfo)

Proporciona información de telefonía asociada con cada tarjeta SIM del dispositivo. Solo es compatible con dispositivos completamente administrados a partir del nivel de API 23 de Android.

TelephonyInfo

Información de telefonía asociada a una tarjeta SIM determinada del dispositivo. Solo se admite en dispositivos completamente administrados a partir del nivel de API 23 de Android.

Representación JSON
{
  "phoneNumber": string,
  "carrierName": string,
  "iccId": string
}
Campos
phoneNumber

string

Es el número de teléfono asociado a esta tarjeta SIM.

carrierName

string

Es el nombre de la empresa de transporte asociada con esta tarjeta SIM.

iccId

string

Solo salida. Es el ICCID asociado a esta tarjeta SIM.

MemoryInfo

Información sobre la memoria y el almacenamiento del dispositivo.

Representación JSON
{
  "totalRam": string,
  "totalInternalStorage": string
}
Campos
totalRam

string (int64 format)

Es la RAM total del dispositivo expresada en bytes.

totalInternalStorage

string (int64 format)

Es el almacenamiento interno total del dispositivo expresado en bytes.

MemoryEvent

Es un evento relacionado con las mediciones de memoria y almacenamiento.

Para distinguir entre eventos nuevos y antiguos, te recomendamos que uses el campo createTime.

Representación JSON
{
  "eventType": enum (MemoryEventType),
  "createTime": string,
  "byteCount": string
}
Campos
eventType

enum (MemoryEventType)

Tipo de evento.

createTime

string (Timestamp format)

Es la hora de creación del evento.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

byteCount

string (int64 format)

Es la cantidad de bytes libres en el medio o, para EXTERNAL_STORAGE_DETECTED, la capacidad total en bytes del medio de almacenamiento.

MemoryEventType

El tipo de evento

Enumeraciones
MEMORY_EVENT_TYPE_UNSPECIFIED Sin especificar. Ningún evento tiene este tipo.
RAM_MEASURED Se midió el espacio libre en la RAM.
INTERNAL_STORAGE_MEASURED Se midió el espacio libre en el almacenamiento interno.
EXTERNAL_STORAGE_DETECTED Se detectó un nuevo medio de almacenamiento externo. El recuento de bytes informado es la capacidad total del medio de almacenamiento.
EXTERNAL_STORAGE_REMOVED Se quitó un medio de almacenamiento externo. El recuento de bytes informado es cero.
EXTERNAL_STORAGE_MEASURED Se midió el espacio libre en un medio de almacenamiento externo.

PowerManagementEvent

Un evento de administración de energía.

Representación JSON
{
  "eventType": enum (PowerManagementEventType),
  "createTime": string,
  "batteryLevel": number
}
Campos
eventType

enum (PowerManagementEventType)

Tipo de evento.

createTime

string (Timestamp format)

Es la hora de creación del evento.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

batteryLevel

number

Para los eventos BATTERY_LEVEL_COLLECTED, el nivel de batería como porcentaje

PowerManagementEventType

El tipo de evento

Enumeraciones
POWER_MANAGEMENT_EVENT_TYPE_UNSPECIFIED Sin especificar. Ningún evento tiene este tipo.
BATTERY_LEVEL_COLLECTED Se midió el nivel de batería.
POWER_CONNECTED El dispositivo comenzó a cargarse.
POWER_DISCONNECTED El dispositivo dejó de cargarse.
BATTERY_LOW El dispositivo ingresó al modo de bajo consumo.
BATTERY_OKAY El dispositivo salió del modo de bajo consumo.
BOOT_COMPLETED Se inició el dispositivo.
SHUTDOWN Se apagó el dispositivo.

HardwareStatus

Estado del hardware Las temperaturas se pueden comparar con los umbrales de temperatura disponibles en hardwareInfo para determinar el estado del hardware.

Representación JSON
{
  "createTime": string,
  "batteryTemperatures": [
    number
  ],
  "cpuTemperatures": [
    number
  ],
  "gpuTemperatures": [
    number
  ],
  "skinTemperatures": [
    number
  ],
  "fanSpeeds": [
    number
  ],
  "cpuUsages": [
    number
  ]
}
Campos
createTime

string (Timestamp format)

Es la hora en la que se tomaron las mediciones.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

batteryTemperatures[]

number

Temperaturas actuales de la batería en grados Celsius para cada batería del dispositivo.

cpuTemperatures[]

number

Temperaturas actuales de la CPU en Celsius para cada CPU del dispositivo.

gpuTemperatures[]

number

Temperaturas actuales de la GPU en grados Celsius para cada GPU del dispositivo.

skinTemperatures[]

number

Temperaturas actuales de la superficie del dispositivo en grados Celsius.

fanSpeeds[]

number

Velocidades del ventilador en RPM para cada ventilador del dispositivo. Un array vacío significa que no hay ventiladores o que la velocidad del ventilador no es compatible con el sistema.

cpuUsages[]

number

Usos de CPU en porcentaje para cada núcleo disponible en el dispositivo El uso es de 0 para cada núcleo desenchufado. Un array vacío implica que el uso de la CPU no es compatible con el sistema.

DeviceSettings

Información sobre la configuración del dispositivo relacionada con la seguridad.

Representación JSON
{
  "isDeviceSecure": boolean,
  "unknownSourcesEnabled": boolean,
  "developmentSettingsEnabled": boolean,
  "adbEnabled": boolean,
  "isEncrypted": boolean,
  "encryptionStatus": enum (EncryptionStatus),
  "verifyAppsEnabled": boolean
}
Campos
isDeviceSecure

boolean

Si el dispositivo está protegido con un PIN o una contraseña

unknownSourcesEnabled

boolean

Si está habilitada la instalación de apps de fuentes desconocidas

developmentSettingsEnabled

boolean

Indica si el modo de desarrollador está habilitado en el dispositivo.

adbEnabled

boolean

Indica si ADB está habilitado en el dispositivo.

isEncrypted

boolean

Indica si la encriptación de almacenamiento está habilitada.

encryptionStatus

enum (EncryptionStatus)

Estado de encriptación de DevicePolicyManager.

verifyAppsEnabled

boolean

Si la verificación de Google Play Protect se aplica de manera forzosa en el dispositivo

EncryptionStatus

Es el estado de encriptación de un dispositivo.

Enumeraciones
ENCRYPTION_STATUS_UNSPECIFIED Sin especificar. Ningún dispositivo debe tener este tipo.
UNSUPPORTED El dispositivo no admite la encriptación.
INACTIVE El dispositivo admite la encriptación, pero no está activa en este momento.
ACTIVATING La encriptación no está activa, pero se está activando.
ACTIVE La encriptación está activa.
ACTIVE_DEFAULT_KEY La encriptación está activa, pero el usuario no estableció una clave de encriptación.
ACTIVE_PER_USER La encriptación está activa y la clave de encriptación está vinculada al perfil del usuario.

SecurityPosture

Es la postura de seguridad del dispositivo, según lo determine el estado actual del dispositivo y las políticas aplicadas.

Representación JSON
{
  "devicePosture": enum (DevicePosture),
  "postureDetails": [
    {
      object (PostureDetail)
    }
  ]
}
Campos
devicePosture

enum (DevicePosture)

Es el valor de la postura de seguridad del dispositivo.

postureDetails[]

object (PostureDetail)

Son los detalles adicionales sobre la postura de seguridad del dispositivo.

DevicePosture

Posibles valores de postura de seguridad de un dispositivo administrado.

Enumeraciones
POSTURE_UNSPECIFIED Sin especificar. No hay detalles de postura para este valor de postura.
SECURE Este dispositivo es seguro.
AT_RISK Es posible que este dispositivo sea más vulnerable a personas o entidades que actúan de mala fe de lo que se recomienda para su uso con datos corporativos.
POTENTIALLY_COMPROMISED Es posible que este dispositivo esté comprometido y que agentes no autorizados puedan acceder a los datos corporativos.

PostureDetail

Son los detalles adicionales sobre la postura de seguridad del dispositivo.

Representación JSON
{
  "securityRisk": enum (SecurityRisk),
  "advice": [
    {
      object (UserFacingMessage)
    }
  ]
}
Campos
securityRisk

enum (SecurityRisk)

Es un riesgo de seguridad específico que afecta negativamente la postura de seguridad del dispositivo.

advice[]

object (UserFacingMessage)

El consejo correspondiente para el administrador para mitigar este riesgo de seguridad y mejorar la postura de seguridad del dispositivo

SecurityRisk

Es el riesgo que hace que el dispositivo no esté en el estado más seguro.

Enumeraciones
SECURITY_RISK_UNSPECIFIED Sin especificar.
UNKNOWN_OS La API de Play Integrity detecta que el dispositivo ejecuta un SO desconocido (la verificación de basicIntegrity se realiza correctamente, pero ctsProfileMatch falla).
COMPROMISED_OS La API de Play Integrity detecta que el dispositivo ejecuta un SO comprometido (la verificación de basicIntegrity falla).
HARDWARE_BACKED_EVALUATION_FAILED La API de Play Integrity detecta que el dispositivo no tiene una garantía sólida de integridad del sistema si la etiqueta MEETS_STRONG_INTEGRITY no se muestra en el campo de integridad del dispositivo.

CommonCriteriaModeInfo

Información sobre el modo Common Criteria: estándares de seguridad definidos en los Common Criteria for Information Technology Security Evaluation (CC).

Esta información solo está disponible si statusReportingSettings.commonCriteriaModeEnabled es true en la política del dispositivo.

Representación JSON
{
  "commonCriteriaModeStatus": enum (CommonCriteriaModeStatus),
  "policySignatureVerificationStatus": enum (PolicySignatureVerificationStatus)
}
Campos
commonCriteriaModeStatus

enum (CommonCriteriaModeStatus)

Si el modo Common Criteria está habilitado

policySignatureVerificationStatus

enum (PolicySignatureVerificationStatus)

Solo salida. El estado de la verificación de la firma de la política.

CommonCriteriaModeStatus

Si el modo Common Criteria está habilitado

Enumeraciones
COMMON_CRITERIA_MODE_STATUS_UNKNOWN Estado desconocido.
COMMON_CRITERIA_MODE_DISABLED El modo Common Criteria está inhabilitado.
COMMON_CRITERIA_MODE_ENABLED El modo Common Criteria está habilitado en este momento.

PolicySignatureVerificationStatus

El estado de la verificación de la firma de la política

Enumeraciones
POLICY_SIGNATURE_VERIFICATION_STATUS_UNSPECIFIED Sin especificar. No se informó el estado de verificación. Esto se establece solo si statusReportingSettings.commonCriteriaModeEnabled es falso.
POLICY_SIGNATURE_VERIFICATION_DISABLED La verificación de la firma de la política está inhabilitada en el dispositivo porque commonCriteriaMode está establecida como falsa.
POLICY_SIGNATURE_VERIFICATION_SUCCEEDED La verificación de la firma de la política se realizó correctamente.
POLICY_SIGNATURE_VERIFICATION_NOT_SUPPORTED No se admite la verificación de firma de política, p.ej., porque el dispositivo se inscribió con una versión de CloudDPC que no es compatible con la verificación de firma de política.
POLICY_SIGNATURE_VERIFICATION_FAILED No se pudo verificar la firma de la política. No se aplicó la política.

DpcMigrationInfo

Información relacionada con si este dispositivo se migró de otro controlador de política de dispositivo (DPC) que lo administraba.

Representación JSON
{
  "previousDpc": string,
  "additionalData": string
}
Campos
previousDpc

string

Solo salida. Si este dispositivo se migró desde otro DPC, este es el nombre del paquete. De lo contrario, no se propaga.

additionalData

string

Solo salida. Si este dispositivo se migró desde otro DPC, el campo additionalData del token de migración se completa aquí.

Métodos

delete

Borra un dispositivo.

get

Obtiene un dispositivo.

issueCommand

Emite un comando a un dispositivo.

list

Muestra una lista de los dispositivos de una empresa determinada.

patch

Actualiza un dispositivo.