Pobiera i zwraca zestaw powiadomień dla firm powiązanych z kontem usługi uwierzytelnionym w żądaniu. Jeśli nie ma oczekujących powiadomień, zestaw powiadomień może być pusty.
Zwrócony zestaw powiadomień musi zostać potwierdzony w ciągu 20 sekund przez wywołanie funkcji Enterprises.AcknowledgeNotificationSet, chyba że zestaw powiadomień jest pusty.
Powiadomienia, które nie zostaną potwierdzone w ciągu 20 sekund, zostaną ponownie uwzględnione w odpowiedzi na kolejną prośbę o wyświetlenie zestawu powiadomień, a te, które nigdy nie zostaną potwierdzone, zostaną ostatecznie usunięte zgodnie z zasadami systemu Pub/Sub na platformie Google Cloud Platform.
Możliwe jest równoczesne wysyłanie wielu żądań powiadomień, w którym przypadku oczekujące powiadomienia (jeśli występują) zostaną rozdzielone między poszczególnych wywołujących.
Jeśli nie ma żadnych powiadomień, zwracana jest pusta lista powiadomień.
Kolejne żądania mogą zwracać więcej powiadomień, gdy staną się dostępne.
Żądanie
Żądanie HTTP
POST https://www.googleapis.com/androidenterprise/v1/enterprises/pullNotificationSet
Parametry
Nazwa parametru | Wartość | Opis |
---|---|---|
Parametry opcjonalne zapytania | ||
requestMode |
string |
Tryb żądania pobierania powiadomień.
Jeśli określisz wartość waitForNotifications , żądanie zostanie zablokowane i czekanie na powiadomienia będzie trwać do momentu, aż pojawi się co najmniej 1 powiadomienie. Jeśli po pewnym czasie nie pojawi się żadne powiadomienie, zwrócona zostanie pusta lista powiadomień.
Jeśli określisz parametr returnImmediately , żądanie zwróci od razu oczekujące powiadomienia lub pustą listę, jeśli nie ma żadnych powiadomień.
Jeśli pominiesz tę wartość, zostanie użyta wartość domyślna waitForNotifications .
Akceptowane wartości:
|
Autoryzacja
To żądanie wymaga autoryzacji z tym zakresem:
Zakres |
---|
https://www.googleapis.com/auth/androidenterprise |
Więcej informacji znajdziesz na stronie Uwierzytelnianie i autoryzacja.
Treść żądania
W przypadku tej metody nie podawaj treści żądania.
Odpowiedź
Jeśli operacja się powiedzie, metoda zwróci odpowiedź o tej strukturze:
{ "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 } ] } ] } }, "enterpriseUpgradeEvent": { "upgradeState": string } } ] }
Nazwa usługi | Wartość | Opis | Uwagi |
---|---|---|---|
notificationSetId |
string |
Identyfikator zestawu powiadomień, wymagany do oznaczenia powiadomienia jako odebranego za pomocą interfejsu API Enterprises.AcknowledgeNotification. Jeśli nie ma żadnych powiadomień, ten element zostanie pominięty. | |
notification[] |
list |
Otrzymane powiadomienia lub pusta lista, jeśli nie ma żadnych powiadomień. | |
notification[].enterpriseId |
string |
Identyfikator firmy, dla której wysyłane jest powiadomienie. Będzie ona zawsze widoczna. | |
notification[].timestampMillis |
long |
Czas opublikowania powiadomienia w milisekundach od 1970-01-01T00:00:00Z. Będzie ona zawsze widoczna. | |
notification[].productApprovalEvent |
nested object |
powiadomienia o zmianach stanu zatwierdzenia produktu; | |
notification[].productApprovalEvent.productId |
string |
Identyfikator produktu (np. „app:com.google.android.gm”), którego stan zatwierdzenia się zmienił. To pole będzie zawsze widoczne. | |
notification[].productApprovalEvent.approved |
string |
czy produkt został zatwierdzony. To pole będzie zawsze widoczne.
Akceptowane wartości:
|
|
notification[].installFailureEvent |
nested object |
powiadomienia o nieudanej instalacji aplikacji; | |
notification[].installFailureEvent.productId |
string |
Identyfikator usługi (np. „app:com.google.android.gm”), w której przypadku wystąpiło zdarzenie niepowodzenia instalacji. To pole będzie zawsze widoczne. | |
notification[].installFailureEvent.deviceId |
string |
Identyfikator Androida urządzenia. To pole będzie zawsze widoczne. | |
notification[].installFailureEvent.userId |
string |
Identyfikator użytkownika. To pole będzie zawsze widoczne. | |
notification[].installFailureEvent.failureReason |
string |
Powód niepowodzenia instalacji. To pole będzie zawsze widoczne.
Akceptowane wartości:
|
|
notification[].installFailureEvent.failureDetails |
string |
W razie potrzeby dodatkowe informacje o błędzie. | |
notification[].appUpdateEvent |
nested object |
powiadomienia o aktualizacjach aplikacji; | |
notification[].appUpdateEvent.productId |
string |
Identyfikator zaktualizowanego produktu (np. „app:com.google.android.gm”). To pole będzie zawsze widoczne. | |
notification[].newPermissionsEvent |
nested object |
powiadomienia o nowych uprawnieniach aplikacji; | |
notification[].newPermissionsEvent.productId |
string |
Identyfikator produktu (np. „app:com.google.android.gm”), dla którego dodano nowe uprawnienia. To pole będzie zawsze widoczne. | |
notification[].newPermissionsEvent.requestedPermissions[] |
list |
Zestaw uprawnień, o które prosi aplikacja. Aby uzyskać szczegółowe informacje o tych uprawnieniach, użyj interfejsu API EMM. | |
notification[].newPermissionsEvent.approvedPermissions[] |
list |
Zestaw uprawnień, które administrator firmy już zatwierdził dla tej aplikacji. Aby uzyskać szczegółowe informacje o tych uprawnieniach, użyj interfejsu API EMM. | |
notification[].appRestrictionsSchemaChangeEvent |
nested object |
Powiadomienia o zmianach w schemacie ograniczeń aplikacji. | |
notification[].appRestrictionsSchemaChangeEvent.productId |
string |
Identyfikator produktu (np. „app:com.google.android.gm”), dla którego zmienił się schemat ograniczeń aplikacji. To pole będzie zawsze widoczne. | |
notification[].productAvailabilityChangeEvent |
nested object |
powiadomienia o zmianach dostępności produktów; | |
notification[].productAvailabilityChangeEvent.productId |
string |
Identyfikator produktu (np. „app:com.google.android.gm”), którego dostępność uległa zmianie. To pole będzie zawsze widoczne. | |
notification[].productAvailabilityChangeEvent.availabilityStatus |
string |
Nowy stan produktu. To pole będzie zawsze widoczne.
Akceptowane wartości:
|
|
notification[].newDeviceEvent |
nested object |
powiadomienia o nowych urządzeniach; | |
notification[].newDeviceEvent.userId |
string |
Identyfikator użytkownika. To pole będzie zawsze widoczne. | |
notification[].newDeviceEvent.deviceId |
string |
Identyfikator Androida urządzenia. To pole będzie zawsze widoczne. | |
notification[].newDeviceEvent.managementType |
string |
Określa, w jakim stopniu urządzenie jest kontrolowane przez EMM na Androida w różnych konfiguracjach wdrożenia. Możliwe wartości:
Akceptowane wartości:
|
|
notification[].notificationType |
string |
Typ powiadomienia.
Akceptowane wartości:
|
|
notification[].newDeviceEvent.dpcPackageName |
string |
aplikacji zasad na urządzeniu. | |
notification[].deviceReportUpdateEvent |
nested object |
powiadomienia o aktualizacjach raportów z urządzeń; | |
notification[].deviceReportUpdateEvent.userId |
string |
Identyfikator użytkownika. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.deviceId |
string |
Identyfikator Androida urządzenia. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report |
nested object |
Raport urządzenia z aktualnymi stanami aplikacji. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report.lastUpdatedTimestampMillis |
long |
Sygnatura czasowa ostatniej aktualizacji raportu w milisekundach od początku epoki. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report.appState[] |
list |
Lista stanów aplikacji ustawionych przez aplikacje zarządzane na urządzeniu. Stany aplikacji są definiowane przez deweloperów. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report.appState[].packageName |
string |
Nazwa pakietu aplikacji. To pole jest zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[] |
list |
Lista stanów aplikacji z kluczami. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].key |
string |
Klucz wskazujący, dla czego aplikacja udostępnia stan. Treść klucza jest ustawiana przez dewelopera aplikacji. Aby zapobiec XSS, zalecamy usunięcie z klucza wszelkich elementów HTML przed jego wyświetleniem. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].stateTimestampMillis |
long |
Sygnatura czasowa ustawienia stanu przez aplikację w milisekundach od początku epoki. To pole będzie zawsze widoczne. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].severity |
string |
Poważne naruszenie stanu aplikacji. To pole będzie zawsze widoczne.
Akceptowane wartości:
|
|
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message |
string |
Zrozumiały dla człowieka ciąg tekstowy opisujący stan aplikacji. Może to być na przykład komunikat o błędzie. Aby zapobiec atakom XSS, zalecamy usunięcie z wiadomości wszelkich elementów HTML przed jej wyświetleniem. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data |
string |
Dodatkowe pole przeznaczone do danych czytelnych dla komputera. Może to być na przykład liczba lub obiekt JSON. Aby zapobiec atakom XSS, zalecamy usunięcie z danych wszelkich elementów HTML przed ich wyświetleniem. | |
kind |
string |
||
notification[].enterpriseUpgradeEvent |
nested object |
Powiadomienia o uaktualnieniu wersji dla firm. | |
notification[].enterpriseUpgradeEvent.upgradeState |
string |
Stan uaktualnienia.
Akceptowane wartości:
|