A maioria das extensões precisa de acesso a uma ou mais APIs de extensões do Chrome para funcionar. Esta referência de API 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 fazer o trabalho de extensões e, geralmente, mas não
sempre, campos de manifesto para o arquivo manifest.json
. Por exemplo, o namespace chrome.action
requer um objeto "action"
no manifesto. Muitas APIs também exigem permissões no manifesto.
Os métodos em APIs de extensão são assíncronos, a menos que indicado de outra forma. Métodos assíncronos retornam imediatamente, sem espera para que a operação que os chama seja concluída. Use promessas para receber os resultados desses métodos assíncronos.
APIs de extensão do Chrome
- accessibilityFeatures
-
Use a API
chrome.accessibilityFeatures
para gerenciar os recursos de acessibilidade do Chrome. Essa API depende do protótipo ChromeSetting do tipo API para receber e configurar recursos de acessibilidade individuais. Para acessar os estados do recurso, 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 a permissãoaccessibilityFeatures.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. - alarmes
-
Use a API
chrome.alarms
para programar a execução periódica do código ou em um horário especificado no futuro. - áudio
-
Chrome 59 e versões mais recentes Somente no ChromeOS
A API
chrome.audio
é fornecida para permitir que os usuários recebam informações e controlem os dispositivos de áudio conectados ao sistema. No momento, essa API só está disponível no modo quiosque no ChromeOS. - favoritos
-
Use a API
chrome.bookmarks
para criar, organizar e manipular favoritos. Consulte também Substituir páginas, que pode ser usada 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 superior Somente ChromeOS
Use essa API para expor certificados à plataforma, que pode usá-los para autenticações TLS.
- comandos
-
Use a API de comandos 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 mais geral, as configurações de conteúdo permitem que você personalize o comportamento do Chrome para cada site, e não globalmente. - contextMenus
-
Use a API
chrome.contextMenus
para adicionar itens ao menu de contexto do Google Chrome. Você pode escolher os tipos de objetos aos quais as adições do menu de contexto se aplicam, como imagens, hiperlinks e páginas. - cookies
-
Use a API
chrome.cookies
para consultar e modificar cookies e receber uma notificação 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 se conectar a uma ou mais guias para instrumentar a interação de rede, depurar JavaScript, modificar o DOM e o CSS e muito mais. Use a propriedadeDebuggee
tabId
para segmentar guias comsendCommand
e rotear eventos portabId
a partir 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 e versões mais recentes
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 acessar o conteúdo delas, oferecendo mais privacidade. - desktopCapture
-
A API Desktop Capture captura o conteúdo da tela, janelas ou guias individuais.
- devtools.inspectedWindow
-
Use a API
chrome.devtools.inspectedWindow
para interagir com a janela inspecionada: receba o ID da guia da página inspecionada, avalie o código no contexto da janela inspecionada, recarregue a página ou receba a lista de recursos na página. - devtools.network
-
Use a API
chrome.devtools.network
para recuperar as informações sobre as solicitações de rede exibidas pelas Ferramentas do desenvolvedor no painel "Rede". - devtools.panels
-
Use a API
chrome.devtools.panels
para integrar sua extensão à interface da janela das ferramentas para desenvolvedores: crie seus próprios painéis, acesse painéis existentes e adicione barras laterais. - devtools.performance
-
Chrome 129 ou versões mais recentes
Use a API
chrome.devtools.performance
para detectar atualizações de status de gravação no painel "Performance" nas Ferramentas do desenvolvedor. - devtools.recorder
-
Chrome 105 e versões mais recentes
Use a API
chrome.devtools.recorder
para personalizar o painel do gravador nas Ferramentas do desenvolvedor. - dns
-
Canal de Desenvolvedor
Use a API
chrome.dns
para a 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 e versões mais recentes
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 forma programática. - enterprise.deviceAttributes
-
Use a API
chrome.enterprise.deviceAttributes
para ler os atributos do dispositivo. Observação: essa API só está disponível para extensões de instalação forçada pela política da empresa. - enterprise.hardwarePlatform
-
Chrome 71 e versões mais recentes Requer política
Use a API
chrome.enterprise.hardwarePlatform
para acessar 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 pela política corporativa. - enterprise.networkingAttributes
-
Use a API
chrome.enterprise.networkingAttributes
para ler informações sobre sua rede atual. Observação: essa API só está disponível para extensões de instalação forçada pela política da empresa. - 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. - extensão
-
A API
chrome.extension
tem utilitários que podem ser usados por qualquer página de extensão. Ele inclui suporte à troca de mensagens entre uma extensão e seus scripts de conteúdo 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 ChromeOS
Use a API
chrome.fileSystemProvider
para criar sistemas de arquivos que podem ser acessados no gerenciador de arquivos do ChromeOS. - 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 versão, consulte Substituir páginas. - i18n
-
Use a infraestrutura
chrome.i18n
para implementar a internacionalização em todo o app ou extensão. - identidade
-
Use a API
chrome.identity
para receber tokens de acesso OAuth2. - inativo
-
Use a API
chrome.idle
para detectar quando o estado inativo da máquina muda. - input.ime
-
Somente 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 superior
Use
chrome.instanceID
para acessar o serviço de ID da instância. - loginState
-
Chrome 78 ou superior Somente ChromeOS
Use a API
chrome.loginState
para ler e monitorar o estado do 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 mostrá-las aos usuários na bandeja do sistema. - fora da tela
-
Chrome 109 ou versões mais recentes MV3+
Use a API
offscreen
para criar e gerenciar documentos fora da tela. - omnibox
-
A API Omnibox permite que você registre 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 momento da execução, em vez de na instalação. Assim, os usuários entendem por que as permissões são necessárias e concedem apenas as que são necessárias. - platformKeys
-
Chrome 45 ou superior Somente ChromeOS
Use a API
chrome.platformKeys
para acessar os certificados do cliente gerenciados pela plataforma. Se o usuário ou a política conceder a permissão, uma extensão poderá usar tal certificado em seu protocolo de autenticação personalizado. Por exemplo, isso permite o uso de certificados gerenciados pela plataforma em VPNs de terceiros (consulte chrome.vpnProvider). - potência
-
Use a API
chrome.power
para substituir os recursos de gerenciamento de energia do sistema. - printerProvider
-
Chrome 44 ou superior
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 às 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 do tipo API para receber e definir a configuração do Chrome. - processos
-
Canal de 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 do tipo API para receber e definir a configuração do 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, além de detectar e responder a eventos no ciclo de vida da extensão. Você também pode usar essa API para converter o caminho relativo de URLs em URLs totalmente qualificados. - scripts
-
Chrome 88 ou superior MV3+
Use a API
chrome.scripting
para executar o script em contextos diferentes. - search
-
Chrome 87 ou superior
Use a API
chrome.search
para pesquisar usando o 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 os 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 for 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 da guia. - tabGroups
-
Chrome 89 ou superior MV3+
Use a API
chrome.tabGroups
para interagir com o sistema de agrupamento de guias do navegador. Você pode 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. É possível 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 (link em inglês)
-
Use a API
chrome.tts
para reproduzir a conversão de texto em voz (TTS) sintetizada. Consulte também a APIttsEngine
, 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 frase a ser dita e outros parâmetros quando qualquer extensão ou app do Chrome usar a APItts
para gerar fala. A extensão poderá usar qualquer tecnologia da Web disponível para sintetizar e gerar a fala e enviar eventos de volta à função de chamada para informar o status. - tipos
-
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 deles. - vpnProvider
-
Chrome 43 e versões mais recentes Somente no ChromeOS
Use a API
chrome.vpnProvider
para implementar um cliente de VPN. - plano de fundo
-
Chrome 43 ou superior Somente ChromeOS
Use a API
chrome.wallpaper
para mudar o plano de fundo do ChromeOS. - webAuthenticationProxy
-
Chrome 115 ou versões mais recentes MV3+
A API
chrome.webAuthenticationProxy
permite que o software da área de trabalho remota em execução 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. - janelas
-
Use a API
chrome.windows
para interagir com as janelas do navegador. Você pode usar essa API para criar, modificar e reorganizar janelas no navegador.