مرجع واجهة برمجة التطبيقات

تحتاج معظم الإضافات إلى الوصول إلى واجهة برمجة تطبيقات واحدة أو أكثر من واجهات برمجة تطبيقات إضافات Chrome لكي تعمل. يصف مرجع واجهة برمجة التطبيقات هذا واجهات برمجة التطبيقات المتاحة للاستخدام في الإضافات ويقدّم أمثلة لحالات الاستخدام.

الميزات الشائعة لواجهة برمجة التطبيقات للإضافات

تتكوّن واجهة برمجة التطبيقات Accessibility API من مساحة اسم تحتوي على طرق وخصائص لتنفيذ عمليات الإضافات، وحقول البيان الخاصة بملف manifest.json عادةً وليس دائمًا. على سبيل المثال، تتطلب مساحة الاسم chrome.action كائن "action" في البيان. وتتطلّب العديد من واجهات برمجة التطبيقات أيضًا أذونات في البيان.

إنّ الطرق في واجهات برمجة التطبيقات للإضافات غير متزامنة ما لم يُذكر خلاف ذلك. تعود الطرق غير المتزامنة على الفور، دون انتظار العملية التي تستدعيها للانتهاء. استخدِم الوعود للحصول على نتائج هذه الطرق. لمزيد من المعلومات، راجِع الطرق غير المتزامنة.

واجهات برمجة التطبيقات لإضافة Chrome

accessibilityFeatures

استخدِم واجهة برمجة التطبيقات chrome.accessibilityFeatures لإدارة ميزات تسهيل الاستخدام في Chrome. تعتمد واجهة برمجة التطبيقات هذه على النموذج الأولي لإعداد Chromeإعداد لنوع واجهة برمجة التطبيقات للحصول على ميزات فردية لتسهيل الاستخدام وإعدادها. للحصول على حالات الميزات، يجب أن تطلب الإضافة إذن "accessibilityFeatures.read". لتعديل حالة الميزة، تحتاج الإضافة إلى إذن accessibilityFeatures.modify. يُرجى العِلم أنّ accessibilityFeatures.modify لا يشير ضمنًا إلى الحصول على إذن "accessibilityFeatures.read".

الإجراء
Chrome 88 والإصدارات الأحدث MV3 والإصدارات الأحدث

استخدِم واجهة برمجة التطبيقات chrome.action للتحكّم في رمز الإضافة في شريط أدوات Google Chrome.

المنبّهات

استخدِم واجهة برمجة تطبيقات chrome.alarms لجدولة الرموز ليتم تشغيلها بشكل دوري أو في وقت محدّد في المستقبل.

الصوت
الإصدار 59 من Chrome والإصدارات الأحدث على نظام التشغيل ChromeOS فقط

يتم توفير chrome.audio API للسماح للمستخدمين بالحصول على معلومات حول الأجهزة الصوتية المتصلة بالنظام والتحكّم فيها. لا تتوفّر واجهة برمجة التطبيقات هذه حاليًا إلا في وضع Kiosk في نظام التشغيل ChromeOS.

الإشارات المرجعية

يمكنك استخدام واجهة برمجة التطبيقات chrome.bookmarks API لإنشاء الإشارات المرجعية وتنظيمها ومعالجتها. يمكنك أيضًا الاطّلاع على إلغاء الصفحات، التي يمكنك استخدامها لإنشاء صفحة مخصّصة في "مدير الإشارات".

browsingData

استخدِم chrome.browsingData API لإزالة بيانات التصفُّح من الملف الشخصي المحلي للمستخدم.

certificateProvider
Chrome 46 والإصدارات الأحدث ChromeOS فقط

استخدِم واجهة برمجة التطبيقات هذه لعرض الشهادات على النظام الأساسي الذي يمكنه استخدام هذه الشهادات لمصادقات بروتوكول أمان طبقة النقل (TLS).

أوامر

استخدِم واجهة برمجة تطبيقات الأوامر لإضافة اختصارات لوحة المفاتيح التي تؤدي إلى تنفيذ الإجراءات في إضافتك، مثل إجراء لفتح إجراء المتصفّح أو إرسال أمر إلى الإضافة.

contentSettings

