Sebagian besar ekstensi memerlukan akses ke satu atau beberapa API Ekstensi Chrome agar dapat berfungsi. Referensi API ini menjelaskan API yang tersedia untuk digunakan dalam ekstensi dan menyajikan contoh kasus penggunaan.
Fitur umum Extensions API
Extensions API terdiri dari namespace yang berisi metode dan properti untuk menjalankan ekstensi, dan biasanya, tetapi tidak
selalu, kolom manifes untuk file manifest.json
. Misalnya, namespace chrome.action
memerlukan objek "action"
dalam manifes. Banyak API yang juga memerlukan izin dalam manifes.
Metode di API ekstensi bersifat asinkron kecuali jika dinyatakan lain. Metode asinkron segera kembali, tanpa menunggu untuk operasi yang memanggil mereka selesai. Gunakan promise untuk mendapatkan hasil dari metode ini. Untuk informasi selengkapnya, lihat Metode asinkron.
API Ekstensi Chrome
- accessibilityFeatures
-
Gunakan
chrome.accessibilityFeatures
API untuk mengelola fitur aksesibilitas Chrome. API ini bergantung pada prototipe ChromeSetting dari jenis API untuk mendapatkan dan menyetel fitur aksesibilitas individual. Untuk mendapatkan status fitur, ekstensi harus meminta izinaccessibilityFeatures.read
. Untuk mengubah status fitur, ekstensi memerlukan izinaccessibilityFeatures.modify
. Perlu diperhatikan bahwaaccessibilityFeatures.modify
tidak menyiratkan izinaccessibilityFeatures.read
. - tindakan
-
Chrome 88 dan yang lebih baru MV3 dan yang lebih baru
Gunakan
chrome.action
API untuk mengontrol ikon ekstensi di toolbar Google Chrome. - alarm
-
Gunakan
chrome.alarms
API untuk menjadwalkan kode untuk dijalankan secara berkala atau pada waktu tertentu di masa mendatang. - audio
-
Chrome 59 dan yang lebih baru Khusus ChromeOS
chrome.audio
API disediakan untuk memungkinkan pengguna mendapatkan informasi dan mengontrol perangkat audio yang terpasang ke sistem. API ini saat ini hanya tersedia dalam mode kios untuk ChromeOS. - bookmark
-
Gunakan
chrome.bookmarks
API untuk membuat, mengatur, dan memanipulasi bookmark. Lihat juga Mengganti Halaman, yang dapat Anda gunakan untuk membuat halaman Pengelola Bookmark kustom. - browsingData
-
Gunakan
chrome.browsingData
API untuk menghapus data penjelajahan dari profil lokal pengguna. - certificateProvider
-
Chrome 46 dan yang lebih baru Khusus ChromeOS
Gunakan API ini untuk mengekspos sertifikat ke platform yang dapat menggunakan sertifikat ini untuk autentikasi TLS.
- perintah
-
Gunakan API perintah untuk menambahkan pintasan keyboard yang memicu tindakan di ekstensi Anda, misalnya, tindakan untuk membuka tindakan browser atau mengirimkan perintah ke ekstensi.
- contentSettings
-
Gunakan
chrome.contentSettings
API untuk mengubah setelan yang mengontrol apakah situs dapat menggunakan fitur seperti cookie, JavaScript, dan plugin. Secara lebih umum, setelan konten memungkinkan Anda menyesuaikan perilaku Chrome per situs, bukan secara global. - contextMenus
-
Gunakan API
chrome.contextMenus
untuk menambahkan item ke menu konteks Google Chrome. Anda dapat memilih jenis objek yang akan menerapkan penambahan menu konteks, seperti gambar, hyperlink, dan halaman. - cookie
-
Gunakan
chrome.cookies
API untuk membuat kueri dan mengubah cookie, serta untuk mendapatkan notifikasi saat cookie berubah. - debugger
-
chrome.debugger
API berfungsi sebagai transpor alternatif untuk protokol proses debug jarak jauh Chrome. Gunakanchrome.debugger
untuk melampirkan ke satu atau beberapa tab untuk menginstrumentasikan interaksi jaringan, men-debug JavaScript, mengubah DOM dan CSS, dan lainnya. Gunakan propertiDebuggee
tabId
untuk menargetkan tab dengansendCommand
dan merutekan peristiwa paling lambattabId
dari callbackonEvent
. - declarativeContent
-
Gunakan
chrome.declarativeContent
API untuk mengambil tindakan bergantung pada konten halaman, tanpa memerlukan izin untuk membaca konten halaman. - declarativeNetRequest
-
Chrome 84 dan yang lebih baru
chrome.declarativeNetRequest
API digunakan untuk memblokir atau mengubah permintaan jaringan dengan menentukan aturan deklaratif. Hal ini memungkinkan ekstensi mengubah permintaan jaringan tanpa mencegatnya dan melihat kontennya, sehingga memberikan lebih banyak privasi. - desktopCapture
-
Desktop Capture API merekam konten layar, masing-masing jendela, atau setiap tab.
- devtools.inspectedWindow
-
Gunakan
chrome.devtools.inspectedWindow
API untuk berinteraksi dengan jendela yang diperiksa: dapatkan ID tab untuk halaman yang diperiksa, evaluasi kode dalam konteks jendela yang diperiksa, muat ulang halaman, atau dapatkan daftar resource dalam halaman. - devtools.network
-
Gunakan
chrome.devtools.network
API untuk mengambil informasi tentang permintaan jaringan yang ditampilkan oleh Developer Tools di panel Jaringan. - devtools.panels
-
Gunakan
chrome.devtools.panels
API untuk mengintegrasikan ekstensi Anda ke UI jendela Developer Tools: membuat panel sendiri, mengakses panel yang ada, dan menambahkan sidebar. - devtools.performance
-
Tertunda
Gunakan
chrome.devtools.performance
API untuk memproses pembaruan status perekaman di panel Performance di DevTools. - devtools.recorder
-
Chrome 105 dan yang lebih baru
Gunakan
chrome.devtools.recorder
API untuk menyesuaikan panel Perekam Suara di DevTools. - dns
-
Saluran developer
Gunakan
chrome.dns
API untuk resolusi dns. - documentScan
-
Chrome 44 dan yang lebih baru Khusus ChromeOS
Gunakan
chrome.documentScan
API untuk menemukan dan mengambil gambar dari pemindai dokumen yang terlampir. - dom
-
Chrome 88 dan yang lebih baru
Menggunakan
chrome.dom
API untuk mengakses DOM API khusus untuk Ekstensi - download
-
Gunakan
chrome.downloads
API untuk memulai, memantau, memanipulasi, dan menelusuri download secara terprogram. - enterprise.deviceAttributes
-
Gunakan
chrome.enterprise.deviceAttributes
API untuk membaca atribut perangkat. Catatan: API ini hanya tersedia untuk ekstensi yang diinstal otomatis oleh kebijakan perusahaan. - enterprise.hardwarePlatform
-
Chrome 71 dan yang lebih baru Mewajibkan kebijakan
Gunakan
chrome.enterprise.hardwarePlatform
API untuk mendapatkan produsen dan model platform hardware tempat browser berjalan. Catatan: API ini hanya tersedia untuk ekstensi yang diinstal oleh kebijakan perusahaan. - enterprise.networkingAttributes
-
Gunakan
chrome.enterprise.networkingAttributes
API untuk membaca informasi tentang jaringan Anda saat ini. Catatan: API ini hanya tersedia untuk ekstensi yang diinstal otomatis oleh kebijakan perusahaan. - enterprise.platformKeys
-
Khusus ChromeOS Mewajibkan kebijakan
Gunakan
chrome.enterprise.platformKeys
API untuk membuat kunci dan menginstal sertifikat untuk kunci ini. Sertifikat akan dikelola oleh platform dan dapat digunakan untuk autentikasi TLS, akses jaringan, atau oleh ekstensi lainnya melalui chrome.platformKeys. - peristiwa
-
Namespace
chrome.events
berisi jenis umum yang digunakan oleh API yang mengirimkan peristiwa untuk memberi tahu Anda jika terjadi sesuatu yang menarik. - ekstensi
-
chrome.extension
API memiliki utilitas yang dapat digunakan oleh semua halaman ekstensi. Ini mencakup dukungan untuk bertukar pesan antara ekstensi dan skrip kontennya atau antara ekstensi, seperti yang dijelaskan secara mendetail dalam Penerusan Pesan. - extensionTypes
-
chrome.extensionTypes
API berisi deklarasi jenis untuk ekstensi Chrome. - fileBrowserHandler
-
Khusus ChromeOS Hanya latar depan
Gunakan
chrome.fileBrowserHandler
API untuk memperluas browser file ChromeOS. Misalnya, Anda dapat menggunakan API ini untuk memungkinkan pengguna mengupload file ke situs Anda. - fileSystemProvider
-
Khusus ChromeOS
Gunakan
chrome.fileSystemProvider
API untuk membuat sistem file, yang dapat diakses dari file manager di ChromeOS. - fontSettings
-
Gunakan
chrome.fontSettings
API untuk mengelola setelan font Chrome. - gcm
-
Gunakan
chrome.gcm
untuk mengaktifkan aplikasi dan ekstensi guna mengirim dan menerima pesan melalui Firebase Cloud Messaging (FCM). - histori
-
Gunakan
chrome.history
API untuk berinteraksi dengan data browser tentang halaman yang dikunjungi. Anda dapat menambahkan, menghapus, dan membuat kueri untuk URL di histori browser. Untuk mengganti halaman histori dengan versi Anda sendiri, lihat Mengganti Halaman. - i18n
-
Gunakan infrastruktur
chrome.i18n
untuk mengimplementasikan internasionalisasi di seluruh aplikasi atau ekstensi Anda. - identitas
-
Gunakan
chrome.identity
API untuk mendapatkan token akses OAuth2. - tidak ada aktivitas
-
Gunakan
chrome.idle
API untuk mendeteksi kapan status tidak ada aktivitas mesin berubah. - input.ime
-
Khusus ChromeOS
Gunakan
chrome.input.ime
API untuk menerapkan IME kustom untuk Chrome OS. Hal ini memungkinkan ekstensi Anda menangani penekanan tombol, mengatur komposisi, dan mengelola jendela kandidat. - instanceID
-
Chrome 44 dan yang lebih baru
Gunakan
chrome.instanceID
untuk mengakses layanan ID Instance. - loginState
-
Chrome 78 dan yang lebih baru Khusus ChromeOS
Gunakan
chrome.loginState
API untuk membaca dan memantau status login. - video
-
chrome.management
API menyediakan cara untuk mengelola aplikasi dan ekstensi terinstal. - notifikasi
-
Gunakan
chrome.notifications
API untuk membuat notifikasi lengkap menggunakan template dan menampilkan notifikasi ini kepada pengguna di area notifikasi. - offscreen
-
Chrome 109 dan yang lebih baru MV3 dan yang lebih baru
Gunakan
offscreen
API untuk membuat dan mengelola dokumen di balik layar. - omnibox
-
API omnibox memungkinkan Anda mendaftarkan kata kunci di kolom URL Google Chrome, yang juga dikenal dengan omnibox.
- pageCapture
-
Gunakan
chrome.pageCapture
API untuk menyimpan tab sebagai MHTML. - izin
-
Gunakan
chrome.permissions
API untuk meminta izin opsional yang dideklarasikan pada waktu proses, bukan waktu penginstalan, sehingga pengguna memahami alasan izin diperlukan dan hanya memberikan izin yang diperlukan. - platformKeys
-
Chrome 45 dan yang lebih baru Khusus ChromeOS
Gunakan
chrome.platformKeys
API untuk mengakses sertifikat klien yang dikelola oleh platform. Jika pengguna atau kebijakan memberikan izin, ekstensi dapat menggunakan sertifikat tersebut dalam protokol autentikasi kustomnya. Mis. hal ini memungkinkan penggunaan sertifikat yang dikelola platform dalam VPN pihak ketiga (lihat chrome.vpnProvider). - daya
-
Gunakan
chrome.power
API untuk mengganti fitur pengelolaan daya sistem. - printerProvider
-
Chrome 44 dan yang lebih baru
chrome.printerProvider
API mengekspos peristiwa yang digunakan oleh pengelola cetak untuk mengkueri printer yang dikontrol oleh ekstensi, untuk mengkueri kemampuannya dan mengirimkan tugas pencetakan ke printer ini. - pencetakan
-
Chrome 81 dan yang lebih baru Khusus ChromeOS
Gunakan
chrome.printing
API untuk mengirim tugas pencetakan ke printer yang diinstal di Chromebook. - printingMetrics
-
Gunakan
chrome.printingMetrics
API untuk mengambil data tentang penggunaan pencetakan. - privasi
-
Gunakan
chrome.privacy
API untuk mengontrol penggunaan fitur di Chrome yang dapat memengaruhi privasi pengguna. API ini bergantung pada prototipe ChromeSetting dari jenis API untuk mendapatkan dan menyetel konfigurasi Chrome. - proses
-
Saluran developer
Gunakan
chrome.processes
API untuk berinteraksi dengan proses browser. - proxy
-
Gunakan
chrome.proxy
API untuk mengelola setelan proxy Chrome. API ini bergantung pada prototipe ChromeSetting dari jenis API untuk mendapatkan dan menyetel konfigurasi proxy. - readingList
-
Chrome 120 dan yang lebih baru MV3 dan yang lebih baru
Gunakan
chrome.readingList
API untuk membaca dan mengubah item dalam Daftar Bacaan. - runtime
-
Gunakan
chrome.runtime
API untuk mengambil pekerja layanan, menampilkan detail tentang manifes, dan memproses serta merespons peristiwa dalam siklus proses ekstensi. Anda juga dapat menggunakan API ini untuk mengonversi jalur relatif URL menjadi URL yang sepenuhnya memenuhi syarat. - pembuatan skrip
-
Chrome 88 dan yang lebih baru MV3 dan yang lebih baru
Gunakan
chrome.scripting
API untuk mengeksekusi skrip dalam berbagai konteks. - search
-
Chrome 87 dan yang lebih baru
Gunakan API
chrome.search
untuk melakukan penelusuran melalui penyedia default. - sesi
-
Gunakan
chrome.sessions
API untuk membuat kueri dan memulihkan tab serta jendela dari sesi penjelajahan. - sidePanel
-
Chrome 114 dan yang lebih baru MV3 dan yang lebih baru
Gunakan
chrome.sidePanel
API untuk menghosting konten di panel samping browser bersama dengan konten utama halaman web. - penyimpanan
-
Gunakan
chrome.storage
API untuk menyimpan, mengambil, dan melacak perubahan pada data pengguna. - system.cpu
-
Gunakan
system.cpu
API untuk membuat kueri metadata CPU. - system.display
-
Gunakan
system.display
API untuk membuat kueri metadata yang ditampilkan. - system.memory
-
API
chrome.system.memory
. - system.storage
-
Gunakan
chrome.system.storage
API untuk mengkueri informasi perangkat penyimpanan dan mendapatkan notifikasi saat perangkat penyimpanan eksternal terpasang dan dilepas. - systemLog
-
Gunakan
chrome.systemLog
API untuk merekam log sistem Chrome dari ekstensi. - tabCapture
-
Gunakan
chrome.tabCapture
API untuk berinteraksi dengan aliran media tab. - tabGroups
-
Chrome 89 dan yang lebih baru MV3 dan yang lebih baru
Gunakan
chrome.tabGroups
API untuk berinteraksi dengan sistem pengelompokan tab browser. Anda dapat menggunakan API ini untuk memodifikasi dan mengatur ulang grup tab di browser. Untuk mengelompokkan dan memisahkan tab, atau membuat kueri tab yang ada dalam grup, gunakanchrome.tabs
API. - tab
-
Gunakan
chrome.tabs
API untuk berinteraksi dengan sistem tab browser. Anda dapat menggunakan API ini untuk membuat, mengubah, dan mengatur ulang tab di browser. - topSites
-
Gunakan
chrome.topSites
API untuk mengakses situs teratas (yaitu situs yang paling sering dikunjungi) yang ditampilkan di halaman tab baru. Ini tidak termasuk pintasan yang disesuaikan oleh pengguna. - tts
-
Gunakan
chrome.tts
API untuk memutar text-to-speech (TTS) yang disintesis. Lihat jugattsEngine
API terkait, yang memungkinkan ekstensi untuk mengimplementasikan mesin ucapan. - ttsEngine
-
Gunakan
chrome.ttsEngine
API untuk menerapkan mesin text-to-speech(TTS) menggunakan ekstensi. Jika didaftarkan menggunakan API ini, ekstensi akan menerima peristiwa yang berisi ucapan yang akan diucapkan dan parameter lainnya saat ekstensi atau Aplikasi Chrome apa pun menggunakantts
API untuk menghasilkan ucapan. Ekstensi Anda kemudian dapat menggunakan teknologi web apa pun yang tersedia untuk menyintesis dan menghasilkan output ucapan, dan mengirim peristiwa kembali ke fungsi panggilan untuk melaporkan status. - jenis
-
chrome.types
API berisi deklarasi jenis untuk Chrome. - userScripts
-
Chrome 120 dan yang lebih baru MV3 dan yang lebih baru
Gunakan
userScripts
API untuk mengeksekusi skrip pengguna dalam konteks Skrip Pengguna. - vpnProvider
-
Chrome 43 dan yang lebih baru Khusus ChromeOS
Gunakan
chrome.vpnProvider
API untuk mengimplementasikan klien VPN. - wallpaper
-
Chrome 43 dan yang lebih baru Khusus ChromeOS
Gunakan
chrome.wallpaper
API untuk mengubah wallpaper ChromeOS. - webAuthenticationProxy
-
Chrome 115 dan yang lebih baru MV3 dan yang lebih baru
chrome.webAuthenticationProxy
API memungkinkan software desktop jarak jauh yang berjalan di host jarak jauh mencegat permintaan Web Authentication API (WebAuthn) untuk menanganinya di klien lokal. - webNavigation
-
Gunakan
chrome.webNavigation
API untuk menerima notifikasi tentang status permintaan navigasi yang sedang beroperasi. - webRequest
-
Gunakan
chrome.webRequest
API untuk mengamati dan menganalisis traffic, serta untuk menangkap, memblokir, atau mengubah permintaan yang sedang berlangsung. - jendela
-
Gunakan
chrome.windows
API untuk berinteraksi dengan jendela browser. Anda dapat menggunakan API ini untuk membuat, memodifikasi, dan mengatur ulang jendela di browser.