Numbers
Get a number for your agent, or bring your own over SIP.
Phone and telephony · VoxVane Phone Preview
Phone numbers, SIP trunking, transfers and voicemail, connected straight to Voice Agents.
Example figures until we publish measured benchmarks.
Features
Get a number for your agent, or bring your own over SIP.
Warm or cold transfer to a person when the caller asks.
Fall back to a message when nobody can pick up.
Every call has a transcript, outcome and itemised cost.
Example request
Every example uses plain HTTPS. Set VOXVANE_API_KEY in your environment first.
# 1. Create an agent
curl https://api.voxvane.com/v1/agents \
-H "Authorization: Bearer $VOXVANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Front desk",
"voice": "aria",
"instructions": "Answer questions about opening hours and take a message.",
"disclosure": "You are speaking with an AI assistant.",
"turn": {"profile": "balanced"}
}'
# 2. Start a live session (returns a WebSocket URL)
curl -X POST https://api.voxvane.com/v1/agents/agt_123/sessions \
-H "Authorization: Bearer $VOXVANE_API_KEY"import os
import requests
API = "https://api.voxvane.com/v1"
auth = {"Authorization": f"Bearer {os.environ['VOXVANE_API_KEY']}"}
agent = requests.post(f"{API}/agents", headers=auth, timeout=30, json={
"name": "Front desk",
"voice": "aria",
"instructions": "Answer questions about opening hours and take a message.",
"disclosure": "You are speaking with an AI assistant.",
"turn": {"profile": "balanced"},
}).json()
session = requests.post(f"{API}/agents/{agent['id']}/sessions", headers=auth, timeout=30).json()
print("Stream audio to", session["websocket_url"])const API = "https://api.voxvane.com/v1";
const headers = {
Authorization: `Bearer ${process.env.VOXVANE_API_KEY}`,
"Content-Type": "application/json",
};
const agent = await (await fetch(`${API}/agents`, {
method: "POST",
headers,
body: JSON.stringify({
name: "Front desk",
voice: "aria",
instructions: "Answer questions about opening hours and take a message.",
disclosure: "You are speaking with an AI assistant.",
turn: { profile: "balanced" },
}),
})).json();
const session = await (await fetch(`${API}/agents/${agent.id}/sessions`, { method: "POST", headers })).json();
console.log("Stream audio to", session.websocket_url);The API is in private preview. Read the quickstart, then ask for a key.