استخدِم واجهة برمجة التطبيقات chrome.contentSettings لتغيير الإعدادات التي تتحكّم في ما إذا كان بإمكان المواقع الإلكترونية استخدام ميزات، مثل ملفات تعريف الارتباط وJavaScript والمكوّنات الإضافية. وبشكل أكثر عمومية، تتيح لك إعدادات المحتوى تخصيص سلوك Chrome على أساس كل موقع إلكتروني بدلاً من أن يكون على مستوى العالم.

contextMenus

يمكنك استخدام واجهة برمجة التطبيقات chrome.contextMenus API لإضافة عناصر إلى قائمة سياقات Google Chrome. يمكنك اختيار أنواع العناصر التي تنطبق عليها إضافات قائمة السياق، مثل الصور والروابط التشعّبية والصفحات.

ملفات تعريف الارتباط

استخدِم واجهة برمجة تطبيقات chrome.cookies لطلب البحث عن ملفات تعريف الارتباط وتعديلها، وتلقّي إشعارات عند تغييرها.

debugger

تعمل واجهة برمجة التطبيقات chrome.debugger كوسيلة نقل بديلة لبروتوكول تصحيح الأخطاء عن بُعد في Chrome. يمكنك استخدام chrome.debugger للإرفاق بعلامة تبويب واحدة أو أكثر من أجل قياس تفاعل الشبكة، وتصحيح أخطاء JavaScript، وتغيير نموذج العناصر في المستند (DOM) وCSS، وما إلى ذلك. ويمكنك استخدام tabId تصحيح الأخطاء لاستهداف علامات التبويب باستخدام sendCommand وتوجيه الأحداث بحلول tabId من عمليات معاودة الاتصال onEvent.

declarativeContent

استخدِم واجهة برمجة التطبيقات chrome.declarativeContent API لتنفيذ الإجراءات استنادًا إلى محتوى الصفحة، بدون طلب الإذن لقراءة محتوى الصفحة.

declarativeNetRequest
الإصدار 84 من Chrome والإصدارات الأحدث

تُستخدَم واجهة برمجة التطبيقات chrome.declarativeNetRequest لحظر طلبات الشبكة أو تعديلها من خلال تحديد قواعد الإفصاح. ويتيح ذلك للإضافات تعديل طلبات الشبكة بدون اعتراضها وعرض محتواها، ما يوفّر المزيد من الخصوصية.

desktopCapture

تلتقط واجهة برمجة تطبيقات التقاط سطح المكتب محتوى الشاشة أو النوافذ الفردية أو علامات التبويب الفردية.

devtools.inspectedWindow

استخدام واجهة برمجة التطبيقات chrome.devtools.inspectedWindow للتفاعل مع النافذة التي تم فحصها: احصل على رقم تعريف علامة التبويب للصفحة التي تم فحصها، أو قيِّم الرمز في سياق النافذة التي تم فحصها، أو أعِد تحميل الصفحة، أو احصل على قائمة الموارد داخل الصفحة.

devtools.network

استخدِم واجهة برمجة تطبيقات chrome.devtools.network لاسترداد المعلومات حول طلبات الشبكة التي تعرضها أدوات المطوّرين في لوحة الشبكة.

devtools.panels

استخدِم واجهة برمجة تطبيقات chrome.devtools.panels لدمج إضافتك في واجهة مستخدم نافذة "أدوات المطوّرين" من خلال إنشاء لوحاتك الخاصة والوصول إلى اللوحات الحالية وإضافة أشرطة جانبية.

devtools.recorder
Chrome 105 والإصدارات الأحدث

استخدِم واجهة برمجة التطبيقات chrome.devtools.recorder لتخصيص لوحة "المسجّلة الذكية" في "أدوات مطوري البرامج".

dns
قناة مطوّري البرامج

يمكنك استخدام واجهة برمجة التطبيقات chrome.dns للحصول على دقة نظام أسماء النطاقات.

documentScan
Chrome 44 والإصدارات الأحدث ChromeOS فقط

يمكنك استخدام واجهة برمجة التطبيقات chrome.documentScan API لاكتشاف الصور واستردادها من الماسحات الضوئية للمستندات المرفقة.

dom
Chrome 88 والإصدارات الأحدث

