Çoğu uzantının çalışması için bir veya daha fazla Chrome Uzantıları API'sine erişmesi gerekir. Bu API referansında, uzantılarda kullanılabilecek API'ler açıklanmakta ve örnek kullanım alanları sunulmaktadır.
Common Extensions API'nin ortak özellikleri
Uzantılar API'si, uzantı işlerini yapmak için yöntemler ve özellikler içeren bir ad alanından ve genellikle manifest.json dosyası için manifest alanlarından oluşur (ancak her zaman değil). Örneğin, chrome.action ad alanı, manifestte bir "action" nesnesi gerektirir. Birçok API için manifest dosyasında izinler de gerekir.
Uzantı API'lerindeki yöntemler aksi belirtilmedikçe eşzamansızdır. Eşzamansız yöntemler, kendilerini çağıran işlemin tamamlanmasını beklemeden hemen geri döner. Bu eşzamansız yöntemlerin sonuçlarını almak için promises kullanın.
Chrome Extension API'leri
- accessibilityFeatures
- 
    
    Chrome'un erişilebilirlik özelliklerini yönetmek için chrome.accessibilityFeaturesAPI'yi kullanın. Bu API, tek tek erişilebilirlik özelliklerini almak ve ayarlamak için ChromeSetting tür API'nin prototipine dayanır. Özellik durumlarını almak için uzantınınaccessibilityFeatures.readizni istemesi gerekir. Uzantının özellik durumunu değiştirmek içinaccessibilityFeatures.modifyizni gerekir.accessibilityFeatures.modifyiznininaccessibilityFeatures.readizni anlamına gelmediğini unutmayın.
- action
- 
    Chrome 88+ MV3+Google Chrome araç çubuğundaki uzantı simgesini kontrol etmek için chrome.actionAPI'sini kullanın.
- alarms
- 
    
    Kodu periyodik olarak veya gelecekte belirli bir zamanda çalışacak şekilde planlamak için chrome.alarmsAPI'sini kullanın.
- audio
- 
    Chrome 59 ve sonraki sürümler Yalnızca ChromeOSchrome.audioAPI, kullanıcıların sisteme bağlı ses cihazları hakkında bilgi edinmesine ve bu cihazları kontrol etmesine olanak tanımak için sağlanır. Bu API şu anda yalnızca ChromeOS'te kiosk modunda kullanılabilir.
- yer işaretleri
- 
    
    Yer işaretlerini oluşturmak, düzenlemek ve başka şekillerde değiştirmek için chrome.bookmarksAPI'yi kullanın. Özel bir Yer İşareti Yöneticisi sayfası oluşturmak için kullanabileceğiniz Override Pages'e de bakın.
- browsingData
- 
    
    Bir kullanıcının yerel profilinden göz atma verilerini kaldırmak için chrome.browsingDataAPI'sini kullanın.
- certificateProvider
- 
    Chrome 46 veya daha yeni bir sürüm Yalnızca ChromeOSBu API'yi, sertifikaları platforma sunmak için kullanın. Platform, bu sertifikaları TLS kimlik doğrulamaları için kullanabilir. 
- commands
- 
    
    Uzantınızda işlemleri tetikleyen klavye kısayolları eklemek için Commands API'yi kullanın. Örneğin, tarayıcı işlemini açma veya uzantıya komut gönderme işlemleri. 
- contentSettings
- 
    
    Web sitelerinin çerezler, JavaScript ve eklentiler gibi özellikleri kullanıp kullanamayacaklarını belirleyen ayarları değiştirmek için chrome.contentSettingsAPI'yi kullanın. Daha genel bir ifadeyle, içerik ayarları Chrome'un davranışını genel olarak değil, site bazında özelleştirmenize olanak tanır.
- contextMenus
- 
    
    Google Chrome'un bağlam menüsüne öğe eklemek için chrome.contextMenusAPI'yi kullanın. İçerik menüsü eklemelerinizin hangi tür nesneler için geçerli olacağını (ör. resimler, köprüler ve sayfalar) seçebilirsiniz.
- cookies
- 
    
    Çerezleri sorgulamak, değiştirmek ve değiştiğinde bildirim almak için chrome.cookiesAPI'sini kullanın.
