plugin_list
List every installed JavaScript plugin, with the slash commands and events each one declares. Use it to build a plugin management screen.
Request
Section titled “Request”{ "cmd": "plugin_list"}No fields besides cmd.
Response
Section titled “Response”{ "cmd": "plugin_list", "plugins": [ { "name": "hello", "description": "Say hello and answer !ping", "version": "0.1.0", "slash": [ { "name": "hello", "description": "Say hello", "options": [], "whitelistRoles": null, "blacklistRoles": null, "ephemeral": false, "registeredBy": "plugin:hello" } ], "events": ["message_new"], "enabled": true } ]}Plugins are sorted by name. Each entry has:
| Field | Description |
|---|---|
name |
Plugin name, which is also its folder name. |
description |
From the manifest. |
version |
From the manifest. |
slash |
Slash command definitions the plugin declares. |
events |
Commands the plugin’s onEvent runs before. |
enabled |
The manifest’s enabled flag. Defaults to true. |
enabled: true doesn’t prove the plugin is running. A plugin whose manifest or main.js failed to load is also listed as enabled, with values read from its manifest. Use plugin_get and check loaded.
A folder whose plugin.json is missing or can’t be parsed is left out.
Permissions
Section titled “Permissions”Requires manage_server.
Errors
Section titled “Errors”Only the generic authentication and permission errors described in the protocol model.
