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 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ã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 para accessibilityFeatures.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. Use chrome.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 propriedade Debuggee tabId para segmentar guias com sendCommand e rotear eventos por tabId a partir de callbacks onEvent.

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

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

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

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
Chrome 125 ou versões mais recentes Somente ChromeOS Requer política

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 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 (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 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 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 API tts 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.