API-Referenz

Die meisten Chrome-Erweiterungen benötigen Zugriff auf eine oder mehrere Chrome Extensions APIs, um zu funktionieren. In dieser API-Referenz werden die APIs beschrieben, die in Erweiterungen verwendet werden können, und es werden Beispielanwendungsfälle vorgestellt.

Ab Chrome 148 sind diese APIs auch im Namespace browser als browserübergreifende Alternative zu chrome verfügbar. Informationen zur Einführung finden Sie unter Browser-Namespace.

Häufige Funktionen der Extensions API

Eine Extensions API besteht aus einem Namespace mit Methoden und Eigenschaften für die Arbeit mit Erweiterungen und in der Regel, aber nicht immer, Manifestfeldern für die Datei manifest.json. Der Namespace browser.action erfordert beispielsweise ein "action"-Objekt im Manifest. Viele APIs erfordern auch Berechtigungen im Manifest.

Methoden in Erweiterungs-APIs sind asynchron, sofern nicht anders angegeben. Asynchrone Methoden werden sofort zurückgegeben, ohne auf den Abschluss des Vorgangs zu warten, der sie aufruft. Verwenden Sie Promises, um die Ergebnisse dieser asynchronen Methoden abzurufen.

Chrome-Erweiterungs-APIs

accessibilityFeatures

Mit der chrome.accessibilityFeatures API können Sie die Bedienungshilfen von Chrome verwalten. Diese API basiert auf dem ChromeSetting-Prototyp der Typ-API, um einzelne Bedienungshilfen abzurufen und festzulegen. Damit die Erweiterung Feature-Status abrufen kann, muss sie die Berechtigung accessibilityFeatures.read anfordern. Zum Ändern des Feature-Status benötigt die Erweiterung die Berechtigung accessibilityFeatures.modify. Beachten Sie, dass accessibilityFeatures.modify nicht die Berechtigung accessibilityFeatures.read impliziert.

action
Chrome 88 oder höher browser.* seit Chrome 148 MV3 oder höher

Mit der chrome.action API können Sie das Symbol der Erweiterung in der Google Chrome-Symbolleiste steuern.

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 oder höher browser.* seit Chrome 148 Nur ChromeOS

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

bookmarks

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 für den 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 browser.* seit Chrome 148 Nur ChromeOS

Mit dieser API können Sie Zertifikate für die Plattform verfügbar machen, 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 zum 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 können. Allgemeiner ausgedrückt: Mit den Inhaltseinstellungen können Sie das Verhalten von Chrome für jede Website einzeln anpassen, anstatt es global festzulegen.

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 Arten von Objekten Ihre Kontextmenü-Ergänzungen gelten sollen, z. B. Bilder, Hyperlinks und Seiten.

Cookies

Mit der chrome.cookies API können Sie Cookies abfragen und ändern und sich benachrichtigen lassen, wenn sie sich ändern.

debugger

Die chrome.debugger API dient als alternativer Transport für das Remote-Debugging-Protokoll von Chrome. Mit chrome.debugger können Sie einen oder mehrere Tabs anhängen, um die Netzwerkinteraktion zu instrumentieren, JavaScript zu debuggen, das DOM und CSS zu mutieren und vieles mehr. Verwenden Sie das Debuggee-Attribut tabId, um Tabs mit sendCommand anzusprechen und Ereignisse nach tabId aus onEvent-Callbacks weiterzuleiten.

declarativeContent

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

declarativeNetRequest
Chrome 84 und höher browser.* seit Chrome 148

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 ihren Inhalt einzusehen. Das sorgt für mehr Datenschutz.

desktopCapture

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

devtools.inspectedWindow

Verwenden Sie die chrome.devtools.inspectedWindow API, um mit dem geprüften Fenster zu interagieren: Rufen Sie die Tab-ID für die geprüfte 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

Verwenden Sie die chrome.devtools.network API, um die Informationen zu Netzwerkanfragen abzurufen, die von den Entwicklertools im Netzwerkbereich angezeigt werden.

devtools.panels

Mit der chrome.devtools.panels API können Sie Ihre Erweiterung in die Benutzeroberfläche des Entwicklertool-Fensters einbinden: Erstellen Sie eigene Bereiche, greifen Sie auf vorhandene Bereiche zu und fügen Sie Seitenleisten hinzu.