استخدام واجهة برمجة التطبيقات chrome.dom للوصول إلى واجهات برمجة تطبيقات DOM الخاصة للإضافات

عمليات التنزيل

استخدِم واجهة برمجة تطبيقات chrome.downloads لبدء عمليات التنزيل ومراقبتها ومعالجتها والبحث عنها بشكل آلي.

enterprise.deviceAttributes
الإصدار 46 من Chrome أو الإصدارات الأحدث نظام التشغيل ChromeOS فقط مطلوب سياسة

استخدام واجهة برمجة التطبيقات chrome.enterprise.deviceAttributes لقراءة سمات الجهاز ملاحظة: لا تتوفّر واجهة برمجة التطبيقات هذه إلا للإضافات التي تم فرض تثبيتها من خلال سياسة المؤسسة.

enterprise.hardwarePlatform
الإصدار 71 من Chrome أو الإصدارات الأحدث مطلوب سياسة

يمكنك استخدام واجهة برمجة التطبيقات chrome.enterprise.hardwarePlatform API للاطّلاع على الشركة المصنّعة وطراز النظام الأساسي للأجهزة التي يتم تشغيل المتصفّح فيها. ملاحظة: لا تتوفّر واجهة برمجة التطبيقات هذه إلا للإضافات التي تم تثبيتها بموجب سياسة المؤسسة.

enterprise.networkingAttributes
الإصدار 85 من Chrome أو الإصدارات الأحدث نظام التشغيل ChromeOS فقط مطلوب سياسة

استخدِم واجهة برمجة التطبيقات chrome.enterprise.networkingAttributes للاطّلاع على معلومات عن شبكتك الحالية. ملاحظة: لا تتوفّر واجهة برمجة التطبيقات هذه إلا للإضافات التي تم فرض تثبيتها من خلال سياسة المؤسسة.

enterprise.platformKeys
نظام التشغيل ChromeOS فقط مطلوب سياسة

استخدِم واجهة برمجة تطبيقات chrome.enterprise.platformKeys لإنشاء مفاتيح وتثبيت شهادات لهذه المفاتيح. وستتم إدارة الشهادات من خلال النظام الأساسي ويمكن استخدامها لمصادقة بروتوكول أمان طبقة النقل (TLS) أو الوصول إلى الشبكة أو بواسطة إضافة أخرى من خلال {@linkplatformKeys chrome.platformKeys}.

الأحداث

تحتوي مساحة الاسم chrome.events على أنواع شائعة تستخدمها واجهات برمجة التطبيقات التي ترسِل الأحداث لإعلامك عند حدوث حدث مثير للاهتمام.

الإضافة

تتضمّن واجهة برمجة التطبيقات chrome.extension API أدوات مساعدة يمكن استخدامها في أي صفحة إضافة. كما تتيح ميزة تبادل الرسائل بين الإضافة والنصوص البرمجية للمحتوى أو بين الإضافات، على النحو الموضَّح بالتفصيل في قسم تمرير الرسائل.

extensionTypes

تحتوي واجهة برمجة التطبيقات chrome.extensionTypes API على بيانات أنواع إضافات Chrome.

fileBrowserHandler
نظام التشغيل ChromeOS فقط الواجهة فقط

استخدِم واجهة برمجة التطبيقات chrome.fileBrowserHandler لتوسيع نطاق متصفِّح الملفات في نظام التشغيل Chrome. على سبيل المثال، يمكنك استخدام واجهة برمجة التطبيقات هذه للسماح للمستخدمين بتحميل الملفات إلى موقعك الإلكتروني.

fileSystemProvider
نظام التشغيل ChromeOS فقط

استخدِم واجهة برمجة التطبيقات chrome.fileSystemProvider API لإنشاء أنظمة الملفات التي يمكن الوصول إليها من مدير الملفات على نظام التشغيل Chrome.

fontSettings

استخدِم واجهة برمجة التطبيقات chrome.fontSettings لإدارة إعدادات الخطوط في Chrome.

gcm

يمكنك استخدام chrome.gcm لتفعيل التطبيقات والإضافات من أجل إرسال الرسائل واستلامها من خلال خدمة المراسلة عبر السحابة الإلكترونية من Firebase (FCM).

السجلّ

