API-Referenz

Die meisten Erweiterungen benötigen Zugriff auf eine oder mehrere Chrome Extensions APIs, damit sie funktionieren. In dieser API-Referenz werden die APIs beschrieben, die in Erweiterungen verwendet werden können, sowie Anwendungsfälle.

Allgemeine Extensions API-Funktionen

Eine Extensions API besteht aus einem Namespace, der Methoden und Eigenschaften für die Funktionsweise von Erweiterungen sowie in der Regel, aber nicht immer, Manifestfelder für die Datei manifest.json enthält. Für den chrome.action-Namespace ist beispielsweise ein "action"-Objekt im Manifest erforderlich. Viele APIs erfordern auch Berechtigungen im Manifest.

Sofern nicht anders angegeben, sind die Methoden in Erweiterungs-APIs asynchron. Asynchrone Methoden werden sofort zurückgegeben, ohne auf den Vorgang warten zu müssen, der sie aufruft. Verwende Promise, um die Ergebnisse dieser Methoden zu erhalten. Weitere Informationen finden Sie unter Asynchrone Methoden.

APIs für Chrome-Erweiterungen

accessibilityFeatures

Mit der chrome.accessibilityFeatures API können Sie die Bedienungshilfen von Chrome verwalten. Diese API basiert auf dem ChromeSetting-Prototyp des Typs API, um einzelne Bedienungshilfen abzurufen und festzulegen. Zum Abrufen von Funktionsstatus muss die Erweiterung die Berechtigung accessibilityFeatures.read anfordern. Zum Ändern des Funktionsstatus benötigt die Erweiterung die Berechtigung accessibilityFeatures.modify. Beachten Sie, dass accessibilityFeatures.modify keine accessibilityFeatures.read-Berechtigung impliziert.

Aktion
Chrome 88 oder höher MV3+

Mit der chrome.action API kannst du das Symbol der Erweiterung in der Google Chrome-Symbolleiste steuern.

Wecker

Mit der chrome.alarms API planen Sie, dass Code regelmäßig oder zu einem bestimmten Zeitpunkt in der Zukunft ausgeführt wird.

Audio
Chrome 59 und höher Nur ChromeOS

Die chrome.audio API wird bereitgestellt, damit Nutzer Informationen zu den mit dem System verbundenen Audiogeräten abrufen und steuern können. Diese API ist derzeit nur im Kioskmodus für ChromeOS verfügbar.

Lesezeichen

Mit der chrome.bookmarks API können Sie Lesezeichen erstellen, organisieren und anderweitig bearbeiten. Weitere Informationen finden Sie unter Seiten überschreiben. Damit können Sie eine benutzerdefinierte Seite im Lesezeichenmanager erstellen.

browsingData

Mit der chrome.browsingData API können Sie Browserdaten aus dem lokalen Profil eines Nutzers entfernen.

certificateProvider
Chrome 46 und höher Nur ChromeOS

Mit dieser API können Sie Zertifikate für die Plattform freigeben, die diese Zertifikate für TLS-Authentifizierungen verwenden kann.

Befehle

Mit der Commands API können Sie Tastenkombinationen hinzufügen, die Aktionen in Ihrer Erweiterung auslösen, z. B. eine Aktion zum Öffnen der Browseraktion oder das Senden eines Befehls an die Erweiterung.

contentSettings

Mit der chrome.contentSettings API können Sie Einstellungen ändern, mit denen festgelegt wird, ob Websites Funktionen wie Cookies, JavaScript und Plug-ins verwenden dürfen. Allgemein gesagt, können Sie mit Inhaltseinstellungen das Verhalten von Chrome für einzelne Websites und nicht global anpassen.

contextMenus

Verwenden Sie die chrome.contextMenus API, um Elemente zum Kontextmenü von Google Chrome hinzuzufügen. Sie können auswählen, für welche Objekttypen die Elemente im Kontextmenü gelten, z. B. Bilder, Hyperlinks und Seiten.

Cookies

