Welcome Getting started API Reference Samples
Welcome Getting started API Reference Samples

chrome.management

  • Description

    The chrome.management API provides ways to manage the list of extensions/apps that are installed and running. It is particularly useful for extensions that override the built-in New Tab page.

  • Permissions
    management

Manifest #

You must declare the "management" permission in the extension manifest to use the management API. For example:

{
"name": "My extension",
...
"permissions": [
"management"
],
...
}

management.getPermissionWarningsByManifest, management.uninstallSelf, and management.getSelf do not require the management permission.

Summary

Types

ExtensionInfo

Information about an installed extension, app, or theme.

Properties

  • appLaunchUrl
    string optional

    The launch url (only present for apps).

  • availableLaunchTypes
    LaunchType[] optional

    The currently available launch types (only present for apps).

  • description
    string

    The description of this extension, app, or theme.

  • disabledReason

    A reason the item is disabled.

  • enabled
    boolean

    Whether it is currently enabled or disabled.

  • homepageUrl
    string optional

    The URL of the homepage of this extension, app, or theme.

  • hostPermissions
    string[]

    Returns a list of host based permissions.

  • icons
    IconInfo[] optional

    A list of icon information. Note that this just reflects what was declared in the manifest, and the actual image at that url may be larger or smaller than what was declared, so you might consider using explicit width and height attributes on img tags referencing these images. See the manifest documentation on icons for more details.

  • id
    string

    The extension's unique identifier.

  • How the extension was installed.

  • isApp
    boolean

    Deprecated. Please use ExtensionInfo.type.

    True if this is an app.

  • launchType
    LaunchType optional

    The app launch type (only present for apps).

  • mayDisable
    boolean

    Whether this extension can be disabled or uninstalled by the user.

  • mayEnable
    boolean optional

    Whether this extension can be enabled by the user. This is only returned for extensions which are not enabled.

  • name
    string

    The name of this extension, app, or theme.

  • offlineEnabled
    boolean

    Whether the extension, app, or theme declares that it supports offline.

  • optionsUrl
    string

    The url for the item's options page, if it has one.

  • permissions
    string[]

    Returns a list of API based permissions.

  • shortName
    string

    A short version of the name of this extension, app, or theme.

  • The type of this extension, app, or theme.

  • updateUrl
    string optional

    The update URL of this extension, app, or theme.

  • version
    string

    The version of this extension, app, or theme.

  • versionName
    string optional

    The version name of this extension, app, or theme if the manifest specified one.

IconInfo

Information about an icon belonging to an extension, app, or theme.

Properties

  • size
    number

    A number representing the width and height of the icon. Likely values include (but are not limited to) 128, 48, 24, and 16.

  • url
    string

    The URL for this icon image. To display a grayscale version of the icon (to indicate that an extension is disabled, for example), append ?grayscale=true to the URL.

UninstallOptions

Information about an icon belonging to an extension, app, or theme.

Properties

  • showConfirmDialog
    boolean optional

    Whether or not a confirm-uninstall dialog should prompt the user. Defaults to false for self uninstalls. If an extension uninstalls another extension, this parameter is ignored and the dialog is always shown.

ExtensionDisabledReason

A reason the item is disabled.

Enum

"unknown", or "permissions_increase"

ExtensionInstallType

How the extension was installed. One of
admin: The extension was installed because of an administrative policy,
development: The extension was loaded unpacked in developer mode,
normal: The extension was installed normally via a .crx file,
sideload: The extension was installed by other software on the machine,
other: The extension was installed by other means.

Enum

"admin", "development", "normal", "sideload", or "other"

ExtensionType

The type of this extension, app, or theme.

Enum

"extension", "hosted_app", "packaged_app", "legacy_packaged_app", "theme", or "login_screen_extension"

LaunchType

These are all possible app launch types.

Enum

"OPEN_AS_REGULAR_TAB", "OPEN_AS_PINNED_TAB", "OPEN_AS_WINDOW", or "OPEN_FULL_SCREEN"

Methods

canInstallReplacementAndroidApp

chrome.management.canInstallReplacementAndroidApp(callback: function)

Checks if the replacement android app can be installed. Errors generated by this API are reported by setting runtime.lastError and executing the function's regular callback.

Parameters

  • callback
    function

    The callback parameter should be a function that looks like this:

    (result: boolean) => {...}
    • result
      boolean

createAppShortcut

chrome.management.createAppShortcut(id: string, callback: function)

Display options to create shortcuts for an app. On Mac, only packaged app shortcuts can be created.

