manifest.json

Este artículo describe manifest.json para extensiones web. Si estás buscando información acerca de manifest.json en PWAs, revisa el artículo sobre Web App Manifest.

El archivo manifest.json es el único archivo que toda extensión usando la API WebExtension debe contener necesariamente.

Usando manifest.json, puedes especificar los metadatos básicos de tu extensión como nombre y versión, así como aspectos funcionales de tu extensión (tales como scripts en segundo plano, scripts de contenido y acciones del navegador).

Es un archivo con formato JSON, con una excepción: permite comentarios con "//".

Lista de claves de manifest.json

Las claves de manifest.json son:

Notas acerca de las claves de manifest.json

  • "manifest_version", "version", and "name" son las únicas llaves obligatorias.
  • "default_locale" Debe estar presente solo si la carpeta "_locales" existe.
  • "browser_specific_settings" no tiene soporte en Google Chrome.

Acceder a las claves de manifest.json en tiempo de ejecución

Puedes acceder a el manifest desde el código JavaScript de tu extensión utilizando la función runtime.getManifest():

browser.runtime.getManifest().version;

Compatibilidad de Navegadores

Para un resumen extendido de las llaves y sub-llaves ver la tabla completa de compatibilidad de manifest.json en navegadores.

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxOperaSafariFirefox para Android
authorChrome Soporte completo SiEdge Soporte completo 14
Notas
Soporte completo 14
Notas
Notas This key is mandatory in Microsoft Edge.
Firefox Soporte completo 52Opera Soporte completo SiSafari Soporte completo 14
Notas
Soporte completo 14
Notas
Notas Not displayed in Safari Extensions preferences.
Firefox Android Soporte completo 52
backgroundChrome Soporte completo SiEdge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48
browser_actionChrome Soporte completo Si
Notas
Soporte completo Si
Notas
Notas If an extension defines a browser action, it is not allowed to define a page action as well.
Edge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo Si
Notas
Soporte completo Si
Notas
Notas If an extension defines a browser action, it is not allowed to define a page action as well.
Safari Soporte completo 14
Notas
Soporte completo 14
Notas
Notas If an extension defines a browser action, it is not allowed to define a page action as well.
Firefox Android Soporte completo 55
browser_specific_settingsChrome Sin soporte NoEdge Sin soporte 15 — 79Firefox Soporte completo 48
Soporte completo 48
Soporte completo 42
Notas Nombre alternativo
Notas Mandatory before Firefox 48.
Nombre alternativo Usa un nombre no estandar : applications
Opera Sin soporte NoSafari Soporte parcial 14
Notas
Soporte parcial 14
Notas
Notas Supports strict_min_version and strict_max_version in a safari block.
Firefox Android Soporte completo 48
Soporte completo 48
Soporte completo 42
Notas Nombre alternativo
Notas Mandatory before Firefox 48.
Nombre alternativo Usa un nombre no estandar : applications
chrome_settings_overridesChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 55Opera Sin soporte NoSafari Sin soporte NoFirefox Android Sin soporte No
chrome_url_overridesChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 54Opera Sin soporte NoSafari Sin soporte NoFirefox Android Sin soporte No
commandsChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14
Notas
Soporte completo 14
Notas
Notas Ability to change the keyboard shortcut for a command not supported.
Firefox Android Sin soporte No
content_scriptsChrome Soporte completo Si
Notas
Soporte completo Si
Notas
Notas Content scripts are not applied to tabs already open when the extension is loaded.
Edge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo Si
Notas
Soporte completo Si
Notas
Notas Content scripts are not applied to tabs already open when the extension is loaded.
Safari Soporte completo 14
Notas
Soporte completo 14
Notas
Notas Content scripts are not applied to tabs until the user grants permission via the extension's access popover in the toolbar.
Firefox Android Soporte completo 48
content_security_policyChrome Soporte completo SiEdge Soporte completo 14
Notas
Soporte completo 14
Notas
Notas Only the default content security policy is supported: "script-src 'self'; object-src 'self';".
Firefox Soporte completo 48
Notas
Soporte completo 48
Notas
Notas Firefox does not support 'http://127.0.0.1' or 'http://localhost' as script sources: they must be served over HTTPS.
Opera Soporte completo SiSafari Soporte completo 14Firefox Android Sin soporte No
default_localeChrome Soporte completo SiEdge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48
descriptionChrome Soporte completo SiEdge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48
developerChrome Sin soporte NoEdge Sin soporte NoFirefox Soporte completo 52Opera Soporte completo SiSafari Sin soporte NoFirefox Android Soporte completo 52
devtools_pageChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 54Opera Soporte completo SiSafari Sin soporte NoFirefox Android Sin soporte No
externally_connectableChrome Soporte completo SiEdge Soporte completo 79Firefox Sin soporte No
Notas
Sin soporte No
Notas
Notas See bug 1319168.
Opera Soporte completo SiSafari Sin soporte NoFirefox Android Sin soporte No
homepage_urlChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14
Notas
Soporte completo 14
Notas
Notas Not displayed in Safari Extensions preferences.
Firefox Android Soporte completo 48
iconsChrome Soporte completo Si
Notas
Soporte completo Si
Notas
Notas Chrome does not support SVG format for icons. It is recommended to use PNG images.
Edge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14
Notas
Soporte completo 14
Notas
Notas SVG icons are not supported.
Firefox Android Soporte completo 48
incognitoChrome Soporte completo SiEdge Soporte completo ≤18Firefox Soporte completo 48Opera Soporte completo SiSafari Sin soporte NoFirefox Android Soporte completo 48
manifest_versionChrome Soporte completo 4Edge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo 15Safari Soporte completo 14Firefox Android Soporte completo 48
nameChrome Soporte completo SiEdge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48
offline_enabledChrome Soporte completo SiEdge Soporte completo 79Firefox Sin soporte NoOpera Soporte completo SiSafari Sin soporte NoFirefox Android Sin soporte No
omniboxChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 52Opera Soporte completo SiSafari Sin soporte NoFirefox Android Sin soporte No
optional_permissionsChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 55Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 55
options_page
Deprecado
Chrome Soporte completo SiEdge Soporte completo 14Firefox Sin soporte NoOpera Soporte completo 15Safari Soporte completo 14Firefox Android Sin soporte No
options_uiChrome Soporte completo 40Edge Soporte completo 79Firefox Soporte completo 48Opera Soporte completo 27Safari Soporte completo 14Firefox Android Soporte completo 57
page_actionChrome Soporte completo Si
Notas
Soporte completo Si
Notas
Notas If an extension defines a page action, it is not allowed to define a browser action as well.
Soporte completo 49
Notas
Notas Since Chrome 49, page actions are displayed on the toolbar, rather than in the address bar.
Edge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo Si
Notas
Soporte completo Si
Notas
Notas If an extension defines a page action, it is not allowed to define a browser action as well.
Safari Soporte completo 14
Notas
Soporte completo 14
Notas
Notas If an extension defines a page action, it is not allowed to define a browser action as well.
Firefox Android Soporte completo Si
permissionsChrome Soporte completo SiEdge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48
protocol_handlersChrome Sin soporte NoEdge Sin soporte NoFirefox Soporte completo 54Opera Sin soporte NoSafari Sin soporte NoFirefox Android Soporte completo 54
short_nameChrome Soporte completo SiEdge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48
sidebar_actionChrome Sin soporte NoEdge Sin soporte NoFirefox Soporte completo 54Opera Soporte completo 30Safari Sin soporte NoFirefox Android Sin soporte No
storageChrome Soporte completo SiEdge Soporte completo 79Firefox Sin soporte NoOpera Sin soporte NoSafari Soporte completo 14Firefox Android Sin soporte No
themeChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 55Opera Sin soporte NoSafari Sin soporte NoFirefox Android Soporte completo Si
theme_experiment
ExperimentalNo estándar
Chrome Sin soporte NoEdge Sin soporte NoFirefox Soporte completo 63Opera Sin soporte NoSafari Sin soporte NoFirefox Android Sin soporte No
user_scriptsChrome Soporte completo SiEdge Soporte completo 79Firefox Soporte completo 68Opera Sin soporte NoSafari Sin soporte NoFirefox Android Soporte completo 68
versionChrome Soporte completo Si
Notas
Soporte completo Si
Notas
Notas Valid Chrome versions are a subset of valid Firefox versions.
Edge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48
version_nameChrome Soporte completo SiEdge Soporte completo 79Firefox Sin soporte NoOpera Soporte completo SiSafari Soporte completo 14Firefox Android Sin soporte No
web_accessible_resourcesChrome Soporte completo SiEdge Soporte completo 14Firefox Soporte completo 48Opera Soporte completo SiSafari Soporte completo 14Firefox Android Soporte completo 48

Leyenda

Soporte completo  
Soporte completo
Soporte parcial  
Soporte parcial
Sin soporte  
Sin soporte
Experimental. Esperar que el comportamiento cambie en el futuro.
Experimental. Esperar que el comportamiento cambie en el futuro.
No estandar . Esperar poco soporte entre navegadores.
No estandar . Esperar poco soporte entre navegadores.
Deprecado. No debe ser usado en nuevos sitios web.
Deprecado. No debe ser usado en nuevos sitios web.
Ver notas de implementación.
Ver notas de implementación.
Usa un nombre no estandar.
Usa un nombre no estandar.

Ver También

API JavaScript de permissions