Complete messages
Name, callback number, address, reason and urgency, read back to confirm.
Agent template · VoxVane Receptionist Preview
A Voice Agents template for answering a business line: it discloses that it’s an AI, takes a complete message, transfers when a caller asks for a person, and saves everything for your team.
Template in action
A fictional plumbing company running the receptionist template after hours.
Features
Name, callback number, address, reason and urgency, read back to confirm.
Hands the call to your number when the caller asks, and takes a message if nobody answers.
Different greetings and urgency handling outside business hours.
Never invents prices, hours or appointments; unknowns become messages.
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.