MCP Tools Reference: Android Device Management MCP Server

Ferramenta: get_device

Recebe detalhes do dispositivo para uma determinada empresa e ID do dispositivo. Exige o nome do recurso no formato: enterprises/{enterpriseId}/devices/{deviceId}.

O exemplo a seguir demonstra como usar curl para invocar a ferramenta get_device MCP.

Solicitação curl
                  
curl --location 'https://androidmanagement.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "get_device",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Esquema de entrada

Solicitação para receber um dispositivo.

GetDeviceRequest

Representação JSON
{
  "name": string
}
Campos
name

string

O nome do dispositivo no formato enterprises/{enterpriseId}/devices/{deviceId}.

Esquema de saída

Um dispositivo de propriedade de uma empresa. A menos que indicado de outra forma, todos os campos são somente leitura e não podem ser modificados por enterprises.devices.patch.

Dispositivo

Representação 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)
  },
  "defaultApplicationInfo": [
    {
      object (DefaultApplicationInfo)
    }
  ]
}
Campos
name

string

O nome do dispositivo no formato enterprises/{enterpriseId}/devices/{deviceId}.

userName

string

O nome do recurso do usuário proprietário deste dispositivo no formato enterprises/{enterpriseId}/users/{userId}.

managementMode

enum (ManagementMode)

O tipo de modo de gerenciamento que o Android Device Policy assume no dispositivo. Isso influencia quais configurações de política são compatíveis.

state

enum (DeviceState)

O estado a ser aplicado ao dispositivo. Esse campo pode ser modificado por uma solicitação de patch. Ao chamar enterprises.devices.patch, ACTIVE e DISABLED são os únicos valores permitidos. Para colocar o dispositivo em um estado DELETED, chame enterprises.devices.delete.

appliedState

enum (DeviceState)

O estado aplicado ao dispositivo no momento.

policyCompliant

boolean

Se o dispositivo está em compliance com a política.

nonComplianceDetails[]

object (NonComplianceDetail)

Detalhes sobre as configurações de política com que o dispositivo não está em compliance.

enrollmentTime

string (Timestamp format)

O horário do registro do dispositivo.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

lastStatusReportTime

string (Timestamp format)

A última vez que o dispositivo enviou um relatório de status.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

lastPolicyComplianceReportTime
(deprecated)

string (Timestamp format)

Obsoleto.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

lastPolicySyncTime

string (Timestamp format)

A última vez que o dispositivo buscou a política.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

policyName

string

O nome da política aplicada ao dispositivo, no formato enterprises/{enterpriseId}/policies/{policyId}. Se não for especificado, o policy_name do usuário do dispositivo será aplicado. Esse campo pode ser modificado por uma solicitação de patch. É possível especificar apenas o policyId ao chamar enterprises.devices.patch, desde que o policyId não contenha barras. O restante do nome da política é inferido.

appliedPolicyName

string

O nome da política aplicada ao dispositivo no momento.

appliedPolicyVersion

string (int64 format)

A versão da política aplicada ao dispositivo.

apiLevel

integer

O nível da API da versão da plataforma Android em execução no dispositivo.

enrollmentTokenData

string

Se o dispositivo foi registrado com um token de registro com dados adicionais, este campo vai conter esses dados.

enrollmentTokenName

string

Se o dispositivo foi registrado com um token de registro, esse campo vai conter o nome do token.

disabledReason

object (UserFacingMessage)

Se o estado do dispositivo for DISABLED, uma mensagem opcional será exibida no dispositivo indicando o motivo da desativação. Esse campo pode ser modificado por uma solicitação de patch.

softwareInfo

object (SoftwareInfo)

Informações detalhadas sobre o software do dispositivo. Essas informações só estão disponíveis se softwareInfoEnabled for verdadeiro na política do dispositivo.

hardwareInfo

object (HardwareInfo)

Informações detalhadas sobre o hardware do dispositivo.

displays[]

object (Display)

Informações detalhadas sobre as telas do dispositivo. Essas informações só estão disponíveis se displayInfoEnabled for verdadeiro na política do dispositivo.

applicationReports[]

object (ApplicationReport)

Relatórios para apps instalados no dispositivo. Essas informações só estão disponíveis quando application_reports_enabled é verdadeiro na política do dispositivo.

