API リファレンス

ほとんどの拡張機能は、動作するために 1 つ以上の Chrome 拡張機能 API へのアクセス権を必要とします。この API リファレンスでは、拡張機能で使用できる API について説明し、ユースケースの例を紹介します。

accessibilityFeatures

chrome.accessibilityFeatures API を使用すると、Chrome のユーザー補助機能を管理できます。この API は、個々のユーザー補助機能を設定および取得するために、タイプ API の ChromeSetting プロトタイプに依存しています。機能の状態を取得するには、拡張機能が accessibilityFeatures.read 権限をリクエストする必要があります。拡張機能が機能の状態を変更するには、accessibilityFeatures.modify 権限が必要です。accessibilityFeatures.modifyaccessibilityFeatures.read 権限を意味しないことに注意してください。

alarms

chrome.alarms API を使用して、コードを定期的に実行するか、将来の指定した時間に実行するようにスケジュールします。

audio
Chrome 59 以降 ChromeOS のみ

chrome.audio API は、システムに接続されたオーディオ デバイスに関する情報を取得し、制御できるようにするために提供されています。この API は現在、ChromeOS のキオスクモードでのみ利用できます。

ブックマーク

chrome.bookmarks API を使用すると、ブックマークの作成、整理、その他の操作ができます。カスタムのブックマーク マネージャー ページを作成するために使用できるオーバーライド ページもご覧ください。

browserAction
≤ MV2

ブラウザ アクションを使用すると、アドレスバーの右側にある Google Chrome のメイン ツールバーにアイコンを表示できます。ブラウザ アクションには、アイコンの他に、ツールチップバッジポップアップを設定できます。

browsingData

chrome.browsingData API を使用して、ユーザーのローカル プロファイルから閲覧データを削除します。

certificateProvider
Chrome 46 以降 ChromeOS のみ

この API を使用して証明書をプラットフォームに公開すると、そのプラットフォームはこの証明書を TLS 認証に使用できます。

コマンド

Commands API を使用して、拡張機能でアクションをトリガーするキーボード ショートカットを追加します。たとえば、ブラウザ アクションを開くアクションや、拡張機能にコマンドを送信するアクションなどです。

contentSettings

chrome.contentSettings API を使用して、ウェブサイトが Cookie、JavaScript、プラグインなどの機能を使用できるかどうかを制御する設定を変更します。一般的に、コンテンツの設定では、Chrome の動作をグローバルではなくサイトごとにカスタマイズできます。

contextMenus

chrome.contextMenus API を使用して、Google Chrome のコンテキスト メニューに項目を追加します。コンテキスト メニューに追加するオブジェクトのタイプ(画像、ハイパーリンク、ページなど)を選択できます。

Cookie

chrome.cookies API を使用して、Cookie のクエリと変更を行い、Cookie が変更されたときに通知を受け取ります。

デバッガ

chrome.debugger API は、Chrome のリモート デバッグ プロトコルの代替トランスポートとして機能します。chrome.debugger を使用して 1 つ以上のタブに接続し、ネットワーク インタラクションの計測、JavaScript のデバッグ、DOM と CSS の変更などを行います。Debuggee プロパティ tabId を使用して、sendCommand でタブをターゲットにし、onEvent コールバックから tabId でイベントをルーティングします。

declarativeContent

chrome.declarativeContent API を使用すると、ページのコンテンツの読み取り権限を必要とせず、ページのコンテンツに応じた操作ができます。

declarativeNetRequest
Chrome 84 以降

chrome.declarativeNetRequest API を使用してルールを宣言することで、ネットワーク リクエストをブロックまたは変更できます。これにより、拡張機能はネットワーク リクエストをインターセプトしてコンテンツを表示することなく変更できるため、プライバシーが強化されます。

declarativeWebRequest
ベータ版チャンネル ≤ MV2

注: この API は非推奨になりました。代わりに、declarativeNetRequest API をご覧ください。chrome.declarativeWebRequest API を使用すると、送信中のリクエストを傍受、ブロック、変更できます。登録したルールの評価は、JavaScript エンジンではなくブラウザで行われるため、ラウンドトリップ レイテンシが短縮されて効率が高まるので、chrome.webRequest API を使用するよりも大幅に高速です。

desktopCapture

Desktop Capture API は、画面、個々のウィンドウ、個々のタブのコンテンツをキャプチャします。

devtools.inspectedWindow

chrome.devtools.inspectedWindow API を使用して、検査対象のウィンドウを操作します。検査対象のページのタブ ID を取得したり、検査対象のウィンドウのコンテキストでコードを評価したり、ページを再読み込みしたり、ページ内のリソースのリストを取得したりできます。

devtools.network

chrome.devtools.network API を使用して、デベロッパー ツールの [ネットワーク] パネルに表示されるネットワーク リクエストに関する情報を取得します。

devtools.panels

chrome.devtools.panels API を使用して、拡張機能をデベロッパー ツールのウィンドウ UI に統合します。独自のパネルを作成したり、既存のパネルにアクセスしたり、サイドバーを追加したりできます。

devtools.performance
Chrome 129 以降