استخدام واجهة برمجة التطبيقات chrome.history API للتفاعل مع سجلّ الصفحات التي تمت زيارتها في المتصفّح يمكنك إضافة عناوين URL وإزالتها وطلب البحث عنها في سجلّ المتصفّح. ولتجاوز صفحة السجلّ بنسختك الخاصة، يمكنك الاطّلاع على إلغاء الصفحات.

i18n

يمكنك استخدام بنية chrome.i18n الأساسية لنشر المحتوى على نطاق عالمي عبر التطبيق أو الإضافة بالكامل.

الهوية

استخدام واجهة برمجة التطبيقات chrome.identity للحصول على رموز الدخول عبر OAuth2

غير نشِط لفترة قصيرة

استخدِم واجهة برمجة التطبيقات chrome.idle API لرصد تغيُّر حالة عدم النشاط للجهاز.

input.ime

استخدِم واجهة برمجة تطبيقات chrome.input.ime لتطبيق أداة IME مخصّصة لنظام التشغيل Chrome. يسمح ذلك للإضافة بمعالجة ضغطات المفاتيح، وضبط التركيبة، وإدارة النافذة المرشحة.

instanceID
Chrome 44 والإصدارات الأحدث

استخدِم "chrome.instanceID" للوصول إلى خدمة "معرّف المثيل".

loginState
Chrome 78 والإصدارات الأحدث ChromeOS فقط

استخدِم واجهة برمجة التطبيقات chrome.loginState للاطّلاع على حالة تسجيل الدخول ومراقبتها.

الفيديوهات

توفّر واجهة برمجة التطبيقات chrome.management API طرقًا لإدارة قائمة الإضافات أو التطبيقات التي يتم تثبيتها وتشغيلها. وهو مفيد بشكل خاص للإضافات التي تتجاهل صفحة "علامة تبويب جديدة" المضمّنة.

الإشعارات

يمكنك استخدام واجهة برمجة التطبيقات chrome.notifications API لإنشاء إشعارات غنية بصريًا باستخدام النماذج وعرض هذه الإشعارات للمستخدمين في لوحة النظام.

خارج الشاشة
Chrome 109 والإصدارات الأحدث MV3 والإصدارات الأحدث

استخدِم واجهة برمجة تطبيقات offscreen لإنشاء المستندات خارج الشاشة وإدارتها.

المربّع المتعدد الاستخدامات

تتيح لك واجهة برمجة التطبيقات المربع المتعدد الاستخدامات تسجيل كلمة رئيسية في شريط عناوين Google Chrome، والذي يُعرف أيضًا باسم المربّع المتعدد الاستخدامات.

pageCapture

استخدِم chrome.pageCapture API لحفظ علامة تبويب بتنسيق MHTML.

الأذونات

يمكنك استخدام واجهة برمجة التطبيقات chrome.permissions API لطلب الأذونات الاختيارية المعلَن عنها في وقت التشغيل بدلاً من وقت التثبيت، لكي يفهم المستخدمون سبب الحاجة إلى الأذونات ولا تمنحهم سوى الأذونات اللازمة.

platformKeys
Chrome 45 والإصدارات الأحدث ChromeOS فقط

استخدام واجهة برمجة التطبيقات chrome.platformKeys للوصول إلى شهادات العميل التي تديرها المنصة وفي حال منح المستخدم أو السياسة الإذن، يمكن للإضافة استخدام مثل هذه الشهادة في بروتوكول المصادقة المخصّص. على سبيل المثال، يتيح ذلك استخدام الشهادات التي يديرها النظام الأساسي في الشبكات الافتراضية الخاصة التابعة لجهات خارجية (راجِع {@link vpnProvider chrome.vpnProvider}).

القوة

استخدِم واجهة برمجة التطبيقات chrome.power API لإلغاء ميزات إدارة الطاقة في النظام.

printerProvider
Chrome 44 والإصدارات الأحدث

تعرض واجهة برمجة التطبيقات chrome.printerProvider الأحداث التي يستخدمها مدير الطباعة لطلبات البحث عن الطابعات التي تتحكّم فيها الإضافات، وللاستعلام عن إمكاناتها وإرسال مهام الطباعة إلى هذه الطابعات.

