Extrae y muestra un conjunto de notificaciones para las empresas asociadas con la cuenta de servicio autenticada para la solicitud. El conjunto de notificaciones puede estar vacío si no hay una notificación pendiente.
Un conjunto de notificaciones que se muestra debe confirmar su recepción en 20 segundos llamando a Enterprises.AcknowledgeNotificationSet, a menos que esté vacío.
Las notificaciones que no se confirmen dentro de los 20 segundos se incluirán de nuevo en la respuesta a otra solicitud PullNotificationSet, y las que nunca se reconozcan se borrarán de acuerdo con la política del sistema de Google Cloud Platform Pub/Sub.
Es posible que se realicen varias solicitudes de forma simultánea para recuperar notificaciones, en cuyo caso las notificaciones pendientes (si las hay) se dividirán entre cada emisor, si es que hay alguna pendiente.
Si no hay notificaciones, se muestra una lista vacía.
Las solicitudes posteriores pueden mostrar más notificaciones cuando están disponibles.
Solicitud
Solicitud HTTP
POST https://www.googleapis.com/androidenterprise/v1/enterprises/pullNotificationSet
Parámetros
Nombre del parámetro | Valor | Descripción |
---|---|---|
Parámetros de consulta opcionales | ||
requestMode |
string |
El modo de solicitud para extraer notificaciones.
Si especificas waitForNotifications , la solicitud se bloqueará y se esperará hasta que haya una o más notificaciones, o se mostrará una lista vacía de notificaciones si no hay notificaciones después de un tiempo.
Si especificas returnImmediately , la solicitud mostrará de inmediato las notificaciones pendientes o una lista vacía si no hay notificaciones presentes.
Si se omite, el valor predeterminado es waitForNotifications .
Los valores aceptables son los siguientes:
|
Autorización
Esta solicitud requiere una autorización con el siguiente alcance:
Alcance |
---|
https://www.googleapis.com/auth/androidenterprise |
Para obtener más información, consulta la página de autenticación y autorización.
Cuerpo de la solicitud
No proporciones un cuerpo de solicitud con este método.
Respuesta
Si se aplica correctamente, este método muestra un cuerpo de respuesta con la siguiente estructura:
{ "kind": "androidenterprise#notificationSet", "notificationSetId": string, "notification": [ { "enterpriseId": string, "timestampMillis": long, "notificationType": string, "productApprovalEvent": { "productId": string, "approved": string }, "installFailureEvent": { "productId": string, "deviceId": string, "userId": string, "failureReason": string, "failureDetails": string }, "appUpdateEvent": { "productId": string }, "newPermissionsEvent": { "productId": string, "requestedPermissions": [ string ], "approvedPermissions": [ string ] }, "appRestrictionsSchemaChangeEvent": { "productId": string }, "productAvailabilityChangeEvent": { "productId": string, "availabilityStatus": string }, "newDeviceEvent": { "userId": string, "deviceId": string, "managementType": string, "dpcPackageName": string }, "deviceReportUpdateEvent": { "userId": string, "deviceId": string, "report": { "lastUpdatedTimestampMillis": long, "appState": [ { "packageName": string, "keyedAppState": [ { "key": string, "stateTimestampMillis": long, "severity": string, "message": string, "data": string } ] } ] } } } ] }
Nombre de la propiedad | Valor | Descripción | Notas |
---|---|---|---|
notificationSetId |
string |
El ID del conjunto de notificaciones, obligatorio para marcar la notificación como recibida con la API de Enterprise.AcknowledgeNotification Se omitirá si no hay notificaciones. | |
notification[] |
list |
Notificaciones recibidas o vacías si no existen. | |
notification[].enterpriseId |
string |
El ID de la empresa a la que se envía la notificación. Estará siempre presente. | |
notification[].timestampMillis |
long |
El momento en que la notificación se publicó en milisegundos desde 1970-01-01T00:00:00Z. Estará siempre presente. | |
notification[].productApprovalEvent |
nested object |
Notificaciones sobre cambios en el estado de aprobación de un producto. | |
notification[].productApprovalEvent.productId |
string |
Es el ID del producto (p. ej., "app.com.google.android.gm") en el que cambió el estado de aprobación. Este campo estará siempre presente. | |
notification[].productApprovalEvent.approved |
string |
Indica si el producto se aprobó o no. Este campo estará siempre presente.
Los valores aceptables son los siguientes:
|
|
notification[].installFailureEvent |
nested object |
Notificaciones sobre un error en la instalación de la app | |
notification[].installFailureEvent.productId |
string |
Es el ID del producto (p. ej., "app.com.google.android.gm") en el que ocurrió el evento de falla de instalación. Este campo estará siempre presente. | |
notification[].installFailureEvent.deviceId |
string |
Es el ID de Android del dispositivo. Este campo estará siempre presente. | |
notification[].installFailureEvent.userId |
string |
El ID del usuario Este campo estará siempre presente. | |
notification[].installFailureEvent.failureReason |
string |
Es el motivo de la falla de instalación. Este campo estará siempre presente.
Los valores aceptables son los siguientes:
|
|
notification[].installFailureEvent.failureDetails |
string |
Detalles adicionales sobre la falla, si corresponde. | |
notification[].appUpdateEvent |
nested object |
Notificaciones sobre actualizaciones de apps | |
notification[].appUpdateEvent.productId |
string |
El ID del producto (p. ej., "app.com.google.android.gm") que se actualizó. Este campo estará siempre presente. | |
notification[].newPermissionsEvent |
nested object |
Notificaciones sobre nuevos permisos de apps | |
notification[].newPermissionsEvent.productId |
string |
Es el ID del producto (p. ej., "app.com.google.android.gm") al que se agregaron los permisos nuevos. Este campo estará siempre presente. | |
notification[].newPermissionsEvent.requestedPermissions[] |
list |
Es el conjunto de permisos que la app solicita actualmente. Usa Permissions.Get en la API de EMM para recuperar detalles sobre estos permisos. | |
notification[].newPermissionsEvent.approvedPermissions[] |
list |
El conjunto de permisos que el administrador empresarial ya aprobó para esta aplicación. Usa Permissions.Get en la API de EMM para recuperar detalles sobre estos permisos. | |
notification[].appRestrictionsSchemaChangeEvent |
nested object |
Notificaciones sobre nuevos cambios en el esquema de restricciones de la app | |
notification[].appRestrictionsSchemaChangeEvent.productId |
string |
Es el ID del producto (p. ej., "app.com.google.android.gm") en el que cambió el esquema de restricciones de la aplicación. Este campo estará siempre presente. | |
notification[].productAvailabilityChangeEvent |
nested object |
Notificaciones sobre cambios en la disponibilidad de los productos. | |
notification[].productAvailabilityChangeEvent.productId |
string |
Es el ID del producto (p. ej., "app.com.google.android.gm") en el que cambió la disponibilidad del producto. Este campo estará siempre presente. | |
notification[].productAvailabilityChangeEvent.availabilityStatus |
string |
El nuevo estado del producto. Este campo estará siempre presente.
Los valores aceptables son los siguientes:
|
|
notification[].newDeviceEvent |
nested object |
Notificaciones sobre dispositivos nuevos | |
notification[].newDeviceEvent.userId |
string |
El ID del usuario Este campo estará siempre presente. | |
notification[].newDeviceEvent.deviceId |
string |
Es el ID de Android del dispositivo. Este campo estará siempre presente. | |
notification[].newDeviceEvent.managementType |
string |
Identifica en qué medida el dispositivo es controlado por un EMM de Android en varias configuraciones de implementación. Estos son algunos de los valores posibles:
Los valores aceptables son los siguientes:
|
|
notification[].notificationType |
string |
Tipo de notificación.
Los valores aceptables son los siguientes:
|
|
notification[].newDeviceEvent.dpcPackageName |
string |
App de política en el dispositivo. | |
notification[].deviceReportUpdateEvent |
nested object |
Notificaciones sobre actualizaciones en los informes de dispositivos. | |
notification[].deviceReportUpdateEvent.userId |
string |
El ID del usuario Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.deviceId |
string |
Es el ID de Android del dispositivo. Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.report |
nested object |
Se actualizó el informe de dispositivos con los últimos estados de la app. Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.report.lastUpdatedTimestampMillis |
long |
Es la marca de tiempo de la última actualización del informe en milisegundos desde el epoch. Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.report.appState[] |
list |
Lista de los estados de las apps que establecen las apps administradas en el dispositivo. Los desarrolladores de la app definen los estados de la app. Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.report.appState[].packageName |
string |
El nombre del paquete de la app. Este campo siempre estará presente. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[] |
list |
Lista de estados de apps con clave. Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].key |
string |
La clave que indica para qué proporciona la app un estado. El desarrollador de la app es quien establece el contenido de la clave. Para evitar la XSS, te recomendamos que quites el código HTML de la clave antes de mostrarla. Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].stateTimestampMillis |
long |
Marca de tiempo del momento en que la app estableció el estado en milisegundos desde el ciclo de entrenamiento. Este campo estará siempre presente. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].severity |
string |
Gravedad del estado de la app. Este campo estará siempre presente.
Los valores aceptables son los siguientes:
|
|
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message |
string |
Mensaje de formato libre y legible que describe el estado de la app. Por ejemplo, un mensaje de error. Para evitar la XSS, te recomendamos que quites el código HTML del mensaje antes de mostrarlo. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data |
string |
Campo adicional diseñado para datos procesables. Por ejemplo, un número o un objeto JSON. Para evitar la XSS, recomendamos quitar el código HTML de los datos antes de mostrarlo. | |
kind |
string |