Referência da API

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ão accessibilityFeatures.read. Para modificar o estado do recurso, a extensão precisa da permissão accessibilityFeatures.modify. accessibilityFeatures.modify não implica permissão de accessibilityFeatures.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. Use chrome.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 propriedade Debuggee tabId para segmentar guias com sendCommand e rotear eventos por tabId de callbacks onEvent.

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
Chrome 46 ou mais recente Somente no ChromeOS Requer política

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
Pendente Somente no ChromeOS Requer política

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
Chrome 85 ou mais recente Somente no ChromeOS Requer política

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
Chrome 79 ou mais recente Somente no ChromeOS Requer política

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
Chrome 125+ Somente no ChromeOS Requer política

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 API chrome.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 API ttsEngine 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 API tts 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.