Skip to main content

API Reference

The backend serves a REST API plus a WebSocket for execution. All endpoints are under the same origin as the app (http://localhost:8000 by default).

EndpointMethodDescription
/api/healthGETHealth probe — returns nodes_loaded, presets_loaded.
/api/nodesGETList all node definitions.
/api/nodes/{node_name}GETGet a single node definition.
/api/nodes/reloadPOSTHot-reload all built-in and custom nodes.
/api/presetsGETList preset definitions.
/api/presets/{name}GETGet a single preset definition.
/api/presets/createPOSTCreate a new preset from selected nodes.
/api/graph/validatePOSTValidate a graph.
/api/graph/savePOSTSave a graph.
/api/graph/load/{name}GETLoad a saved graph.
/api/graph/listGETList saved graphs.
/api/graph/exportPOSTExport a graph as a Python script.
/api/examples/listGETList example graphs.
/api/examples/loadGETLoad an example graph.
/api/custom-nodesGETList custom nodes.
/api/custom-nodes/uploadPOSTUpload a custom node.
/api/custom-nodes/togglePOSTEnable/disable a custom node.
/api/custom-nodes/{filename}DELETEDelete a custom node.
/api/pluginsGETList installed plugin packs.
/api/plugins/{id}GETGet a plugin's manifest + README.
/api/plugins/reloadPOSTHot-reload all node and preset sources.
/api/modelsGETList uploaded model files.
/api/models/uploadPOSTUpload a model weight file.
/api/models/download/{filename}GETDownload a model weight file (supports nested paths).
/api/models/{filename}DELETEDelete a model file.
/api/imagesGETList uploaded image files.
/api/images/uploadPOSTUpload an image file.
/api/images/download/{filename}GETDownload an image file.
/api/images/{filename}DELETEDelete an image file.
/api/execution/outputs/{run_id}GETList ports captured for a run.
/api/execution/outputs/{run_id}DELETEClear a captured run.
/api/execution/outputs/{run_id}/{node_id}/{port}GETFetch a captured tensor (supports ?slice=0,:,:).
/api/execution/outputs/{run_id}/{node_id}/__steps_indexGETStep-trace metadata for a node (Inspector → Steps tab).
/api/execution/outputs/{run_id}/{node_id}/__grad_indexGETCaptured gradient metadata (Inspector → Backward tab).
/api/execution/state/resetPOSTReset persisted layer weights (per-node or per-graph).
/api/execution/state/listGETList how many modules are persisted (diagnostic).
/ws/executionWebSocketReal-time graph execution (accepts run_id, record_outputs).

:::note WebSocket auth The execution WebSocket takes its session token as a query parameter, since browsers can't set custom headers on a WebSocket handshake. The frontend handles this for you. :::