curl --request PATCH \
--url https://api.open.cx/workflows/{workflow_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>",
"trigger_type": "manual-trigger",
"trigger_configuration": "<unknown>",
"trigger_constraints": "<unknown>",
"workflow_blocks": [
"<unknown>"
],
"workflow_editor_state": "<unknown>"
}
'{
"id": 123,
"workflow_id": "<string>",
"name": "<string>",
"description": "<string>",
"is_active": true,
"trigger_type": "<string>",
"version_number": 123,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"workflow_blocks": [
"<unknown>"
],
"trigger_configuration": "<unknown>",
"trigger_constraints": "<unknown>"
}Update a workflow by creating a new version. The new version is created as an inactive draft. Only the provided fields are changed; omitted fields carry over from the current version. Use the activate endpoint to make the new version live.
curl --request PATCH \
--url https://api.open.cx/workflows/{workflow_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>",
"trigger_type": "manual-trigger",
"trigger_configuration": "<unknown>",
"trigger_constraints": "<unknown>",
"workflow_blocks": [
"<unknown>"
],
"workflow_editor_state": "<unknown>"
}
'{
"id": 123,
"workflow_id": "<string>",
"name": "<string>",
"description": "<string>",
"is_active": true,
"trigger_type": "<string>",
"version_number": 123,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"workflow_blocks": [
"<unknown>"
],
"trigger_configuration": "<unknown>",
"trigger_constraints": "<unknown>"
}Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
New workflow name
1New workflow description
New trigger type
manual-trigger, ai-trigger, cron-trigger, form-trigger, webhook, contact-created, phone-call-started, phone-call-finished, ticket-created, ticket-reassigned, ticket-resolved, ticket-handoff, pre-ticket-handoff, ticket-tag-added, ticket-inactive, sequence-completed, csat-score-submit, prohibited-topic-detected, sla-first-reply-breached, sla-next-reply-breached, sla-resolution-breached, voice-call-transferred, pre-voice-call-transfer New trigger configuration
New trigger constraints
New workflow step/block definitions (replaces existing blocks)
React Flow editor state (nodes, edges, viewport) for the dashboard visual editor
Default Response
Version serial ID
Workflow UUID (groups all versions of the same workflow)
Workflow name
Workflow description
Whether this version is currently active
Trigger type: "manual-trigger", "ai-trigger", "cron-trigger", "webhook", "form-trigger", or event-based triggers
Version number (increments with each edit)
Workflow step/block definitions
Trigger-specific configuration
Trigger constraint rules (JSON Logic)
Was this page helpful?