chrome.devtools.performance API を使用して、DevTools の [パフォーマンス] パネルで録画ステータスの更新をリッスンします。

devtools.recorder
Chrome 105 以降

chrome.devtools.recorder API を使用して、DevTools のレコーダー パネルをカスタマイズします。

dns
Dev チャンネル

DNS 解決には chrome.dns API を使用します。

documentScan
Chrome 44 以降 ChromeOS のみ

chrome.documentScan API を使用すると、接続されたドキュメント スキャナから画像を検出、取得できます。

dom
Chrome 88 以降

chrome.dom API を使用して拡張機能の特別な DOM API にアクセスする

ダウンロード

chrome.downloads API を使用すると、プログラムでダウンロードの開始、監視、操作、検索ができます。

enterprise.deviceAttributes
Chrome 46 以降 ChromeOS のみ ポリシーが必要

chrome.enterprise.deviceAttributes API を使用すると、デバイスの属性を読み取ることができます。注: この API は、企業ポリシーによって自動インストールされた拡張機能からのみ利用できます。

enterprise.hardwarePlatform
Chrome 71 以降 ポリシーが必要

chrome.enterprise.hardwarePlatform API を使用すると、ブラウザが動作しているハードウェア プラットフォームのメーカーと機種を取得できます。注: この API は、企業ポリシーによってインストールされた拡張機能でのみ利用できます。

enterprise.login
保留中 ChromeOS のみ ポリシーが必要

chrome.enterprise.login API を使用して、ユーザー セッションを終了します。注: この API は、ChromeOS の管理対象セッションで企業ポリシーによってインストールされた拡張機能でのみ利用できます。

enterprise.networkingAttributes
Chrome 85 以降 ChromeOS のみ ポリシーが必要

chrome.enterprise.networkingAttributes API を使用して、現在のネットワークに関する情報を読み取ります。注: この API は、企業ポリシーによって自動インストールされた拡張機能からのみ利用できます。

enterprise.platformKeys
ChromeOS のみ ポリシーが必要

chrome.enterprise.platformKeys API を使用して鍵を生成し、その鍵の証明書をインストールします。この証明書はプラットフォームで管理され、TLS 認証やネットワーク アクセスに、または chrome.platformKeys を介して他の拡張機能で使用できます。

イベント

chrome.events 名前空間には、イベントをディスパッチする API が使用する共通の型が含まれています。これは、興味深いことが発生したときに通知するために使用されます。

extension

chrome.extension API には、任意の拡張機能ページで使用できるユーティリティがあります。これには、メッセージ パッシングで詳しく説明されているように、拡張機能とそのコンテンツ スクリプト間、または拡張機能間のメッセージ交換のサポートが含まれます。

extensionTypes

chrome.extensionTypes API には、Chrome 拡張機能の型宣言が含まれています。

fileBrowserHandler
ChromeOS のみ フォアグラウンドのみ

chrome.fileBrowserHandler API を使用すると、Chrome OS ファイル ブラウザを拡張できます。たとえば、ウェブサイトにユーザーがファイルをアップロードできるようにする場合にこの API を使用できます。

fileSystemProvider
ChromeOS のみ

chrome.fileSystemProvider API を使用すると、ファイル システムを作成し、そのファイル システムに Chrome OS のファイル マネージャからアクセスできます。

fontSettings

chrome.fontSettings API を使用すると、Chrome のフォント設定を管理できます。

gcm

chrome.gcm を使用すると、アプリや拡張機能が Firebase Cloud Messaging(FCM)を介してメッセージを送受信できるようになります。

履歴

chrome.history API を使用して、ブラウザのアクセス済みページの記録を操作します。ブラウザの履歴で URL の追加、削除、クエリを行うことができます。履歴ページを独自のバージョンでオーバーライドするには、ページのオーバーライドをご覧ください。

i18n

chrome.i18n インフラストラクチャを使用して、アプリまたは拡張機能全体で国際化を実装します。

identity

chrome.identity API を使用して OAuth2 アクセス トークンを取得します。

idle

chrome.idle API を使用して、マシンのアイドル状態が変化したタイミングを検出します。

input.ime
ChromeOS のみ

chrome.input.ime API を使用して、Chrome OS 用のカスタム IME を実装します。これにより、拡張機能でキー操作の処理、コンポジションの設定、候補ウィンドウの管理が可能になります。

instanceID
Chrome 44 以降

chrome.instanceID を使用して Instance ID サービスにアクセスします。

loginState
Chrome 78 以降 ChromeOS のみ

chrome.loginState API を使用して、ログイン状態を読み取ってモニタリングします。

管理

chrome.management API は、インストールされたアプリと拡張機能を管理する方法を提供します。

通知

chrome.notifications API を使用して、テンプレートを使用してリッチ通知を作成し、システムトレイでユーザーに表示します。

アドレスバー

アドレスバー API を使用すると、Google Chrome のアドレスバー(アドレスバー)にキーワードを登録できます。

pageAction
≤ MV2

