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 das 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 seja 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. Para mais informações, consulte 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 mostrar 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 permissão paraaccessibilityFeatures.read
. - ação
-
Chrome 88 ou superior 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 do código periodicamente ou em um horário especificado no futuro. - áudio
-
Chrome 59 ou superior Somente 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 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 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. Escolha a quais tipos de objetos 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. - depurador
-
A API
chrome.debugger
serve como um transporte alternativo para o protocolo de depuração remota do Google Chrome. Usechrome.debugger
para anexar a uma ou mais guias e instrumentar a interação de rede, depurar o 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 que dependem do conteúdo de uma página, sem precisar de permissão para ler o conteúdo. - declarativeNetRequest
-
Chrome 84 ou superior
A API
chrome.declarativeNetRequest
é usada para bloquear ou modificar solicitações de rede especificando regras declarativas. Isso permite que as extensões modifiquem solicitações de rede sem interceptar e visualizar 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: consiga o ID da guia da página inspecionada, avalie o código no contexto da janela inspecionada, recarregue a página ou acesse a lista de recursos da página. - devtools.network
-
Use a API
chrome.devtools.network
para recuperar as informações sobre solicitações de rede exibidas pelas Ferramentas para desenvolvedores no painel "Network". - devtools.panels
-
Use a API
chrome.devtools.panels
para integrar sua extensão à interface da janela de Ferramentas para desenvolvedores: crie seus próprios painéis, acesse painéis existentes e adicione barras laterais. - devtools.performance
-
Pendente
Use a API
chrome.devtools.performance
para detectar as atualizações de status de registro no painel de desempenho no DevTools. - devtools.recorder
-
Chrome 105 ou mais recente
Use a API
chrome.devtools.recorder
para personalizar o painel do Gravador no DevTools. - dns
-
Canal de Desenvolvedor
Use a API
chrome.dns
para a resolução de DNS. - documentScan
-
Chrome 44 ou superior Somente ChromeOS
Use a API
chrome.documentScan
para descobrir e recuperar imagens de scanners de documentos anexados. - dom
-
Chrome 88 ou superior
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 ou superior 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 só está disponível para extensões instaladas pela política da empresa. - 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 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 outra extensão com chrome.platformKeys. - eventos
-
O namespace
chrome.events
contém tipos comuns usados por APIs que distribuem 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 ChromeOS Somente primeiro plano
Use a API
chrome.fileBrowserHandler
para ampliar o navegador de arquivos do ChromeOS. Por exemplo, você pode 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 no 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ória
-
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 do histórico pela sua própria versão, consulte Substituir páginas. - i18n (link em inglês)
-
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 do 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 da omnibox permite registrar uma palavra-chave na barra de endereço do Google Chrome, que 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 ambiente de execução, e não no momento da 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 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: 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 a essas impressoras. - impressão
-
Chrome 81 ou superior Somente 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 de 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 Desenvolvedor
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 ou mais recente MV3+
Use a API
chrome.readingList
para ler e modificar os itens na Lista de leitura. - runtime
-
Use a API
chrome.runtime
para extrair 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 ou mais recente 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 os metadados de exibição. - system.memory
-
A API
chrome.system.memory
. - system.storage
-
Use a API
chrome.system.storage
para consultar as informações do dispositivo de armazenamento e receber uma notificação quando um dispositivo de armazenamento removível for conectado e desconectado. - systemLog
-
Use a API
chrome.systemLog
para gravar os registros do sistema 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 para 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 (link em inglês)
-
Use a API
chrome.tts
para reproduzir a conversão de texto em voz (TTS, na sigla em inglês) 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 for registrada usando essa API, ela receberá eventos com uma fala a ser falada e outros parâmetros quando qualquer extensão ou app do Chrome usar a APItts
para gerar voz. 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 ou mais recente MV3+
Use a API
userScripts
para executar scripts de usuário no contexto deles. - vpnProvider
-
Chrome 43 ou superior Somente ChromeOS
Use a API
chrome.vpnProvider
para implementar um cliente 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 softwares de área de trabalho remota em execução em um host remoto interceptem 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.