v1

latestOpenAPI 3.1.0MIT2026-07-26134154266.9 KB
Workflows (Beta)

[Beta] Create a workflow

Create a new workflow. The workflow is created as an inactive draft (version 1). Use the activate endpoint to make it live. Use GET /workflows/definitions to discover available action and trigger types. Rejects definitions that fail deep validation (missing required action inputs or trigger configuration) with a 400 carrying structured issues.

post/workflows

Request body

namestring required

Workflow name

descriptionstring

Workflow description

trigger_type'manual-trigger' | 'ai-trigger' | 'cron-trigger' | 'form-trigger' | 'webhook' | 'contact-created' | 'contact-updated' | 'phone-call-started' | 'phone-call-finished' | 'ticket-created' | 'ticket-reassigned' | 'ticket-resolved' | 'ticket-handoff' | 'pre-ticket-handoff' | 'ticket-tag-added' | 'ticket-inactive' | 'agent-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' | 'pre-phone-call-finished' | 'manual-ticket-trigger' | 'contact-message-received' | 'first-contact-message-received' | 'macro-called' | 'ai-response-completed' | 'agent-availability-changed' | 'agent-avail-in-team-changed' | 'ai-response-requested' | 'ticket-reopened' required

What starts the workflow. Use "manual-trigger" for on-demand execution, "ai-trigger" for AI-initiated, "webhook" for external HTTP triggers, "cron-trigger" for scheduled runs, or event-based triggers like "ticket-created", "contact-created", etc.

{"stackTrail":"components:schemas:CreateWorkflowPublicInput:properties:trigger_configuration:anyOf","oasType":"schema","type":"unknown","description":"Trigger-specific configuration (e.g. cron expression for cron-trigger)","nullable":true}
{"stackTrail":"components:schemas:CreateWorkflowPublicInput:properties:workflow_editor_state:anyOf","oasType":"schema","type":"unknown","description":"React Flow editor state (nodes, edges, viewport) for the dashboard visual editor","nullable":true}

Response

Default Response

idnumber required

Version serial ID

workflow_idstring required

Workflow UUID (groups all versions of the same workflow)

namestring required

Workflow name

descriptionstring nullable required

Workflow description

is_activeboolean nullable required

Whether this version is currently active

trigger_typestring required

Trigger type: "manual-trigger", "ai-trigger", "cron-trigger", "webhook", "form-trigger", or event-based triggers

version_numbernumber required

Version number (increments with each edit)

created_atstring date-time required
updated_atstring date-time required
{"stackTrail":"components:schemas:WorkflowDetailPublicResponseDto:properties:trigger_configuration:anyOf","oasType":"schema","type":"unknown","description":"Trigger-specific configuration","nullable":true}
webhook_urlstring nullable required

Trigger URL for webhook-type workflows. Call this URL (POST) to trigger the workflow. Null for non-webhook workflows.