chrome.pageAction API を使用して、アドレスバーの右側にある Google Chrome のメイン ツールバーにアイコンを配置します。ページ アクションは、現在のページで実行できるアクションを表しますが、すべてのページに適用できるわけではありません。ページの操作は、非アクティブな場合はグレー表示になります。

pageCapture

chrome.pageCapture API を使用してタブを MHTML として保存します。

権限

chrome.permissions API を使用して、インストール時ではなく実行時に宣言されたオプションの権限をリクエストします。これにより、ユーザーは権限が必要な理由を理解し、必要な権限のみを付与できます。

platformKeys
Chrome 45 以降 ChromeOS のみ

chrome.platformKeys API を使用すると、プラットフォームで管理されるクライアント証明書にアクセスできます。ユーザーまたはポリシーが許可した場合、拡張機能はカスタム認証プロトコルでこのような証明書を使用できます。たとえば、プラットフォームで管理される証明書をサードパーティの VPN で使用できるようになります(chrome.vpnProvider を参照)。

power

chrome.power API を使用して、システムの電源管理機能をオーバーライドします。

printerProvider
Chrome 44 以降

chrome.printerProvider API でプリント マネージャーのイベントを使用して、拡張機能の制御下にあるプリンタとその機能を問い合わせたり、それらのプリンタに印刷ジョブを送信したりできます。

印刷
Chrome 81 以降 ChromeOS のみ

chrome.printing API を使用して、Chromebook にインストールされているプリンタに印刷ジョブを送信します。

printingMetrics
Chrome 79 以降 ChromeOS のみ ポリシーが必要

chrome.printingMetrics API を使用して、印刷の使用状況に関するデータを取得します。

プライバシー

chrome.privacy API を使用すると、ユーザーのプライバシーに影響する可能性のある Chrome の機能の使用を制御できます。この API は、Chrome の構成の取得と設定に type API の ChromeSetting プロトタイプを使用します。

プロセス
Dev チャンネル

chrome.processes API を使用すると、ブラウザのプロセスを操作できます。

プロキシ

chrome.proxy API を使用して、Chrome のプロキシ設定を管理します。この API は、プロキシ構成の取得と設定に ChromeSetting プロトタイプ(タイプ API)を使用します。

runtime

chrome.runtime API を使用すると、サービス ワーカーを取得し、マニフェストの詳細を返し、拡張機能のライフサイクル内のイベントをリッスンして応答できます。この API を使用して、URL の相対パスを完全修飾 URL に変換することもできます。

search
Chrome 87 以降

chrome.search API を使用して、デフォルトのプロバイダで検索します。

セッション

chrome.sessions API を使用すると、閲覧中のセッションからタブとウィンドウの問い合わせや復元を行うことができます。

ストレージ

chrome.storage API を使用して、ユーザーデータの保存、取得、変更の追跡を行います。

system.cpu

system.cpu API を使用して CPU メタデータをクエリします。

system.display

system.display API を使用して、表示メタデータをクエリします。

system.memory

chrome.system.memory API。

system.storage

chrome.system.storage API を使用して、ストレージ デバイス情報をクエリし、リムーバブル ストレージ デバイスの接続と取り外し時に通知を受け取ります。

systemLog
Chrome 125 以降 ChromeOS のみ ポリシーが必要

chrome.systemLog API を使用して、拡張機能から Chrome システムログを記録します。

tabCapture

chrome.tabCapture API を使用してタブのメディア ストリームを操作します。

タブ

chrome.tabs API を使用して、ブラウザのタブシステムを操作します。この API を使用すると、ブラウザのタブを作成、変更、並べ替えることができます。

topSites

chrome.topSites API を使用して、新しいタブページに表示される上位サイト(よくアクセスするサイト)にアクセスします。ユーザーがカスタマイズしたショートカットは含まれません。

tts

chrome.tts API を使用して、合成されたテキスト読み上げ(TTS)を再生します。拡張機能で音声エンジンを実装できる関連の ttsEngine API もご覧ください。

ttsEngine

chrome.ttsEngine API を使用して、拡張機能でテキスト読み上げ(TTS)エンジンを実装します。拡張機能がこの API を使用して登録すると、拡張機能または Chrome アプリが tts API を使用して音声生成を行うたびに、発話内容を含むイベントとその他のパラメータを受け取ります。拡張機能は、利用可能なウェブ テクノロジーを使用して音声を合成して出力し、ステータスをレポートするイベントを呼び出し関数に送り返します。

types

chrome.types API には、Chrome の型宣言が含まれています。

vpnProvider
Chrome 43 以降 ChromeOS のみ

chrome.vpnProvider API を使用して VPN クライアントを実装します。

壁紙
Chrome 43 以降 ChromeOS のみ

chrome.wallpaper API を使用して ChromeOS の壁紙を変更します。

webNavigation

chrome.webNavigation API を使用して、進行中のナビゲーション リクエストのステータスに関する通知を受け取ります。

webRequest

chrome.webRequest API を使用して、トラフィックをモニタリングして分析し、送信中のリクエストを傍受、ブロック、変更します。

windows

chrome.windows API を使用してブラウザ ウィンドウを操作します。この API を使用すると、ブラウザでウィンドウを作成、変更、再配置できます。