API reference
Build voice agents that make and answer phone calls.
The HTTP API behind Botnoi Voice, plus a WebSocket for live preview calls: 36 endpoints across 9 groups.
New here?Getting started — token to first call in 6 stepsAccount
Who you are signed in as, and your setup ID.
1 endpoint
Agents
Create, read, update, and delete voice agents.
4 endpoints
Catalog
Available speech-to-text and text-to-speech providers.
2 endpoints
Telephony setup
Connect your trunk, get phone numbers, and choose which agent answers them.
- PUTCreate your Telephony setup
- GETGet trunk status
- GETGet your setup overview
- POSTAssign a number
- PUTBind a number to an agent
- POSTRefresh the transfer allowlist
- POSTUpdate your Telephony setup
- POSTResync numbers
- POSTPause telephony
- POSTResume telephony
- DELETEDetach a number
- DELETEDelete telephony setup
12 endpoints
Outbound
Place outbound calls through your trunk and follow their status.
2 endpoints
Conversation Logs
List, read, download, and export conversation transcripts and recordings.
- GETList conversation files
- GETRead a conversation transcript
- GETGet a recording link
- POSTExport conversations as CSV
- POSTExport conversations as PDF
5 endpoints
Dashboard
Aggregated call metrics.
1 endpoint
Tools
Custom tools an agent can call during a conversation.
4 endpoints
Preview Call
Talk to an agent live from a browser over one WebSocket, and read back the logs those preview calls leave. A phone call's transcript and recording are in Conversation Logs.
- WSSRealtime
- POSTCreate a call token
- POSTSave a preview call log
- GETList preview call logs
- GETGet a preview call log
5 endpoints
Your access token works like a password: it never expires and reaches your whole account. Keep it out of source control and client-side code.
Worth knowing before you start
- Two paths need their trailing slash.
/logs/list_file/and/logs/read_log/answer307without it, and the redirect may point at an absolute host — which breaks calls made from a browser. - Not every response is JSON. Recording and export endpoints return audio, CSV or PDF. Read
Content-Dispositionfor the file name rather than parsing the body. - Prefer the upsert when writing an agent. Create or update an agent creates the agent when it does not exist yet and updates it when it does, in one call.