Referensi API

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 menunjukkan contoh kasus penggunaan.

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 izin accessibilityFeatures.read. Untuk mengubah status fitur, ekstensi memerlukan izin accessibilityFeatures.modify. Perlu diperhatikan bahwa accessibilityFeatures.modify tidak menyiratkan izin accessibilityFeatures.read.

alarm

Gunakan chrome.alarms API untuk menjadwalkan kode untuk dijalankan secara berkala atau pada waktu tertentu di masa mendatang.

audio
Chrome 59 atau yang lebih tinggi 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.

browserAction
≤ MV2

Gunakan tindakan browser untuk meletakkan ikon di toolbar utama Google Chrome, di sebelah kanan kolom URL. Selain ikon, tindakan browser dapat memiliki tooltip, badge, dan popup.

browsingData

Gunakan chrome.browsingData API untuk menghapus data penjelajahan dari profil lokal pengguna.

certificateProvider
Chrome 46 ke atas 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. Gunakan chrome.debugger untuk melampirkan ke satu atau beberapa tab untuk menginstrumentasikan interaksi jaringan, men-debug JavaScript, mengubah DOM dan CSS, dan lainnya. Gunakan properti Debuggee tabId untuk menargetkan tab dengan sendCommand dan merutekan peristiwa paling lambat tabId dari callback onEvent.

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.

declarativeWebRequest
Channel Beta ≤ MV2

Catatan: API ini tidak digunakan lagi. Sebagai gantinya, lihat declarativeNetRequest API. Gunakan chrome.declarativeWebRequest API untuk mencegat, memblokir, atau mengubah permintaan yang sedang berlangsung. Solusi ini jauh lebih cepat daripada chrome.webRequest API karena Anda dapat mendaftarkan aturan yang dievaluasi di browser, bukan di mesin JavaScript, sehingga mengurangi latensi bolak-balik dan memungkinkan efisiensi yang lebih tinggi.

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.recorder
Chrome 105 dan yang lebih baru

Gunakan chrome.devtools.recorder API untuk menyesuaikan panel Perekam Suara di DevTools.

dns
Saluran dev

Gunakan chrome.dns API untuk resolusi dns.

documentScan
Chrome 44 ke atas 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
Chrome 46 ke atas Khusus ChromeOS Memerlukan kebijakan

Gunakan chrome.enterprise.deviceAttributes API untuk membaca atribut perangkat. Catatan: API ini hanya tersedia untuk ekstensi yang diinstal otomatis oleh kebijakan perusahaan.

enterprise.hardwarePlatform

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
Chrome 85 atau yang lebih baru Khusus ChromeOS Memerlukan kebijakan

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 Memerlukan 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 Khusus 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+ Khusus ChromeOS

Gunakan chrome.loginState API untuk membaca dan memantau status login.

video

chrome.management API menyediakan cara untuk mengelola daftar ekstensi/aplikasi yang diinstal dan dijalankan. Ini sangat berguna untuk ekstensi yang menggantikan halaman Tab Baru bawaan.

notifikasi

Gunakan chrome.notifications API untuk membuat notifikasi lengkap menggunakan template dan menampilkan notifikasi ini kepada pengguna di area notifikasi.

omnibox

API omnibox memungkinkan Anda mendaftarkan kata kunci di kolom URL Google Chrome, yang juga dikenal dengan omnibox.

pageAction
≤ MV2

Gunakan chrome.pageAction API untuk menempatkan ikon di toolbar utama Google Chrome, di sebelah kanan kolom URL. Tindakan halaman mewakili tindakan yang dapat dilakukan di halaman saat ini, tetapi tidak berlaku untuk semua halaman. Tindakan halaman tampak berwarna abu-abu jika tidak aktif.

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 atau 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. Misalnya, 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+ Khusus ChromeOS

Gunakan chrome.printing API untuk mengirim tugas pencetakan ke printer yang diinstal di Chromebook.

printingMetrics
Chrome 79 atau yang lebih baru Khusus ChromeOS Memerlukan kebijakan

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 dev

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.

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.

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.

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
Chrome 125 ke atas Khusus ChromeOS Memerlukan kebijakan

Gunakan chrome.systemLog API untuk merekam log sistem Chrome dari ekstensi.

tabCapture

Gunakan chrome.tabCapture API untuk berinteraksi dengan aliran media tab.

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 juga ttsEngine 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 menggunakan tts 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.

vpnProvider
Chrome 43 ke atas Khusus ChromeOS

Gunakan chrome.vpnProvider API untuk mengimplementasikan klien VPN.

wallpaper
Chrome 43 ke atas Khusus ChromeOS

Gunakan chrome.wallpaper API untuk mengubah wallpaper ChromeOS.

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.