A maioria das extensões precisa ter 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
exige 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 o contrário. Os métodos assíncronos são retornados imediatamente, sem esperar 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 da API do tipo para receber e definir recursos de acessibilidade individuais. Para receber 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
. - action
-
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 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 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 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 mais recente Somente no 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 geral, as configurações de conteúdo permitem personalizar o comportamento do Chrome por site, em vez de 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 notificações quando eles mudarem. - depuração
-
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 propriedadetabId
Debuggee
para segmentar guias comsendCommand
e encaminhar 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 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, proporcionando 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 de ferramentas para desenvolvedores: crie seus próprios painéis, acesse painéis existentes e adicione barras laterais. - devtools.performance
-
Chrome 129 e 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 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 extrair imagens de scanners de documentos conectados. - 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 maneira programática. - enterprise.deviceAttributes
-
Use a API
chrome.enterprise.deviceAttributes
para ler os atributos do dispositivo. Observação: essa API está disponível apenas para extensões instaladas à força pela política corporativa. - enterprise.hardwarePlatform
-
Chrome 71 e versões mais recentes Requer política
Use a API
chrome.enterprise.hardwarePlatform
para conferir 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.login
-
Use a API
chrome.enterprise.login
para sair das sessões de visitante gerenciadas. Observação: essa API está disponível apenas para extensões instaladas pela política corporativa em sessões de visitante 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 instaladas à força pela 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. - extensão
-
A API
chrome.extension
tem utilitários que podem ser usados por qualquer página de extensão. Ele inclui suporte para a troca de mensagens entre uma extensão e os 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 no 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 pesquisar 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. - 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 candidato. - instanceID
-
Chrome 44 e versões mais recentes
Use
chrome.instanceID
para acessar o serviço de ID da instância. - loginState
-
Chrome 78 e versões mais recentes 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 mostre essas notificações aos usuários na bandeja do sistema. - fora da tela
-
Chrome 109+ 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 e versões mais recentes Somente no 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 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 e versões mais recentes
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 no Chrome que podem afetar a privacidade do 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 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. - scripts
-
Chrome 88+ MV3+
Use a API
chrome.scripting
para executar o script em diferentes contextos. - search
-
Chrome 87 e versões mais recentes
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 junto com o conteúdo principal de uma página da Web. - armazenamento
-
Use a API
chrome.storage
para armazenar, recuperar e acompanhar as 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 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 os streams de mídia da guia. - tabGroups
-
Chrome 89 ou mais recente MV3 ou mais recente
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. É 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 da 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
, 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. Sua extensão pode 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 de scripts de usuário. - 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 e versões mais recentes 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 o software de á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. É possível usar essa API para criar, modificar e reorganizar janelas no navegador.