- hata ayıklayıcı
- 
    
    chrome.debuggerAPI, Chrome'un uzaktan hata ayıklama protokolü için alternatif bir aktarım görevi görür. Ağ etkileşimini ölçmek, JavaScript'te hata ayıklamak, DOM ve CSS'yi değiştirmek ve daha fazlası içinchrome.debuggersimgesini kullanarak bir veya daha fazla sekmeye bağlanın.Debuggeeözelliğini kullanaraksendCommandile sekmeleri hedefleyin veonEventgeri çağırmalarından gelen etkinlikleritabIdile yönlendirin.tabId
- declarativeContent
- 
    
    Sayfa içeriğini okuma izni gerektirmeden, sayfa içeriğine bağlı olarak işlem yapmak için chrome.declarativeContentAPI'sini kullanın.
- declarativeNetRequest
- 
    Chrome 84+chrome.declarativeNetRequestAPI, bildirim kuralları belirtilerek ağ isteklerini engellemek veya değiştirmek için kullanılır. Bu sayede uzantılar, ağ isteklerini engellemeden ve içeriklerini görüntülemeden değiştirebilir. Böylece daha fazla gizlilik sağlanır.
- desktopCapture
- 
    
    Masaüstü Yakalama API'si, ekranın, bağımsız pencerelerin veya bağımsız sekmelerin içeriğini yakalar. 
- devtools.inspectedWindow
- 
    
    İncelenen pencereyle etkileşim kurmak için chrome.devtools.inspectedWindowAPI'sini kullanın: İncelenen sayfanın sekme kimliğini alın, kodu incelenen pencere bağlamında değerlendirin, sayfayı yeniden yükleyin veya sayfadaki kaynakların listesini alın.
- devtools.network
- 
    
    Ağ panelinde Geliştirici Araçları tarafından gösterilen ağ istekleriyle ilgili bilgileri almak için chrome.devtools.networkAPI'yi kullanın.
- devtools.panels
- 
    
    Uzantınızı Geliştirici Araçları penceresi kullanıcı arayüzüne entegre etmek için chrome.devtools.panelsAPI'yi kullanın: kendi panellerinizi oluşturun, mevcut panellere erişin ve kenar çubukları ekleyin.
- devtools.performance
- 
    Chrome 129 veya daha yeni bir sürümGeliştirici Araçları'ndaki performans panelinde kayıt durumu güncellemelerini dinlemek için chrome.devtools.performanceAPI'yi kullanın.
- devtools.recorder
- 
    Chrome 105 veya daha yeni bir sürümGeliştirici Araçları'ndaki Kaydedici panelini özelleştirmek için chrome.devtools.recorderAPI'sini kullanın.
- dns
- 
    Yeni geliştirilenler kanalıDNS çözümlemesi için chrome.dnsAPI'sini kullanın.
- documentScan
- 
    Chrome 44 veya daha yeni bir sürüm Yalnızca ChromeOSEkli belge tarayıcılardan görüntüleri keşfetmek ve almak için chrome.documentScanAPI'yi kullanın.
- dom
- 
    Chrome 88 ve sonraki sürümlerUzantılar için özel DOM API'lerine erişmek üzere chrome.domAPI'sini kullanın.
- downloads
- 
    
    İndirmeleri programatik olarak başlatmak, izlemek, değiştirmek ve aramak için chrome.downloadsAPI'sini kullanın.
- enterprise.deviceAttributes
- 
    Chrome 46 ve sonraki sürümler Yalnızca ChromeOS �� Politika gerektirirCihaz özelliklerini okumak için chrome.enterprise.deviceAttributesAPI'yi kullanın. Not: Bu API yalnızca kurumsal politika tarafından zorunlu olarak yüklenen uzantılar için kullanılabilir.
- enterprise.hardwarePlatform
- 
    Chrome 71 ve sonraki sürümler Politika gerektirirTarayıcının çalıştığı donanım platformunun üreticisini ve modelini almak için chrome.enterprise.hardwarePlatformAPI'yi kullanın. Not: Bu API yalnızca kurumsal politika tarafından yüklenen uzantılar için kullanılabilir.
- enterprise.login
- 
    Yönetilen misafir oturumlarından çıkmak için chrome.enterprise.loginAPI'sini kullanın. Not: Bu API yalnızca ChromeOS'teki yönetilen misafir oturumlarında kurumsal politika tarafından yüklenen uzantılar tarafından kullanılabilir.
