Give Dairo a number and plain-English instructions, and an AI agent dials, has the conversation, and reports back with a transcript. Your numbers answer incoming calls too.
Your agent can pick up the phone. Tell Dairo who to call and what to accomplish, and a natural-sounding AI agent dials the number, has the conversation, and hands you back a transcript, a written summary, and the exact cost.
The whole product is the instructions field. There is no dialog tree to build, no audio to stream, and no telephony to configure — you write what the call should achieve, the way you would brief a colleague, and the agent handles the conversation:
Phone uses three scopes: phone:read for numbers, calls, transcripts, and recordings; phone:write for buying, configuring, and releasing numbers; and phone:call for placing or hanging up a call. Grant all three to a key that manages numbers and runs calls. Give an agent that should only read outcomes phone:read alone — its key can never make anyone's phone ring.
A call is a job, not a live session
Placing a call is asynchronous. The POST returns at once with a call id and status: "queued" — the phone starts ringing after your request has already come back. From there you poll the call; there is no media session to manage and no socket to hold open:
When the call ends, its duration, cost, and a one-paragraph summary are stamped onto the call object, and the turn-by-turn transcript is ready to fetch. Every call runs on Dairo Live (model: "dairo-live"), and the agent hangs up by itself once the person says goodbye.
It works the other way round too: anyone who calls one of your Dairo numbers is answered by that number's inbound agent, and the call — summary, the caller's notes, and transcript — lands in your inbox as a message.
A call moves through these statuses:
| Status | Meaning |
|---|---|
queued | Accepted and waiting to be dialed — the status your request returns. |
initiating | The call is being set up. |
ringing | The destination phone is ringing. |
in_progress | The call is live; the agent is talking. |
completed | The conversation finished normally. Terminal. |
failed | The call could not be completed — see error. Terminal. |
no_answer | Nobody picked up. Terminal. |
busy | The line was busy. Terminal. |
canceled | You ended it with a hangup request. Terminal. |
Once a call reaches a terminal status it never changes again — completed, failed, no_answer, busy, and canceled are the five ways a call ends.
What a call costs
A call costs the Dairo Live rate of $0.09 per minute plus the telephony rate of the destination, billed per started minute — a 61-second call bills as two minutes. A call to a German mobile, for example, is 9¢ + 4.62¢ = 13.62¢ per minute. When the call reaches a terminal status, the exact price lands on it as costUsd, so you read the cost from the call object with no rate table to reconcile. A call that never connects — nobody answers, the line is busy — costs nothing.
maxDurationSeconds (default 600, 30–780) is your cost ceiling: Dairo ends the call when it hits the cap, so a chatty callee can never run up an open-ended bill. Owning a number also carries a monthly fee, shown as monthlyCostUsd when you search for numbers.
When to pick up the phone
A call is interruptive — it demands attention right now. That is its strength and the reason to use it sparingly:
- Call when immediacy matters and you need a human acknowledgment: an on-call escalation, a delivery about to fail, a time-critical confirmation, reaching someone who doesn't watch a screen.
- Email or a chat channel like Telegram when you need a record, an attachment, or the recipient should respond on their own schedule.
You are putting an AI on a live line with real people, and that comes with duties: disclosure, consent, recording rules, caller-id rules. The Compliance page covers them — read it before your first production call.
Next steps
Making calls
Place a call, poll it, read the transcript and summary, hang up early.
Inbound calls
Let your number answer, take notes, and drop every call into your inbox.
Phone numbers
Search, buy, and configure the numbers your calls come from.
Voices
Choose the voice and language your calls speak.
Compliance
AI disclosure, consent, recording, and caller-id rules.