API-Referenz

Die meisten Erweiterungen benötigen Zugriff auf eine oder mehrere Chrome-Erweiterungen-APIs, um zu funktionieren. In dieser API-Referenz werden die APIs beschrieben, die für die Verwendung in Erweiterungen verfügbar sind, und Anwendungsbeispiele vorgestellt.

Allgemeine Extensions API-Funktionen

Eine Extensions API besteht aus einem Namespace mit Methoden und Eigenschaften für die Ausführung von Erweiterungen und in der Regel, aber nicht immer, aus Manifestfeldern für die manifest.json-Datei. Für den Namespace chrome.action ist beispielsweise ein "action"-Objekt erforderlich im Manifest. Für viele APIs sind außerdem Berechtigungen im Manifest erforderlich.

Sofern nicht anders angegeben, sind Methoden in Erweiterungs-APIs asynchron. Asynchrone Methoden werden sofort und ohne Wartezeit zurückgegeben für den Vorgang zum Beenden. Mit Promises kannst du die Ergebnisse dieser asynchronen Methoden abrufen.

Chrome-Erweiterungs-APIs

accessibilityFeatures

Mit der chrome.accessibilityFeatures API kannst du 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 Feature-Status benötigt die Erweiterung die Berechtigung accessibilityFeatures.modify. Hinweis: accessibilityFeatures.modify impliziert keine accessibilityFeatures.read-Berechtigung.

action
Chrome (ab Version 88) MV3+

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

alarms

Mit der chrome.alarms API können Sie Code so planen, dass er 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 über die mit dem System verbundenen Audiogeräte 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 Überschreibungsseiten. Dort erfahren Sie, wie Sie eine benutzerdefinierte Seite für den Lesezeichenmanager erstellen.

browsingData

Mit der chrome.browsingData API kannst du Browserdaten aus dem lokalen Profil eines Nutzers entfernen.

certificateProvider
Chrome 46 und höher Nur ChromeOS

Verwenden Sie diese API, um der Plattform Zertifikate zur Verfügung zu stellen, die diese Zertifikate für TLS-Authentifizierungen verwenden können.

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 zum Senden eines Befehls an die Erweiterung.

contentSettings

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

contextMenus

Mit der chrome.contextMenus API können Sie dem Kontextmenü von Google Chrome Elemente hinzufügen. Sie können auswählen, für welche Objekttypen die Ergänzungen im Kontextmenü gelten sollen, z. B. für Bilder, Hyperlinks und Seiten.

Cookies

Mit der chrome.cookies API können Sie Cookies abfragen und ändern sowie benachrichtigt werden, wenn sie sich ändern.

debugger

Die chrome.debugger API dient als alternativer Transport für das Remote-Debugging-Protokoll von Chrome. Verwenden Sie chrome.debugger, um einen oder mehrere Tabs hinzuzufügen, um die Netzwerkinteraktion zu instrumentieren, JavaScript-Fehler zu beheben, das DOM und CSS zu ändern und vieles mehr. Verwende die Debuggee-Eigenschaft tabId, um ein Targeting auf Tabs mit sendCommand vorzunehmen und Ereignisse nach tabId aus onEvent-Callbacks weiterzuleiten.

declarativeContent

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

declarativeNetRequest
Chrome (ab Version 84)

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

desktopCapture

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

devtools.inspectedWindow

Mit der chrome.devtools.inspectedWindow API können Sie mit dem geprüften Fenster interagieren: Sie können die Tab-ID für die geprüfte Seite abrufen, den Code im Kontext des geprüften Fensters auswerten, die Seite neu laden oder die Liste der Ressourcen auf der Seite abrufen.

devtools.network

Verwenden Sie die chrome.devtools.network API, um die Informationen zu Netzwerkanfragen abzurufen, 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. So können Sie eigene Bereiche erstellen, auf vorhandene Bereiche zugreifen und Seitenleisten hinzufügen.

devtools.performance
Chrome 129 und höher

Mit der chrome.devtools.performance API kannst du dir im Bereich „Leistung“ in den Entwicklertools Aktualisierungen des Aufzeichnungsstatus anhören.

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

Mit der chrome.documentScan API können Sie Bilder von angeschlossenen Dokumentenscannern finden und abrufen.

Dom
Chrome (ab Version 88)

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

Downloads

