Enterprises: pullNotificationSet

Esegue il pull e restituisce una notifica impostata per le aziende associate all'account di servizio autenticato per la richiesta. L'insieme di notifiche può essere vuoto se non ci sono notifiche in attesa.
Un set di notifiche da restituire deve essere confermato entro 20 secondi chiamando Enterprises.AcknowledgeNotificationSet, a meno che il set di notifiche non sia vuoto.
Le notifiche che non vengono riconosciute entro 20 secondi verranno incluse in risposta a un'altra richiesta PullNotificationSet, e quelle che non verranno mai confermate verranno eliminate in conformità con le norme di sistema Pub/Sub di Google Cloud Platform.
Possono essere eseguite contemporaneamente più richieste per recuperare le notifiche, nel qual caso le eventuali notifiche in sospeso verranno suddivise tra ogni chiamante, se presenti.
Se non sono presenti notifiche, viene restituito un elenco di notifiche vuoto. Le richieste successive potrebbero restituire altre notifiche non appena saranno disponibili.

Risorse richieste:

Richiesta HTTP

POST https://www.googleapis.com/androidenterprise/v1/enterprises/pullNotificationSet

Parametri

Nome del parametro Valore Descrizione
Parametri di ricerca facoltativi
requestMode string La modalità di richiesta per il pull delle notifiche.
Se specifichi waitForNotifications, la richiesta verrà bloccata e attenderà che siano presenti una o più notifiche oppure restituisca un elenco di notifiche vuoto se nessuna notifica è presente dopo un certo periodo di tempo.
Se specifichi returnImmediately, la richiesta restituirà immediatamente le notifiche in attesa o un elenco vuoto se non sono presenti notifiche.
Se omesso, il valore predefinito è waitForNotifications.

I valori accettati sono:
  • "returnImmediately"
  • "waitForNotifications"

Autorizzazione

Questa richiesta richiede l'autorizzazione con il seguente ambito:

Ambito
https://www.googleapis.com/auth/androidenterprise

Per saperne di più, consulta la pagina Autenticazione e autorizzazione.

Corpo della richiesta

Non fornire un corpo della richiesta con questo metodo.

Risposta

In caso di esito positivo, questo metodo restituisce un corpo di risposta con la seguente struttura:

{
  "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
                }
              ]
            }
          ]
        }
      }
    }
  ]
}
Nome proprietà Valore Descrizione Note
notificationSetId string L'ID del set di notifiche, necessario per contrassegnare la notifica come ricevuta con l'API Enterprises.AcknowledgeNotification. Verrà omesso se non sono presenti notifiche.
notification[] list Le notifiche vengono ricevute o sono vuote se non sono presenti.
notification[].enterpriseId string L'ID dell'azienda per cui viene inviata la notifica. Questi dati saranno sempre presenti.
notification[].timestampMillis long L'ora in cui la notifica è stata pubblicata in millisecondi dal 1970-01-01T00:00:00Z. Questi dati saranno sempre presenti.
notification[].productApprovalEvent nested object Notifiche sulle modifiche allo stato di approvazione di un prodotto.
notification[].productApprovalEvent.productId string L'ID del prodotto (ad es. "app:com.google.android.gm") per il quale è cambiato lo stato di approvazione. Questo campo sarà sempre presente.
notification[].productApprovalEvent.approved string Indica se il prodotto è stato approvato o meno. Questo campo sarà sempre presente.

I valori accettati sono:
  • "approved"
  • "unapproved"
  • "unknown"
notification[].installFailureEvent nested object Notifiche relative a un errore di installazione di app.
notification[].installFailureEvent.productId string L'ID del prodotto (ad es. "app:com.google.android.gm") per il quale si è verificato l'evento di installazione non riuscita. Questo campo sarà sempre presente.
notification[].installFailureEvent.deviceId string L'ID Android del dispositivo. Questo campo sarà sempre presente.
notification[].installFailureEvent.userId string L'ID dell'utente. Questo campo sarà sempre presente.
notification[].installFailureEvent.failureReason string Il motivo dell'errore di installazione. Questo campo sarà sempre presente.

I valori accettati sono:
  • "timeout"
  • "unknown"