Verwenden Sie die chrome.cookies API, um Cookies abzufragen und zu ändern und um über Änderungen benachrichtigt zu werden.

debugger

Die chrome.debugger API dient als alternativer Transport für das Remote-Debugging-Protokoll von Chrome. Verwenden Sie chrome.debugger, um einen Tab an einen oder mehrere Tabs anzuhängen, um Netzwerkinteraktionen zu instrumentieren, JavaScript-Fehler zu beheben, das DOM und CSS zu ändern usw. Verwenden Sie die zu debuggende Komponente tabId, um Tabs mit "sendCommand" auszurichten und Ereignisse nach tabId aus onEvent-Callbacks weiterzuleiten.

declarativeContent

Mit der chrome.declarativeContent API können Sie Aktionen abhängig vom Inhalt einer Seite ausführen, ohne dass Sie eine Berechtigung zum Lesen des Seiteninhalts benötigen.

declarativeNetRequest
Chrome 84 und höher

Die chrome.declarativeNetRequest API wird verwendet, um Netzwerkanfragen durch die Angabe deklarativer Regeln zu blockieren oder zu ändern. Dadurch können Erweiterungen Netzwerkanfragen ändern, ohne sie abzufangen und sich ihre Inhalte anzusehen, was für mehr Datenschutz sorgt.

desktopCapture

Die Desktop Capture API erfasst den Inhalt des Bildschirms, einzelne Fenster oder einzelne Tabs.

devtools.inspectedWindow

Verwenden Sie die chrome.devtools.inspectedWindow API, um mit dem geprüften Fenster zu interagieren: Rufen Sie die Tab-ID der geprüften Seite ab, werten Sie den Code im Kontext des geprüften Fensters aus, laden Sie die Seite neu oder rufen Sie die Liste der Ressourcen auf der Seite ab.

devtools.network

Mit der chrome.devtools.network API können Sie die Informationen zu Netzwerkanfragen abrufen, die in den Entwicklertools im Bereich „Netzwerk“ angezeigt werden.

devtools.panels

Verwenden Sie die chrome.devtools.panels API, um Ihre Erweiterung in die Benutzeroberfläche des Fensters der Entwicklertools zu integrieren: Sie können eigene Bereiche erstellen, auf vorhandene Bereiche zugreifen und Seitenleisten hinzufügen.

devtools.recorder
Chrome 105 und höher

Mit der chrome.devtools.recorder API kannst du den Rekorder-Bereich in den Entwicklertools anpassen.

dns
Entwicklerversion

Verwenden Sie die chrome.dns API für die DNS-Auflösung.

documentScan
Chrome 44 und höher Nur ChromeOS

Verwenden Sie die chrome.documentScan API, um Bilder in angehängten Dokumentenscannern zu finden und abzurufen.

dom
Chrome 88 und höher

Mit der chrome.dom API auf spezielle DOM APIs für Erweiterungen zugreifen

downloads

Mit der chrome.downloads API können Sie Downloads programmatisch initiieren, überwachen, bearbeiten und suchen.

enterprise.deviceAttributes
Chrome 46 oder höher Nur ChromeOS Erfordert Richtlinie

Verwenden Sie die chrome.enterprise.deviceAttributes API, um Geräteattribute zu lesen. Hinweis: Diese API ist nur für Erweiterungen verfügbar, deren Installation durch eine Unternehmensrichtlinie erzwungen wurde.

enterprise.hardwarePlatform
Chrome 71 oder höher Richtlinie erforderlich

Verwenden Sie die chrome.enterprise.hardwarePlatform API, um den Hersteller und das Modell der Hardwareplattform abzurufen, auf der der Browser ausgeführt wird. Hinweis: Diese API ist nur für Erweiterungen verfügbar, die über eine Unternehmensrichtlinie installiert wurden.

enterprise.networkingAttributes
Chrome 85 oder höher Nur ChromeOS Richtlinie erforderlich