الطباعة
الإصدار 81 من Chrome أو الإصدارات الأحدث على نظام التشغيل ChromeOS فقط

استخدِم واجهة برمجة التطبيقات chrome.printing لإرسال مهام الطباعة إلى الطابعات المثبَّتة على جهاز Chromebook.

printingMetrics
الإصدار 79 من Chrome أو الإصدارات الأحدث نظام التشغيل ChromeOS فقط مطلوب سياسة

يمكنك استخدام واجهة برمجة التطبيقات chrome.printingMetrics لاسترجاع البيانات المتعلّقة باستخدام الطباعة.

الخصوصية

يمكنك استخدام chrome.privacy API للتحكّم في استخدام الميزات التي يمكن أن تؤثر في خصوصية المستخدم في Chrome. تعتمد واجهة برمجة التطبيقات هذه على النموذج الأولي لإعداد Chromeإعداد لنوع واجهة برمجة التطبيقات للحصول على إعدادات Chrome وإعدادها.

العمليات
قناة مطوّري البرامج

استخدام واجهة برمجة التطبيقات chrome.processes API للتفاعل مع عمليات المتصفِّح

الخادم الوكيل

استخدِم واجهة برمجة التطبيقات chrome.proxy لإدارة إعدادات الخادم الوكيل في Chrome. تعتمد واجهة برمجة التطبيقات هذه على النموذج الأولي لإعداد Chromeإعداد لنوع واجهة برمجة التطبيقات للحصول على ضبط الخادم الوكيل وإعداده.

readingList
Chrome 120 والإصدارات الأحدث MV3 والإصدارات الأحدث

يمكنك استخدام واجهة برمجة التطبيقات chrome.readingList للاطّلاع على العناصر الواردة في قائمة القراءة وتعديلها.

وقت التشغيل

يمكنك استخدام واجهة برمجة التطبيقات chrome.runtime API لاسترداد مشغِّل الخدمات وعرض تفاصيل ملف البيان والاستماع إلى الأحداث والردّ عليها خلال مراحل نشاط الإضافة. ويمكنك أيضًا استخدام واجهة برمجة التطبيقات هذه لتحويل المسار النسبي لعناوين URL إلى عناوين URL مؤهَّلة بالكامل.

برمجة نصية
Chrome 88 والإصدارات الأحدث MV3 والإصدارات الأحدث

استخدِم واجهة برمجة التطبيقات chrome.scripting API لتنفيذ نص برمجي في سياقات مختلفة.

search
الإصدار 87 من Chrome والإصدارات الأحدث

استخدِم واجهة برمجة تطبيقات chrome.search للبحث من خلال مقدِّم الخدمة التلقائي.

الجلسات

استخدام واجهة برمجة تطبيقات chrome.sessions للبحث عن علامات التبويب والنوافذ واستعادتها من جلسة تصفّح

sidePanel
Chrome 114 والإصدارات الأحدث MV3 والإصدارات الأحدث

استخدِم واجهة برمجة التطبيقات chrome.sidePanel لاستضافة المحتوى في اللوحة الجانبية للمتصفِّح إلى جانب المحتوى الرئيسي لصفحة الويب.

مساحة تخزين

استخدِم واجهة برمجة تطبيقات chrome.storage لتخزين بيانات المستخدمين واستردادها وتتبُّعها.

system.cpu

استخدِم واجهة برمجة تطبيقات system.cpu لطلب البحث عن البيانات الوصفية لوحدة المعالجة المركزية (CPU).

system.display

استخدِم واجهة برمجة تطبيقات system.display لطلب البحث عن البيانات الوصفية المعروضة.

system.memory

واجهة برمجة التطبيقات chrome.system.memory

system.storage

استخدِم واجهة برمجة التطبيقات chrome.system.storage API لطلب معلومات عن جهاز التخزين وتلقّي إشعارات عند توصيل جهاز تخزين قابل للإزالة وفصله.

systemLog
في انتظار المراجعة نظام التشغيل ChromeOS فقط مطلوب سياسة

استخدِم واجهة برمجة التطبيقات chrome.systemLog API لتسجيل سجلّات نظام Chrome من الإضافات.

tabCapture

استخدام chrome.tabCapture API للتفاعل مع ساحات مشاركات الوسائط في علامات التبويب

