拉取并返回针对以下对象所设企业的通知:
针对请求进行身份验证的服务账号。通知集可能会
为空。
返回的通知集需要在 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">
|
授权
此请求需要获得以下范围的授权:
范围 |
---|
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 |
产品是已获批准还是未获批准。此字段将始终存在。
可接受的值包括:
|
|
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 |
安装失败的原因。此字段将始终存在。
可接受的值包括:
|
|
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 |
产品的新状态。此字段将始终存在。
可接受的值包括:
|
|
notification[].newDeviceEvent |
nested object |
新设备的通知。 | |
notification[].newDeviceEvent.userId |
string |
用户的 ID。此字段将始终存在。 | |
notification[].newDeviceEvent.deviceId |
string |
设备的 Android ID。此字段将始终存在。 | |
notification[].newDeviceEvent.managementType |
string |
确定设备在各种部署配置中受 Android EMM 控制的程度。 可能的值包括:
可接受的值:
|
|
notification[].notificationType |
string |
通知的类型。
可接受的值包括:
|
|
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 |
应用状态的严重性。此字段将始终存在。
可接受的值包括:
|
|
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message |
string |
用于描述应用状态的自由形式、直观易懂的消息。例如一条错误消息。为防止 XSS,我们建议先从消息中移除所有 HTML,然后再显示消息。 | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data |
string |
用于输入机器可读数据的额外字段。例如,数字或 JSON 对象。为防止 XSS,我们建议先从数据中移除所有 HTML,然后再显示数据。 | |
kind |
string |