Replace the full node + edge graph in one call. Upserts + deletes stale items.
trigger_config column from the signal_trigger node’s config.
id.Guard against accidental wipes. Sending nodes: [] is intentionally treated as a no-op on the delete step — the server keeps existing nodes untouched instead of wiping the graph. To actually clear the graph, delete the workflow.Partial failures. If the node upsert fails, the graph is unchanged (500 Failed to save nodes). If edges fail after nodes succeeded, the nodes are persisted (500 Failed to save edges) — retry with the same payload is safe.trigger_config auto-sync. The server reads any signal_trigger node’s config and mirrors it onto the parent workflow’s trigger_config column so the list view and activation validator stay in sync.Related: List workflow nodes + edges, Toggle workflow active/paused.Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Workflow UUID.
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Full graph state. The server upserts nodes and edges, then deletes anything not in the new set. Sending both arrays empty is intentionally NOT treated as a wipe — to protect against accidental saves, the server keeps existing graph state if nodes is empty.