tabGroups
Chrome 89 والإصدارات الأحدث MV3 والإصدارات الأحدث

استخدِم واجهة برمجة تطبيقات chrome.tabGroups للتفاعل مع نظام تجميع علامات التبويب في المتصفّح. يمكنك استخدام واجهة برمجة التطبيقات هذه لتعديل مجموعات علامات التبويب وإعادة ترتيبها في المتصفّح. لتجميع علامات التبويب وإلغاء تجميعها، أو الاستعلام عن علامات التبويب في المجموعات، استخدِم واجهة برمجة تطبيقات chrome.tabs.

علامات تبويب

استخدام واجهة برمجة التطبيقات chrome.tabs API للتفاعل مع نظام علامات التبويب في المتصفِّح يمكنك استخدام واجهة برمجة التطبيقات هذه لإنشاء علامات التبويب وتعديلها وإعادة ترتيبها في المتصفح.

topSites

استخدِم chrome.topSites API للوصول إلى أهم المواقع الإلكترونية (أي المواقع الإلكترونية الأكثر زيارة) التي يتم عرضها في صفحة علامة التبويب الجديدة. لا تشمل هذه الاختصارات الاختصارات التي خصَّصها المستخدم.

tts

استخدِم واجهة برمجة تطبيقات chrome.tts لتشغيل تقنية "تحويل النص إلى كلام" (TTS). اطلع أيضًا على واجهة برمجة التطبيقات {@link ttsEngine} ذات الصلة، والتي تسمح للإضافة بتنفيذ محرك كلام.

ttsEngine

استخدِم واجهة برمجة التطبيقات chrome.ttsEngine لتنفيذ محرك تحويل النص إلى كلام باستخدام إضافة. إذا تم تسجيل إضافتك باستخدام واجهة برمجة التطبيقات هذه، ستتلقى الأحداث التي تتضمن الكلام المراد نطقه وغيرها من المعلَمات عندما تستخدم أي إضافة أو تطبيق Chrome واجهة برمجة التطبيقات {@link tts} لإنشاء الكلام. يمكن للإضافة بعد ذلك استخدام أي تقنية ويب متاحة لتجميع الكلام وإخراجه وإعادة إرسال الأحداث إلى وظيفة الاتصال للإبلاغ عن الحالة.

أنواع

تحتوي واجهة برمجة التطبيقات chrome.types API على أنواع تعريف الأنواع لمتصفِّح Chrome.

userScripts
Chrome 120 والإصدارات الأحدث MV3 والإصدارات الأحدث

استخدِم userScripts API لتنفيذ النصوص البرمجية للمستخدمين في سياق "النصوص البرمجية للمستخدمين".

vpnProvider
Chrome 43 والإصدارات الأحدث ChromeOS فقط

استخدِم واجهة برمجة التطبيقات chrome.vpnProvider API لتنفيذ برنامج شبكة VPN.

خلفية
Chrome 43 والإصدارات الأحدث ChromeOS فقط

يمكنك استخدام واجهة برمجة التطبيقات chrome.wallpaper لتغيير خلفية نظام التشغيل ChromeOS.

webAuthenticationProxy
Chrome 115 والإصدارات الأحدث MV3 والإصدارات الأحدث

تسمح واجهة برمجة التطبيقات chrome.webAuthenticationProxy لبرامج سطح المكتب البعيد التي تعمل على مضيف بعيد باعتراض طلبات واجهة برمجة تطبيقات مصادقة الويب (WebAuthn) للتعامل معها على برنامج محلي.

webNavigation

يمكنك استخدام واجهة برمجة التطبيقات chrome.webNavigation لتلقّي الإشعارات عن حالة طلبات التنقّل أثناء الطيران.

webRequest

يمكنك استخدام واجهة برمجة تطبيقات chrome.webRequest لمراقبة حركة الزيارات وتحليلها واعتراض الطلبات أو حظرها أو تعديلها أثناء الطيران.

Windows

استخدام واجهة برمجة التطبيقات chrome.windows API للتفاعل مع نوافذ المتصفِّح يمكنك استخدام واجهة برمجة التطبيقات هذه لإنشاء النوافذ وتعديلها وإعادة ترتيبها في المتصفح.