previousDeviceNames[]

string

Se o mesmo dispositivo físico tiver sido registrado várias vezes, esse campo vai conter os nomes anteriores dele. O número de série é usado como identificador exclusivo para determinar se o mesmo dispositivo físico já foi registrado. Os nomes estão em ordem cronológica.

networkInfo

object (NetworkInfo)

Informações da rede do dispositivo. Essas informações só estão disponíveis se networkInfoEnabled for verdadeiro na política do dispositivo.

memoryInfo

object (MemoryInfo)

Informações de memória: contém informações sobre a memória e o armazenamento do dispositivo.

memoryEvents[]

object (MemoryEvent)

Eventos relacionados a medições de memória e armazenamento em ordem cronológica. Essas informações só estão disponíveis se memoryInfoEnabled for verdadeiro na política do dispositivo.

Os eventos são mantidos por um determinado período, e os mais antigos são excluídos.

powerManagementEvents[]

object (PowerManagementEvent)

Eventos de gerenciamento de energia no dispositivo em ordem cronológica. Essas informações só estão disponíveis se powerManagementEventsEnabled for verdadeiro na política do dispositivo.

hardwareStatusSamples[]

object (HardwareStatus)

Exemplos de status de hardware em ordem cronológica. Essas informações só estão disponíveis se hardwareStatusEnabled for verdadeiro na política do dispositivo.

deviceSettings

object (DeviceSettings)

Informações sobre as configurações do dispositivo. Essas informações só estão disponíveis se deviceSettingsEnabled for verdadeiro na política do dispositivo.

user

object (User)

O usuário proprietário do dispositivo.

systemProperties

map (key: string, value: string)

Mapa do nome e valor das propriedades do sistema selecionadas relacionadas ao dispositivo. Essas informações só estão disponíveis se systemPropertiesEnabled for verdadeiro na política do dispositivo.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

securityPosture

object (SecurityPosture)

Valor da postura de segurança do dispositivo que reflete o nível de segurança dele.

ownership

enum (Ownership)

Propriedade do dispositivo gerenciado.

commonCriteriaModeInfo

object (CommonCriteriaModeInfo)

Informações sobre o modo Common Criteria: padrões de segurança definidos nos Critérios comuns para avaliação de segurança de tecnologia da informação (CC, na sigla em inglês).

Essas informações só estão disponíveis se statusReportingSettings.commonCriteriaModeEnabled for true na política do dispositivo e ele pertencer à empresa.

appliedPasswordPolicies[]

object (PasswordRequirements)

Os requisitos de senha aplicados ao dispositivo no momento.

  • Esse campo existe porque os requisitos aplicados podem ser um pouco diferentes dos especificados em passwordPolicies em alguns casos.
  • Esse campo não fornece informações sobre a conformidade da senha. Para informações sobre não conformidade, consulte nonComplianceDetails.
  • NonComplianceDetail.fieldPath é definido com base em passwordPolicies, não neste campo.
dpcMigrationInfo

object (DpcMigrationInfo)

Apenas saída. Informações relacionadas à migração deste dispositivo de outro controlador de política de dispositivo (DPC).

defaultApplicationInfo[]

object (DefaultApplicationInfo)

Apenas saída. As informações padrão do aplicativo para o DefaultApplicationType. Essas informações só estão disponíveis se defaultApplicationInfoReportingEnabled for verdadeiro na política do dispositivo. Disponível no Android 16 e em versões mais recentes.

Todos os tipos de apps são informados em dispositivos totalmente gerenciados. Os tipos DEFAULT_BROWSER, DEFAULT_CALL_REDIRECTION, DEFAULT_CALL_SCREENING e DEFAULT_DIALER são informados para os perfis de trabalho em dispositivos da empresa com um perfil de trabalho e em dispositivos pessoais. DEFAULT_WALLET também é informado para dispositivos da empresa com um perfil de trabalho, mas inclui apenas informações do perfil de trabalho.

NonComplianceDetail

Representação JSON
{
  "settingName": string,
  "nonComplianceReason": enum (NonComplianceReason),
  "packageName": string,
  "fieldPath": string,
  "currentValue": value,
  "installationFailureReason": enum (InstallationFailureReason),
  "specificNonComplianceReason": enum (SpecificNonComplianceReason),
  "specificNonComplianceContext": {
    object (SpecificNonComplianceContext)
  }
}
Campos
settingName

