Get workflow with graph
Returns a workflow including its full node/edge graph and run stats.
Authorization
bearerAuth API key authentication: send your Zernio API key in the Authorization header, prefixed with Bearer.
In: header
Path Parameters
Response Body
application/json
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.workflows.getWorkflow({ path: { workflowId: 'workflow_abc123', },});console.log(data);{ "success": true, "workflow": { "id": "string", "name": "string", "description": "string", "platform": "string", "accountId": "string", "profileId": "string", "status": "draft", "entryNodeId": "string", "nodes": [ { "id": "string", "type": "trigger", "config": {}, "position": { "x": 0, "y": 0 }, "label": "string" } ], "edges": [ { "id": "string", "source": "string", "target": "string", "sourceHandle": "string" } ], "totalStarted": 0, "totalCompleted": 0, "totalExited": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }}Create workflow
Create a branching conversation workflow (draft) from a node/edge graph. Created in `draft` status; activate it to start matching inbound messages. The graph is validated structurally; completeness (a trigger node + reachable entry) is required at activation.
Update workflow
Update name, description, the graph, or reassign to a different account. The graph can be modified in any status, including `active`: a run already in progress reloads the saved graph at its next step, and a run parked on a node the edit removed completes instead of failing. Every graph edit is re-validated and an invalid graph answers 400 regardless of status. `status` is not a field of this request; use the activate and pause endpoints. Account swaps re-validate the graph against the new platform (so e.g. moving from WhatsApp to Facebook surfaces a `start_call` node as an error instead of silently saving an unrunnable graph).