نماذج الرموز لواجهة برمجة تطبيقات إدارة Chrome / تفاصيل الإضافات
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
زيارة الموقع
واجهة برمجة التطبيقات لتفاصيل تطبيق إدارة Chrome
للحصول على نظرة عامة حول ميزات واجهة برمجة التطبيقات.
تستخدِم جميع الطلبات الموضّحة أدناه المتغيّرات التالية:
$TOKEN
- رمز OAuth 2 المميز
$CUSTOMER
- رقم تعريف العميل أو الحرف my_customer
الحصول على تفاصيل حول أحد تطبيقات أو إضافات Chrome
لعرض تفاصيل حول تطبيق معيّن في Chrome، استخدِم
نقطة نهاية /apps/chrome/{app_id}@{app_version}
.
الطلب
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/chrome/abcdefghijklmnopqrstuvwxyzabcdef@1.2.3"
الرد
{
"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
}
}
الحصول على تفاصيل تطبيق Android
لعرض تفاصيل حول تطبيق Android معيّن، استخدم
نقطة نهاية /apps/android/{app_id}@{app_version}
.
الطلب
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/android/com.google.android.sample@1.2.3"
الرد
{
"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"
},
]
}
}
الحصول على تفاصيل تطبيق ويب تقدّمي
للاطّلاع على تفاصيل عن تطبيق ويب Prgoressive معيّن، استخدِم
نقطة نهاية /apps/web/{app_id}
.
يُرجى العِلم أنّ معرّف التطبيق هو الصفحة الرئيسية للتطبيق مرمّزًا بعنوان URL.
الطلب
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"
الرد
{
"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"
}
إدراج إضافات Chrome المطلوبة
لإدراج تطبيقات Chrome المطلوبة، استخدِم
نقطة نهاية /apps:countChromeAppRequests
.
الطلب
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps:countChromeAppRequests"
الرد
{
"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
}
اتّخاذ إجراءات بشأن طلبات الإضافات
لاتخاذ الإجراء المناسب بشأن طلبات التطبيق من المستخدمين النهائيين، عليك استخدام Chrome Policy API. اتّبِع دليل الإعداد للوصول إلى واجهة برمجة التطبيقات. بعد ذلك، ستتمكّن من تقديم طلبات إلى واجهة برمجة التطبيقات هذه لتنفيذ إجراءات مختلفة. يمكن العثور هنا على نماذج لتقديم الطلبات المتعلّقة بالتطبيقات. في ما يلي أمثلة على الإجراءات الشائعة التي يمكنك اتّخاذها عند طلب أحد التطبيقات.
الموافقة على طلب الإضافة للتثبيت اليدوي من قِبل المستخدم أو الأجهزة ضمن وحدة تنظيمية
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"
يجب أن يكون الرد الناجح فارغًا:
{}
رفض طلب الإضافة لجميع المستخدمين/الأجهزة ضمن وحدة تنظيمية
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"
يجب أن يكون الرد الناجح فارغًا:
{}
تثبيت الإضافة تلقائيًا لجميع المستخدمين/الأجهزة ضمن وحدة تنظيمية
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"
يجب أن يكون الرد الناجح فارغًا:
{}
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eThis documentation outlines how to use the Chrome Management APIs to retrieve details for Chrome apps, Android apps, and Progressive Web Apps.\u003c/p\u003e\n"],["\u003cp\u003eYou can fetch app details like name, description, permissions, and publisher information using specific endpoints and an OAuth 2 token.\u003c/p\u003e\n"],["\u003cp\u003eThe documentation also explains how to list requested Chrome extensions and their associated request counts.\u003c/p\u003e\n"],["\u003cp\u003eFinally, it provides guidance on how to use the Chrome Policy API to approve, deny, or force-install extension requests for specific organizational units.\u003c/p\u003e\n"]]],[],null,["# Code Samples for the Chrome Management App / Extension Details API\n\nVisit\n[Chrome Management App Details API](/chrome/management/guides/app_details_api)\nfor an overview of API features.\n\nAll the requests shown below use the following variables:\n\n- `$TOKEN` - OAuth 2 token\n- `$CUSTOMER` - ID of the customer or literal `my_customer`\n\nGet details for a Chrome app / extension\n----------------------------------------\n\nTo view details about a specific Chrome app, use the\n`/apps/chrome/{app_id}@{app_version}` endpoint.\n\n#### Request\n\n curl -X GET \\\n -H \"Authorization: Bearer $TOKEN\" \\\n \"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/chrome/abcdefghijklmnopqrstuvwxyzabcdef@1.2.3\"\n\n#### Response\n\n {\n \"name\": \"customers/\u003ccustomer\u003e/apps/chrome/abcdefghijklmnopqrstuvwxyzabcdef@1.2.3\",\n \"displayName\": \"Sample Google Chrome Extension\",\n \"description\": \"A sample Google Chrome extension.\",\n \"revisionId\": \"1.2.3\",\n \"type\": \"CHROME\",\n \"iconUri\": \"https://sample.chrome.extension.google.com/icon.png\",\n \"detailUri\": \"https://chrome.google.com/webstore/detail/abcdefghijklmnopqrstuvwxyzabcdef\",\n \"firstPublishTime\": \"2010-10-10T10:10:10.123456Z\",\n \"latestPublishTime\": \"2020-10-10T10:10:10.123456Z\",\n \"publisher\": \"sample.com\",\n \"homepageUri\": \"http://sample.chrome.extension.google.com/home\",\n \"reviewNumber\": \"10000\",\n \"reviewRating\": 4.5,\n \"chromeAppInfo\": {\n \"supportEnabled\": false,\n \"minUserCount\": 6000000,\n \"permissions\": [\n {\n \"type\": \"content_security_policy\",\n \"documentationUri\": \"https://developer.chrome.com/extensions/contentSecurityPolicy\",\n \"accessUserData\": false\n },\n {\n \"type\": \"contextmenus\",\n \"documentationUri\": \"https://developer.chrome.com/extensions/contextMenus\",\n \"accessUserData\": false\n },\n ],\n \"siteAccess\": [\n {\n \"hostMatch\": \"\u003call_urls\u003e\"\n }\n ],\n \"isTheme\": false,\n \"googleOwned\": true,\n \"isCwsHosted\": true\n }\n }\n\nGet details for an Android app\n------------------------------\n\nTo view details about a specific Android app, use the\n`/apps/android/{app_id}@{app_version}` endpoint.\n\n#### Request\n\n curl -X GET \\\n -H \"Authorization: Bearer $TOKEN\" \\\n \"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/android/com.google.android.sample@1.2.3\"\n\n#### Response\n\n {\n \"name\": \"customers/\u003ccustomer\u003e/apps/android/com.google.android.sample@1.2.3\",\n \"displayName\": \"Sample Android App\",\n \"description\": \"A sample Android app.\",\n \"appId\": \"com.google.android.sample\",\n \"revisionId\": \"1.2.3\",\n \"type\": \"ANDROID\",\n \"iconUri\": \"https://sample.android.app.google.com/icon.png\",\n \"detailUri\": \"https://play.google.com/store/apps/details?id=com.google.android.sample\",\n \"firstPublishTime\": \"2010-10-10T10:10:10.123456Z\",\n \"latestPublishTime\": \"2020-10-10T10:10:10.123456Z\",\n \"publisher\": \"Google LLC\",\n \"isPaidApp\": true,\n \"homepageUri\": \"http://sample.android.app.google.com/home\",\n \"privacyPolicyUri\": \"http://sample.android.app.google.com/privacy\",\n \"reviewNumber\": \"10000\",\n \"reviewRating\": 4.5,\n \"androidAppInfo\": {\n \"permissions\": [\n {\n \"type\": \"android.permission.CAMERA\"\n },\n ]\n }\n }\n\nGet details for a Progressive Web App\n-------------------------------------\n\nTo view details about a specific Prgoressive Web App, use the\n`/apps/web/{app_id}` endpoint.\nNote that the app id is the URL-encoded app home page.\n\n#### Request\n\n curl -X GET \\\n -H \"Authorization: Bearer $TOKEN\" \\\n \"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps/web/http%3A%2F%2Fsample.web.app.google.com%2F\"\n\n#### Response\n\n {\n \"name\": \"customers/\u003ccustomer\u003e/apps/web/http%3A%2F%sample.web.app.google.com%2F\",\n \"displayName\": \"sample.web.app.google.com\",\n \"description\": \"A sample Progressive Web App.\",\n \"appId\": \"http://sample.web.app.google.com/\",\n \"type\": \"WEB\",\n \"iconUri\": \"http://sample.web.app.google.com/icon.png\"\n }\n\nList requested Chrome extensions\n--------------------------------\n\nTo list requested Chrome apps, use the\n`/apps:countChromeAppRequests` endpoint.\n\n#### Request\n\n curl -X GET \\\n -H \"Authorization: Bearer $TOKEN\" \\\n \"https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/apps:countChromeAppRequests\"\n\n#### Response\n\n {\n \"requestedApps\": [\n {\n \"appId\": \"abcdefghijklmnopqrstuvwxyzabcdef\",\n \"displayName\": \"Sample Google Chrome Extension\",\n \"appDetails\": \"customers/\u003ccustomer\u003e/apps/chrome/abcdefghijklmnopqrstuvwxyzabcdef\",\n \"iconUri\": \"https://sample.chrome.extension.google.com/icon.png\",\n \"detailUri\": \"https://chrome.google.com/webstore/detail/abcdefghijklmnopqrstuvwxyzabcdef\",\n \"requestCount\": \"1\",\n \"latestRequestTime\": \"2020-10-10T10:10:10.123456Z\"\n },\n ],\n \"totalSize\": 1\n }\n\n### Taking action on extension requests\n\nTo take an appropriate action on app requests from end users, you will need to use the [Chrome Policy API](/chrome/policy). Follow the [setup guide](/chrome/policy/guides/setup) to get access to the API. Then you will be able to make requests to that API to take various actions. Samples for making app related requests can be found [here](/chrome/policy/guides/app_samples_policyapi). The following are examples of common actions you can take on an app request.\n\n#### Approve extension request for manual install by the user/devices under an OU\n\n curl -X POST \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $TOKEN\" \\\n -d '{\n requests: [{\n policyTargetKey: {\n targetResource: \"orgunits/04fatzly4jbjho9\",\n additionalTargetKeys: {\"app_id\": \"chrome:abcdefghijklmnopqrstuvwxyzabcdef\"}\n },\n policyValue: {\n policySchema: \"chrome.users.apps.InstallType\",\n value: {appInstallType: \"ALLOWED\"}\n },\n updateMask: {paths: \"appInstallType\"}\n }]\n }' \\\n \"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify\"\n\nA successful response should be empty: \n\n {}\n\n#### Deny extension request for all users/devices under an OU\n\n curl -X POST \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $TOKEN\" \\\n -d '{\n requests: [{\n policyTargetKey: {\n targetResource: \"orgunits/04fatzly4jbjho9\",\n additionalTargetKeys: {\"app_id\": \"chrome:abcdefghijklmnopqrstuvwxyzabcdef\"}\n },\n policyValue: {\n policySchema: \"chrome.users.apps.InstallType\",\n value: {appInstallType: \"BLOCKED\"}\n },\n updateMask: {paths: \"appInstallType\"}\n }]\n }' \\\n \"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify\"\n\nA successful response should be empty: \n\n {}\n\n#### Force install extension for all users/devices under an OU\n\n curl -X POST \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $TOKEN\" \\\n -d '{\n requests: [{\n policyTargetKey: {\n targetResource: \"orgunits/04fatzly4jbjho9\",\n additionalTargetKeys: {\"app_id\": \"chrome:abcdefghijklmnopqrstuvwxyzabcdef\"}\n },\n policyValue: {\n policySchema: \"chrome.users.apps.InstallType\",\n value: {appInstallType: \"FORCED\"}\n },\n updateMask: {paths: \"appInstallType\"}\n }]\n }' \\\n \"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify\"\n\nA successful response should be empty: \n\n {}"]]