string

O nome da configuração de política. Esse é o nome do campo JSON de um campo Policy de nível superior.

nonComplianceReason

enum (NonComplianceReason)

O motivo pelo qual o dispositivo não está em conformidade com a configuração.

packageName

string

O nome do pacote que indica qual app está em não conformidade, se aplicável.

fieldPath

string

Para configurações com campos aninhados, se um campo aninhado específico estiver fora da conformidade, isso vai especificar o caminho completo até o campo em questão. O caminho é formatado da mesma forma que o campo JSON da política seria referenciado em JavaScript. Ou seja: 1) Para campos do tipo objeto, o nome do campo é seguido por um ponto e depois por um nome de subcampo. 2) Para campos do tipo matriz, o nome do campo é seguido pelo índice da matriz entre colchetes. Por exemplo, para indicar um problema com o campo url no campo externalData na terceira inscrição, o caminho seria applications[2].externalData.url.

currentValue

value (Value format)

Se a configuração da política não puder ser aplicada, o valor atual da configuração no dispositivo.

installationFailureReason

enum (InstallationFailureReason)

Se package_name estiver definido e o motivo da não conformidade for APP_NOT_INSTALLED ou APP_NOT_UPDATED, o motivo detalhado pelo qual o app não pode ser instalado ou atualizado.

specificNonComplianceReason

enum (SpecificNonComplianceReason)

O motivo específico da política para o dispositivo não estar em conformidade com a configuração.

specificNonComplianceContext

object (SpecificNonComplianceContext)

Contexto adicional para specific_non_compliance_reason.

Valor

Representação JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Campos
Campo de união kind. O tipo de valor. kind pode ser apenas de um dos tipos a seguir:
nullValue

null

Representa um valor nulo.

numberValue

number

Representa um valor double.

stringValue

string

Representa um valor de string.

boolValue

boolean

Representa um valor booleano.

structValue

object (Struct format)

Representa um valor estruturado.

listValue

array (ListValue format)

Representa um Value repetido.

Struct

Representação JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campos
fields

map (key: string, value: value (Value format))

Mapa não ordenado de valores com tipagem dinâmica.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representação JSON
{
  "key": string,
  "value": value
}
Campos
key

string

value

value (Value format)

ListValue

Representação JSON
{
  "values": [
    value
  ]
}
Campos
values[]

value (Value format)

Campo repetido de valores digitados dinamicamente.

SpecificNonComplianceContext

Representação JSON
{
  "oncWifiContext": {
    object (OncWifiContext)
  },
  "passwordPoliciesContext": {
    object (PasswordPoliciesContext)
  },
  "defaultApplicationContext": {
    object (DefaultApplicationContext)
  }
}
Campos
oncWifiContext

object (OncWifiContext)

Contexto adicional para não conformidade relacionada à configuração de Wi-Fi. Consulte ONC_WIFI_INVALID_VALUE e ONC_WIFI_API_LEVEL

passwordPoliciesContext

object (PasswordPoliciesContext)

Contexto adicional para não conformidade relacionada às políticas de senha. Consulte PASSWORD_POLICIES_PASSWORD_EXPIRED e PASSWORD_POLICIES_PASSWORD_NOT_SUFFICIENT.

defaultApplicationContext

object (DefaultApplicationContext)

Apenas saída. Contexto adicional para não conformidade relacionada às configurações padrão do aplicativo. Consulte DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE.

OncWifiContext

Representação JSON
{
  "wifiGuid": string
}
Campos
wifiGuid

string

O GUID da configuração de Wi-Fi não compatível.

PasswordPoliciesContext

Representação JSON
{
  "passwordPolicyScope": enum (PasswordPolicyScope)
}
Campos
passwordPolicyScope

enum (PasswordPolicyScope)

O escopo da senha não compatível.

DefaultApplicationContext

Representação JSON
{
  "defaultApplicationScope": enum (DefaultApplicationScope)
}
Campos
defaultApplicationScope

enum (DefaultApplicationScope)

Apenas saída. O escopo da configuração padrão do aplicativo não compatível.

