ほとんどの拡張機能は、1 つ以上の Chrome Extensions API にアクセスできる必要があります。この API リファレンスでは、利用可能な API について説明します。 サンプル ユースケースを示します。
Extensions API の一般的な機能
拡張機能 API は、拡張機能を動作させるためのメソッドとプロパティを含む名前空間で構成されます。通常は、
常に、manifest.json
ファイルのマニフェスト フィールド。たとえば、chrome.action
Namespace には "action"
オブジェクトが必要です。
使用します。多くの API では、マニフェストに権限も必要です。
特に明記されていない限り、拡張機能 API のメソッドは非同期です。非同期メソッドは、待機することなくすぐに結果を返す 呼び出すオペレーションを終了します。これらのメソッドの結果を取得するには、Promise を使用します。 詳細については、非同期メソッドをご覧ください。
Chrome Extension API
- accessibilityFeatures
-
chrome.accessibilityFeatures
API を使用して Chrome のユーザー補助機能を管理します。この API は、個別のユーザー補助機能を取得および設定するために、API タイプの ChromeSetting プロトタイプを使用します。機能の状態を取得するには、拡張機能がaccessibilityFeatures.read
権限をリクエストする必要があります。対象物の状態を変更するには、拡張機能にaccessibilityFeatures.modify
権限が必要です。なお、accessibilityFeatures.modify
はaccessibilityFeatures.read
権限を意味しません。 - 操作
-
Chrome 88 以降 MV3 以降 をご覧ください。
chrome.action
API を使用して、Google Chrome ツールバーにある拡張機能のアイコンを制御します。 - アラーム
-
chrome.alarms
API を使用して、コードを定期的に、または将来の指定した時刻に実行するようにスケジュールします。 - 音声
-
Chrome 59 以降 ChromeOS のみ をご覧ください。
chrome.audio
API は、ユーザーがシステムに接続されているオーディオ機器に関する情報を取得してコントロールできるようにするために提供されます。この API は現在、ChromeOS のキオスクモードでのみ使用できます。 - ブックマーク
-
chrome.bookmarks
API を使用して、ブックマークを作成、整理、操作します。また、オーバーライド ページを使用すると、ブックマーク マネージャーのカスタム ページを作成できます。 - browsingData
-
chrome.browsingData
API を使用して、ユーザーのローカル プロフィールから閲覧データを削除します。 - certificateProvider
-
Chrome 46 以降 ChromeOS のみ をご覧ください。
この API を使用して、プラットフォームに証明書を公開し、TLS 認証にこれらの証明書を使用できます。
- コマンド
-
Command API を使用すると、拡張機能での操作(ブラウザの操作を開く操作や拡張機能にコマンドを送信する操作など)をトリガーするキーボード ショートカットを追加できます。
- contentSettings
-
ウェブサイトが Cookie、JavaScript、プラグインなどの機能を使用できるかどうかを制御する設定を変更するには、
chrome.contentSettings
API を使用します。大まかに言うと、コンテンツ設定では、Chrome の動作をグローバルではなくサイト単位でカスタマイズできます。 - contextMenus
-
chrome.contextMenus
API を使用して、Google Chrome のコンテキスト メニューに項目を追加します。画像、ハイパーリンク、ページなど、コンテキスト メニューの追加を適用するオブジェクトの種類を選択できます。 - Cookie
-
chrome.cookies
API を使用して、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 は、宣言型ルールを指定することで、ネットワーク リクエストをブロックまたは変更する場合に使用します。これにより拡張機能は、リクエストをインターセプトしてコンテンツを閲覧することなく、ネットワーク リクエストを変更できるため、プライバシーが強化されます。 - desktopCapture
-
Desktop Capture API は、画面、個々のウィンドウ、個々のタブのコンテンツをキャプチャします。
- devtools.inspectedWindow
-
chrome.devtools.inspectedWindow
API を使用して、検査対象ウィンドウを操作します。検査対象ページのタブ ID の取得、検査対象ウィンドウのコンテキストにおけるコードの評価、ページの再読み込み、ページ内のリソースリストの取得を行います。 - devtools.network
-
デベロッパー ツールの [Network] パネルに表示されるネットワーク リクエストに関する情報を取得するには、
chrome.devtools.network
API を使用します。 - devtools.panels
-
chrome.devtools.panels
API を使用して拡張機能をデベロッパー ツールのウィンドウ UI に統合し、独自のパネルの作成、既存のパネルへのアクセス、サイドバーの追加を行います。 - devtools.performance
-
保留中
DevTools の [Performance] パネルで、記録ステータスの更新をリッスンするには、
chrome.devtools.performance
API を使用します。 - devtools.recorder
-
Chrome 105 以降
chrome.devtools.recorder
API を使用して、DevTools の [Recorder] パネルをカスタマイズします。 - dns
-
<ph type="x-smartling-placeholder"></ph> Dev チャンネル
DNS 解決に
chrome.dns
API を使用します。 - documentScan
-
Chrome 44 以降 ChromeOS のみ をご覧ください。
接続されたドキュメント スキャナから画像を検出して取得するには、
chrome.documentScan
API を使用します。 - ドム
-
Chrome 88 以降
chrome.dom
API を使用して拡張機能用の特別な DOM API にアクセスする - ダウンロード
-
chrome.downloads
API を使用して、ダウンロードをプログラムで開始、モニタリング、操作、検索します。 - enterprise.deviceAttributes
-
デバイスの属性を読み取るには、
chrome.enterprise.deviceAttributes
API を使用します。注: この API は、企業ポリシーによって自動インストールされた拡張機能でのみ使用できます。 - enterprise.hardwarePlatform
-
Chrome 71 以降 <ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> ポリシーが必要
chrome.enterprise.hardwarePlatform
API を使用して、ブラウザが実行されているハードウェア プラットフォームのメーカーとモデルを取得します。注: この API は、企業ポリシーによってインストールされた拡張機能でのみ使用できます。 - enterprise.networkingAttributes
-
chrome.enterprise.networkingAttributes
API を使用して、現在のネットワークに関する情報を読み取ります。注: この API は、企業ポリシーによって自動インストールされた拡張機能でのみ使用できます。 - enterprise.platformKeys
-
<ph type="x-smartling-placeholder"></ph> ChromeOS のみ <ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> ポリシーが必要
chrome.enterprise.platformKeys
API を使用して鍵を生成し、その鍵の証明書をインストールします。証明書はプラットフォームで管理され、TLS 認証、ネットワーク アクセス、または chrome.platformKeys を介したその他の拡張機能で使用できます。 - イベント
-
chrome.events
名前空間には、重要なことが起きたときに通知するためにイベントをディスパッチする API で使用される一般的なタイプが含まれています。 - 拡張機能
-
chrome.extension
API には、任意の拡張機能ページで使用できるユーティリティがあります。これには、拡張機能とそのコンテンツ スクリプト間、または拡張機能間でメッセージを交換するためのサポートが含まれます(メッセージの受け渡しを参照)。 - extensionTypes
-
chrome.extensionTypes
API には Chrome 拡張機能の型宣言が含まれています。 - fileBrowserHandler
-
<ph type="x-smartling-placeholder"></ph> ChromeOS のみ フォアグラウンドのみ をご覧ください。
chrome.fileBrowserHandler
API を使用して ChromeOS のファイル ブラウザを拡張します。たとえば、この API を使用して、ユーザーがウェブサイトにファイルをアップロードできるようにすることができます。 - fileSystemProvider
-
<ph type="x-smartling-placeholder"></ph> ChromeOS のみ
chrome.fileSystemProvider
API を使用してファイル システムを作成し、ChromeOS のファイル マネージャーからこのシステムにアクセスできるようにします。 - fontSettings
-
chrome.fontSettings
API を使用して Chrome のフォント設定を管理します。 - gcm
-
chrome.gcm
を使用して、アプリと拡張機能が Firebase Cloud Messaging(FCM)でメッセージを送受信できるようにします。 - 歴史
-
chrome.history
API を使用して、アクセスしたページのブラウザの記録を操作します。ブラウザの履歴では、URL の追加、削除、照会を行うことができます。履歴ページを独自のバージョンでオーバーライドするには、ページをオーバーライドするをご覧ください。 - 多言語対応
-
chrome.i18n
インフラストラクチャを使用して、アプリまたは拡張機能全体に国際化を実装します。 - ID
-
chrome.identity
API を使用して OAuth2 アクセス トークンを取得します。 - アイドル状態
-
chrome.idle
API を使用して、マシンのアイドル状態の変化を検出します。 - input.ime
-
<ph type="x-smartling-placeholder"></ph> 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 を使用すると、テンプレートを使用してリッチ通知を作成し、システムトレイにその通知を表示できます。 - 画面外
-
Chrome 109 以降 MV3 以降 をご覧ください。
offscreen
API を使用して、画面外ドキュメントを作成、管理します。 - アドレスバー
-
アドレスバー API を使用すると、Google Chrome のアドレスバーにキーワードを登録できます。アドレスバーはアドレスバーとも呼ばれます。
- pageCapture
-
chrome.pageCapture
API を使用してタブを MHTML として保存します。 - 権限
-
chrome.permissions
API を使用して、宣言されたオプションの権限をインストール時ではなく実行時にリクエストします。これにより、ユーザーは権限が必要な理由を理解し、必要な権限のみを付与します。 - platformKeys
-
Chrome 45 以降 ChromeOS のみ をご覧ください。
chrome.platformKeys
API を使用して、プラットフォームが管理するクライアント証明書にアクセスします。ユーザーまたはポリシーが権限を付与した場合、拡張機能はその証明書をカスタム認証プロトコルで使用できます。例:これにより、サードパーティの VPN でプラットフォームが管理する証明書を使用できるようになります(chrome.vpnProvider を参照)。 - 電力
-
chrome.power
API を使用して、システムの電源管理機能をオーバーライドします。 - printerProvider
-
Chrome 44 以降
chrome.printerProvider
API は、印刷マネージャーが使用するイベントを公開して、拡張機能で制御されるプリンタへのクエリ、拡張機能の機能の照会、これらのプリンタへの印刷ジョブの送信を行います。 - 印刷
-
Chrome 81 以降 ChromeOS のみ をご覧ください。
chrome.printing
API を使用して、Chromebook にインストールされたプリンタに印刷ジョブを送信します。 - printingMetrics
-
chrome.printingMetrics
API を使用して、印刷の使用状況に関するデータを取得します。 - プライバシー
-
chrome.privacy
API を使用して、ユーザーのプライバシーに影響する可能性がある Chrome の機能の使用を管理します。この API は、Chrome の構成を取得、設定するために、API タイプの ChromeSetting プロトタイプを使用します。 - プロセス
-
<ph type="x-smartling-placeholder"></ph> Dev チャンネル
chrome.processes
API を使用してブラウザのプロセスとやり取りします。 - プロキシ
-
chrome.proxy
API を使用して Chrome のプロキシ設定を管理します。この API は、API タイプの ChromeSetting プロトタイプを利用してプロキシ構成を取得、設定します。 - readingList
-
Chrome 120 以降 MV3 以降 をご覧ください。
chrome.readingList
API を使用して、リーディング リストのアイテムを読み取り、変更します。 - ランタイム
-
chrome.runtime
API を使用して、Service Worker を取得し、マニフェストの詳細を返して、拡張機能のライフサイクルのイベントをリッスンして応答します。この API を使用して、URL の相対パスを完全修飾 URL に変換することもできます。 - スクリプト
-
Chrome 88 以降 MV3 以降 をご覧ください。
chrome.scripting
API を使用して、さまざまなコンテキストでスクリプトを実行します。 - search
-
Chrome 87 以降
デフォルトのプロバイダ経由で検索するには、
chrome.search
API を使用します。 - セッション
-
ブラウジング セッションのタブとウィンドウをクエリして復元するには、
chrome.sessions
API を使用します。 - sidePanel
-
Chrome 114 以降 MV3 以降 をご覧ください。
chrome.sidePanel
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.systemLog
API を使用して拡張機能から Chrome システムログを記録します。 - tabCapture
-
chrome.tabCapture
API を使用して、タブのメディア ストリームを操作します。 - tabGroups
-
Chrome 89 以降 MV3 以降 をご覧ください。
ブラウザのタブグループ化システムを操作するには、
chrome.tabGroups
API を使用します。この API を使用すると、ブラウザでタブグループの変更や並べ替えを行うことができます。タブのグループ化やグループ化解除、またはグループ内のタブのクエリを行うには、chrome.tabs
API を使用します。 - タブ
-
chrome.tabs
API を使用して、ブラウザのタブシステムを操作します。この API を使用すると、ブラウザのタブの作成、変更、並べ替えを行うことができます。 - topSites
-
chrome.topSites
API を使用して、新しいタブページに表示される上位のサイト(よくアクセスするサイト)にアクセスします。ユーザーがカスタマイズしたショートカットは含まれません。 - TTS
-
chrome.tts
API を使用して、合成テキスト読み上げ(TTS)を再生します。関連するttsEngine
API もご覧ください。この API を使用すると、拡張機能で音声エンジンを実装できます。 - ttsEngine
-
chrome.ttsEngine
API を使用して、拡張機能を使用してテキスト読み上げ(TTS)エンジンを実装します。この API を使用して拡張機能を登録すると、拡張機能または Chrome アプリでtts
API を使用して音声を生成するときに、発話される発話やその他のパラメータを含むイベントを受信します。拡張機能では、利用可能なウェブ テクノロジーを使用して音声を合成して出力し、呼び出し元の関数にイベントを返してステータスを報告できます。 - types
-
chrome.types
API には Chrome 用の型宣言が含まれています。 - userScripts
-
Chrome 120 以降 MV3 以降 をご覧ください。
userScripts
API を使用して、ユーザー スクリプトのコンテキストでユーザー スクリプトを実行します。 - vpnProvider
-
Chrome 43 以降 ChromeOS のみ をご覧ください。
chrome.vpnProvider
API を使用して VPN クライアントを実装します。 - 壁紙
-
Chrome 43 以降 ChromeOS のみ をご覧ください。
ChromeOS の壁紙を変更するには
chrome.wallpaper
API を使用します。 - webAuthenticationProxy
-
Chrome 115 以降 MV3 以降 をご覧ください。
chrome.webAuthenticationProxy
API を使用すると、リモート ホストで実行されているリモート デスクトップ ソフトウェアが Web Authentication API(WebAuthn)リクエストをインターセプトして、ローカル クライアントでこれらのリクエストを処理できるようになります。 - webNavigation
-
chrome.webNavigation
API を使用して、処理中のナビゲーション リクエストのステータスに関する通知を受け取ります。 - webRequest
-
chrome.webRequest
API を使用して、トラフィックをモニタリングおよび分析し、処理中のリクエストをインターセプト、ブロック、変更します。 - 窓
-
chrome.windows
API を使用してブラウザ ウィンドウを操作します。この API を使用すると、ブラウザのウィンドウの作成、変更、並べ替えを行うことができます。