Enterprises: pullNotificationSet

Extrai e retorna um conjunto de notificações para as empresas associadas à conta de serviço autenticada para a solicitação. O conjunto de notificações pode estar vazio se nenhuma notificação estiver pendente.
Um conjunto de notificações retornado precisa ser confirmado em 20 segundos chamando Enterprises.AcknowledgeNotificationSet, a menos que o conjunto de notificações esteja vazio.
As notificações que não forem confirmadas nos 20 segundos serão incluídas novamente na resposta a outra solicitação PullNotificationSet, e as que nunca forem confirmadas serão excluídas de acordo com a política do sistema do Pub/Sub do Google Cloud Platform.
Várias solicitações podem ser realizadas simultaneamente para recuperar notificações. Nesse caso, as notificações pendentes (se houver) serão divididas entre cada autor da chamada, se houver alguma pendente.
Se não houver notificações, uma lista de notificações vazia será retornada. As próximas solicitações poderão retornar mais notificações assim que estiverem disponíveis.

Solicitação

Solicitação HTTP

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

Parâmetros

Nome do parâmetro Valor Descrição
Parâmetros de consulta opcionais
requestMode string O modo de solicitação para envio de notificações.
Especificar waitForNotifications fará com que a solicitação seja bloqueada e aguarde até que uma ou mais notificações estejam presentes ou retorne uma lista de notificações vazia se nenhuma notificação for exibida após algum tempo.
Especificar returnImmediately fará com que a solicitação retorne imediatamente as notificações pendentes ou uma lista vazia se nenhuma notificação estiver presente.
Se omitido, o padrão é waitForNotifications.

Os valores aceitáveis são os seguintes:
  • "returnImmediately"
  • "waitForNotifications"

Autorização

Esta solicitação requer autorização com o seguinte escopo:

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

Para mais informações, consulte a página de autenticação e autorização.

Corpo da solicitação

Não forneça um corpo de solicitação com este método.

Resposta

Se for bem-sucedido, esse método retornará um corpo de resposta com esta estrutura:

{
  "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 da propriedade Valor Descrição Observações
notificationSetId string O ID do conjunto de notificações, obrigatório para marcar a notificação como recebida com a API Enterprises.AcknowledgeNotification. Isso será omitido se não houver notificações.
notification[] list As notificações recebidas ou vazias se não houver notificações.
notification[].enterpriseId string O ID da empresa para a qual a notificação é enviada. Ele sempre estará presente.
notification[].timestampMillis long A hora em que a notificação foi publicada em milissegundos desde 1970-01-01T00:00:00Z. Ele sempre estará presente.
notification[].productApprovalEvent nested object Notificações sobre mudanças no status de aprovação de um produto.
notification[].productApprovalEvent.productId string O ID do produto (por exemplo, "app:com.google.android.gm") cujo status de aprovação mudou. Este campo sempre estará presente.
notification[].productApprovalEvent.approved string Se o produto foi aprovado ou não. Este campo sempre estará presente.

Os valores aceitáveis são:
  • "approved"
  • "unapproved"
  • "unknown"
notification[].installFailureEvent nested object Notificações sobre uma falha na instalação do app.
notification[].installFailureEvent.productId string O ID do produto (por exemplo, "app:com.google.android.gm") em que ocorreu o evento de falha na instalação. Este campo sempre estará presente.
notification[].installFailureEvent.deviceId string O ID do dispositivo Android. Este campo sempre estará presente.
notification[].installFailureEvent.userId string O ID do usuário. Este campo sempre estará presente.
notification[].installFailureEvent.failureReason string O motivo da falha de instalação. Este campo sempre estará presente.

Os valores aceitáveis são:
  • "timeout"
  • "unknown"
notification[].installFailureEvent.failureDetails string Detalhes adicionais sobre a falha, se aplicável.
notification[].appUpdateEvent nested object Notificações sobre atualizações de apps.
notification[].appUpdateEvent.productId string O ID do produto (por exemplo, "app:com.google.android.gm") que foi atualizado. Este campo sempre estará presente.
notification[].newPermissionsEvent nested object Notificações sobre novas permissões de apps.
notification[].newPermissionsEvent.productId string O ID do produto (por exemplo, "app:com.google.android.gm") a que foram adicionadas novas permissões. Este campo sempre estará presente.
notification[].newPermissionsEvent.requestedPermissions[] list O conjunto de permissões que o app está solicitando no momento. Use Permissions.Get na API EMM para recuperar detalhes sobre essas permissões.
notification[].newPermissionsEvent.approvedPermissions[] list O conjunto de permissões que o administrador da empresa já aprovou para este app. Use Permissions.Get na API EMM para recuperar detalhes sobre essas permissões.
notification[].appRestrictionsSchemaChangeEvent nested object Notificações sobre novas mudanças no esquema de restrições de app.
notification[].appRestrictionsSchemaChangeEvent.productId string O ID do produto (por exemplo, "app:com.google.android.gm") que teve o esquema de restrição do app alterado. Este campo sempre estará presente.
notification[].productAvailabilityChangeEvent nested object Notificações sobre mudanças na disponibilidade dos produtos.
notification[].productAvailabilityChangeEvent.productId string O ID do produto (por exemplo, "app:com.google.android.gm") para o qual a disponibilidade do produto mudou. Este campo sempre estará presente.
notification[].productAvailabilityChangeEvent.availabilityStatus string O novo estado do produto. Este campo sempre estará presente.

Os valores aceitáveis são:
  • "available"
  • "removed"
  • "unknown"
  • "unpublished"
notification[].newDeviceEvent nested object Notificações sobre novos dispositivos.
notification[].newDeviceEvent.userId string O ID do usuário. Este campo sempre estará presente.
notification[].newDeviceEvent.deviceId string O ID do dispositivo Android. Este campo sempre estará presente.
notification[].newDeviceEvent.managementType string Identifica até que ponto o dispositivo é controlado por um EMM Android em várias configurações de implantação.

Os valores possíveis são os seguintes:
  • "managedDevice", um dispositivo em que o DPC está definido como proprietário do dispositivo;
  • "managedProfile", um dispositivo em que o DPC está definido como proprietário do perfil.


Os valores aceitáveis são os seguintes:
  • "managedDevice"
  • "managedProfile"
notification[].notificationType string Tipo de notificação.

Os valores aceitáveis são:
  • "appRestricionsSchemaChange"
  • "appUpdate"
  • "deviceReportUpdate"
  • "installFailure"
  • "newDevice"
  • "newPermissions"
  • "productApproval"
  • "productAvailabilityChange"
  • "testNotification"
  • "unknown"
notification[].newDeviceEvent.dpcPackageName string Política no dispositivo.
notification[].deviceReportUpdateEvent nested object Notificações sobre atualizações de relatórios do dispositivo.
notification[].deviceReportUpdateEvent.userId string O ID do usuário. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.deviceId string O ID do dispositivo Android. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.report nested object O relatório do dispositivo foi atualizado com os estados mais recentes do app. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.report.lastUpdatedTimestampMillis long O carimbo de data/hora da última atualização do relatório em milissegundos desde época. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.report.appState[] list Lista de estados de apps definidos por apps gerenciados no dispositivo. Os estados são definidos pelos desenvolvedores. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.report.appState[].packageName string O nome do pacote do app. Esse campo sempre estará presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[] list Lista de estados de app com chave. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].key string Chave que indica para que o app fornece um estado. O conteúdo da chave é definido pelo desenvolvedor do app. Para evitar XSS, recomendamos a remoção de qualquer HTML da chave antes da exibição. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].stateTimestampMillis long Carimbo de data/hora de quando o app definiu o estado em milissegundos desde a época. Este campo sempre estará presente.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].severity string Gravidade do estado do app. Este campo sempre estará presente.

Os valores aceitáveis são:
  • "severityError"
  • "severityInfo"
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message string Mensagem em formato livre e legível que descreve o estado do app. Por exemplo, uma mensagem de erro. Para evitar XSS, recomendamos que você remova qualquer HTML da mensagem antes de exibi-la.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data string Campo adicional destinado a dados legíveis por máquina. Por exemplo, um número ou objeto JSON. Para evitar XSS, recomendamos remover qualquer HTML dos dados antes de exibi-lo.
kind string