devtools.performance
Chrome 129+ browser.* seit Chrome 152

Mit der chrome.devtools.performance API können Sie im Bereich „Leistung“ in den Entwicklertools auf Aktualisierungen des Aufzeichnungsstatus warten.

devtools.recorder
Chrome 105+ browser.* seit Chrome 152

Mit der chrome.devtools.recorder API können Sie das Steuerfeld „Recorder“ in den DevTools anpassen.

dns
Entwicklerversion

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

documentScan
Chrome 44 oder höher browser.* seit Chrome 148 Nur ChromeOS

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

dom
Chrome 88 oder höher browser.* seit Chrome 148

Verwenden Sie die chrome.dom API, um auf spezielle DOM APIs für Erweiterungen zuzugreifen.

Downloads

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

enterprise.deviceAttributes
Chrome 46 und höher browser.* seit Chrome 148 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, deren Installation durch Unternehmensrichtlinien erzwungen wird.

enterprise.hardwarePlatform
Chrome 71 und höher browser.* seit Chrome 148 Richtlinie erforderlich

Mit der chrome.enterprise.hardwarePlatform API kannst du 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.login
Chrome 139 und höher browser.* seit Chrome 148 Nur ChromeOS Richtlinie erforderlich

Verwenden Sie die chrome.enterprise.login API, um verwaltete Gastsitzungen zu beenden. Hinweis: Diese API ist nur für Erweiterungen verfügbar, die über die Unternehmensrichtlinie in verwalteten Gastsitzungen unter ChromeOS installiert wurden.

enterprise.networkingAttributes
Chrome 85 und höher browser.* seit Chrome 148 Nur ChromeOS Richtlinie erforderlich

Verwenden Sie die chrome.enterprise.networkingAttributes API, um Informationen zu Ihrem aktuellen Netzwerk zu lesen. Hinweis: Diese API ist nur für Erweiterungen verfügbar, deren Installation durch Unternehmensrichtlinien 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 senden, um Sie zu benachrichtigen, wenn etwas Interessantes passiert.

extension

Die chrome.extension API enthält Dienstprogramme, die von jeder Erweiterungsseite verwendet werden können. Sie unterstützt den Austausch von Nachrichten zwischen einer Erweiterung und ihren Inhaltsskripts oder zwischen Erweiterungen, wie im Artikel Message Passing ausführlich beschrieben.

extensionTypes

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

fileBrowserHandler
Nur ChromeOS Nur Vordergrund

Mit der chrome.fileBrowserHandler API können Sie den ChromeOS-Dateibrowser erweitern. Mit dieser API können Sie Nutzern beispielsweise 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

Verwenden Sie die chrome.fontSettings API, um die Schriftarteinstellungen von Chrome zu verwalten.

gcm

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

history

Verwenden Sie die chrome.history API, um mit dem Browserverlauf der besuchten Seiten 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

Verwenden Sie die chrome.i18n-Infrastruktur, um die Internationalisierung in Ihrer gesamten App oder Erweiterung zu implementieren.

identity

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

idle

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

input.ime
Nur ChromeOS

Mit der chrome.input.ime API können Sie eine benutzerdefinierte Eingabemethode für ChromeOS implementieren. Dadurch kann Ihre Erweiterung Tastenanschläge verarbeiten, die Zusammensetzung festlegen und das Kandidatenfenster verwalten.

instanceID
Chrome 44 und höher browser.* seit Chrome 148

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

loginState
Chrome 78 oder höher browser.* ab Chrome 148 Nur ChromeOS

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

verwaltung

Die chrome.management API bietet Möglichkeiten zum Verwalten installierter Apps und Erweiterungen.

mimeHandler
Chrome 151 oder höher

Verwenden Sie die chrome.mimeHandler API, um MIME-Typ-Streams in Drittanbietererweiterungen zu verarbeiten.

notifications

Mit der chrome.notifications API kannst du Rich-Benachrichtigungen mithilfe von Vorlagen erstellen und diese Benachrichtigungen Nutzern in der Taskleiste anzeigen lassen.

offscreen
Chrome 109 und höher browser.* seit Chrome 148 MV3 und höher

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

omnibox