Mit der chrome.enterprise.networkingAttributes API können Sie Informationen zu Ihrem aktuellen Netzwerk lesen. Hinweis: Diese API ist nur für Erweiterungen verfügbar, deren Installation durch eine Unternehmensrichtlinie erzwungen wurde.

enterprise.platformKeys

Mit der chrome.enterprise.platformKeys API können Sie Schlüssel generieren und Zertifikate für diese Schlüssel installieren. Die Zertifikate werden von der Plattform verwaltet und können über {@linkplatformKeys chrome.platformKeys} für die TLS-Authentifizierung, den Netzwerkzugriff oder durch andere Erweiterungen verwendet werden.

Ereignisse

Der chrome.events-Namespace enthält gängige Typen, die von APIs verwendet werden, um Sie über interessante Ereignisse zu benachrichtigen.

Erweiterung

Die chrome.extension API hat Dienstprogramme, die von jeder Erweiterungsseite verwendet werden können. Dazu gehört auch der Austausch von Nachrichten zwischen einer Erweiterung und ihren Inhaltsskripten oder zwischen Erweiterungen, wie im Abschnitt Nachrichtenübergabe ausführlich beschrieben.

extensionTypes

Die chrome.extensionTypes API enthält Typdeklarationen für Chrome-Erweiterungen.

fileBrowserHandler
Nur ChromeOS Nur Vordergrund

Verwende die chrome.fileBrowserHandler API, um den Chrome OS-Dateibrowser zu erweitern. Mit dieser API können Sie es beispielsweise Nutzern ermöglichen, Dateien auf Ihre Website hochzuladen.

fileSystemProvider
Nur ChromeOS

Mit der chrome.fileSystemProvider API können Sie Dateisysteme erstellen, auf die über den Dateimanager unter ChromeOS zugegriffen werden kann.

fontSettings

Mit der chrome.fontSettings API können Sie die Einstellungen für Schriftarten in Chrome verwalten.

gcm

Verwenden Sie chrome.gcm, um Apps und Erweiterungen das Senden und Empfangen von Nachrichten über Firebase Cloud Messaging (FCM) zu aktivieren.

Verlauf

Verwenden Sie die chrome.history API, um mit dem Datensatz der besuchten Seiten im Browser zu interagieren. Sie können URLs im Browserverlauf hinzufügen, entfernen und abfragen. Informationen zum Überschreiben der Verlaufsseite mit Ihrer eigenen Version finden Sie unter Seiten überschreiben.

i18n

Du kannst die chrome.i18n-Infrastruktur nutzen, um die Internationalisierung für deine gesamte App oder Erweiterung zu implementieren.

Identität

Verwenden Sie die chrome.identity API, um OAuth2-Zugriffstokens abzurufen.

Inaktiv

Verwenden Sie die chrome.idle API, um zu erkennen, wenn sich der Inaktivitätsstatus der Maschine ändert.

input.ime

Verwenden Sie die chrome.input.ime API, um einen benutzerdefinierten IME für Chrome OS zu implementieren. Dadurch kann deine Erweiterung Tastenanschläge verarbeiten, die Zusammensetzung festlegen und das Kandidatenfenster verwalten.

instanceID
Chrome 44 und höher

Verwenden Sie chrome.instanceID, um auf den Instanz-ID-Dienst zuzugreifen.

loginState
Chrome 78 oder höher Nur ChromeOS

Verwenden Sie die chrome.loginState API, um den Anmeldestatus zu lesen und zu überwachen.

verwaltung

Mit der chrome.management API können Sie die Liste der installierten und ausgeführten Erweiterungen/Apps verwalten. Dies ist besonders nützlich für Erweiterungen, die die integrierte „Neuer Tab“-Seite überschreiben.

Benachrichtigungen

Mit der chrome.notifications API können Sie umfassende Benachrichtigungen mithilfe von Vorlagen erstellen und diese Benachrichtigungen Nutzern in der Taskleiste anzeigen lassen.

nicht sichtbar
Chrome 109 oder höher MV3+

Mit der offscreen API lassen sich nicht sichtbare Dokumente erstellen und verwalten.

