cookies.CookieStore

The CookieStore type of the cookies API represents a cookie store in the browser.

Windows in different browsing modes may use different cookie stores. For example, a private browsing (or incognito) mode window uses a separate cookie store from a non-private window. Also, a window may have several cookie stores in Firefox when using container tabs.

See Work with the Cookies API for more information about cookie stores.

Type

Values of this type are objects that can contain these properties:

id

A string containing the cookie store's unique identifier.

incognito Optional

A boolean value that indicates whether this is an incognito cookie store. This property is not supported in Chrome or Safari. However, you can identify incognito cookie stores in Chrome because their id is always "1".

tabIds

An array of integers that identifies all the browser tabs that share this cookie store.

Examples

In this snippet, the cookies.getAllCookieStores() method is used to retrieve all the cookie stores available in the browser. Then, it prints out each cookie store ID and the tabs that share each cookie store.

js
function logStores(cookieStores) {
  for (const store of cookieStores) {
    console.log(`Cookie store: ${store.id}\n Tab IDs: ${store.tabIds}`);
  }
}

browser.cookies.getAllCookieStores().then(logStores);

This code snippet gets all cookie stores and then logs the total number of stores and how many of those stores are incognito.

js
browser.cookies.getAllCookieStores().then((stores) => {
  const incognitoStores = stores.map((store) => store.incognito);
  console.log(
    `Of ${stores.length} cookie stores, ${incognitoStores.length} are incognito.`,
  );
});

Browser compatibility

BCD tables only load in the browser

Note: This API is based on Chromium's chrome.cookies API. This documentation is derived from cookies.json in the Chromium code.