API リファレンス

ほとんどの拡張機能は、機能するために 1 つ以上の Chrome Extensions 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
Beta チャンネル ≤ 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 を使用して、デベロッパー ツールの [Network] パネルに表示されるネットワーク リクエストに関する情報を取得します。

devtools.panels

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

devtools.performance
Chrome 129 以降

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

devtools.recorder
Chrome 105 以降

chrome.devtools.recorder API を使用して、DevTools の [Recorder] パネルをカスタマイズします。

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 を使用すると、ChromeOS ファイル ブラウザを拡張できます。たとえば、ウェブサイトにユーザーがファイルをアップロードできるようにする場合にこの API を使用できます。

fileSystemProvider
ChromeOS のみ

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

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 を使用して、ChromeOS 用のカスタム IME を実装します。これにより、拡張機能はキー入力を処理し、コンポーズを設定し、候補ウィンドウを管理できます。

instanceID
Chrome 44 以降

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

loginState
Chrome 78 以降 ChromeOS のみ

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

管理

chrome.management API を使用すると、インストールされているアプリと拡張機能を管理できます。

通知

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

omnibox

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

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 の設定を取得して設定するために、API タイプの ChromeSetting プロトタイプを使用します。

プロセス
Dev チャンネル

chrome.processes API を使用して、ブラウザのプロセスを操作します。

プロキシ

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

runtime

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

search
Chrome 87 以降

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

セッション

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

storage

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 を使用すると、ブラウザでウィンドウを作成、変更、並べ替えることができます。