Mit der Omnibox API können Sie ein Suchwort 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.

Berechtigungen

Verwenden Sie die chrome.permissions API, um deklarierte optionale Berechtigungen zur Laufzeit und nicht zur Installationszeit anzufordern. So verstehen Nutzer, warum die Berechtigungen erforderlich sind, und gewähren nur die erforderlichen Berechtigungen.

platformKeys
Chrome 45 und höher browser.* seit Chrome 148 Nur ChromeOS

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

power

Verwenden Sie die chrome.power API, um die Energieverwaltungsfunktionen des Systems zu überschreiben.

printerProvider
Chrome 44 und höher browser.* seit Chrome 148

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.

printing
Chrome 81 oder höher browser.* seit Chrome 148 Nur ChromeOS

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

printingMetrics
Chrome 79+ browser.* seit Chrome 148 Nur ChromeOS Richtlinie erforderlich

Mit der chrome.printingMetrics API können Sie Daten zur Druckernutzung abrufen.

Datenschutz

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

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 des Typs API, um die Proxykonfiguration abzurufen und festzulegen.

publicSuffix
Chrome 153 oder höher

Verwenden Sie die chrome.publicSuffix API, um die Public Suffix List (PSL) des Browsers abzufragen.

readingList
Chrome 120+ browser.* seit Chrome 148 MV3+

Mit der chrome.readingList API können Sie Elemente in der Leseliste lesen und ändern.

runtime

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

scripting
Chrome 88 oder höher browser.* seit Chrome 148 MV3 oder höher

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

search
Chrome 87 und höher browser.* seit Chrome 148

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

sessions

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

sidePanel
Chrome 114+ browser.* seit Chrome 148 MV3+

Mit der chrome.sidePanel API können Sie Inhalte in der Seitenleiste des Browsers neben dem Hauptinhalt einer Webseite hosten.

Speicherplatz

Verwenden Sie die chrome.storage API, um Änderungen an Nutzerdaten zu speichern, abzurufen und zu verfolgen.

system.cpu

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

system.display

Verwenden Sie die system.display API, um angezeigte Metadaten 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 oder entfernt wird.

systemLog
Chrome 125 und höher browser.* seit Chrome 148 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-Mediastreams zu interagieren.

tabGroups
Chrome 89 und höher browser.* seit Chrome 148 MV3 und höher

Verwenden Sie die chrome.tabGroups API, um mit dem Tabgruppen-System des Browsers zu interagieren. Mit dieser API können Sie Tabgruppen im Browser ändern und neu anordnen. Wenn Sie Tabs gruppieren, die Gruppierung aufheben oder abfragen möchten, welche Tabs sich in Gruppen befinden, verwenden Sie die chrome.tabs API.

Tabs

Verwenden Sie die chrome.tabs API, um mit dem Tab-System des Browsers zu interagieren. Mit dieser API können Sie Tabs im Browser erstellen, ändern und neu anordnen.

topSites

Mit der chrome.topSites API können Sie auf die Top-Websites (d.h. die am häufigsten besuchten Websites) zugreifen, die auf der Seite „Neuer Tab“ angezeigt werden. Dazu gehören keine vom Nutzer angepassten Tastenkombinationen.

tts

Verwenden Sie die chrome.tts API, um synthetisierte Text-zu-Sprache (TTS) wiederzugeben. Siehe auch die zugehörige ttsEngine API, mit der eine Erweiterung eine Sprach-Engine implementieren kann.

ttsEngine

Mit der chrome.ttsEngine API können Sie eine Text-zu-Sprache-Engine(TTS) mithilfe einer Erweiterung implementieren. Wenn sich Ihre Erweiterung mit dieser API registriert, erhält sie Ereignisse mit einer zu sprechenden Ä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 an die aufrufende Funktion zurücksenden, um den Status zu melden.

types

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

userScripts
Chrome 120+ browser.* seit Chrome 148 MV3+

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

vpnProvider
Chrome 43 und höher browser.* seit Chrome 148 Nur ChromeOS

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

Chrome 43 und höher browser.* seit Chrome 148 Nur ChromeOS

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

webAuthenticationProxy
Chrome 115+ browser.* seit Chrome 148 MV3+

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 während der Fahrt erhalten.

webRequest

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

windows

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.