Static FastAPI decorators define 28 operations. Mount status is explicit: a router factory is not a deployed endpoint until create_app includes it.
| Method | Path | Handler | Auth dependency | Runtime surface | Purpose | Source |
|---|---|---|---|---|---|---|
GET |
/api/v1/plugins/catalog |
get_catalog |
none | router factory; not mounted by create_app | Get plugin catalog for marketplace. | src/core/api/plugins/routes.py:69 |
GET |
/api/v1/plugins/health |
get_plugin_health |
none | router factory; not mounted by create_app | Get health status of all plugins. | src/core/api/plugins/routes.py:180 |
POST |
/api/v1/plugins/install |
install_plugin |
none | router factory; not mounted by create_app | Install a plugin. | src/core/api/plugins/routes.py:108 |
GET |
/api/v1/plugins/installed |
get_installed |
none | router factory; not mounted by create_app | Get installed plugins. | src/core/api/plugins/routes.py:89 |
GET |
/api/v1/plugins/installed/modules |
get_installed_modules |
none | router factory; not mounted by create_app | Get modules from installed plugins. | src/core/api/plugins/routes.py:98 |
POST |
/api/v1/plugins/uninstall |
uninstall_plugin |
none | router factory; not mounted by create_app | Uninstall a plugin. | src/core/api/plugins/routes.py:127 |
POST |
/api/v1/plugins/{plugin_id}/load |
load_plugin |
none | router factory; not mounted by create_app | Load (start) a plugin process. | src/core/api/plugins/routes.py:144 |
POST |
/api/v1/plugins/{plugin_id}/unload |
unload_plugin |
none | router factory; not mounted by create_app | Unload (stop) a plugin process. | src/core/api/plugins/routes.py:162 |
GET |
/health |
health |
none | Execution API | HTTP operation; linked handler is authoritative. | src/core/api/server.py:129 |
GET |
/health |
health |
none | verification service | HTTP operation; linked handler is authoritative. | src/core/verification_service.py:443 |
DELETE |
/mcp |
mcp_delete |
bearer token | Execution API | HTTP operation; linked handler is authoritative. | src/core/api/routes/mcp.py:293 |
GET |
/mcp |
mcp_get |
none | Execution API | HTTP operation; linked handler is authoritative. | src/core/api/routes/mcp.py:285 |
POST |
/mcp |
mcp_post |
bearer token | Execution API | HTTP operation; linked handler is authoritative. | src/core/api/routes/mcp.py:175 |
POST |
/run |
run |
internal key | verification service | HTTP operation; linked handler is authoritative. | src/core/verification_service.py:447 |
GET |
/v1/capabilities |
get_capabilities |
none | Execution API | Deterministic capability manifest for this installation. | src/core/api/routes/modules.py:98 |
POST |
/v1/capabilities/refresh |
refresh_capabilities |
bearer token | Execution API | Re-run plugin discovery and rebuild the capability manifest. | src/core/api/routes/modules.py:118 |
POST |
/v1/execute |
execute_module |
bearer token | Execution API | Execute a single module. | src/core/api/routes/modules.py:137 |
GET |
/v1/extensions |
list_extensions |
bearer token | Execution API | Installed extensions of every supported kind. | src/core/api/routes/extensions.py:183 |
POST |
/v1/extensions/install |
install_extension |
bearer token | Execution API | Install or upgrade one extension. | src/core/api/routes/extensions.py:227 |
GET |
/v1/extensions/kinds |
list_extension_kinds |
bearer token | Execution API | The supported extension kinds, served from the same table the installer enforces — so a client's idea of what is installable cannot drift from Core's. | src/core/api/routes/extensions.py:205 |
POST |
/v1/extensions/uninstall |
uninstall_extension |
bearer token | Execution API | Uninstall one extension. | src/core/api/routes/extensions.py:273 |
GET |
/v1/info |
info |
none | Execution API | HTTP operation; linked handler is authoritative. | src/core/api/server.py:133 |
GET |
/v1/modules |
list_modules |
none | Execution API | List all available modules, organized by category. | src/core/api/routes/modules.py:33 |
GET |
/v1/modules/{module_id:path} |
get_module_info |
none | Execution API | Get detailed module information including params schema and examples. | src/core/api/routes/modules.py:83 |
POST |
/v1/workflow/run |
run_workflow |
bearer token | Execution API | Run a multi-step workflow with optional evidence collection and tracing. | src/core/api/routes/workflows.py:33 |
GET |
/v1/workflow/{execution_id} |
get_execution_info |
bearer token | Execution API | Get execution info: steps, status, evidence summary. | src/core/api/routes/workflows.py:120 |
GET |
/v1/workflow/{execution_id}/evidence |
get_execution_evidence |
bearer token | Execution API | Get step-by-step evidence for an execution. | src/core/api/routes/workflows.py:169 |
POST |
/v1/workflow/{execution_id}/replay/{step_id} |
replay_from_step |
bearer token | Execution API | Replay workflow execution from a specific step. | src/core/api/routes/replay.py:22 |