A maioria das extensões precisa de acesso a uma ou mais APIs de extensões do Chrome para funcionar. Esta referência descreve as APIs disponíveis para uso em extensões e apresenta exemplos de casos de uso.
Recursos comuns da API Extensions
Uma API Extensions consiste em um namespace que contém métodos e propriedades para trabalhar com extensões e, geralmente, mas não sempre, campos de manifesto para o arquivo manifest.json
. Por exemplo, o namespace chrome.action
exige um objeto "action"
no manifesto. Muitas APIs também exigem permissões no manifesto.
Os métodos nas APIs de extensão são assíncronos, a menos que indicado de outra forma. Os métodos assíncronos retornam imediatamente, sem esperar a conclusão da operação que os chama. Use promises para receber os resultados desses métodos assíncronos.
APIs de extensões do Chrome
- accessibilityFeatures
-
Use a API
chrome.accessibilityFeatures
para gerenciar os recursos de acessibilidade do Chrome. Essa API depende do protótipo ChromeSetting da API de tipo para receber e definir recursos de acessibilidade individuais. Para receber estados de recursos, a extensão precisa solicitar a permissãoaccessibilityFeatures.read
. Para modificar o estado do recurso, a extensão precisa da permissãoaccessibilityFeatures.modify
.accessibilityFeatures.modify
não implica permissão deaccessibilityFeatures.read
. - ação
-
Chrome 88+ MV3+
Use a API
chrome.action
para controlar o ícone da extensão na barra de ferramentas do Google Chrome. - alarms
-
Use a API
chrome.alarms
para programar a execução do código periodicamente ou em um horário especificado no futuro. - áudio
-
Chrome 59 ou mais recente Somente no ChromeOS
A API
chrome.audio
é fornecida para permitir que os usuários recebam informações sobre os dispositivos de áudio conectados ao sistema e os controlem. No momento, essa API está disponível apenas no modo quiosque para ChromeOS. - favoritos
-
Use a API
chrome.bookmarks
para criar, organizar e manipular favoritos. Consulte também Substituir páginas, que você pode usar para criar uma página personalizada do Gerenciador de favoritos. - browsingData
-
Use a API
chrome.browsingData
para remover dados de navegação do perfil local de um usuário. - certificateProvider
-
Chrome 46 ou mais recente Somente no ChromeOS
Use essa API para expor certificados à plataforma, que pode usá-los para autenticações TLS.
- comandos
-
Use a API Commands para adicionar atalhos de teclado que acionam ações na sua extensão, por exemplo, uma ação para abrir a ação do navegador ou enviar um comando para a extensão.
- contentSettings
-
Use a API
chrome.contentSettings
para mudar as configurações que controlam se os sites podem usar recursos como cookies, JavaScript e plug-ins. De modo geral, as configurações de conteúdo permitem personalizar o comportamento do Chrome em cada site, em vez de globalmente. - contextMenus
-
Use a API
chrome.contextMenus
para adicionar itens ao menu de contexto do Google Chrome. Você pode escolher a quais tipos de objetos suas adições ao menu de contexto se aplicam, como imagens, hiperlinks e páginas. - cookies
-
Use a API
chrome.cookies
para consultar e modificar cookies e receber notificações quando eles mudarem. - debugger
-
A API
chrome.debugger
serve como um transporte alternativo para o protocolo de depuração remota do Chrome. Usechrome.debugger
para anexar a uma ou mais guias e instrumentar a interação de rede, depurar JavaScript, mudar o DOM e o CSS e muito mais. Use a propriedadeDebuggee
tabId
para segmentar guias comsendCommand
e rotear eventos portabId
de callbacksonEvent
. - declarativeContent
-
Use a API
chrome.declarativeContent
para realizar ações dependendo do conteúdo de uma página, sem precisar de permissão para ler o conteúdo dela. - declarativeNetRequest
-
Chrome 84 ou mais recente
A API
chrome.declarativeNetRequest
é usada para bloquear ou modificar solicitações de rede especificando regras declarativas. Isso permite que as extensões modifiquem as solicitações de rede sem interceptá-las e ver o conteúdo delas, oferecendo mais privacidade. - desktopCapture
-
A API Desktop Capture captura o conteúdo da tela, de janelas ou guias individuais.
- devtools.inspectedWindow
-
Use a API
chrome.devtools.inspectedWindow
para interagir com a janela inspecionada: obtenha o ID da guia da página inspecionada, avalie o código no contexto da janela inspecionada, recarregue a página ou obtenha a lista de recursos na página. - devtools.network
-
Use a API
chrome.devtools.network
para recuperar as informações sobre solicitações de rede mostradas pelas Ferramentas para desenvolvedores no painel "Rede". - devtools.panels
-
Use a API
chrome.devtools.panels
para integrar sua extensão à interface da janela Ferramentas para desenvolvedores: crie seus próprios painéis, acesse os painéis atuais e adicione barras laterais. - devtools.performance
-
Chrome 129+
Use a API
chrome.devtools.performance
para ouvir atualizações de status de gravação no painel "Performance" das DevTools. - devtools.recorder
-
Chrome 105 ou mais recente
Use a API
chrome.devtools.recorder
para personalizar o painel "Gravador" nas DevTools. - dns
-
Canal para desenvolvedores
Use a API
chrome.dns
para resolução de DNS. - documentScan
-
Chrome 44 ou mais recente Somente no ChromeOS
Use a API
chrome.documentScan
para descobrir e recuperar imagens de scanners de documentos anexados. - dom
-
Chrome 88 ou mais recente
Usar a API
chrome.dom
para acessar APIs DOM especiais para extensões - downloads
-
Use a API
chrome.downloads
para iniciar, monitorar, manipular e pesquisar downloads de maneira programática. - enterprise.deviceAttributes
-
Use a API
chrome.enterprise.deviceAttributes
para ler atributos do dispositivo. Observação: essa API está disponível apenas para extensões de instalação forçada por política corporativa. - enterprise.hardwarePlatform
-
Chrome 71 ou mais recente Requer política
Use a API
chrome.enterprise.hardwarePlatform
para receber o fabricante e o modelo da plataforma de hardware em que o navegador é executado. Observação: essa API está disponível apenas para extensões instaladas por política corporativa. - enterprise.login
-
Use a API
chrome.enterprise.login
para sair das sessões de usuário. Observação: essa API está disponível apenas para extensões instaladas por política corporativa em sessões gerenciadas do ChromeOS. - enterprise.networkingAttributes
-
Use a API
chrome.enterprise.networkingAttributes
para ler informações sobre sua rede atual. Observação: essa API está disponível apenas para extensões de instalação forçada por política corporativa. - enterprise.platformKeys
-
Somente no ChromeOS Requer política
Use a API
chrome.enterprise.platformKeys
para gerar chaves e instalar certificados para elas. Os certificados serão gerenciados pela plataforma e poderão ser usados para autenticação TLS, acesso à rede ou por outra extensão usando chrome.platformKeys. - eventos
-
O namespace
chrome.events
contém tipos comuns usados por APIs que enviam eventos para notificar você quando algo interessante acontece. - extension
-
A API
chrome.extension
tem utilitários que podem ser usados por qualquer página de extensão. Isso inclui suporte para troca de mensagens entre uma extensão e os scripts de conteúdo dela ou entre extensões, conforme descrito em detalhes em Transmissão de mensagens. - extensionTypes
-
A API
chrome.extensionTypes
contém declarações de tipo para extensões do Chrome. - fileBrowserHandler
-
Somente no ChromeOS Somente em primeiro plano
Use a API
chrome.fileBrowserHandler
para estender o navegador de arquivos do Chrome OS. Por exemplo, é possível usar essa API para permitir que os usuários façam upload de arquivos para seu site. - fileSystemProvider
-
Somente no ChromeOS
Use a API
chrome.fileSystemProvider
para criar sistemas de arquivos que podem ser acessados no gerenciador de arquivos do Chrome OS. - fontSettings
-
Use a API
chrome.fontSettings
para gerenciar as configurações de fonte do Chrome. - gcm
-
Use
chrome.gcm
para permitir que apps e extensões enviem e recebam mensagens pelo Firebase Cloud Messaging (FCM). - histórico
-
Use a API
chrome.history
para interagir com o registro de páginas visitadas do navegador. É possível adicionar, remover e consultar URLs no histórico do navegador. Para substituir a página de histórico pela sua própria versão, consulte Substituir páginas. - i18n
-
Use a infraestrutura
chrome.i18n
para implementar a internacionalização em todo o app ou extensão. - identity
-
Use a API
chrome.identity
para receber tokens de acesso do OAuth2. - idle
-
Use a API
chrome.idle
para detectar quando o estado de inatividade da máquina muda. - input.ime
-
Somente no ChromeOS
Use a API
chrome.input.ime
para implementar um IME personalizado para o Chrome OS. Isso permite que sua extensão processe pressionamentos de tecla, defina a composição e gerencie a janela de candidatos. - instanceID
-
Chrome 44 ou mais recente
Use
chrome.instanceID
para acessar o serviço de ID da instância. - loginState
-
Chrome 78 ou mais recente Somente no ChromeOS
Use a API
chrome.loginState
para ler e monitorar o estado de login. - de vídeo
-
A API
chrome.management
oferece maneiras de gerenciar apps e extensões instalados. - notificações
-
Use a API
chrome.notifications
para criar notificações avançadas usando modelos e mostrar essas notificações aos usuários na bandeja do sistema. - offscreen
-
Chrome 109+ MV3+
Use a API
offscreen
para criar e gerenciar documentos fora da tela. - omnibox
-
A API omnibox permite registrar uma palavra-chave na barra de endereços do Google Chrome, também conhecida como omnibox.
- pageCapture
-
Use a API
chrome.pageCapture
para salvar uma guia como MHTML. - permissões
-
Use a API
chrome.permissions
para solicitar permissões opcionais declaradas no tempo de execução em vez de no tempo de instalação. Assim, os usuários entendem por que as permissões são necessárias e concedem apenas as necessárias. - platformKeys
-
Chrome 45 ou mais recente Somente no ChromeOS
Use a API
chrome.platformKeys
para acessar certificados de cliente gerenciados pela plataforma. Se o usuário ou a política conceder a permissão, uma extensão poderá usar esse certificado no protocolo de autenticação personalizado. Por exemplo, isso permite o uso de certificados gerenciados pela plataforma em VPNs de terceiros (consulte chrome.vpnProvider). - power
-
Use a API
chrome.power
para substituir os recursos de gerenciamento de energia do sistema. - printerProvider
-
Chrome 44 ou mais recente
A API
chrome.printerProvider
expõe eventos usados pelo gerenciador de impressão para consultar impressoras controladas por extensões, consultar os recursos delas e enviar trabalhos de impressão para essas impressoras. - impressão
-
Chrome 81 ou mais recente Somente no ChromeOS
Use a API
chrome.printing
para enviar trabalhos de impressão para impressoras instaladas no Chromebook. - printingMetrics
-
Use a API
chrome.printingMetrics
para buscar dados sobre o uso da impressão. - privacidade
-
Use a API
chrome.privacy
para controlar o uso dos recursos do Chrome que podem afetar a privacidade de um usuário. Essa API depende do protótipo ChromeSetting da API type para receber e definir a configuração do Chrome. - processos
-
Canal para desenvolvedores
Use a API
chrome.processes
para interagir com os processos do navegador. - proxy
-
Use a API
chrome.proxy
para gerenciar as configurações de proxy do Chrome. Essa API depende do protótipo ChromeSetting da API type para receber e definir a configuração de proxy. - readingList
-
Chrome 120+ MV3+
Use a API
chrome.readingList
para ler e modificar os itens na Lista de leitura. - runtime
-
Use a API
chrome.runtime
para recuperar o service worker, retornar detalhes sobre o manifesto e detectar e responder a eventos no ciclo de vida da extensão. Também é possível usar essa API para converter o caminho relativo de URLs em URLs totalmente qualificados. - scripting
-
Chrome 88+ MV3+
Use a API
chrome.scripting
para executar scripts em contextos diferentes. - search
-
Chrome 87 ou mais recente
Use a API
chrome.search
para pesquisar pelo provedor padrão. - sessões
-
Use a API
chrome.sessions
para consultar e restaurar guias e janelas de uma sessão de navegação. - sidePanel
-
Chrome 114+ MV3+
Use a API
chrome.sidePanel
para hospedar conteúdo no painel lateral do navegador ao lado do conteúdo principal de uma página da Web. - armazenamento
-
Use a API
chrome.storage
para armazenar, recuperar e rastrear mudanças nos dados do usuário. - system.cpu
-
Use a API
system.cpu
para consultar metadados da CPU. - system.display
-
Use a API
system.display
para consultar metadados de exibição. - system.memory
-
A API
chrome.system.memory
. - system.storage
-
Use a API
chrome.system.storage
para consultar informações do dispositivo de armazenamento e receber notificações quando um dispositivo de armazenamento removível é conectado e desconectado. - systemLog
-
Use a API
chrome.systemLog
para registrar registros do sistema do Chrome de extensões. - tabCapture
-
Use a API
chrome.tabCapture
para interagir com streams de mídia de guias. - tabGroups
-
Chrome 89+ MV3+
Use a API
chrome.tabGroups
para interagir com o sistema de agrupamento de guias do navegador. É possível usar essa API para modificar e reorganizar grupos de guias no navegador. Para agrupar e desagrupar guias ou consultar quais guias estão em grupos, use a APIchrome.tabs
. - guias
-
Use a API
chrome.tabs
para interagir com o sistema de guias do navegador. Você pode usar essa API para criar, modificar e reorganizar guias no navegador. - topSites
-
Use a API
chrome.topSites
para acessar os principais sites (ou seja, os mais visitados) que aparecem na página "Nova guia". Eles não incluem atalhos personalizados pelo usuário. - tts
-
Use a API
chrome.tts
para reproduzir a conversão de texto em voz (TTS) sintetizada. Consulte também a APIttsEngine
relacionada, que permite que uma extensão implemente um mecanismo de fala. - ttsEngine
-
Use a API
chrome.ttsEngine
para implementar um mecanismo de conversão de texto em voz(TTS) usando uma extensão. Se a extensão se registrar usando essa API, ela vai receber eventos com uma expressão a ser falada e outros parâmetros quando qualquer extensão ou app do Chrome usar a APItts
para gerar fala. Sua extensão pode usar qualquer tecnologia da Web disponível para sintetizar e gerar a fala, além de enviar eventos de volta para a função de chamada e informar o status. - types
-
A API
chrome.types
contém declarações de tipo para o Chrome. - userScripts
-
Chrome 120+ MV3+
Use a API
userScripts
para executar scripts de usuário no contexto de scripts de usuário. - vpnProvider
-
Chrome 43 ou mais recente Somente no ChromeOS
Use a API
chrome.vpnProvider
para implementar um cliente VPN. - plano de fundo
-
Chrome 43 ou mais recente Somente no ChromeOS
Use a API
chrome.wallpaper
para mudar o plano de fundo do ChromeOS. - webAuthenticationProxy
-
Chrome 115+ MV3+
A API
chrome.webAuthenticationProxy
permite que um software de Área de Trabalho remota executado em um host remoto intercepte solicitações da API Web Authentication (WebAuthn) para processá-las em um cliente local. - webNavigation
-
Use a API
chrome.webNavigation
para receber notificações sobre o status das solicitações de navegação em andamento. - webRequest
-
Use a API
chrome.webRequest
para observar e analisar o tráfego e interceptar, bloquear ou modificar solicitações em andamento. - windows
-
Use a API
chrome.windows
para interagir com janelas do navegador. Você pode usar essa API para criar, modificar e reorganizar janelas no navegador.