Method: enterprises.devices.issueCommand

Emite un comando a un dispositivo. El recurso Operation que se muestra contiene un Command en su campo metadata. Usa el método de operación get para obtener el estado del comando.

Solicitud HTTP

POST https://androidmanagement.googleapis.com/v1/{name=enterprises/*/devices/*}:issueCommand

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de ruta de acceso

Parámetros
name

string

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

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de Command.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Permisos de autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/androidmanagement

Para obtener más información, consulta la descripción general de OAuth 2.0.

Comando

Un comando

Representación JSON
{
  "type": enum (CommandType),
  "createTime": string,
  "duration": string,
  "userName": string,
  "errorCode": enum (CommandErrorCode),
  "newPassword": string,
  "resetPasswordFlags": [
    enum (ResetPasswordFlag)
  ],

  // Union field params can be only one of the following:
  "clearAppsDataParams": {
    object (ClearAppsDataParams)
  },
  "startLostModeParams": {
    object (StartLostModeParams)
  },
  "stopLostModeParams": {
    object (StopLostModeParams)
  }
  // End of list of possible types for union field params.

  // Union field status can be only one of the following:
  "clearAppsDataStatus": {
    object (ClearAppsDataStatus)
  },
  "startLostModeStatus": {
    object (StartLostModeStatus)
  },
  "stopLostModeStatus": {
    object (StopLostModeStatus)
  }
  // End of list of possible types for union field status.
}
Campos
type

enum (CommandType)

Es el tipo del comando.

createTime

string (Timestamp format)

Es la marca de tiempo en la que se creó el comando. El servidor genera automáticamente la marca de tiempo.

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".

duration

string (Duration format)

Es la duración de la validez del comando. El comando vencerá si el dispositivo no lo ejecuta durante este tiempo. Si no se especifica, la duración predeterminada es de diez minutos. No hay una duración máxima.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

userName

string

El nombre del recurso del usuario propietario del dispositivo con el formato enterprises/{enterpriseId}/users/{userId}. El servidor lo genera automáticamente en función del dispositivo al que se envía el comando.

errorCode

enum (CommandErrorCode)

Si el comando falló, un código de error que explica la falla. Esto no se establece cuando el emisor cancela el comando.

newPassword

string

Para los comandos de tipo RESET_PASSWORD, de manera opcional, especifica la nueva contraseña. Nota: La nueva contraseña debe tener al menos 6 caracteres si es numérica en el caso de dispositivos con Android 14. De lo contrario, el comando fallará y mostrará INVALID_VALUE.

resetPasswordFlags[]

enum (ResetPasswordFlag)

Para los comandos de tipo RESET_PASSWORD, de forma opcional, especifica las marcas.

Campo de unión params. Parámetros específicos del comando. Ten en cuenta que algunos comandos no usan esto, en particular LOCK, RESET_PASSWORD, REBOOT y RELINQUISH_OWNERSHIP. En el futuro, es posible que estos comandos también usen esta opción.

Si se establece, no se deben establecer los campos new_password y reset_password_flags. params puede ser solo uno de los siguientes:

clearAppsDataParams

object (ClearAppsDataParams)

Parámetros del comando CLEAR_APP_DATA para borrar del dispositivo los datos de apps especificadas Consulta los ClearAppsDataParams. Si se establece, se sugiere que no se debe establecer type. En este caso, el servidor lo configura automáticamente como CLEAR_APP_DATA. También es aceptable establecer de manera explícita type en CLEAR_APP_DATA.

startLostModeParams

object (StartLostModeParams)

Parámetros del comando START_LOST_MODE para poner el dispositivo en modo extraviado. Consulta los StartLostModeParams. Si se establece, se sugiere que no se debe establecer type. En este caso, el servidor lo configura automáticamente como START_LOST_MODE. También es aceptable establecer de manera explícita type en START_LOST_MODE.

stopLostModeParams

object (StopLostModeParams)

Parámetros del comando STOP_LOST_MODE para quitar el modo extraviado del dispositivo. Consulta los StopLostModeParams. Si se establece, se sugiere que no se debe establecer type. En este caso, el servidor lo configura automáticamente como STOP_LOST_MODE. También es aceptable establecer de manera explícita type en STOP_LOST_MODE.