Carimbo de data/hora

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799 (o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa estar entre 0 e 999.999.999 (inclusive).

UserFacingMessage

Representação JSON
{
  "localizedMessages": {
    string: string,
    ...
  },
  "defaultMessage": string
}
Campos
localizedMessages

map (key: string, value: string)

Um mapa que contém pares <localidade, mensagem>, em que a localidade é um código de idioma BCP 47 bem formado, como en-US, es-ES ou fr.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

defaultMessage

string

A mensagem padrão exibida se nenhuma mensagem localizada for especificada ou se a localidade do usuário não corresponder a nenhuma das mensagens localizadas. Uma mensagem padrão precisa ser fornecida se houver mensagens localizadas.

LocalizedMessagesEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

SoftwareInfo

Representação 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

A string da versão do Android visível para o usuário. Por exemplo, 6.0.1.

androidDevicePolicyVersionCode

integer

O código da versão do app Android Device Policy.

androidDevicePolicyVersionName

string

A versão do app Android Device Policy exibida ao usuário.

androidBuildNumber

string

String de ID de build do Android destinada à exibição para o usuário. Por exemplo, shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys.

deviceKernelVersion

string

Versão do kernel, por exemplo, 2.6.32.9-g103d848.

bootloaderVersion

string

O número da versão do carregador de inicialização do sistema, por exemplo, 0.6.7.

androidBuildTime

string (Timestamp format)

Tempo de build.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

securityPatchLevel

string

Nível do patch de segurança, por exemplo, 2016-05-01.

primaryLanguageCode

string

Um código de idioma IETF BCP 47 para a localidade principal no dispositivo.

deviceBuildSignature

string

Hash SHA-256 de android.content.pm.Signature associado ao pacote do sistema, que pode ser usado para verificar se o build do sistema não foi modificado.

systemUpdateInfo

object (SystemUpdateInfo)

Informações sobre uma possível atualização do sistema pendente.

SystemUpdateInfo

Representação JSON
{
  "updateStatus": enum (UpdateStatus),
  "updateReceivedTime": string
}
Campos
updateStatus

enum (UpdateStatus)

O status de uma atualização: se ela existe e qual é o tipo.

updateReceivedTime

string (Timestamp format)

O horário em que a atualização ficou disponível pela primeira vez. Um valor zero indica que esse campo não está definido. Esse campo só é definido se uma atualização estiver disponível (ou seja, updateStatus não é UPDATE_STATUS_UNKNOWN nem UP_TO_DATE).

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

HardwareInfo

Representação 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,
  "euiccChipInfo": [
    {
      object (EuiccChipInfo)
    }
  ]
}
Campos
brand

string

Marca do dispositivo. Por exemplo, Google.

hardware

string

Nome do hardware. Por exemplo, Angler.

deviceBasebandVersion

string

Versão da banda de base. Por exemplo, MDM9625_104662.22.05.34p.

manufacturer

string

Fabricante. Por exemplo, Motorola.

serialNumber

string

O número de série do dispositivo. No entanto, para dispositivos pessoais com o Android 12 e versões mais recentes, isso é o mesmo que o enterpriseSpecificId.

model

string

O modelo do dispositivo. Por exemplo, Asus Nexus 7.

batteryShutdownTemperatures[]

number

Limites de temperatura de desligamento da bateria em graus Celsius para cada bateria no dispositivo.

batteryThrottlingTemperatures[]

number

Limiares de temperatura de limitação da bateria em graus Celsius para cada bateria no dispositivo.

cpuShutdownTemperatures[]

number

Limites de temperatura de desligamento da CPU em graus Celsius para cada CPU no dispositivo.

cpuThrottlingTemperatures[]

number

Limites de temperatura de limitação da CPU em graus Celsius para cada CPU no dispositivo.

gpuShutdownTemperatures[]

number

Limites de temperatura de desligamento da GPU em graus Celsius para cada GPU no dispositivo.

gpuThrottlingTemperatures[]

number

Limites de temperatura de redução da GPU em graus Celsius para cada GPU no dispositivo.

skinShutdownTemperatures[]

number

Limiares de temperatura de desligamento da pele do dispositivo em Celsius.

skinThrottlingTemperatures[]

number

Limites de temperatura de restrição da pele do dispositivo em graus Celsius.

enterpriseSpecificId

string

