Welcome What's new in Chrome extensions API reference Samples
Welcome What's new in Chrome extensions API reference Samples

chrome.system.storage

  • Description

    Use the chrome.system.storage API to query storage device information and be notified when a removable storage device is attached and detached.

  • Permissions
    system.storage
    This permission triggers a warning.

Summary

Types

EjectDeviceResultCode

Enum

"success"
The ejection command is successful -- the application can prompt the user to remove the device.

"in_use"
The device is in use by another application. The ejection did not succeed; the user should not remove the device until the other application is done with the device.

"no_such_device"
There is no such device known.

"failure"
The ejection command failed.

StorageAvailableCapacityInfo

Properties

  • availableCapacity

    number

    The available capacity of the storage device, in bytes.

  • id

    string

    A copied id of getAvailableCapacity function parameter id.

StorageUnitInfo

Properties

  • capacity

    number

    The total amount of the storage space, in bytes.

  • id

    string

    The transient ID that uniquely identifies the storage device. This ID will be persistent within the same run of a single application. It will not be a persistent identifier between different runs of an application, or between different applications.

  • name

    string

    The name of the storage unit.

  • The media type of the storage unit.

StorageUnitType

Enum

"fixed"
The storage has fixed media, e.g. hard disk or SSD.

"removable"
The storage is removable, e.g. USB flash drive.

"unknown"
The storage type is unknown.

Methods

ejectDevice

chrome.system.storage.ejectDevice(
  id: string,
  callback?: function,
)
Promise

Ejects a removable storage device.

Parameters

Returns

  • Chrome 91+

    Promises are supported in Manifest V3 and later, but callbacks are provided for backward compatibility. You cannot use both on the same function call. The promise resolves with the same type that is passed to the callback.

getAvailableCapacity

chrome.system.storage.getAvailableCapacity(
  id: string,
  callback?: function,
)
Promise Dev channel

Get the available capacity of a specified id storage device. The id is the transient device ID from StorageUnitInfo.

Parameters

Returns

  • Promises are supported in Manifest V3 and later, but callbacks are provided for backward compatibility. You cannot use both on the same function call. The promise resolves with the same type that is passed to the callback.

getInfo

chrome.system.storage.getInfo(
  callback?: function,
)
Promise

Get the storage information from the system. The argument passed to the callback is an array of StorageUnitInfo objects.

Parameters

Returns

  • Promise<StorageUnitInfo[]>

    Chrome 91+

    Promises are supported in Manifest V3 and later, but callbacks are provided for backward compatibility. You cannot use both on the same function call. The promise resolves with the same type that is passed to the callback.

Events

onAttached

chrome.system.storage.onAttached.addListener(
  callback: function,
)

Fired when a new removable storage is attached to the system.

Parameters

onDetached

chrome.system.storage.onDetached.addListener(
  callback: function,
)

Fired when a removable storage is detached from the system.

Parameters

  • callback

    function

    The callback parameter looks like: (id: string) => void

    • id

      string

This site uses cookies to deliver and enhance the quality of its services and to analyze traffic. If you agree, cookies are also used to serve advertising and to personalize the content and advertisements that you see. Learn more about our use of cookies.