Campo de unión status. Estado específico del comando. Ten en cuenta que algunos comandos no usan esto, en particular LOCK, RESET_PASSWORD, REBOOT y RELINQUISH_OWNERSHIP. En el futuro, es posible que estos comandos también usen esta opción. status puede ser solo uno de los siguientes:
clearAppsDataStatus

object (ClearAppsDataStatus)

Solo salida. Estado del comando CLEAR_APP_DATA para borrar del dispositivo los datos de apps especificadas Consulta los ClearAppsDataStatus.

startLostModeStatus

object (StartLostModeStatus)

Solo salida. Estado del comando START_LOST_MODE para poner el dispositivo en modo extraviado. Consulta los StartLostModeStatus.

stopLostModeStatus

object (StopLostModeStatus)

Solo salida. Estado del comando STOP_LOST_MODE para quitar el modo extraviado del dispositivo. Consulta los StopLostModeStatus.

CommandType

Tipos de comandos.

Enumeraciones
COMMAND_TYPE_UNSPECIFIED No se permite este valor.
LOCK Bloquea el dispositivo, como si el tiempo de espera de la pantalla de bloqueo hubiera vencido.
RESET_PASSWORD Restablecer la contraseña del usuario
REBOOT Reinicia el dispositivo. Solo es compatible con dispositivos completamente administrados que ejecutan Android 7.0 (nivel de API 24) o versiones posteriores.
RELINQUISH_OWNERSHIP Se quitará el perfil de trabajo y todas las políticas de un dispositivo empresarial que ejecute Android 8.0 o una versión posterior, y se renueve el dispositivo para uso personal. Se conservan las aplicaciones y los datos asociados con los perfiles personales. El dispositivo se borrará del servidor una vez que confirme el comando.
CLEAR_APP_DATA Borra los datos de aplicaciones especificadas. Esta función es compatible con Android 9 y versiones posteriores. Ten en cuenta que una aplicación puede almacenar datos fuera de los datos de su aplicación, por ejemplo, en un almacenamiento externo o en un diccionario del usuario. Consulta también clearAppsDataParams.
START_LOST_MODE Pone el dispositivo en modo extraviado. Solo es compatible con dispositivos completamente administrados o que pertenecen a la organización con un perfil administrado. Consulta también startLostModeParams.
STOP_LOST_MODE Quita el dispositivo del modo extraviado. Solo es compatible con dispositivos completamente administrados o que pertenecen a la organización con un perfil administrado. Consulta también stopLostModeParams.

CommandErrorCode

Un código de error de comando. Este es un campo de solo lectura que propaga el servidor.

Enumeraciones
COMMAND_ERROR_CODE_UNSPECIFIED No se produjo ningún error.
UNKNOWN Se produjo un error desconocido.
API_LEVEL El nivel de API del dispositivo no admite este comando.
MANAGEMENT_MODE El modo de administración (propietario del perfil, propietario del dispositivo, etc.) no admite el comando.
INVALID_VALUE El comando tiene un valor de parámetro no válido.
UNSUPPORTED El dispositivo no admite el comando. Es posible que se resuelva el problema si actualizas Android Device Policy a la versión más reciente.

ResetPasswordFlag

Marcas que se pueden usar para el tipo de comando RESET_PASSWORD.

Enumeraciones
RESET_PASSWORD_FLAG_UNSPECIFIED Se ignora este valor.
REQUIRE_ENTRY No permitir que otros administradores vuelvan a cambiar la contraseña hasta que el usuario la ingrese.
DO_NOT_ASK_CREDENTIALS_ON_BOOT No solicites credenciales de usuario al iniciar el dispositivo.
LOCK_NOW Bloquear el dispositivo luego de restablecer la contraseña

ClearAppsDataParams

Son parámetros asociados con el comando CLEAR_APP_DATA para borrar del dispositivo los datos de apps especificadas.

Representación JSON
{
  "packageNames": [
    string
  ]
}
Campos
packageNames[]

string

Los nombres de paquetes de las apps cuyos datos se borrarán cuando se ejecute el comando.

StartLostModeParams

