Skip to main content
Conversation Flows let one base assistant route a call through multiple conversation nodes. Each node has its own prompt and optional transitions. During the call, the LLM chooses transitions by calling generated tools such as transition_to_billing or transition_to_support. The model is intentionally small: one JSON document, one base assistant for voice/STT/TTS/tools, Redis-backed live state, and API-first editing.

Flow Shape

Runtime Behavior

  • begin_node is the first node for every call.
  • global_prompt is applied to every node.
  • Node prompts are combined with the base assistant prompt.
  • Transition tools are generated only for the current node’s outgoing transitions.
  • Dynamic variables such as {{from_number}} are read-only and interpolated into prompts.
  • Existing assistant tools such as endCall, transfer, DTMF, SMS, and custom tools still come from the base assistant.

What the Base Assistant Controls

The flow graph controls routing and node prompts. The base assistant still controls the rest of the live call stack: The flow editor embeds the same assistant configuration form for the base assistant. If a flow behaves correctly but sounds wrong, uses the wrong tool, or has bad interruption timing, update the base assistant settings.

Node and Transition Design

Use one node for each stable conversational mode: greeting, qualification, billing, support, escalation, booking, or wrap-up. Avoid creating a new node for every question; keep node prompts focused on behavior and use transitions for routing decisions. Transition examples:
At runtime, Burki exposes only the current node’s transition tools to the LLM. This keeps routing decisions local and reduces accidental jumps across the graph.

Phone Number Assignment

Phone numbers can be assigned to either a single assistant or a ConversationFlow. A flow assignment stores flow_id on the phone number and clears the direct assistant assignment. Use the Flow phone-number endpoints to bind numbers to flows:
See the Conversation Flows API reference for CRUD and assignment endpoints.

Common Flow Patterns