paramName
( optional Type array of paramType )
Undocumented.
Description of this parameter from the json schema.
Formats: Manifest Files
true

Every extension has a JSON-formatted manifest file, named manifest.json, that provides important information about the extension.

Field summary

The following code shows the supported manifest fields, with links to the page that discusses each field. The only fields that are required for every extension are name and version.

{
  // Required
  "name": "My Extension",
  "version": "versionString",

  // Recommended
  "description": "A plain text description",
  "icons": { ... },

  // Pick one (or none)
  "brower_action": {...},
  "page_action": {...},
  "theme": {...},

  // Add any of these that you need
  "background_page": "aFile.html",
  "chrome_url_overrides": {...},
  "content_scripts": [...],
  "options_page": "aFile.html",
  "permissions": [...],
  "plugins": [...]
  "update_url": "http://path/to/updateInfo.xml",
}

Field details

This section covers fields that aren't described in another page. For a complete list of fields, with links to where they're described in detail, see the Field summary.

description

A plain text string (no HTML or other formatting) that describes the extension. The description should be suitable for both the browser's extension management UI and the extension gallery.

icons

One or more icons that represent the extension. We recommend that you provide icons in four sizes — 16x16, 32x32, 48x48, and 128x128 pixels. The icons can be in any format supported by WebKit, such as BMP, GIF, ICO, JPEG, or PNG. Here's an example of specifying all four icon sizes:

"icons": { "16": "icon16.png",
           "32": "icon32.png",
           "48": "icon48.png",
          "128": "icon128.png" },

name

A short, plain text string that identifies the extension. The name is used in the install dialog, extension management UI, and the extension gallery.

permissions

An array of permissions that the extension might use. Each permission can be either one of a list of known strings (such as "tabs" or "bookmarks") or a match pattern that gives access to one or more hosts. These permissions are displayed to users before installation. Permissions might also help to limit damage if your extension is attacked.

If an API requires you to declare a permission in the manifest, then its documentation tells you how to do so. For example, the Tabs page shows you how to declare the "tabs" permission.

Here's an example of the permissions part of a manifest file:

"permissions": [
  "tabs",
  "bookmarks",
  "http://www.blogger.com/",
  "http://*.google.com/"
],

For more information, see Cross-Origin XMLHttpRequest, Windows, Tabs, and Bookmarks.

version

One to four dot-separated integers identifying the version of this extension. Examples:

  • "version": "1"
  • "version": "1.0"
  • "version": "2.10.2"
  • "version": "3.1.2.4567"

The autoupdate system compares versions to determine whether an installed extension needs to be updated. If the published extension has a newer version string than the installed extension, then the extension is automatically updated.

The comparison starts with the leftmost integers. If those integers are equal, the integers to the right are compared, and so on. For example, 1.2.0 is a newer version than 1.1.9.99999.

A missing integer is equal to zero. For example, 1.1.9.99999 is newer than 1.1.

For more information, see Autoupdating.

[PENDING: Once the gallery is published, point to it and make a big deal of the fact that autoupdating is free if you use the gallery.]