- enterprise.networkingAttributes
- 
    Mevcut ağınızla ilgili bilgileri okumak için chrome.enterprise.networkingAttributesAPI'yi kullanın. Not: Bu API yalnızca kurumsal politika tarafından zorunlu olarak yüklenen uzantılar için kullanılabilir.
- enterprise.platformKeys
- 
    Yalnızca ChromeOS Politika gerektirirBu anahtarlar için anahtar oluşturmak ve sertifika yüklemek üzere chrome.enterprise.platformKeysAPI'yi kullanın. Sertifikalar platform tarafından yönetilir ve TLS kimlik doğrulaması, ağ erişimi veya chrome.platformKeys aracılığıyla diğer uzantılar tarafından kullanılabilir.
- etkinlikler
- 
    
    chrome.eventsad alanı, ilginç bir şey olduğunda sizi bilgilendirmek için etkinlik gönderen API'ler tarafından kullanılan yaygın türleri içerir.
- extension
- 
    
    chrome.extensionAPI'sinde, herhangi bir uzantı sayfası tarafından kullanılabilecek yardımcı programlar bulunur. Message Passing (Mesaj Geçirme) bölümünde ayrıntılı olarak açıklandığı gibi, bir uzantı ile içerik komut dosyaları arasında veya uzantılar arasında mesaj alışverişi desteği içerir.
- extensionTypes
- 
    
    chrome.extensionTypesAPI, Chrome uzantıları için tür bildirimlerini içerir.
- fileBrowserHandler
- 
    Yalnızca ChromeOS Yalnızca ön planChrome OS dosya tarayıcısını genişletmek için chrome.fileBrowserHandlerAPI'yi kullanın. Örneğin, kullanıcıların web sitenize dosya yüklemesini sağlamak için bu API'yi kullanabilirsiniz.
- fileSystemProvider
- 
    Yalnızca ChromeOSChromeOS'teki dosya yöneticisinden erişilebilen dosya sistemleri oluşturmak için chrome.fileSystemProviderAPI'sini kullanın.
- fontSettings
- 
    
    Chrome'un yazı tipi ayarlarını yönetmek için chrome.fontSettingsAPI'yi kullanın.
- gcm
- 
    
    Uygulamaların ve uzantıların Firebase Cloud Messaging (FCM) üzerinden mesaj göndermesini ve almasını sağlamak için chrome.gcmkullanın.
- history
- 
    
    Ziyaret edilen sayfaların tarayıcı kaydıyla etkileşimde bulunmak için chrome.historyAPI'sini kullanın. Tarayıcının geçmişine URL ekleyebilir, URL kaldırabilir ve URL'leri sorgulayabilirsiniz. Geçmiş sayfasını kendi sürümünüzle geçersiz kılmak için Sayfaları Geçersiz Kılma başlıklı makaleyi inceleyin.
- i18n
- 
    
    Uygulamanızın veya uzantınızın tamamında uluslararasılaştırmayı uygulamak için chrome.i18naltyapısını kullanın.
- identity
- 
    
    OAuth2 erişim jetonlarını almak için chrome.identityAPI'sini kullanın.
- idle
- 
    
    Makinenin boşta kalma durumu değiştiğinde bunu algılamak için chrome.idleAPI'yi kullanın.
- input.ime
- 
    Yalnızca ChromeOSChrome OS için özel bir IME uygulamak üzere chrome.input.imeAPI'yi kullanın. Bu sayede uzantınız tuş vuruşlarını işleyebilir, kompozisyonu ayarlayabilir ve aday penceresini yönetebilir.
- instanceID
- 
    Chrome 44 veya daha yeni bir sürümÖrnek kimliği hizmetine erişmek için chrome.instanceIDkullanın.
- loginState
- 
    Chrome 78 ve sonraki sürümler Yalnızca ChromeOSOturum açma durumunu okumak ve izlemek için chrome.loginStateAPI'yi kullanın.
- yönetimi
- 
    
    chrome.managementAPI, yüklü uygulamaları ve uzantıları yönetme yöntemleri sunar.
- notifications
- 
    
    Şablonları kullanarak zengin bildirimler oluşturmak ve bu bildirimleri sistem tepsisindeki kullanıcılara göstermek için chrome.notificationsAPI'sini kullanın.
- offscreen
- 
    Chrome 109+ MV3+Ekran dışı dokümanlar oluşturmak ve yönetmek için offscreenAPI'yi kullanın.
- omnibox
- 
    
    Omnibox API, Google Chrome'un adres çubuğuna (omnibox olarak da bilinir) bir anahtar kelime kaydetmenize olanak tanır. 
