Enterprises: pullNotificationSet

提取並傳回與 已依此要求完成驗證的服務帳戶。通知設定則可能是 如果沒有待處理的通知,則會空白。
傳回的通知集需要在 20 秒內確認 呼叫 Enterprises.AcknowledgeNotificationSet,除非 通知集空白。
如未在 20 秒內確認通知, 最終會再次包含在對另一個 PullNotificationSet 的回應中 任何從未確認過的要求都將遭到刪除 更新依據。
可能會同時執行多項要求來擷取 在這種情況下,系統會發出待處理通知 (如有) 就會分配給每個呼叫端 (如果有任何待處理)。
如果沒有任何通知,則會傳回空白的通知清單。 後續要求可能會在送出後傳回更多通知 廣告。

要求

HTTP 要求

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

參數

參數名稱 說明
選用的查詢參數
requestMode string 提取通知的要求模式。
指定 waitForNotifications 將會讓要求: 封鎖並等待系統顯示一或多則通知,或是傳回 如果一段時間後沒有通知,則系統空白通知清單。
指定 returnImmediately 會導致要求: 立即傳回待處理通知;如果沒有,則傳回空白清單 都存在。
省略時,會預設為 waitForNotifications

可接受的值為:
  • 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 應用程式目前要求的權限組合。使用 Permissions.Get 在 EMM API 擷取這些權限的詳細資料。
notification[].newPermissionsEvent.approvedPermissions[] list 企業管理員已針對這個應用程式核准的權限組合。使用 Permissions.Get 在 EMM API 擷取這些權限的詳細資料。
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