Getting started
The zero-to-live operator journey — from sign up to your first answered call.
This guide takes you the whole way: create an account, build a voice agent that can actually do something useful, test it until it behaves, publish it, attach a phone number, and take a real call. No coding required — you describe what the agent should do in plain language and it handles the rest.
Set aside about thirty minutes for your first agent. Each step below is a screen in the product, in the order you will hit them.
Before you start
You will need a way to receive a call (any phone) and, for the optional tool step, a web address that returns information — for example a booking page or an order-lookup endpoint your team already uses. If you do not have one yet, you can still build, test, and publish; just skip the tool step.
1. Sign up
Create an account and you land in a workspace. A workspace is your tenancy — one team, one billing account, and the agent that team owns. Everything you build lives inside it, and the people you invite share it.
New workspaces start with free credits and no card on file, so you can build and test without spending anything. You only start using credits when calls happen.
2. Build your agent
Each workspace has one agent. Open it and you will see a left-hand rail grouping everything you can configure. The three that matter for a first build are Prompt, Voice, and Model — the rest have sensible defaults you can leave alone for now.
Write the prompt
The Prompt is your agent's persona and its rules. The agent reads it on every turn of every call, so write it the way you would brief a new hire on their first day: who they are, what they help with, the tone to use, and what to do when they cannot help.
A good first prompt is short and concrete:
You are the front-desk assistant for Northwind Plumbing. You answer calls from
existing and prospective customers. Be warm, brief, and clear.
You can help callers book a service appointment and answer questions about
hours, pricing, and service areas. If a caller is upset or asks for something
you cannot do, offer to transfer them to a human.
Never invent prices or availability. If you do not know, say so and offer to
take a message.Notice it tells the agent both what to do and what not to do. The "never invent prices" line is the kind of rule that keeps an agent reliable on real calls.
Pick a voice and a model
Under Voice, choose how the agent sounds — the voice, speaking speed, and language — and write the greeting it opens every call with ("Thanks for calling Northwind Plumbing, how can I help?"). Under Model, pick the LLM that powers it; live pricing is shown next to each option so you can balance quality against cost.
That is enough to have an agent that can hold a conversation. Next, give it something to do.
3. Add a tool
A tool is how the agent does real work instead of just talking — look up an order, book a meeting, transfer to a human, end the call. The agent reads each tool's description and decides on its own when to use it during a call. You never draw a flowchart; you describe the tools and the agent routes between them.
Open Tools and add one. You have two kinds:
- Built-in actions — ready-made tools you turn on: Transfer to a human, Book a meeting, Search knowledge base, Get the current time, End the call.
- Webhook — a tool that calls a web address you control, so the agent can
read from or write to your own systems. It supports
GET(to look something up) andPOST(to send something in).
Example: an order-lookup webhook
Say you want the agent to look up an order by number. Add a Webhook tool and fill in the cards in order:
- Identity — a
name(lowercase, likelookup_order) and a plain-language description. The description is the most important thing you will write here: "Look up the status of a customer's order by its order number. Use this whenever a caller asks where their order is." The agent uses this sentence to decide when to call the tool, so be specific. - Request — the URL it calls and any parameters. Use
{{double_braces}}to drop in a value the agent collects on the call, likehttps://api.example.com/orders/{{order_number}}. Values that must stay secret (an API key) go in Variables as a secret variable and are referenced the same way — they are encrypted and never shown back to anyone, including the agent's model. - Mock — a sample response so you can test the tool before your real system is wired up.
Tool descriptions are the lever
If the agent calls a tool at the wrong time, or never calls it, fix the description before you touch the prompt. A clear "use this when…" sentence on each tool is the single highest-leverage thing you can write.
Prerequisites
If one tool should only run after another (collect a booking before confirming it, say), list the earlier tool under the later tool's Prerequisites. If the agent jumps the gun, the tool quietly tells it "not yet" and the agent corrects itself on the next turn. No ordering diagrams, just a list of names.
4. Test it
Before any caller does, you talk to the agent yourself. Open the Test panel and have the conversation you expect a real customer to have. Try the easy path, then try to break it: mumble, change your mind, ask for something out of scope, go quiet.
Watch for the things that make an agent feel wrong on a call:
- Does it use the right tool at the right moment?
- Does it recover cleanly when you interrupt or change direction?
- Does it ever make something up?
Iterate on the prompt and tool descriptions until it behaves correctly every time, not just most of the time. Reliability is the bar — one call in ten going sideways is one call in ten too many. Testing is free; running it past yourself a dozen times before launch is the cheapest insurance you have.
If you want this graded automatically, the Tests screen lets you save scripted conversations that an LLM judge scores for you, so you can re-run them after every change.
5. Publish
Editing happens on a draft. Publishing promotes that draft to the live configuration callers will reach.
When you hit publish, the agent is checked first. Anything serious enough to break a call — a missing prompt, a tool pointing nowhere, a secret that was never filled in — is flagged as an error and blocks publishing until you fix it. Softer warnings are flagged as risks; they do not block you, but they are worth a look. The same red dots show up next to each section in the editor as you work, so there are usually no surprises at publish time.
Once it is clean, publish. Your agent is now ready to take calls — it just needs a number.
6. Buy a number
Phone numbers belong to the workspace, not to a single agent, so you buy them once and assign them where you need. Go to your workspace settings → Phone numbers, search for a number, and buy it. Provisioning runs through our carrier and the cost is charged to the workspace.
Then assign that number to your agent. Back on the agent's Phone section you will see which numbers route to it. (The agent's Phone section is read-only on purpose — buying and releasing always happens at the workspace level so numbers never get stranded on an archived agent.)
Try it without a number
Not ready to buy a number? The Share section mints a public demo link
(/a/your-agent) you can open in a browser and talk to the agent right away.
It is rate-limited and time-capped, so it is for demos, not production traffic —
but it is the fastest way to hear your agent live.
7. Receive a call
Call the number. The agent answers with your greeting, follows your prompt, uses your tools, and handles the conversation start to finish.
After the call, two screens show you how it went:
- Transcripts — the full conversation for each call, turn by turn, so you can read exactly what was said and which tools ran.
- Outcomes — labels you define (booked, transferred, resolved, no-answer) that the agent tags each call with, so you can see at a glance how calls are landing.
That is the loop: read the calls that did not go the way you wanted, tighten the prompt or a tool description, publish again. Every real call is a chance to make the next one better.
Where to next
- Tune how the agent sounds and behaves — speaking speed, tone, response length, and filler phrases — under the agent's Conversation section.
- Give the agent facts to draw on by adding a Knowledge base (upload a PDF, paste text, or point at a URL); the agent retrieves the relevant bits with the Search knowledge base tool.
- Keep an eye on spend under Plan & usage — you are billed per minute of audio plus a small charge for resolved calls, and nothing else.