Omnibox

Mit der Omnibox-API können Sie ein Keyword in der Adressleiste von Google Chrome, die auch Omnibox genannt wird, registrieren.

pageCapture

Verwenden Sie die chrome.pageCapture API, um einen Tab als MHTML zu speichern.

Berechtigungen

Verwenden Sie die chrome.permissions API, um deklarierte optionale Berechtigungen nicht während der Installation, sondern zur Laufzeit anzufordern. So können Nutzer nachvollziehen, warum die Berechtigungen erforderlich sind, und nur die notwendigen Berechtigungen erteilen.

platformKeys
Chrome 45 und höher Nur ChromeOS

Sie können die chrome.platformKeys API verwenden, um auf Clientzertifikate zuzugreifen, die von der Plattform verwaltet werden. Wenn der Nutzer oder die Richtlinie die Berechtigung erteilt, kann eine Erweiterung ein solches Zertifikat in ihrem benutzerdefinierten Authentifizierungsprotokoll verwenden. Dadurch können beispielsweise von der Plattform verwaltete Zertifikate in Drittanbieter-VPNs verwendet werden (siehe {@link vpnProvider chrome.vpnProvider}).

Leistung

Verwenden Sie die chrome.power API, um die Funktionen zur Energieverwaltung des Systems zu überschreiben.

printerProvider
Chrome 44 und höher

Die chrome.printerProvider API stellt Ereignisse bereit, die vom Druckmanager verwendet werden, um von Erweiterungen gesteuerte Drucker abzufragen, ihre Funktionen abzufragen und Druckaufträge an diese Drucker zu senden.

Drucken
Chrome 81 und höher Nur ChromeOS

Mit der chrome.printing API kannst du Druckaufträge an Drucker senden, die auf deinem Chromebook installiert sind.

printingMetrics
Chrome 79 oder höher Nur ChromeOS Richtlinie erforderlich

Verwenden Sie die chrome.printingMetrics API, um Daten zur Drucknutzung abzurufen.

Datenschutz

Mit der chrome.privacy API können Sie die Nutzung von Chrome-Funktionen steuern, die sich auf die Privatsphäre eines Nutzers auswirken können. Diese API basiert auf dem ChromeSetting-Prototyp des Typs API, um die Chrome-Konfiguration abzurufen und festzulegen.

Prozesse
Entwicklerversion

Verwenden Sie die chrome.processes API, um mit den Prozessen des Browsers zu interagieren.

proxy

Mit der chrome.proxy API können Sie die Proxyeinstellungen von Chrome verwalten. Diese API basiert auf dem ChromeSetting-Prototyp des Typs API zum Abrufen und Festlegen der Proxykonfiguration.

readingList
Chrome 120+ MV3+

Mit der chrome.readingList API kannst du aus den Elementen in der Leseliste lesen und diese ändern.

runtime

Mit der chrome.runtime API können Sie den Service Worker abrufen, Details zum Manifest zurückgeben sowie auf Ereignisse im Lebenszyklus der Erweiterung warten und darauf reagieren. Sie können diese API auch verwenden, um den relativen Pfad von URLs in voll qualifizierte URLs zu konvertieren.

Scripting
Chrome 88 oder höher MV3+

Verwenden Sie die chrome.scripting API, um Skripts in verschiedenen Kontexten auszuführen.

search
Chrome 87 oder höher

Verwenden Sie die chrome.search API, um über den Standardanbieter zu suchen.

Sitzungen

Verwenden Sie die chrome.sessions API, um Tabs und Fenster aus einer Browsersitzung abzufragen und wiederherzustellen.

sidePanel
Chrome 114+ MV3+

Mit der chrome.sidePanel API kannst du Inhalte in der Seitenleiste des Browsers neben dem Hauptinhalt einer Webseite hosten.

Speicher

Mit der chrome.storage API können Sie Nutzerdaten speichern, abrufen und Änderungen an ihnen verfolgen.

system.cpu

Verwenden Sie die system.cpu API, um CPU-Metadaten abzufragen.