notification[].installFailureEvent.failureDetails string Ulteriori dettagli sull'errore, se applicabile.
notification[].appUpdateEvent nested object Notifiche sugli aggiornamenti dell'app.
notification[].appUpdateEvent.productId string L'ID del prodotto (ad es. "app:com.google.android.gm") che è stato aggiornato. Questo campo sarà sempre presente.
notification[].newPermissionsEvent nested object Notifiche sulle nuove autorizzazioni dell'app.
notification[].newPermissionsEvent.productId string L'ID del prodotto (ad es. "app:com.google.android.gm") per il quale sono state aggiunte nuove autorizzazioni. Questo campo sarà sempre presente.
notification[].newPermissionsEvent.requestedPermissions[] list L'insieme di autorizzazioni attualmente richieste dall'app. Utilizza Autorizzazioni.Scarica l'API EMM per recuperare i dettagli di queste autorizzazioni.
notification[].newPermissionsEvent.approvedPermissions[] list L'insieme di autorizzazioni che l'amministratore aziendale ha già approvato per l'applicazione. Utilizza Autorizzazioni.Scarica l'API EMM per recuperare i dettagli di queste autorizzazioni.
notification[].appRestrictionsSchemaChangeEvent nested object Notifiche relative alle nuove modifiche allo schema delle limitazioni dell'app.
notification[].appRestrictionsSchemaChangeEvent.productId string L'ID del prodotto (ad es. "app:com.google.android.gm") per il quale è stato modificato lo schema di limitazione dell'app. Questo campo sarà sempre presente.
notification[].productAvailabilityChangeEvent nested object Notifiche sulle modifiche apportate alla disponibilità dei prodotti.
notification[].productAvailabilityChangeEvent.productId string L'ID del prodotto (ad es. "app:com.google.android.gm") per il quale è stata modificata la disponibilità del prodotto. Questo campo sarà sempre presente.
notification[].productAvailabilityChangeEvent.availabilityStatus string Il nuovo stato del prodotto. Questo campo sarà sempre presente.

I valori accettati sono:
  • "available"
  • "removed"
  • "unknown"
  • "unpublished"
notification[].newDeviceEvent nested object Notifiche sui nuovi dispositivi.
notification[].newDeviceEvent.userId string L'ID dell'utente. Questo campo sarà sempre presente.
notification[].newDeviceEvent.deviceId string L'ID Android del dispositivo. Questo campo sarà sempre presente.
notification[].newDeviceEvent.managementType string Identifica in che misura il dispositivo è controllato da un provider EMM di Android in varie configurazioni di deployment.

I valori possibili includono:
  • "managedDevice", un dispositivo il cui DPC è impostato come proprietario del dispositivo
  • "managedProfile", un dispositivo in cui il DPC è impostato come proprietario del profilo.


I valori accettati sono:
  • "managedDevice"
  • "managedProfile"
notification[].notificationType string Tipo della notifica.

I valori accettati sono:
  • "appRestricionsSchemaChange"
  • "appUpdate"
  • "deviceReportUpdate"
  • "installFailure"
  • "newDevice"
  • "newPermissions"
  • "productApproval"
  • "productAvailabilityChange"
  • "testNotification"
  • "unknown"
notification[].newDeviceEvent.dpcPackageName string App dei criteri sul dispositivo.
notification[].deviceReportUpdateEvent nested object Notifiche relative agli aggiornamenti dei report sui dispositivi.
notification[].deviceReportUpdateEvent.userId string L'ID dell'utente. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.deviceId string L'ID Android del dispositivo. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report nested object Il report sul dispositivo è stato aggiornato con gli ultimi stati dell'app. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report.lastUpdatedTimestampMillis long Il timestamp dell'ultimo aggiornamento del report espresso in millisecondi a partire dal periodo. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report.appState[] list Elenco di stati delle app impostati dalle app gestite sul dispositivo. Gli stati delle app sono definiti dagli sviluppatori delle app. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report.appState[].packageName string Il nome del pacchetto dell'app. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[] list Elenco degli stati delle app con chiave. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].key string Chiave che indica lo stato per cui l'app fornisce uno stato. I contenuti della chiave vengono impostati dallo sviluppatore dell'app. Per evitare XSS, ti consigliamo di rimuovere il codice HTML dalla chiave prima di visualizzarlo. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].stateTimestampMillis long Timestamp che indica quando l'app ha impostato lo stato in millisecondi dall'epoca. Questo campo sarà sempre presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].severity string Gravità dello stato dell'app. Questo campo sarà sempre presente.

I valori accettati sono:
  • "severityError"
  • "severityInfo"
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message string Messaggio in formato libero e leggibile che descrive lo stato dell'app. Ad esempio, un messaggio di errore. Per evitare XSS, ti consigliamo di rimuovere il codice HTML dal messaggio prima di visualizzarlo.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data string Campo aggiuntivo destinato ai dati leggibili dalle macchine. Ad esempio, un numero o un oggetto JSON. Per evitare XSS, ti consigliamo di rimuovere il codice HTML dai dati prima di visualizzarlo.
kind string