OpenRouter plugins extend the capabilities of any model by adding features like real-time web search, PDF processing, and automatic JSON repair. Plugins can be enabled per-request via the API or configured as defaults for all your API requests through the Plugins settings page.
OpenRouter currently supports the following plugins:
Plugins are enabled by adding a plugins array to your chat completions request. Each plugin is identified by its id and can include optional configuration parameters.
You can enable multiple plugins in a single request:
Organization admins and individual users can configure default plugin settings that apply to all API requests. This is useful for:
To configure default plugin settings:
In organizations, the Plugins settings page is only accessible to admins.
When “Prevent overrides” is enabled for a plugin, individual API requests cannot disable or modify that plugin’s configuration. This is useful for enforcing organization-wide policies.
Plugin settings are applied in the following order of precedence:
plugins array of individual requestsIf a plugin is enabled in your account defaults but not specified in a request, the default configuration will be applied. If you specify a plugin in your request, those settings will override the defaults.
If you want the account setting to take precedence, toggle on “Prevent overrides” in the config for the plugin. It will then be impossible for generations to override the config.
If a plugin is enabled by default in your account settings, you can disable it for a specific request by passing "enabled": false in the plugins array:
This will turn off the web search plugin for that particular request, even if it’s enabled in your account defaults.
Some plugins have convenient model variant shortcuts. For example, appending :online to any model ID enables web search:
This is equivalent to:
See Model Variants for more information about available shortcuts.