Introduction

Flows are the visual blueprints for your AI phone agents — defining what the agent says, collects, calls, and decides from “hello” to hang-up.

What are Flows?

Blocks

Individual units of behavior — speak to callers, collect info, call APIs, transfer, end calls, and more.

Edges

Connections that determine which path the conversation takes next.

Variables

The agent’s short-term memory — values that change per call (caller inputs, system data, API results).

Why use Flows?

No code to start

Drag, drop, and configure. Ship fast without waiting on engineering.

Real-time & natural

Handle interruptions, clarifications, and pivots mid-conversation.

Built to scale

Confidently handle thousands of concurrent calls.

Integrations

Call your APIs and systems directly from the Flow.

Core concepts

How to change a Flow

1

Enter edit mode

Open your Flow and click Edit
2

Add blocks

Drag desired blocks from the left sidebar onto the canvas.
3

Configure blocks

Click a block to set prompts, fields, API details, and validation.
4

Connect blocks

Drag from a block’s output port (bottom) to the next block’s input (top).
5

Save

Click Save Each save creates a new version.

Connecting blocks with edges

1

Create an edge

Click and drag from the outputof one block to the inputof the next.
2

Configure the edge

Select the edge to open the editor and set guards/requirements.
3

Confirm & save

Define what must be present or confirmed before the edge is taken, then save.

Call variables

Variables are dynamic containers that persist for the duration of the call — like the agent’s working memory.
Use Collect blocks for caller input, API Request blocks for external data, or add custom variables via the Variable modal.
Reference by name with @variable_name or select from the Variable modal. Use them in prompts, conditions, and API payloads.

Variable types


Call outcome tagging

Automatic

System applies defaults like completed, failed, or transferred.

Custom

Set custom tags in End Call blocks for downstream workflows.

Conditional

Apply tags only when conditions on variables are met.

Testing & best practices

Test your Flows

1

Upload a recording

Validate recognition and branch logic with real audio.
2

Simulate variables

Seed test values for @name, @phone, etc.
3

Path testing

Walk each branch and confirm expected prompts.
4

Error testing

Force empty/malformed inputs to validate fallbacks.

Design guidelines

Keep prompts natural and concise, offer clear next steps, plan for interruptions, and confirm critical data before proceeding.
Test all branches, add fallback edges, watch performance metrics, and keep external dependencies resilient.
Use descriptive names, validate inputs, handle missing data gracefully, and scrub sensitive data when not needed.

Common patterns & workflows

1

Start & welcome

2

Collect issue details

3

Filter by issue type

4

API request for account/order

5

Provide resolution

6

Confirm satisfaction

7

Route to human if needed

8

End with summary


Troubleshooting guide

Verify block connections, confirm required variables are set, test blocks individually, and check API auth/endpoints.
Review Talk block voice settings, try alternate voices, adjust rate and pauses, and check variable interpolation.
Confirm destination numbers/agents, test fallbacks, and verify timing and availability windows.
Check spelling/case, ensure values are set before use, validate data types, and test prompts using variables.
Test endpoints in isolation, verify credentials and headers, confirm request/response schemas, and watch rate limits/timeouts.

Conclusion

You now have the essentials to design reliable, natural AI phone experiences:
  • Start simple, iterate quickly.
  • Integrate systems as needed.
  • Test rigorously and monitor outcomes.
1

Start simple

Build with Start Call, Talk, and End Call
2

Add interaction

Use Collect and Question blocks.
3

Integrate systems

Add API Request and conditional edges.
4

Optimize

Use Filter and Time Filter to route intelligently.
5

Test thoroughly

Apply simulation and live testing practices above.