Odwiedź Interfejs Chrome Management App Details API , aby zapoznać się z funkcjami interfejsu API.
Wszystkie poniższe żądania używają następujących zmiennych:
$TOKEN
– token OAuth 2$CUSTOMER
– identyfikator klienta lub literałumy_customer
.
Pobieranie informacji o aplikacji Chrome lub rozszerzeniu do Chrome
Aby wyświetlić szczegółowe informacje o konkretnej aplikacji Chrome, użyj
Punkt końcowy /apps/chrome/{app_id}@{app_version}
.
Żądanie
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/chrome/abcdefghijklmnopqrstuvwxyzabcdef@1.2.3"
Odpowiedź
{
"name": "customers/<customer>/apps/chrome/abcdefghijklmnopqrstuvwxyzabcdef@1.2.3",
"displayName": "Sample Google Chrome Extension",
"description": "A sample Google Chrome extension.",
"revisionId": "1.2.3",
"type": "CHROME",
"iconUri": "https://sample.chrome.extension.google.com/icon.png",
"detailUri": "https://chrome.google.com/webstore/detail/abcdefghijklmnopqrstuvwxyzabcdef",
"firstPublishTime": "2010-10-10T10:10:10.123456Z",
"latestPublishTime": "2020-10-10T10:10:10.123456Z",
"publisher": "sample.com",
"homepageUri": "http://sample.chrome.extension.google.com/home",
"reviewNumber": "10000",
"reviewRating": 4.5,
"chromeAppInfo": {
"supportEnabled": false,
"minUserCount": 6000000,
"permissions": [
{
"type": "content_security_policy",
"documentationUri": "https://developer.chrome.com/extensions/contentSecurityPolicy",
"accessUserData": false
},
{
"type": "contextmenus",
"documentationUri": "https://developer.chrome.com/extensions/contextMenus",
"accessUserData": false
},
],
"siteAccess": [
{
"hostMatch": "<all_urls>"
}
],
"isTheme": false,
"googleOwned": true,
"isCwsHosted": true
}
}
Pobieranie informacji o aplikacji na Androida
Aby wyświetlić szczegółowe informacje o konkretnej aplikacji na Androida, użyj
Punkt końcowy /apps/android/{app_id}@{app_version}
.
Żądanie
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/android/com.google.android.sample@1.2.3"
Odpowiedź
{
"name": "customers/<customer>/apps/android/com.google.android.sample@1.2.3",
"displayName": "Sample Android App",
"description": "A sample Android app.",
"appId": "com.google.android.sample",
"revisionId": "1.2.3",
"type": "ANDROID",
"iconUri": "https://sample.android.app.google.com/icon.png",
"detailUri": "https://play.google.com/store/apps/details?id=com.google.android.sample",
"firstPublishTime": "2010-10-10T10:10:10.123456Z",
"latestPublishTime": "2020-10-10T10:10:10.123456Z",
"publisher": "Google LLC",
"isPaidApp": true,
"homepageUri": "http://sample.android.app.google.com/home",
"privacyPolicyUri": "http://sample.android.app.google.com/privacy",
"reviewNumber": "10000",
"reviewRating": 4.5,
"androidAppInfo": {
"permissions": [
{
"type": "android.permission.CAMERA"
},
]
}
}
Pobieranie informacji o progresywnej aplikacji internetowej
Aby wyświetlić szczegółowe informacje o konkretnej Prgoressive Web App, użyj
Punkt końcowy /apps/web/{app_id}
.
Pamiętaj, że identyfikator aplikacji to zakodowana w adresie URL jej strona główna.
Żądanie
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/web/http%3A%2F%2Fsample.web.app.google.com%2F"
Odpowiedź
{
"name": "customers/<customer>/apps/web/http%3A%2F%sample.web.app.google.com%2F",
"displayName": "sample.web.app.google.com",
"description": "A sample Progressive Web App.",
"appId": "http://sample.web.app.google.com/",
"type": "WEB",
"iconUri": "http://sample.web.app.google.com/icon.png"
}
Wyświetlanie listy żądanych rozszerzeń do Chrome
Aby wyświetlić listę żądanych aplikacji Chrome, użyj
Punkt końcowy /apps:countChromeAppRequests
.
Żądanie
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps:countChromeAppRequests"
Odpowiedź
{
"requestedApps": [
{
"appId": "abcdefghijklmnopqrstuvwxyzabcdef",
"displayName": "Sample Google Chrome Extension",
"appDetails": "customers/<customer>/apps/chrome/abcdefghijklmnopqrstuvwxyzabcdef",
"iconUri": "https://sample.chrome.extension.google.com/icon.png",
"detailUri": "https://chrome.google.com/webstore/detail/abcdefghijklmnopqrstuvwxyzabcdef",
"requestCount": "1",
"latestRequestTime": "2020-10-10T10:10:10.123456Z"
},
],
"totalSize": 1
}
Podejmowanie działań w odpowiedzi na prośby o rozszerzenie
Aby podejmować odpowiednie działania w odpowiedzi na żądania aplikacji wysyłane przez użytkowników, musisz użyć interfejsu Chrome Policy API. Aby uzyskać dostęp do interfejsu API, postępuj zgodnie z przewodnikiem konfiguracji. Zyskasz wtedy możliwość wysyłania żądań do tego interfejsu API w celu wykonywania różnych działań. Przykłady żądań związanych z aplikacją znajdziesz tutaj. Poniżej znajdziesz przykłady typowych działań, które możesz wykonać w odpowiedzi na żądanie z aplikacji.
Zatwierdzanie prośby o ręczną instalację rozszerzeń przez użytkownika lub urządzenia z jednostki organizacyjnej
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-d '{
requests: [{
policyTargetKey: {
targetResource: "orgunits/04fatzly4jbjho9",
additionalTargetKeys: {"app_id": "chrome:abcdefghijklmnopqrstuvwxyzabcdef"}
},
policyValue: {
policySchema: "chrome.users.apps.InstallType",
value: {appInstallType: "ALLOWED"}
},
updateMask: {paths: "appInstallType"}
}]
}' \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"
Pomyślna odpowiedź powinna być pusta:
{}
Odrzuć prośbę o przedłużenie dostępu do wszystkich użytkowników/urządzeń w jednostce organizacyjnej
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-d '{
requests: [{
policyTargetKey: {
targetResource: "orgunits/04fatzly4jbjho9",
additionalTargetKeys: {"app_id": "chrome:abcdefghijklmnopqrstuvwxyzabcdef"}
},
policyValue: {
policySchema: "chrome.users.apps.InstallType",
value: {appInstallType: "BLOCKED"}
},
updateMask: {paths: "appInstallType"}
}]
}' \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"
Pomyślna odpowiedź powinna być pusta:
{}
Wymuszaj instalację rozszerzenia dla wszystkich użytkowników lub urządzeń w jednostce organizacyjnej
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-d '{
requests: [{
policyTargetKey: {
targetResource: "orgunits/04fatzly4jbjho9",
additionalTargetKeys: {"app_id": "chrome:abcdefghijklmnopqrstuvwxyzabcdef"}
},
policyValue: {
policySchema: "chrome.users.apps.InstallType",
value: {appInstallType: "FORCED"}
},
updateMask: {paths: "appInstallType"}
}]
}' \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"
Pomyślna odpowiedź powinna być pusta:
{}