search

The search permission allows an extension to interact with the default search provider.

Note: This permission is primarily for overriding the search provider, which is now a restricted capability on the Chrome Web Store to prevent hijacking. Modern use is rare.

What it does

  • Grants access to the chrome.search API.
  • Allows an extension to programmatically perform a search with the user's default search engine.

In Manifest V2, a related manifest key (chrome_settings_overrides) allowed an extension to change the user's default search provider, homepage, and startup pages. This functionality was heavily abused by malicious extensions and is now highly restricted.

When to use it

Legitimate use cases are limited. It could be used by an extension that integrates search functionality in a novel way.

Example:

  • An extension with its own search box in a popup or side panel that, when used, forwards the query to the user's configured default search engine.

Manifest Declaration

{
  "name": "My Search Helper",
  "version": "1.0",
  "manifest_version": 3,
  "permissions": [
    "search"
  ]
}

Security & Privacy

Why is it not risky?

This permission by itself is safe. It only allows an extension to perform a search using whatever search engine you have already set as your default (like Google or DuckDuckGo).

The real danger comes from extensions that try to change your default search engine, which often points you to a spammy or ad-filled site. That capability is now heavily restricted by Google. This specific search permission doesn't allow that; it just uses your existing setting.

API Usage Example

This example performs a search for "chrome extensions" in a new tab using the default search engine.

// background.js or popup.js

function performSearch() {
  chrome.search.query({
    text: "chrome extensions",
    // disposition can be "CURRENT_TAB", "NEW_TAB", or "NEW_WINDOW"
    disposition: "NEW_TAB"
  }, () => {
    if (chrome.runtime.lastError) {
      console.error(chrome.runtime.lastError.message);
    } else {
      console.log("Search opened in a new tab.");
    }
  });
}

// Call this from a user action.
// performSearch();

Extensions with the search permission

Here are some popular browser extensions that use the "search" permission. To explore more, try our Advanced search.

References


Related Permissions

  • This permission is fairly standalone.

Permission Metrics

Popularity

Security Risk


Usage by Platform