Skip to main content
PATCH
/
workflows
/
{id}
/
nodes
/
{nodeId}
Update a workflow node
curl --request PATCH \
  --url https://api.dialnexa.com/v1/workflows/{id}/nodes/{nodeId} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "label": "<string>",
  "config": {},
  "position_x": 123,
  "position_y": 123
}
'
{
  "id": "node_abc",
  "workflow_id": "wf_abc123",
  "node_type": "VOICE_CALL",
  "label": "Initial Outreach Call",
  "position_x": 100,
  "position_y": 200,
  "config": {
    "agent_id": "agt_abc123",
    "from_phone_number": "+912234567890"
  }
}
Updates editable fields on a workflow node: the human-readable label, the per-node-type config object (for example which agent a VOICE_CALL node uses or how long a TIME node waits), and the node’s position_x / position_y coordinates in the visual editor. The node_type is immutable after creation, to change the kind of step a node represents, delete the existing node with Delete Node and create a replacement.

When to use this

  • Renaming a step so the workflow’s dashboard view stays accurate as the business process evolves.
  • Swapping the agent or voice on a voice-call step without rebuilding the rest of the workflow graph.
  • Adjusting a TIME node’s delay as you learn the right cadence between outreach attempts.
  • Reflowing the visual layout after adding or removing nodes.
If the node is currently routing leads, changes take effect on the next scheduling tick. In-flight steps already running under the previous configuration complete with the old configuration.

Path parameters

ParameterDescription
idThe workflow ID, for example wfl_m3v7zb9rk2px.
nodeIdThe node ID, for example node_v8p3kz1mq7ry.

Body parameters

FieldDescription
labelNew display label.
configNew configuration object, shape varies by node type.
position_x / position_yNew coordinates for the visual editor.

Errors

  • 404 Not Found is returned when the workflow or node does not exist.
  • 400 Bad Request is returned when the config object fails validation for the node’s type, or when an attempt is made to change node_type.

Request

curl -X PATCH "https://api.dialnexa.com/v1/workflows/wfl_m3v7zb9rk2px/nodes/node_v8p3kz1mq7ry" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"label": "First Outreach Call (v2)"}'

Response

{
  "id": "node_v8p3kz1mq7ry",
  "workflow_id": "wfl_m3v7zb9rk2px",
  "node_type": "VOICE_CALL",
  "label": "First Outreach Call (v2)",
  "position_x": 100,
  "position_y": 100,
  "config": {
    "agent_id": "agt_k7m2nq9xw4p8",
    "from_phone_number": "+912234567890"
  },
  "created_at": "2024-04-01T08:05:00.000Z"
}
  • List Nodes: see every node and its current configuration.
  • Create Node: add a new step.
  • Delete Node: remove a step, including replacing one of a different type.

Authorizations

Authorization
string
header
required

Pass your API key as a Bearer token in the Authorization header.

Path Parameters

id
string
required
nodeId
string
required

Body

application/json
label
string
config
object
position_x
number
position_y
number

Response

Success.

id
string
Example:

"node_abc"

workflow_id
string
Example:

"wf_abc123"

node_type
string
Example:

"VOICE_CALL"

label
string
Example:

"Initial Outreach Call"

position_x
number
Example:

100

position_y
number
Example:

200

config
object
Example:
{
  "agent_id": "agt_abc123",
  "from_phone_number": "+912234567890"
}