- pageCapture
- 
    
    Bir sekmeyi MHTML olarak kaydetmek için chrome.pageCaptureAPI'sini kullanın.
- izinler
- 
    
    Kullanıcıların izinlerin neden gerekli olduğunu anlaması ve yalnızca gerekli olanları vermesi için chrome.permissionsAPI'sini kullanarak isteğe bağlı olarak beyan edilen izinleri yükleme zamanında değil, çalışma zamanında isteyin.
- platformKeys
- 
    Chrome 45 ve sonraki sürümler Yalnızca ChromeOSPlatform tarafından yönetilen istemci sertifikalarına erişmek için chrome.platformKeysAPI'sini kullanın. Kullanıcı veya politika izni verirse uzantı, özel kimlik doğrulama protokolünde bu tür bir sertifika kullanabilir. Örneğin, bu ayar üçüncü taraf VPN'lerde platform tarafından yönetilen sertifikaların kullanılmasına olanak tanır (chrome.vpnProvider'a bakın).
- power
- 
    
    Sistemin güç yönetimi özelliklerini geçersiz kılmak için chrome.powerAPI'yi kullanın.
- printerProvider
- 
    Chrome 44 veya daha yeni bir sürümchrome.printerProviderAPI, yazdırma yöneticisi tarafından uzantılarla kontrol edilen yazıcıları sorgulamak, bu yazıcıların özelliklerini sorgulamak ve bu yazıcılara yazdırma işleri göndermek için kullanılan etkinlikleri kullanıma sunar.
- yazdırma
- 
    Chrome 81 ve sonraki sürümler Yalnızca ChromeOSChromebook'a yüklenen yazıcılara yazdırma işleri göndermek için chrome.printingAPI'sini kullanın.
- printingMetrics
- 
    Yazdırma kullanımıyla ilgili verileri getirmek için chrome.printingMetricsAPI'yi kullanın.
- gizlilik
- 
    
    Kullanıcının gizliliğini etkileyebilecek Chrome özelliklerinin kullanımını kontrol etmek için chrome.privacyAPI'sini kullanın. Bu API, Chrome'un yapılandırmasını almak ve ayarlamak için API türünün ChromeSetting prototipine dayanır.
- processes
- 
    Yeni geliştirilenler kanalıTarayıcının işlemleriyle etkileşim kurmak için chrome.processesAPI'yi kullanın.
- proxy
- 
    
    Chrome'un proxy ayarlarını yönetmek için chrome.proxyAPI'yi kullanın. Bu API, proxy yapılandırmasını almak ve ayarlamak için ChromeSetting türündeki API'nin ChromeSetting prototipine dayanır.
- readingList
- 
    Chrome 120+ MV3+chrome.readingListAPI'yi kullanarak Okuma Listesi'ndeki öğeleri okuyun ve değiştirin.
- runtime
- 
    
    Service worker'ı almak, manifestle ilgili ayrıntıları döndürmek ve uzantı yaşam döngüsündeki etkinlikleri dinleyip yanıtlamak için chrome.runtimeAPI'yi kullanın. Bu API'yi, URL'lerin göreceli yolunu tam nitelikli URL'lere dönüştürmek için de kullanabilirsiniz.
- komut dosyası oluşturma
- 
    Chrome 88+ MV3+Farklı bağlamlarda komut dosyası yürütmek için chrome.scriptingAPI'yi kullanın.
- search
- 
    Chrome 87 ve sonraki sürümlerVarsayılan sağlayıcı üzerinden arama yapmak için chrome.searchAPI'sini kullanın.
- oturumlar
- 
    
    Bir göz atma oturumundaki sekmeleri ve pencereleri sorgulamak ve geri yüklemek için chrome.sessionsAPI'yi kullanın.
- sidePanel
- 
    Chrome 114 veya daha yeni bir sürüm MV3 veya daha yeni bir sürümchrome.sidePanelAPI'sini kullanarak içeriği, tarayıcının yan panelinde bir web sayfasının ana içeriğiyle birlikte barındırın.
- storage
- 
    
    Kullanıcı verilerinde yapılan değişiklikleri depolamak, almak ve izlemek için chrome.storageAPI'sini kullanın.
- system.cpu
- 
    
    CPU meta verilerini sorgulamak için system.cpuAPI'yi kullanın.
- system.display
- 
    
    Yayınlanan içerik meta verilerini sorgulamak için system.displayAPI'yi kullanın.
- system.memory
- 
    
    chrome.system.memoryAPI'si.
- system.storage
- 
    
    Depolama cihazı bilgilerini sorgulamak ve çıkarılabilir bir depolama cihazı takıldığında veya çıkarıldığında bildirim almak için chrome.system.storageAPI'sini kullanın.
- systemLog
- 
    Uzantılardan Chrome sistem günlüklerini kaydetmek için chrome.systemLogAPI'yi kullanın.
- tabCapture
- 
    
    Sekme medya akışlarıyla etkileşim kurmak için chrome.tabCaptureAPI'sini kullanın.
- tabGroups
- 
    Chrome 89+ MV3+Tarayıcının sekme gruplandırma sistemiyle etkileşim kurmak için chrome.tabGroupsAPI'yi kullanın. Bu API'yi, tarayıcıdaki sekme gruplarını değiştirmek ve yeniden düzenlemek için kullanabilirsiniz. Sekmeleri gruplandırmak ve gruplarını çözmek ya da gruplardaki sekmeleri sorgulamak içinchrome.tabsAPI'sini kullanın.
- sekmeler
- 
    
    Tarayıcının sekme sistemiyle etkileşim kurmak için chrome.tabsAPI'sini kullanın. Bu API'yi kullanarak tarayıcıda sekmeler oluşturabilir, değiştirebilir ve yeniden düzenleyebilirsiniz.
- topSites
- 
    
    Yeni sekme sayfasında gösterilen en popüler sitelere (ör. en çok ziyaret edilen siteler) erişmek için chrome.topSitesAPI'sini kullanın. Bunlara, kullanıcı tarafından özelleştirilen kısayollar dahil değildir.
- tts
- 
    
    Sentezlenmiş metin okuma (TTS) oynatmak için chrome.ttsAPI'yi kullanın. Bir uzantının konuşma motoru uygulamasına olanak tanıyan ilgilittsEngineAPI'ye de göz atın.
- ttsEngine
- 
    
    Bir uzantı kullanarak metin okuma(TTS) motoru uygulamak için chrome.ttsEngineAPI'yi kullanın. Uzantınız bu API'yi kullanarak kaydolursa herhangi bir uzantı veya Chrome uygulaması konuşma oluşturmak içinttsAPI'sini kullandığında, konuşulacak bir ifade ve diğer parametreleri içeren etkinlikler alır. Uzantınız daha sonra konuşmayı sentezlemek ve çıkışını yapmak için mevcut web teknolojilerini kullanabilir ve durumu bildirmek için etkinlikleri çağıran işleve geri gönderebilir.
- types
- 
    
    chrome.typesAPI, Chrome için tür bildirimlerini içerir.
- userScripts
- 
    Chrome 120+ MV3+Kullanıcı komut dosyalarını Kullanıcı Komut Dosyaları bağlamında yürütmek için userScriptsAPI'yi kullanın.
- vpnProvider
- 
    Chrome 43 ve sonraki sürümler Yalnızca ChromeOSVPN istemcisi uygulamak için chrome.vpnProviderAPI'yi kullanın.
- duvar kağıdı
- 
    Chrome 43 ve sonraki sürümler Yalnızca ChromeOSChromeOS duvar kağıdını değiştirmek için chrome.wallpaperAPI'yi kullanın.
- webAuthenticationProxy
- 
    Chrome 115+ MV3+chrome.webAuthenticationProxyAPI, uzak bir ana makinede çalışan uzaktan masaüstü yazılımının, Web Authentication API (WebAuthn) isteklerini yerel bir istemcide işlemek için yakalamasına olanak tanır.
- webNavigation
- 
    
    Devam eden gezinme isteklerinin durumuyla ilgili bildirim almak için chrome.webNavigationAPI'sini kullanın.
- webRequest
- 
    
    Trafiği gözlemlemek ve analiz etmek, ayrıca devam eden istekleri engellemek, değiştirmek veya bunlara müdahale etmek için chrome.webRequestAPI'sini kullanın.
- windows
- 
    
    Tarayıcı pencereleriyle etkileşimde bulunmak için chrome.windowsAPI'sini kullanın. Bu API'yi kullanarak tarayıcıda pencereler oluşturabilir, bunları değiştirebilir ve yeniden düzenleyebilirsiniz.