The Cookie type of the cookies API represents information about an HTTP cookie.
The Cookie type of the cookies API represents information about an HTTP cookie.
Values of this type are objects, which can contain the following properties:
domainA string representing the domain the cookie belongs to (e.g. "www.google.com", "example.com").
expirationDate Optional
A number representing the expiration date of the cookie as the number of seconds since the UNIX epoch. Not provided for session cookies.
firstPartyDomainA string representing the first-party domain associated with the cookie. This will be an empty string if the cookie was set while first-party isolation was off. See First-party isolation.
hostOnlyA boolean, true if the cookie is a host-only cookie (i.e. the request's host must exactly match the domain of the cookie), or false otherwise.
httpOnlyA boolean, true if the cookie is marked as HttpOnly (i.e. the cookie is inaccessible to client-side scripts), or false otherwise.
nameA string representing the name of the cookie.
partitionKey Optional
An object representing the description of the storage partition containing the cookie. This object is omitted (null) if the cookie is not in partitioned storage. This object contains the following properties:
topLevelSiteA string representing the first-party URL of the cookie's storage partition, if the cookie is in storage that is partitioned by top-level site.
pathA string representing the path of the cookie.
secureA boolean, true if the cookie is marked as secure (i.e. its scope is limited to secure channels, typically HTTPS), or false otherwise.
sessionA boolean, true if the cookie is a session cookie, or false if it is a persistent cookie with an expiration date.
sameSiteA cookies.SameSiteStatus value that indicates the SameSite state of the cookie.
storeIdA string representing the ID of the cookie store containing this cookie, as provided by cookies.getAllCookieStores().
valueA string representing the value of the cookie.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
Cookie |
Yes | 14 | 45 | ? | Yes | 14 | ? | ? | 48 | ? | 15 | ? |
firstPartyDomain |
No | No | 59 | ? | No | No | ? | ? | 59 | ? | No | ? |
partitionKey |
No | No | 94 | ? | No | No | ? | ? | 94 | ? | No | ? |
sameSite |
Yes | 79 | 63 | ? | No | 14Only supports explicit. |
? | ? | 63 | ? | 15Only supports explicit. |
? |
Most methods in the cookies API involve a Cookie object being used either as an input parameter or as part of the return value. For example, a call to cookies.getAll() returns an array of Cookie objects.
In the example below we've asked for all cookies, then logged some of the values of each of the resulting Cookie objects:
function logCookies(cookies) { for (cookie of cookies) { console.log(`Domain: ${cookie.domain}`); console.log(`Name: ${cookie.name}`); console.log(`Value: ${cookie.value}`); console.log(`Persistent: ${!cookie.session}`); } } let gettingAll = browser.cookies.getAll({}); gettingAll.then(logCookies);
Note: This API is based on Chromium's chrome.cookies API. This documentation is derived from cookies.json in the Chromium code.
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/cookies/Cookie