A maioria das extensões precisa de acesso a uma ou mais APIs de extensões do Google Chrome para funcionar. Esta Referência da 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
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 especificado de outra forma. Os métodos assíncronos retornam imediatamente, sem aguardar a conclusão da operação que os chama. 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 usa o protótipo ChromeSetting da API de tipo para receber e definir recursos de acessibilidade individuais. Para acessar 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
. Observe queaccessibilityFeatures.modify
não implica a permissãoaccessibilityFeatures.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. - alarmes
-
Use a API
chrome.alarms
para programar a execução periódica ou em um horário especificado no futuro. - áudio
-
Chrome 59+ Apenas 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 só está disponível no modo quiosque para o ChromeOS. - favoritos
-
Use a API
chrome.bookmarks
para criar, organizar e manipular favoritos. Consulte também Substituir páginas, que pode ser usado 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+ Apenas no ChromeOS
Use essa API para expor certificados para a plataforma que pode usar esses certificados 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 personalizar o comportamento do Chrome por site, e não globalmente. - contextMenus
-
Use a API
chrome.contextMenus
para adicionar itens ao menu de contexto do Google Chrome. Escolha a que 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 notificações quando eles mudarem. - debugger
-
A API
chrome.debugger
serve como um transporte alternativo para o protocolo de depuração remota do Chrome. Usechrome.debugger
para anexar a uma ou mais guias para instrumentar a interação de rede, depurar o JavaScript, modificar o DOM e o CSS e muito mais. Use a propriedadetabId
deDebuggee
para segmentar guias comsendCommand
e rotear eventos portabId
de callbacks deonEvent
. - 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. - 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 interceptar e visualizar o conteúdo, 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: 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 dentro da 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 atuais e adicione barras laterais. - 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 resolução de DNS. - documentScan
-
Chrome 44+ Apenas no ChromeOS
Use a API
chrome.documentScan
para descobrir e recuperar imagens dos 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
-
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+ Política obrigatória
Use a API
chrome.enterprise.hardwarePlatform
para saber 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 Política obrigatória
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 com chrome.platformKeys. - eventos
-
O namespace
chrome.events
contém tipos comuns usados pelas 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 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 as extensões do Chrome. - fileBrowserHandler
-
Somente 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
-
Apenas no ChromeOS
Use a API
chrome.fileSystemProvider
para criar sistemas de arquivos que podem ser acessados no gerenciador de arquivos no 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. Você pode adicionar, remover e consultar URLs no histórico do navegador. Para substituir a página do histórico por uma versão própria, 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
-
Use a API
chrome.input.ime
para implementar um IME personalizado para o Chrome OS. Isso permite que a 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+ Apenas no 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 a lista de extensões/apps instalados e em execução. Ele é útil principalmente para extensões que substituim a página "Nova guia" integrada. - 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+ MV3+
Use a API
offscreen
para criar e gerenciar documentos fora da tela. - omnibox (em inglês)
-
A API omnibox permite que você registre 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 momento da execução, em vez de no momento da 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+ Apenas no 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 esse certificado em seu protocolo de autenticação personalizado. Isso permite, por exemplo, o uso de certificados gerenciados pela plataforma em VPNs de terceiros. Consulte chrome.vpnProvider. - poder
-
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+ Apenas 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 de impressão. - privacidade
-
Utilize a API
chrome.privacy
para controlar o uso no Chrome dos recursos que podem afetar a privacidade de um usuário. Essa API usa o protótipo ChromeSetting da API de tipo 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 usa o protótipo ChromeSetting da API de tipo para receber e definir a configuração do proxy. - readingList
-
Chrome 120+ MV3+
Use a API
chrome.readingList
para ler e modificar os itens da Lista de leitura. - runtime
-
Use a API
chrome.runtime
para extrair 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 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, extrair 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 uma notificação quando um dispositivo de armazenamento removível for conectado e removido. - systemLog
-
Use a API
chrome.systemLog
para gravar os registros do sistema Chrome das extensões. - tabCapture
-
Use a API
chrome.tabCapture
para interagir com fluxos de mídia da guia. - tabGroups
-
Chrome 89+ 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 são exibidos 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 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 for registrada usando essa API, ela vai receber eventos contendo uma fala a ser falada 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 para a função de chamada a fim de 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+ Apenas no ChromeOS
Use a API
chrome.vpnProvider
para implementar um cliente de VPN. - plano de fundo
-
Chrome 43+ Apenas 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 da á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 para interceptar, bloquear ou modificar solicitações em trânsito. - janelas
-
Use a API
chrome.windows
para interagir com as janelas do navegador. Você pode usar esta API para criar, modificar e reorganizar janelas no navegador.