Add a step
Open a block on the Script tab, then either:- click a button at the bottom of the step list, or
- click + between two steps to insert one there (offers Step, Schedule a Meeting, Action, and Widget).
Email agents use email steps instead (see Channel-specific steps). A block that ends with Call Transfer, End Call, or Wait for results can’t take more steps after it.
Say / question step
The default step. Type what the agent should say or ask. The agent speaks it naturally and adapts the wording to the conversation.- Up to 1,500 characters.
- Insert variables, instructions, and emotions with the buttons under the text. See inline tags.
- Click Play to hear it in the agent’s voice, or Rephrase to get an AI rewrite.
Key question
Turn a step into a key question to capture its answer in the post-call summary. Hover the step number and click the star (Make a key question: “Key questions will appear in a call summary”). In Post-call Analysis you can set how the answer is recorded (open question, single or multiple choice, yes/no, number, date, or time). Key questions appear in Post-call Analysis and in the webhooksummary object. See Post-call analysis.
Schedule a Meeting
Books a meeting in Cal.com during the conversation. The agent offers available slots, confirms one with the contact, and creates the booking. Before you start: connect Cal.com in the App Center. See Cal.com.
A Schedule a Meeting step with its Cal.com event type, Future Days Window, and fallback phrase.
- Slots are offered in the contact’s time zone: the one set on the contact, otherwise inferred from the phone number, otherwise the agent’s time zone.
- Invitations go to the contact’s email, so adding a meeting step adds an
emailvariable. Contacts without an email can’t receive the invite. - A script can have up to 10 meeting steps in total, including scenarios.
- The booking URL is sent in webhooks as
booking.meetingUrl.
Action
Runs an action during the conversation: an App Center integration (CRM lookup, create a ticket, send an SMS), a custom HTTP request, or custom code. The agent says the Action Phrase (default: “Let me pull that up for you real quick.”) while the action runs, then uses the result.
An Action step: the Action Phrase on top, the selected HTTP action underneath.
On Action steps the no-interruption setting reads Speak action response with no interruptions. See Actions for setup, custom code, testing, and logs.
Wait for results
Pauses the script until one or more actions or connected agents (A2A) return, then continues on a Ready or Fallback path. Use it when the next part of the conversation depends on the result, for example a credit check or an availability lookup that takes a few seconds. Wait for results must be the only step in its block. Add it to a new, empty block.
Fallback is also taken if the caller doesn’t want to wait. To wait for a connected agent, first enable an A2A connection for this agent.
Call Transfer
Transfers a live call to a phone number, SIP URI, or human operator queue. The agent says the Call Transfer Phrase first.
A Call Transfer step with the destination, Caller ID, and Warm Transfer settings.
Widget
Shows an interactive form inside the web widget during a call (for example, to collect an address or a choice from a list). The contact fills it in while talking to the agent, and the agent receives the answers. Available on Voice agents with web calls enabled. Choose Form (all fields at once) or Stepped (one at a time), and add inputs such as Short Text, Dropdown, or Single Choice. See In-call forms.End Call
Ends the conversation after the agent says the goodbye phrase (Type your goodbye phrase here). Text and Email agents show End Chat and End Email. No steps can follow it in the same block.Channel-specific steps
- Email
- WhatsApp
- SMS during a call
Email agents use email steps instead of spoken ones. Each step has a Template tab (subject and body you write) and a Prompt tab (instructions; the AI writes the email). Write My Email drafts content for you, with a tone of Default, Direct, Formal, Casual, Creative, or Based on Contact. You can Attach File, Add Photo, connect a knowledge base, and insert the mailbox signature. See Write the emails.
Per-step voice settings
Click the sliders icon on a step to override agent-level behavior for just that step. These settings apply to voice conversations.
Speak with no interruptions and Keypad Input aren’t available on End Call and Call Transfer steps. Background sound (Background Soundscape) is set for the whole agent, not per step. See Conversation dynamics and Keypad input.
FAQ
How do I make the agent call the contact back later?
How do I make the agent call the contact back later?
Callbacks are handled by outcomes, not by a step. When a contact asks to be called later, the call is classified as Call me later and the contact is retried according to your retry settings (with Continue Dialing Attempts after “Call Later”). See Scheduling and retries.
How do I run custom code or talk to another AI agent?
How do I run custom code or talk to another AI agent?
Custom code is a type of Action. Other AI agents connect through A2A connections and are called from a Wait for results step.
The meeting step shows "Cal.com not configured"
The meeting step shows "Cal.com not configured"
Connect Cal.com in the App Center, then select an event type. If you see “Please reconnect your cal.com account”, reconnect it to refresh the credentials.
Related
Script editor
Blocks, subflows, and inline tags.
Actions
Connect the agent to your systems.
Call transfers
Cold, warm, and operator transfers.
Post-call analysis
What key questions capture.
Prompting voice agents
Write steps that sound natural when spoken.