Parámetros asociados con el comando START_LOST_MODE para poner el dispositivo en modo extraviado. Para que el dispositivo entre en modo extraviado, se debe proporcionar al menos uno de los parámetros, sin incluir el nombre de la organización.

Representación JSON
{
  "lostMessage": {
    object (UserFacingMessage)
  },
  "lostPhoneNumber": {
    object (UserFacingMessage)
  },
  "lostEmailAddress": string,
  "lostStreetAddress": {
    object (UserFacingMessage)
  },
  "lostOrganization": {
    object (UserFacingMessage)
  }
}
Campos
lostMessage

object (UserFacingMessage)

Es el mensaje que se muestra al usuario cuando el dispositivo está en modo extraviado.

lostPhoneNumber

object (UserFacingMessage)

El número de teléfono al que se llamará cuando el dispositivo esté en modo extraviado y se presione el botón de propietario de la llamada.

lostEmailAddress

string

Es la dirección de correo electrónico que se muestra al usuario cuando el dispositivo está en modo extraviado.

lostStreetAddress

object (UserFacingMessage)

Es la dirección que se muestra al usuario cuando el dispositivo está en modo extraviado.

lostOrganization

object (UserFacingMessage)

Es el nombre de la organización que se muestra al usuario cuando el dispositivo está en modo extraviado.

StopLostModeParams

Este tipo no tiene campos.

Parámetros asociados con el comando STOP_LOST_MODE para quitar el modo extraviado del dispositivo.

ClearAppsDataStatus

Estado del comando CLEAR_APP_DATA para borrar del dispositivo los datos de apps especificadas

Representación JSON
{
  "results": {
    string: {
      object (PerAppResult)
    },
    ...
  }
}
Campos
results

map (key: string, value: object (PerAppResult))

Los resultados por app, una asignación de los nombres de paquetes al resultado de eliminación respectivo.

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

PerAppResult

Es el resultado de un intento de borrar los datos de una sola app.

Representación JSON
{
  "clearingResult": enum (ClearingResult)
}
Campos
clearingResult

enum (ClearingResult)

Es el resultado de un intento de borrar los datos de una sola app.

ClearingResult

Es el resultado de un intento de borrar los datos de una sola app.

Enumeraciones
CLEARING_RESULT_UNSPECIFIED Resultado no especificado.
SUCCESS Se borraron correctamente los datos de esta app.
APP_NOT_FOUND No se pudieron borrar los datos de esta app porque no se encontró.
APP_PROTECTED No se pudieron borrar los datos de esta app porque está protegida. Por ejemplo, esto puede aplicarse a apps críticas para el funcionamiento del dispositivo, como Google Play Store.
API_LEVEL No se pudieron borrar los datos de esta app porque el nivel de API del dispositivo no admite este comando.

StartLostModeStatus

Estado del comando START_LOST_MODE para poner el dispositivo en modo extraviado.

Representación JSON
{
  "status": enum (Status)
}
Campos
status

enum (Status)

El estado. Consulta los StartLostModeStatus.

Estado

El estado. Consulta los StartLostModeStatus.

Enumeraciones
STATUS_UNSPECIFIED Sin especificar. Este valor no se usa.
SUCCESS El dispositivo se puso en modo extraviado.
RESET_PASSWORD_RECENTLY No se pudo poner el dispositivo en modo extraviado porque el administrador restableció la contraseña recientemente.
USER_EXIT_LOST_MODE_RECENTLY No se pudo poner el dispositivo en modo extraviado porque el usuario salió de este modo recientemente.
ALREADY_IN_LOST_MODE El dispositivo ya está en modo extraviado.

StopLostModeStatus

Estado del comando STOP_LOST_MODE para quitar el modo extraviado del dispositivo.

Representación JSON
{
  "status": enum (Status)
}
Campos
status

enum (Status)

El estado. Consulta los StopLostModeStatus.

Estado

El estado. Consulta los StopLostModeStatus.

Enumeraciones
STATUS_UNSPECIFIED Sin especificar. Este valor no se usa.
SUCCESS Se retiró el dispositivo del modo extraviado.
NOT_IN_LOST_MODE El dispositivo no está en modo extraviado.