http://localhost:3333/api/kiwi.
Canvas paths must end with .canvas.json.
List canvases
Read canvas
Content-Type: application/json.
Write canvas
nodes and edges arrays (empty arrays are allowed). Invalid JSON returns 400.
Patch canvas
Apply a batch of atomic operations without replacing the full document. If any operation fails, the whole batch is rejected.op values: add_node, update_node, remove_node, add_edge, update_edge, remove_edge.
integer
Nodes inserted.
integer
Nodes merged in place.
integer
Nodes deleted (connected edges removed too).
integer
Edges inserted.
integer
Edges merged in place.
integer
Edges deleted.
Delete canvas
Query canvas nodes
string
required
Canvas file path.
string
Filter nodes by label or metadata text.
string
Filter by node type.
string
Return nodes connected to the given node ID.
boolean
default:"false"
Return only nodes.
boolean
default:"false"
Return only edges.
Auto-layout
Reposition existing nodes in a canvas using a layout algorithm. This operates on the current canvas content only — it does not generate new nodes from the wiki-link graph (usePOST /canvas/generate for that).
string
required
Canvas file to update in place.
string
default:"dot"
Graphviz engine:
dot, neato, fdp, or circo.Generate from link graph
path— output file; defaultcanvas.canvas.json. A.canvas.jsonsuffix is added if missing.layout—hierarchical(default),radial,force, orcircular.folder— optional prefix; only edges whose endpoints live under this folder are included.colorize— boolean, defaulttrue.
503 if the link index is unavailable.
POST /canvas/generate and PATCH /canvas are REST-only. MCP exposes kiwi_canvas_list, kiwi_canvas_read, and kiwi_canvas_write — not generate or patch.MCP parity
kiwi_canvas_list, kiwi_canvas_read, kiwi_canvas_write — see MCP.