Referência da API

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ão accessibilityFeatures.read. Para modificar o estado do recurso, a extensão precisa da permissão accessibilityFeatures.modify. accessibilityFeatures.modify não implica a permissão accessibilityFeatures.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. Use chrome.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 propriedade tabId Debuggee para segmentar guias com sendCommand e encaminhar 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 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
Chrome 46 e mais recentes Somente no ChromeOS Requer política

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

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
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 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
Chrome 79 e versões mais recentes 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 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
Chrome 125 e versões mais recentes 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 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 API chrome.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 API ttsEngine, 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 API tts 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.