Mit der chrome.downloads API kannst du Downloads programmatisch initiieren, überwachen, bearbeiten und nach ihnen suchen.

enterprise.deviceAttributes
Chrome 46 und höher Nur ChromeOS Richtlinie erforderlich

Verwenden Sie die chrome.enterprise.deviceAttributes API, um Geräteattribute zu lesen. Hinweis: Diese API ist nur für Erweiterungen verfügbar, die entsprechend diesen Richtlinien vorinstalliert wurden.

enterprise.hardwarePlatform
Chrome 71 und höher Erfordert Richtlinie

Mit der chrome.enterprise.hardwarePlatform API können Sie den Hersteller und das Modell der Hardwareplattform abrufen, auf der der Browser ausgeführt wird. Hinweis: Diese API ist nur für Erweiterungen verfügbar, die über die Unternehmensrichtlinie installiert wurden.

enterprise.networkingAttributes
Chrome 85 und 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 wird.

enterprise.platformKeys

Verwenden Sie die chrome.enterprise.platformKeys API, um Schlüssel zu generieren und Zertifikate für diese Schlüssel zu installieren. Die Zertifikate werden von der Plattform verwaltet und können für die TLS-Authentifizierung, den Netzwerkzugriff oder von anderen Erweiterungen über chrome.platformKeys verwendet werden.

Ereignisse

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

extension

Die chrome.extension API bietet Dienstprogramme, die auf jeder Erweiterungsseite verwendet werden können. Diese Funktion unterstützt den Austausch von Nachrichten zwischen einer Erweiterung und ihren Inhaltsskripten oder zwischen Erweiterungen. Weitere Informationen hierzu finden Sie unter Nachrichtenweitergabe.

extensionTypes

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

fileBrowserHandler
Nur ChromeOS Nur Vordergrund

Verwenden Sie die chrome.fileBrowserHandler API, um den Chrome OS-Dateibrowser zu erweitern. Sie können diese API beispielsweise verwenden, um Nutzern das Hochladen von Dateien auf Ihre Website zu ermöglichen.

fileSystemProvider
Nur ChromeOS

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

fontSettings

Mit der chrome.fontSettings API können Sie die Schrifteinstellungen von Chrome verwalten.

gcm

Mit chrome.gcm können Sie Apps und Erweiterungen zulassen, Nachrichten über Firebase Cloud Messaging (FCM) zu senden und zu empfangen.

Verlauf

Mit der chrome.history API können Sie mit dem Verlauf der besuchten Seiten des Browsers interagieren. Sie können URLs im Browserverlauf hinzufügen, entfernen und abfragen. Wie Sie die Verlaufsseite durch Ihre eigene Version überschreiben, erfahren Sie unter Seiten überschreiben.

i18n

Nutzen Sie die chrome.i18n-Infrastruktur, um die Internationalisierung für Ihre gesamte App oder Erweiterung zu implementieren.

Identität

Verwende 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
Nur ChromeOS

Mit der chrome.input.ime API kannst du einen benutzerdefinierten IME für Chrome OS implementieren. Dadurch kann Ihre Erweiterung Tastenanschläge verarbeiten, die Anordnung festlegen und das Kandidatenfenster verwalten.

instanceID
Chrome (ab Version 44)

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

loginState
Chrome 78 und höher Nur ChromeOS

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

verwaltung

Mit der chrome.management API können Sie installierte Apps und Erweiterungen verwalten.

Benachrichtigungen

Mit der chrome.notifications API können Sie anhand von Vorlagen erweiterte Benachrichtigungen erstellen und Nutzern im Infobereich anzeigen.

außerhalb des Bildschirms
Chrome 109 oder höher MV3+

Verwenden Sie die offscreen API, um Offscreen-Dokumente zu erstellen und zu verwalten.

omnibox

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

pageCapture

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

permissions

Verwenden Sie die chrome.permissions API, um deklarierte optionale Berechtigungen zur Laufzeit statt zur Installation anzufordern, damit Nutzer verstehen, warum die Berechtigungen erforderlich sind, und nur die Berechtigungen gewähren, die wirklich erforderlich sind.

platformKeys
Chrome (ab Version 45) Nur ChromeOS

Verwenden Sie die chrome.platformKeys API, 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. So ist beispielsweise die Verwendung von von der Plattform verwalteten Zertifikaten in VPNs von Drittanbietern möglich (siehe chrome.vpnProvider).

power