system.display

Verwenden Sie die system.display API, um Anzeigemetadaten abzufragen.

system.memory

Die chrome.system.memory API.

system.storage

Mit der chrome.system.storage API können Sie Informationen zu Speichergeräten abfragen und sich benachrichtigen lassen, wenn ein Wechseldatenträger angeschlossen und getrennt wird.

systemLog
Ausstehend Nur ChromeOS Richtlinie erforderlich

Mit der chrome.systemLog API können Sie Chrome-Systemprotokolle von Erweiterungen aufzeichnen.

tabCapture

Verwenden Sie die chrome.tabCapture API, um mit Tab-Medienstreams zu interagieren.

tabGroups
Chrome 89 oder höher MV3+

Verwenden Sie die chrome.tabGroups API, um mit dem Tabgruppierungssystem des Browsers zu interagieren. Sie können diese API verwenden, um Tabgruppen im Browser zu ändern und neu anzuordnen. Verwenden Sie die chrome.tabs API, um Tabs zu gruppieren bzw. ihre Gruppierung aufzuheben oder abzufragen, welche Tabs in Gruppen enthalten sind.

Tabs

Verwenden Sie die chrome.tabs API, um mit dem Tabsystem des Browsers zu interagieren. Sie können dieses API verwenden, um Tabs im Browser zu erstellen, zu ändern und neu anzuordnen.

topSites

Verwenden Sie die chrome.topSites API, um auf die wichtigsten Websites (d.h. am häufigsten besuchte Websites) zuzugreifen, die auf der Seite „Neuer Tab“ angezeigt werden. Dies gilt nicht für vom Nutzer angepasste Tastenkombinationen.

tts

Verwenden Sie die chrome.tts API, um die synthetisierte Sprachausgabe abzuspielen. Weitere Informationen finden Sie in der zugehörigen {@link ttsEngine} API, mit der eine Erweiterung eine Sprach-Engine implementieren kann.

ttsEngine

Verwenden Sie die chrome.ttsEngine API, um eine Sprachausgabe-Engine mithilfe einer Erweiterung zu implementieren. Bei der Registrierung Ihrer Erweiterung über diese API empfängt sie Ereignisse, die eine gesprochene Äußerung und andere Parameter enthalten, wenn eine Erweiterung oder Chrome-App die {@link tts} API zur Sprachgenerierung verwendet. Ihre Erweiterung kann dann jede verfügbare Webtechnologie zum Synthetisieren und Ausgeben der Sprache verwenden und Ereignisse an die aufrufende Funktion zurücksenden, um den Status zu melden.

Typen

Die chrome.types API enthält Typdeklarationen für Chrome.

userScripts
Chrome 120+ MV3+

Verwenden Sie die userScripts API, um Nutzerskripts im Kontext von Nutzerskripts auszuführen.

vpnProvider
Chrome 43 und höher Nur ChromeOS

Verwenden Sie die chrome.vpnProvider API, um einen VPN-Client zu implementieren.

Chrome 43 und höher Nur ChromeOS

Verwenden Sie die chrome.wallpaper API, um den ChromeOS-Hintergrund zu ändern.

webAuthenticationProxy
Chrome 115+ MV3+

Mit der chrome.webAuthenticationProxy API kann Remote Desktop-Software, die auf einem Remote-Host ausgeführt wird, Anfragen über die Web Authentication API (WebAuthn) abfangen, um sie auf einem lokalen Client zu verarbeiten.

webNavigation

Mit der chrome.webNavigation API können Sie sich Benachrichtigungen zum Status von laufenden Navigationsanfragen senden lassen.

webRequest

Mit der chrome.webRequest API können Sie Traffic beobachten und analysieren sowie laufende Anfragen abfangen, blockieren oder ändern.

Fenster

Verwenden Sie die chrome.windows API, um mit Browserfenstern zu interagieren. Sie können dieses API verwenden, um Fenster im Browser zu erstellen, zu ändern und neu anzuordnen.