Apenas saída. ID que identifica exclusivamente um dispositivo pessoal em uma organização específica. No mesmo dispositivo físico, quando registrado na mesma organização, esse ID persiste em todas as configurações e até mesmo em redefinições de fábrica. Esse ID está disponível em dispositivos pessoais com um perfil de trabalho em aparelhos com Android 12 e versões mais recentes.

euiccChipInfo[]

object (EuiccChipInfo)

Apenas saída. Informações relacionadas ao chip eUICC.

EuiccChipInfo

Representação JSON
{
  "eid": string
}
Campos
eid

string

Apenas saída. O documento de identidade incorporado (EID) que identifica o chip eUICC para cada chip eUICC no dispositivo. Esse recurso está disponível em dispositivos da empresa com Android 13 e versões mais recentes.

Display

Representação JSON
{
  "name": string,
  "displayId": integer,
  "refreshRate": integer,
  "state": enum (DisplayState),
  "width": integer,
  "height": integer,
  "density": integer
}
Campos
name

string

Nome da tela.

displayId

integer

ID de exibição exclusivo.

refreshRate

integer

Taxa de atualização da tela em frames por segundo.

state

enum (DisplayState)

Estado da exibição.

width

integer

Largura da tela em pixels.

height

integer

Altura da tela em pixels.

density

integer

Densidade de exibição expressa como pontos por polegada.

ApplicationReport

Representação 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

Nome do pacote do app.

versionName

string

A versão do app exibida ao usuário.

versionCode

integer

O código da versão do app, que pode ser usado para determinar se uma versão é mais recente que outra.

events[]

object (ApplicationEvent)

A lista de eventos de app que ocorreram nas últimas 30 horas.

displayName

string

O nome de exibição do app.

packageSha256Hash

string

O hash SHA-256 do arquivo APK do app, que pode ser usado para verificar se o app não foi modificado. Cada byte do valor de hash é representado como um número hexadecimal de dois dígitos.

signingKeyCertFingerprints[]

string

O hash SHA-1 de cada android.content.pm.Signature associado ao pacote do app. Cada byte de cada valor de hash é representado como um número hexadecimal de dois dígitos.

installerPackageName

string

O nome do pacote do app que instalou este app.

applicationSource

enum (ApplicationSource)

A origem do pacote.

state

enum (ApplicationState)

Estado do aplicativo.

keyedAppStates[]

object (KeyedAppState)

Lista de estados de app com chave informados pelo app.

userFacingType

enum (UserFacingType)

Indica se o app é voltado para o usuário.

ApplicationEvent

Representação JSON
{
  "eventType": enum (ApplicationEventType),
  "createTime": string
}
Campos
eventType

enum (ApplicationEventType)

Tipo de evento do app.

createTime

string (Timestamp format)

A hora de criação do evento.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

KeyedAppState

Representação JSON
{
  "key": string,
  "severity": enum (Severity),
  "message": string,
  "data": string,
  "createTime": string,
  "lastUpdateTime": string
}
Campos
key

string

A chave do estado do app. Atua como um ponto de referência para o estado que o app está fornecendo. Por exemplo, ao fornecer feedback sobre a configuração gerenciada, essa chave pode ser a chave da configuração gerenciada.

severity

enum (Severity)

A gravidade do estado do app.

message

string

Opcional: uma string de mensagem de formato livre para explicar o estado do app. Se o estado foi acionado por um valor específico (por exemplo, um valor de configuração gerenciada), ele precisa ser incluído na mensagem.

data

string

Opcional: um valor legível por máquina para ser lido pelo EMM. Por exemplo, definir valores que o administrador pode consultar no console de EMM (por exemplo, "me avise se os dados de battery_warning forem < 10").

createTime

string (Timestamp format)

A hora de criação do estado do app no dispositivo.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

lastUpdateTime

string (Timestamp format)

O horário em que o estado do app foi atualizado pela última vez.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

NetworkInfo

Representação JSON
{
  "imei": string,
  "meid": string,
  "wifiMacAddress": string,
  "networkOperatorName": string,
  "telephonyInfos": [
    {
      object (TelephonyInfo)
    }
  ]
}
Campos
imei

string

Número IMEI do dispositivo GSM. Por exemplo, A1000031212.

meid

string

Número MEID do dispositivo CDMA. Por exemplo, A00000292788E1.

wifiMacAddress

