WebExtension Manifest.json permissions options list
Code,  Data,  Mini essays

WebExtension Manifest.json permissions options list

WebExtension Manifest.json permissions options list is quite long. Let us see what we can access with our plugin for FF. This hsould inspire You to write Your own for quality of life and ease of doing things… or avoid them all together. For avoidance i would highly recommend to look into prper ad block filter and creating / adding your own.

Rule : Do not scare users

Remember when Your app requires and asks for access. You either explain to user in every detail what for and go with bare minimum. Just as a rule of thumb of not beeing accused of getting and selling info. It is always scary when another photo app needs access to your contacts or other parts of the system… why calc app needs access to my files ? 🙂

WebExtension Permissions Glossary

  • activeTab — (V2+)
    Grants temporary access to the currently active tab, letting the extension interact with it when the user performs an action.
  • alarms — (V2+)
    Schedules code to run periodically or at specific times, even when the extension isn’t active.
  • background — (V2+)
    Keeps background scripts running persistently to manage events, storage, or messaging.
  • bookmarks — (V2+)
    Allows reading, creating, editing, and organizing bookmarks in the browser.
  • browserSettings — (V2+)
    Lets the extension change certain browser settings such as homepage or new tab behavior.
  • browsingData — (V2+)
    Enables clearing of browsing data like history, cookies, or cache.
  • captivePortal — (V2+)
    Detects when a captive portal (e.g., Wi-Fi login page) is active and monitors its state.
  • clipboardRead — (V2+)
    Allows reading the current contents of the clipboard.
  • clipboardWrite — (V2+)
    Permits writing data to the clipboard programmatically.
  • contentSettings — (V2+)
    Allows modification of default content behavior, such as blocking images or cookies.
  • contextMenus — (V2+)
    Lets the extension add its own items to right‑click (context) menus.
  • contextualIdentities — (V2+)
    Provides access to Firefox Container tabs and related data.
  • cookies — (V2+)
    Allows reading, creating, and deleting cookies for permitted sites.
  • debugger — (V2+)
    Grants permission to attach debugging tools to pages or other extensions.
  • declarativeNetRequest — (V3+)
    Provides declarative control over network requests (used for content blocking).
  • declarativeNetRequestFeedback — (V3+)
    Offers feedback on declarative net request rules and debugging info.
  • declarativeNetRequestWithHostAccess — (V3+)
    A variant of DNR that also includes host permissions for matching URLs.
  • devtools — (V2+)
    Implicitly granted if a devtools_page is defined; integrates custom features into browser DevTools.
  • dns — (V2+)
    Resolves domain names, accessing DNS information from the system resolver.
  • downloads — (V2+)
    Manages file downloads, including pausing, resuming, and canceling them.
  • downloads.open — (V2+)
    Lets the extension open files directly after download completion.
  • find — (V2+)
    Provides programmatic access to in‑page search (“Find in page”).
  • geolocation — (V2+)
    Requests access to the user’s current geographic position.
  • history — (V2+)
    Reads and manages the browser’s history, including visits and removals.
  • identity — (V2+)
    Supports OAuth2‑based authentication flows for user login.
  • idle — (V2+)
    Detects when the device or browser has been idle for a certain period.
  • management — (V2+)
    Gives access to information about installed extensions and themes.
  • menus — (V2+)
    Alternative to contextMenus; allows managing contextual menus.
  • menus.overrideContext — (V2+)
    Temporarily replaces the standard right‑click menu with a custom one.
  • nativeMessaging — (V2+)
    Allows secure message exchange between the extension and a native desktop app.
  • notifications — (V2+)
    Displays OS‑level notifications from the extension.
  • pageCapture — (V2+)
    Saves a full web page as an MHTML archive.
  • pkcs11 — (V2+)
    Interfaces with PKCS #11 modules, used for security and smart card operations.
  • privacy — (V2+)
    Modifies certain browser privacy preferences (e.g., tracking protection).
  • proxy — (V2+)
    Lets the extension configure or handle proxy settings.
  • scripting — (V3+)
    Programmatically injects JavaScript or CSS into web pages at runtime.
  • search — (V2+)
    Manages or modifies the browser’s search engine settings and queries.
  • sessions — (V2+)
    Restores or queries recently closed tabs and windows.
  • storage — (V2+)
    Stores and retrieves data using the extension storage API.
  • tabGroups — (V2+)
    Accesses and manipulates browser tab groups (currently Chrome only).
  • tabHide — (V2+)
    Allows hiding or unhiding tabs in the browser.
  • tabs — (V2+)
    Provides access to open tabs, their states, and navigation.
  • theme — (V2+)
    Enables applying and modifying browser themes.
  • topSites — (V2+)
    Retrieves a list of the user’s most visited sites.
  • unlimitedStorage — (V2+)
    Allows unrestricted use of local storage without quota limits.
  • userScripts — (V2+)
    Lets extensions register and manage custom user scripts. MDN Reference
  • webNavigation — (V2+)
    Monitors and analyzes browser navigation events and redirects.
  • webRequest — (V2+)
    Observes network requests, including the ability to block or modify them.
  • webRequestAuthProvider — (V3+)
    Manages authentication for network requests.
  • webRequestBlocking — (V2+)
    Blocks or modifies network requests synchronously before they’re sent.
  • webRequestFilterResponse — (V3+)
    Reads or alters streaming response data, such as modifying HTML/CSS on the fly.
  • webRequestFilterResponse.serviceWorkerScript — (V3+)
    Specifically filters service worker script responses.
safety list for manifest json permissions

Summary

WebExtension Manifest.json permissions options will be the crucial part for You so You will know the api by heart… or just ask your favorite llm…

RTFM !!

Official start guide

Here are concise, high-signal links you can bookmark for Firefox WebExtension development.

Core MDN documentation

Piotr Kowalski