Parameters

  • id
    string

    This should be the id from an app item of ExtensionInfo.

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}
chrome.management.generateAppForLink(url: string, title: string, callback: function)

Generate an app for a URL. Returns the generated bookmark app.

Parameters

  • url
    string

    The URL of a web page. The scheme of the URL can only be "http" or "https".

  • title
    string

    The title of the generated app.

  • callback
    function

    The callback parameter should be a function that looks like this:

    (result: ExtensionInfo) => {...}

get

chrome.management.get(id: string, callback: function)

Returns information about the installed extension, app, or theme that has the given ID.

Parameters

getAll

chrome.management.getAll(callback: function)

Returns a list of information about installed extensions and apps.

Parameters

  • callback
    function

    The callback parameter should be a function that looks like this:

    (result: ExtensionInfo[]) => {...}

getPermissionWarningsById

chrome.management.getPermissionWarningsById(id: string, callback: function)

Returns a list of permission warnings for the given extension id.

Parameters

  • id
    string

    The ID of an already installed extension.

  • callback
    function

    The callback parameter should be a function that looks like this:

    (permissionWarnings: string[]) => {...}
    • permissionWarnings
      string[]

getPermissionWarningsByManifest

chrome.management.getPermissionWarningsByManifest(manifestStr: string, callback: function)

Returns a list of permission warnings for the given extension manifest string. Note: This function can be used without requesting the 'management' permission in the manifest.

Parameters

  • manifestStr
    string

    Extension manifest JSON string.

  • callback
    function

    The callback parameter should be a function that looks like this:

    (permissionWarnings: string[]) => {...}
    • permissionWarnings
      string[]

getSelf

chrome.management.getSelf(callback: function)

Returns information about the calling extension, app, or theme. Note: This function can be used without requesting the 'management' permission in the manifest.

Parameters

  • callback
    function

    The callback parameter should be a function that looks like this:

    (result: ExtensionInfo) => {...}

installReplacementAndroidApp

chrome.management.installReplacementAndroidApp(callback: function)

Prompts the user to install the replacement Android app from the manifest. Errors generated by this API are reported by setting runtime.lastError and executing the function's regular callback.

Parameters

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}

installReplacementWebApp

chrome.management.installReplacementWebApp(callback: function)

Launches the replacement_web_app specified in the manifest. Prompts the user to install if not already installed.

Parameters

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}

launchApp

chrome.management.launchApp(id: string, callback: function)

Launches an application.

Parameters

  • id
    string

    The extension id of the application.

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}

setEnabled

chrome.management.setEnabled(id: string, enabled: boolean, callback: function)

Enables or disables an app or extension. In most cases this function must be called in the context of a user gesture (e.g. an onclick handler for a button), and may present the user with a native confirmation UI as a way of preventing abuse.

Parameters

  • id
    string

    This should be the id from an item of ExtensionInfo.

  • enabled
    boolean

    Whether this item should be enabled or disabled.

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}

setLaunchType

chrome.management.setLaunchType(id: string, launchType: LaunchType, callback: function)

Set the launch type of an app.

Parameters

  • id
    string

    This should be the id from an app item of ExtensionInfo.

  • launchType

    The target launch type. Always check and make sure this launch type is in ExtensionInfo.availableLaunchTypes, because the available launch types vary on different platforms and configurations.

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}

uninstall

chrome.management.uninstall(id: string, options: UninstallOptions, callback: function)

Uninstalls a currently installed app or extension.

Parameters

  • id
    string

    This should be the id from an item of ExtensionInfo.

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}

uninstallSelf

chrome.management.uninstallSelf(options: UninstallOptions, callback: function)

Uninstalls the calling extension. Note: This function can be used without requesting the 'management' permission in the manifest.

Parameters

  • callback
    function

    The callback parameter should be a function that looks like this:

    () => {...}

Events

onDisabled

chrome.management.onDisabled.addListener(listener: function)

Fired when an app or extension has been disabled.

Event

onEnabled

chrome.management.onEnabled.addListener(listener: function)

Fired when an app or extension has been enabled.

Event

onInstalled

chrome.management.onInstalled.addListener(listener: function)

Fired when an app or extension has been installed.

Event

onUninstalled

chrome.management.onUninstalled.addListener(listener: function)

Fired when an app or extension has been uninstalled.

Event

  • listener
    function

    The listener parameter should be a function that looks like this:

    (id: string) => {...}
    • id
      string

      The id of the extension, app, or theme that was uninstalled.

We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.