string

Endereço MAC do Wi-Fi do dispositivo. Por exemplo, 7c:11:11:11:11:11.

networkOperatorName
(deprecated)

string

Nome alfabético do operador registrado atual. Por exemplo, Vodafone.

telephonyInfos[]

object (TelephonyInfo)

Fornece informações de telefonia associadas a cada chip no dispositivo. Compatível apenas com dispositivos totalmente gerenciados a partir do nível 23 da API Android.

TelephonyInfo

Representação JSON
{
  "phoneNumber": string,
  "carrierName": string,
  "iccId": string,
  "activationState": enum (ActivationState),
  "configMode": enum (ConfigMode)
}
Campos
phoneNumber

string

O número de telefone associado a este chip.

carrierName

string

O nome da operadora associada a este chip.

iccId

string

Apenas saída. O ICCID associado a este chip.

activationState

enum (ActivationState)

Apenas saída. Estado de ativação do chip no dispositivo. Isso é aplicável apenas a eSIMs. Essa opção é aceita em todos os dispositivos com API de nível 35 e versões mais recentes. Esse valor é sempre ACTIVATION_STATE_UNSPECIFIED para SIMs físicos e dispositivos abaixo do nível 35 da API.

configMode

enum (ConfigMode)

Apenas saída. O modo de configuração do chip no dispositivo. Isso é aplicável apenas a eSIMs. Essa opção é aceita em todos os dispositivos com API de nível 35 e versões mais recentes. Esse valor é sempre CONFIG_MODE_UNSPECIFIED para SIMs físicos e dispositivos abaixo do nível 35 da API.

MemoryInfo

Representação JSON
{
  "totalRam": string,
  "totalInternalStorage": string
}
Campos
totalRam

string (int64 format)

Total de RAM no dispositivo em bytes.

totalInternalStorage

string (int64 format)

Total do armazenamento interno no dispositivo em bytes.

MemoryEvent

Representação JSON
{
  "eventType": enum (MemoryEventType),
  "createTime": string,
  "byteCount": string
}
Campos
eventType

enum (MemoryEventType)

Tipo de evento.

createTime

string (Timestamp format)

A hora de criação do evento.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

byteCount

string (int64 format)

O número de bytes livres no dispositivo ou, para EXTERNAL_STORAGE_DETECTED, a capacidade total em bytes do dispositivo de armazenamento.

PowerManagementEvent

Representação JSON
{
  "eventType": enum (PowerManagementEventType),
  "createTime": string,
  "batteryLevel": number
}
Campos
eventType

enum (PowerManagementEventType)

Tipo de evento.

createTime

string (Timestamp format)

A hora de criação do evento.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

batteryLevel

number

Para eventos BATTERY_LEVEL_COLLECTED, o nível da bateria como uma porcentagem.

HardwareStatus

Representação JSON
{
  "createTime": string,
  "batteryTemperatures": [
    number
  ],
  "cpuTemperatures": [
    number
  ],
  "gpuTemperatures": [
    number
  ],
  "skinTemperatures": [
    number
  ],
  "fanSpeeds": [
    number
  ],
  "cpuUsages": [
    number
  ]
}
Campos
createTime

string (Timestamp format)

O momento em que as medições foram feitas.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

batteryTemperatures[]

number

Temperaturas atuais da bateria em graus Celsius para cada bateria no dispositivo.

cpuTemperatures[]

number

Temperaturas atuais da CPU em graus Celsius para cada CPU no dispositivo.

gpuTemperatures[]

number

Temperaturas atuais da GPU em graus Celsius para cada GPU no dispositivo.

skinTemperatures[]

number

Temperaturas atuais da pele do dispositivo em graus Celsius.

fanSpeeds[]

number

Velocidades do ventilador em RPM para cada ventilador no dispositivo. Uma matriz vazia significa que não há ventiladores ou que a velocidade do ventilador não é compatível com o sistema.

cpuUsages[]

number

Uso da CPU em porcentagem para cada núcleo disponível no dispositivo. O uso é 0 para cada núcleo desconectado. Uma matriz vazia implica que o uso da CPU não é compatível com o sistema.

DeviceSettings

