# userScripts Documentation: [Chrome User Scripts API](https://developer.chrome.com/docs/extensions/reference/userScripts) A promise-based wrapper around the Chrome `userScripts` API. Note: This API is available in Manifest V3. ## Methods - [configureUserScriptsWorld(properties?)](#configureUserScriptsWorld) - [getUserScripts(ids?)](#getUserScripts) - [getUserScriptsWorldConfigs()](#getUserScriptsWorldConfigs) - [executeUserScript(injection)](#executeUserScript) - [registerUserScripts(scripts)](#registerUserScripts) - [resetUserScriptsWorldConfigs(worldId?)](#resetUserScriptsWorldConfigs) - [unregisterUserScripts(ids?)](#unregisterUserScripts) - [updateUserScripts(scripts)](#updateUserScripts) - [isAvailableUserScripts()](#isAvailableUserScripts) --- ### configureUserScriptsWorld ``` configureUserScriptsWorld(properties?: chrome.userScripts.WorldProperties): Promise ``` Configures the execution world for user scripts. If `properties` is omitted, defaults are used. ### getUserScripts ``` getUserScripts(ids?: string[]): Promise ``` Retrieves registered user scripts. When `ids` is provided, returns only scripts with matching IDs. ### getUserScriptsWorldConfigs ``` getUserScriptsWorldConfigs(): Promise ``` Returns the currently configured user script worlds. ### executeUserScript ``` executeUserScript(injection: chrome.userScripts.UserScriptInjection): Promise ``` Executes a user script with the provided injection parameters and resolves with the results from all frames where it executed. ### registerUserScripts ``` registerUserScripts(scripts: chrome.userScripts.RegisteredUserScript[]): Promise ``` Registers one or more user scripts. ### resetUserScriptsWorldConfigs ``` resetUserScriptsWorldConfigs(worldId?: string): Promise ``` Resets the configuration of a specific world by ID, or all worlds if `worldId` is omitted. ### unregisterUserScripts ``` unregisterUserScripts(ids?: string[]): Promise ``` Unregisters user scripts. When `ids` are provided, only scripts with those IDs are removed; otherwise, all registered scripts are removed. ### updateUserScripts ``` updateUserScripts(scripts: chrome.userScripts.RegisteredUserScript[]): Promise ``` Updates previously registered user scripts with new definitions. ### isAvailableUserScripts ``` isAvailableUserScripts(): boolean ``` Returns `true` if the `chrome.userScripts` API is available in the current environment (typically Manifest V3), otherwise `false`.