Mit der chrome.power API können Sie die Energieverwaltungsfunktionen des Systems überschreiben.

printerProvider
Chrome (ab Version 44)

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

Drucken
Chrome 81 oder höher Nur ChromeOS

Mit der chrome.printing API können Sie Druckaufträge an Drucker senden, die auf Chromebook installiert sind.

printingMetrics
Chrome 79 und 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 der Funktionen in Chrome steuern, die sich auf den Datenschutz eines Nutzers auswirken können. Diese API basiert auf dem ChromeSetting-Prototyp des Typs API zum Abrufen und Festlegen der Chrome-Konfiguration.

Prozesse
Entwicklerversion

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

proxy

Verwenden Sie die chrome.proxy API, um die Proxy-Einstellungen von Chrome zu verwalten. Diese API verwendet den ChromeSetting-Prototyp vom Typ API, um die Proxykonfiguration abzurufen und festzulegen.

readingList
Chrome 120+ MV3+

Mit der chrome.readingList API kannst du die Elemente in der Leseliste auslesen und ändern.

runtime

Verwenden Sie die chrome.runtime API, um den Service Worker abzurufen, Details zum Manifest zurückzugeben und auf Ereignisse im Erweiterungslebenszyklus zu warten und darauf zu reagieren. Sie können diese API auch verwenden, um den relativen Pfad von URLs in voll qualifizierte URLs umzuwandeln.

Scripting
Chrome 88 und höher MV3 und höher

Mit der chrome.scripting API kannst du ein Script in verschiedenen Kontexten ausführen.

search
Chrome 87 und höher

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

Sitzungen

Mit der chrome.sessions API können Sie Tabs und Fenster aus einer Browser-Sitzung abfragen und wiederherstellen.

sidePanel
Chrome 114 und höher MV3+

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

storage

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

system.cpu

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

system.display

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

system.memory

Die chrome.system.memory API.

system.storage

Verwenden Sie die chrome.system.storage API, um Informationen zu Speichergeräten abzufragen und benachrichtigt zu werden, wenn ein Wechseldatenträger angeschlossen oder getrennt wird.

systemLog
Chrome 125 oder höher Nur ChromeOS Erfordert Richtlinie

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 und höher MV3 und höher

Du kannst die chrome.tabGroups API verwenden, um mit dem Tab-Gruppierungssystem des Browsers zu interagieren. Mit dieser API können Sie Tabgruppen im Browser ändern und neu anordnen. Verwenden Sie die chrome.tabs API, um Tabs zu gruppieren und 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. Mit dieser API können Sie Tabs im Browser erstellen, ändern und neu anordnen.

topSites

Verwenden Sie die chrome.topSites API, um auf die Top-Websites zuzugreifen (d.h. die am häufigsten besuchten Websites), die auf der Seite „Neuer Tab“ angezeigt werden. Dazu gehören keine vom Nutzer angepassten Verknüpfungen.

TTS

Mit der chrome.tts API können Sie synthetisierte Sprachausgabe (Text-to-Speech, TTS) abspielen. Weitere Informationen finden Sie in der zugehörigen ttsEngine API, mit der eine Erweiterung eine Spracherkennung implementieren kann.

ttsEngine

Mit der chrome.ttsEngine API können Sie eine TTS-Engine (Text-to-Speech) mithilfe einer Erweiterung implementieren. Wenn Ihre Erweiterung sich über diese API registriert, erhält sie Ereignisse mit einer auszusprechenden Äußerung und anderen Parametern, wenn eine Erweiterung oder Chrome-App die tts API zum Generieren von Sprache verwendet. Ihre Erweiterung kann dann jede verfügbare Webtechnologie verwenden, um die Sprache zu synthetisieren und auszugeben, und Ereignisse zurück an die aufrufende Funktion senden, um den Status zu melden.

Typen

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

userScripts
Chrome 120 oder höher MV3+

Mit der userScripts API können Sie Nutzerskripte im Kontext von Nutzerskripts ausführen.

vpnProvider
Chrome (ab Version 43) Nur ChromeOS

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

Chrome (ab Version 43) Nur ChromeOS

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

webAuthenticationProxy
Chrome 115 und höher MV3 und höher

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

webNavigation

Mit der chrome.webNavigation API können Sie Benachrichtigungen zum Status von Navigationsanfragen in Echtzeit erhalten.

webRequest

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

fenster

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