Representação JSON
{
  "isDeviceSecure": boolean,
  "unknownSourcesEnabled": boolean,
  "developmentSettingsEnabled": boolean,
  "adbEnabled": boolean,
  "isEncrypted": boolean,
  "encryptionStatus": enum (EncryptionStatus),
  "verifyAppsEnabled": boolean
}
Campos
isDeviceSecure

boolean

Se o dispositivo está protegido com PIN/senha.

unknownSourcesEnabled

boolean

Se a instalação de apps de fontes desconhecidas está ativada.

developmentSettingsEnabled

boolean

Se o modo de desenvolvedor está ativado no dispositivo.

adbEnabled

boolean

Se o ADB está ativado no dispositivo.

isEncrypted

boolean

Se a criptografia de armazenamento está ativada.

encryptionStatus

enum (EncryptionStatus)

Status da criptografia do DevicePolicyManager.

verifyAppsEnabled

boolean

Se a verificação do Google Play Protect é aplicada no dispositivo.

Usuário

Representação JSON
{
  "accountIdentifier": string
}
Campos
accountIdentifier

string

Um identificador exclusivo que você cria para esse usuário, como user342 ou asset#44418. Esse campo precisa ser definido quando o usuário é criado e não pode ser atualizado. Esse campo não pode conter informações de identificação pessoal (PII). Esse identificador precisa ter até 1.024 caracteres. Caso contrário, a solicitação de atualização da política vai falhar.

SystemPropertiesEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

SecurityPosture

Representação JSON
{
  "devicePosture": enum (DevicePosture),
  "postureDetails": [
    {
      object (PostureDetail)
    }
  ]
}
Campos
devicePosture

enum (DevicePosture)

Valor da postura de segurança do dispositivo.

postureDetails[]

object (PostureDetail)

Outros detalhes sobre a postura de segurança do dispositivo.

PostureDetail

Representação JSON
{
  "securityRisk": enum (SecurityRisk),
  "advice": [
    {
      object (UserFacingMessage)
    }
  ]
}
Campos
securityRisk

enum (SecurityRisk)

Um risco de segurança específico que afeta negativamente a postura de segurança do dispositivo.

advice[]

object (UserFacingMessage)

Orientações correspondentes para administradores sobre como reduzir esse risco de segurança e melhorar a postura de segurança do dispositivo.

CommonCriteriaModeInfo

Representação JSON
{
  "commonCriteriaModeStatus": enum (CommonCriteriaModeStatus),
  "policySignatureVerificationStatus": enum (PolicySignatureVerificationStatus)
}
Campos
commonCriteriaModeStatus

enum (CommonCriteriaModeStatus)

Se o modo Common Criteria está ativado.

policySignatureVerificationStatus

enum (PolicySignatureVerificationStatus)

Apenas saída. O status da verificação de assinatura da política.

PasswordRequirements

Representação JSON
{
  "passwordMinimumLength": integer,
  "passwordMinimumLetters": integer,
  "passwordMinimumLowerCase": integer,
  "passwordMinimumNonLetter": integer,
  "passwordMinimumNumeric": integer,
  "passwordMinimumSymbols": integer,
  "passwordMinimumUpperCase": integer,
  "passwordQuality": enum (PasswordQuality),
  "passwordHistoryLength": integer,
  "maximumFailedPasswordsForWipe": integer,
  "passwordExpirationTimeout": string,
  "passwordScope": enum (PasswordPolicyScope),
  "requirePasswordUnlock": enum (RequirePasswordUnlock),
  "unifiedLockSettings": enum (UnifiedLockSettings)
}
Campos
passwordMinimumLength

integer

O tamanho mínimo permitido para senhas. Um valor de 0 significa que não há restrição. Só é aplicado quando password_quality é NUMERIC, NUMERIC_COMPLEX, ALPHABETIC, ALPHANUMERIC ou COMPLEX.

passwordMinimumLetters

integer

Número mínimo de letras exigido na senha. Aplicado somente quando password_quality é COMPLEX.

passwordMinimumLowerCase

integer

Número mínimo de letras minúsculas exigido na senha. Aplicado somente quando password_quality é COMPLEX.

passwordMinimumNonLetter

integer

Número mínimo de caracteres diferentes de letras (dígitos numéricos ou símbolos) exigido na senha. Aplicado somente quando password_quality é COMPLEX.

passwordMinimumNumeric

integer

