Enterprises: pullNotificationSet

拉取并返回针对以下对象所设企业的通知: 针对请求进行身份验证的服务账号。通知集可能会 为空。
返回的通知集需要在 20 秒内确认 通过调用 Enterprises.AcknowledgeNotificationSet, 通知设置为空。
如果您未在 20 秒内确认通知, 最终会再次包含在对另一个 PullNotificationSet 的响应中 那些从未被确认的请求最终会被删除 将遵守 Google Cloud Platform Pub/Sub 系统政策
可以同时执行多个请求,以检索 通知,在这种情况下,待处理通知(如果有)将 分配(如果有待处理的调用)。
如果没有通知,则返回空的通知列表。 后续请求可能会在有更多通知可用时返回更多通知。

请求

HTTP 请求

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

参数

参数名称 说明
可选的查询参数
requestMode string 用于拉取通知的请求模式。
如果指定 waitForNotifications, 阻止并等待一条或多条通知显示,或者返回 如果一段时间后未显示任何通知,则通知列表为空。
指定 returnImmediately 会导致请求立即返回待处理的通知,如果没有通知,则返回空列表。
如果省略,则默认为 waitForNotifications

可接受的值包括: <ph type="x-smartling-placeholder">
    </ph>
  • returnImmediately
  • waitForNotifications

授权

此请求需要获得以下范围的授权:

范围
https://www.googleapis.com/auth/androidenterprise

如需了解详情,请参阅身份验证和授权页面。

请求正文

使用此方法时请勿提供请求正文。

响应

如果成功,此方法将返回采用以下结构的响应正文:

{
  "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
                }
              ]
            }
          ]
        }
      }
    }
  ]
}
属性名称 说明 备注
notificationSetId string 通知集 ID,需要使用 Enterprises.AcknowledgeNotification API 将通知标记为已收到。如果没有通知,此参数会被忽略。
notification[] list 收到的通知,如果没有通知,则为空。
notification[].enterpriseId string 接收通知的企业的 ID。此字段将始终存在。
notification[].timestampMillis long 通知的发布时间(以毫秒计,从 1970-01-01T00:00:00Z 开始)。此字段将始终存在。
notification[].productApprovalEvent nested object 有关商品审批状态变化的通知。
notification[].productApprovalEvent.productId string 审批状态已更改的产品的 ID(例如“app:com.google.android.gm”)。此字段将始终存在。
notification[].productApprovalEvent.approved string 产品是已获批准还是未获批准。此字段将始终存在。

可接受的值包括:
  • approved
  • unapproved
  • unknown
notification[].installFailureEvent nested object 有关应用安装失败的通知。
notification[].installFailureEvent.productId string 发生安装失败事件的产品 ID(例如“app:com.google.android.gm”)。此字段将始终存在。
notification[].installFailureEvent.deviceId string 设备的 Android ID。此字段将始终存在。
notification[].installFailureEvent.userId string 用户的 ID。此字段将始终存在。
notification[].installFailureEvent.failureReason string 安装失败的原因。此字段将始终存在。

可接受的值包括:
  • timeout
  • unknown
notification[].installFailureEvent.failureDetails string 有关失败情况的其他详细信息(如果适用)。
notification[].appUpdateEvent nested object 有关应用更新的通知。
notification[].appUpdateEvent.productId string 已更新的产品的 ID(例如“app:com.google.android.gm”)。此字段将始终存在。
notification[].newPermissionsEvent nested object 关于新应用权限的通知。
notification[].newPermissionsEvent.productId string 添加了新权限的产品的 ID(例如“app:com.google.android.gm”)。此字段将始终存在。
notification[].newPermissionsEvent.requestedPermissions[] list 应用当前请求的权限集。您可以使用 EMM API 中的 Permissions.Get 检索这些权限的详细信息。
notification[].newPermissionsEvent.approvedPermissions[] list 企业管理员已为此应用批准的权限集。使用 EMM API 上的 Permissions.Get 检索有关这些权限的详细信息。
notification[].appRestrictionsSchemaChangeEvent nested object 关于新应用限制架构变更的通知。
notification[].appRestrictionsSchemaChangeEvent.productId string 应用限制架构发生更改的产品的 ID(例如“app:com.google.android.gm”)。此字段将始终存在。
notification[].productAvailabilityChangeEvent nested object 关于商品库存状况变化的通知。
notification[].productAvailabilityChangeEvent.productId string 商品库存状况发生变化的商品的 ID(例如“app:com.google.android.gm”)。此字段将始终存在。
notification[].productAvailabilityChangeEvent.availabilityStatus string 产品的新状态。此字段将始终存在。

可接受的值包括:
  • available
  • removed
  • unknown
  • unpublished
notification[].newDeviceEvent nested object 新设备的通知。
notification[].newDeviceEvent.userId string 用户的 ID。此字段将始终存在。
notification[].newDeviceEvent.deviceId string 设备的 Android ID。此字段将始终存在。
notification[].newDeviceEvent.managementType string 确定设备在各种部署配置中受 Android EMM 控制的程度。

可能的值包括:
  • managedDevice”,即 DPC 设为设备所有者的设备;
  • managedProfile”,将 DPC 设置为资料所有者的设备。


可接受的值:
  • managedDevice
  • managedProfile
notification[].notificationType string 通知的类型。

可接受的值包括:
  • appRestricionsSchemaChange
  • appUpdate
  • deviceReportUpdate
  • installFailure
  • newDevice
  • newPermissions
  • productApproval
  • productAvailabilityChange
  • testNotification
  • unknown
notification[].newDeviceEvent.dpcPackageName string 设备上的政策应用。
notification[].deviceReportUpdateEvent nested object 设备报告更新通知。
notification[].deviceReportUpdateEvent.userId string 用户的 ID。此字段将始终存在。
notification[].deviceReportUpdateEvent.deviceId string 设备的 Android ID。此字段将始终存在。
notification[].deviceReportUpdateEvent.report nested object 设备报告已更新为显示最新的应用状态。此字段将始终存在。
notification[].deviceReportUpdateEvent.report.lastUpdatedTimestampMillis long 上次报告更新的时间戳(以毫秒为单位,从 Epoch 起算)。此字段将始终存在。
notification[].deviceReportUpdateEvent.report.appState[] list 设备上的受管理应用设置的应用状态列表。应用状态由应用开发者定义。此字段将始终存在。
notification[].deviceReportUpdateEvent.report.appState[].packageName string 应用的软件包名称。此字段将始终存在。
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[] list 键控应用状态列表。此字段将始终存在。
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].key string 指示应用为什么提供状态的键。密钥的内容由应用开发者设置。为防止 XSS 攻击,我们建议您在显示密钥之前从中移除所有 HTML。此字段将始终存在。
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].stateTimestampMillis long 应用设置状态时的时间戳(以毫秒为单位,从 Epoch 起算)。此字段将始终存在。
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].severity string 应用状态的严重性。此字段将始终存在。

可接受的值包括:
  • severityError
  • severityInfo
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message string 用于描述应用状态的自由形式、直观易懂的消息。例如一条错误消息。为防止 XSS,我们建议先从消息中移除所有 HTML,然后再显示消息。
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data string 用于输入机器可读数据的额外字段。例如,数字或 JSON 对象。为防止 XSS,我们建议先从数据中移除所有 HTML,然后再显示数据。
kind string