They describe what the agent says, what it asks, what it stores, what APIs it calls, and how the conversation moves forward.
What Are Flows?
Flows are made of several core elements:1. Blocks
Each block represents a single action or behavior, such as:- Speaking to the caller
- Asking a question and capturing input
- Calling an API
- Making a decision based on conditions
- Transferring the call
- Ending the call.
2. Connections (Edges)
Edges determine which path the call takes next.They can include:
- Simple transitions (always go to the next step)
- Conditional transitions (go to the next block only if a variable meets a condition)
- Confirmation requirements
3. Call Memory (Variables)
Variables store information during the call, such as:- Caller-provided inputs.
- API responses.
- System-generated data (timestamp, outcomes, etc.)
Canvas Controls
Phonely includes several canvas tools to help you navigate and organize large workflows. You’ll find tools for:- Switching between Hand Mode (drag canvas) and Pointer Mode (select/move nodes)
- Exporting the flow as a PNG
- Organizing nodes into a cleaner layout
- Undo/Redo actions
- Viewing your change history
Core Concepts
How to Create a Flow
- Go to the agent design page.
- Click the + to create a new workflow or select an existing workflow and click the Edit button.
- Add blocks. Click the + button between existing blocks or at the end of a chain to insert a new block.

Each block contains different settings, and the options you see will depend on the type of block you’re setting up.

When a new block is added, Phonely automatically creates a connection. You can change connections between blocks by hovering over an edge, clicking the X button, and then placing your cursor over the output node of one block and dragging the edge to connect to the input node of another block. 5. Edit an edge Hover over an edge and click the edit button to open the edit slide-in panel. Here you can:

- Specify the variables that must exist before allowing passage through this edge. The workflow will only proceed if all specified variables are present.
- Specify the variables that should be confirmed before allowing passage through this edge. The workflow will only proceed if all specified variables are confirmed.
Every save creates a new version you can review or revert. 7. Publish when ready
Publishing makes the version live for real callers.
Call variables
What are call variables?
What are call variables?
Variables are dynamic containers that persist for the duration of the call - like the agent’s working memory.
How to set variables
How to set variables
Use Collect blocks for caller input, API Request blocks for external data, or add custom variables via the Variable modal.
How to access variables
How to access variables
Reference by name with @variable_name or select from the Variable modal. Use them in prompts, conditions, and API payloads.
Variable types
Variables in Phonely can store different types of data. Choose the appropriate type when collecting information from callers or storing data from API responses.| Type | Data Type | Description |
|---|---|---|
| text | string | General text |
| number | number | Numeric values |
| date | ISO date | Dates in ISO format |
| time | HH:mm | Times in 24-hour format |
| name | string | Caller names |
string | Email addresses | |
| phone | string | Phone numbers |
| url | string | Web addresses |
| address | object | Street, city, region, postal code, country |
| currency | number | Monetary values |
| percentage | number | Percent values |
| duration | string | Time spans |
| custom | any | User-defined schema |
Call outcome tagging
Outcome tags enable analytics, reporting, and automations after the call ends.
Automatic
System applies defaults like
completed, failed, lead_qualified, appointment_schedule, 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
- Simulation
- Live
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
Conversation design
Conversation design
Keep prompts natural and concise, offer clear next steps, plan for interruptions, and confirm critical data before proceeding.
Technical hygiene
Technical hygiene
Test all branches, add fallback edges, watch performance metrics, and keep external dependencies resilient.
Variable management
Variable management
Use descriptive names, validate inputs, handle missing data gracefully, and scrub sensitive data when not needed.
Common patterns & workflows
- Customer Service
- Appointment Booking
- Lead Qualification
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
Flow not responding
Flow not responding
Verify block connections, confirm required variables are set, test blocks individually, and check API auth/endpoints.
Poor call quality
Poor call quality
Review Talk block voice settings, try alternate voices, adjust rate and pauses, and check variable interpolation.
Transfer failures
Transfer failures
Confirm destination numbers/agents, test fallbacks, and verify timing and availability windows.
Variable issues
Variable issues
Check spelling/case, ensure values are set before use, validate data types, and test prompts using variables.
API integration problems
API integration problems
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.