Número mínimo de dígitos numéricos exigido na senha. Aplicado somente quando password_quality é COMPLEX.

passwordMinimumSymbols

integer

Número mínimo de símbolos exigido na senha. Aplicado somente quando password_quality é COMPLEX.

passwordMinimumUpperCase

integer

Número mínimo de letras maiúsculas exigido na senha. Aplicado somente quando password_quality é COMPLEX.

passwordQuality

enum (PasswordQuality)

A qualidade de senha necessária.

passwordHistoryLength

integer

O tamanho do histórico de senhas. Depois de definir esse campo, o usuário não poderá inserir uma nova senha igual a qualquer senha no histórico. Um valor de 0 significa que não há restrição.

maximumFailedPasswordsForWipe

integer

Número de senhas incorretas de desbloqueio do dispositivo que podem ser digitadas antes que ele seja excluído permanentemente. Um valor de 0 significa que não há restrição.

passwordExpirationTimeout

string (Duration format)

Tempo limite de expiração da senha.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

passwordScope

enum (PasswordPolicyScope)

O escopo a que o requisito de senha se aplica.

requirePasswordUnlock

enum (RequirePasswordUnlock)

O período após o desbloqueio de um dispositivo ou perfil de trabalho usando uma forma forte de autenticação (senha, PIN, padrão) em que ele pode ser desbloqueado usando qualquer outro método de autenticação (por exemplo, impressão digital, agentes de confiança, rosto). Após o período especificado, somente formas fortes de autenticação poderão ser usadas para desbloquear o dispositivo ou o perfil de trabalho.

unifiedLockSettings

enum (UnifiedLockSettings)

Controla se um bloqueio unificado é permitido para o dispositivo e o perfil de trabalho em dispositivos com Android 9 e versões mais recentes com um perfil de trabalho. Isso só pode ser definido se password_scope estiver definido como SCOPE_PROFILE. Caso contrário, a política será rejeitada. Se o usuário não tiver definido um bloqueio de trabalho separado e esse campo estiver definido como REQUIRE_SEPARATE_WORK_LOCK, um NonComplianceDetail será informado com nonComplianceReason definido como USER_ACTION.

Duração

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Segundos assinados do período. Precisa estar entre -315.576.000.000 e +315.576.000.000 (inclusive). Observação: esses limites são calculados da seguinte forma: 60 s/min * 60 min/h * 24 h/dia * 365,25 dias/ano * 10.000 anos

nanos

integer

Frações assinadas de um segundo com resolução de nanossegundos do período. Durações menores que um segundo são representadas com um campo seconds 0 e um campo nanos positivo ou negativo. Para durações de um segundo ou mais, um valor diferente de zero para o campo nanos precisa ter o mesmo sinal do campo seconds. Precisa estar entre -999.999.999 e +999.999.999 (inclusive).

DpcMigrationInfo

Representação JSON
{
  "previousDpc": string,
  "additionalData": string
}
Campos
previousDpc

string

Apenas saída. Se o dispositivo foi migrado de outra DPC, este é o nome do pacote. Caso contrário, não será preenchido.

additionalData

string

Apenas saída. Se o dispositivo foi migrado de outra DPC, o campo additionalData do token de migração será preenchido aqui.

DefaultApplicationInfo

Representação JSON
{
  "defaultApplicationType": enum (DefaultApplicationType),
  "packageName": string,
  "defaultApplicationSettingAttempts": [
    {
      object (DefaultApplicationSettingAttempt)
    }
  ]
}
Campos
defaultApplicationType

enum (DefaultApplicationType)

Apenas saída. O tipo de aplicativo padrão.

packageName

string

Apenas saída. O nome do pacote do aplicativo padrão atual.

defaultApplicationSettingAttempts[]

object (DefaultApplicationSettingAttempt)

Apenas saída. Detalhes sobre as tentativas de configuração padrão do aplicativo, na mesma ordem listada em defaultApplications.

DefaultApplicationSettingAttempt

Representação JSON
{
  "packageName": string,
  "attemptOutcome": enum (AttemptOutcome)
}
Campos
packageName

string

Apenas saída. O nome do pacote do aplicativo tentado.

attemptOutcome

enum (AttemptOutcome)

Apenas saída. O resultado de definir o app como padrão.

Anotações de ferramentas

Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