Quickstart
Make your first voice call in under 5 minutes.
Quickstart
Get up and running with TryVox in under 5 minutes. This guide walks you through making your first AI-powered voice call.
Prerequisites
- A TryVox account (sign up at tryvox.io)
- curl or any HTTP client
- A publicly reachable URL that can serve a VoxML response (or use a tunnel like ngrok)
Step 1: Get Your API Credentials
- Log in to the TryVox Dashboard
- Navigate to Settings → API Keys
- Click Create API Key
- Copy both values:
- Auth ID —
TJfollowed by 8 hex chars (e.g.,TJab12cd34) - Auth Token — 32 hex chars (e.g.,
1f2e3d4c5b6a7988a1b2c3d4e5f60718)
- Auth ID —
The Auth Token is shown once. Store it somewhere safe — if you lose it, you'll have to rotate.
All requests authenticate with HTTP Basic auth: Auth ID as the username, Auth Token as the password. With curl that's the -u flag.
export TRYVOX_AUTH_ID="TJab12cd34"
export TRYVOX_AUTH_TOKEN="1f2e3d4c5b6a7988a1b2c3d4e5f60718"Step 2: Provision a Phone Number
Before making calls, you need a phone number. Purchase one from inventory:
curl -X POST https://api.tryvox.io/v1/account/$TRYVOX_AUTH_ID/numbers/purchase-from-inventory \
-u $TRYVOX_AUTH_ID:$TRYVOX_AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{
"country": "IN",
"type": "local"
}'Response:
{
"data": {
"e164": "+919876543210",
"country": "IN",
"status": "active",
"type": "local",
"capabilities": ["voice", "sms"]
}
}Your number is active and ready to receive inbound calls. To place outbound calls with it, continue to the next step.
Step 3: Verify a Caller ID
Outbound calls require the from number to be a verified caller ID on your account. The number you bought in Step 2 needs to be registered before you can use it as from.
Initiate verification:
curl -X POST https://api.tryvox.io/v1/voice/accounts/$TRYVOX_AUTH_ID/verified-caller-ids \
-u $TRYVOX_AUTH_ID:$TRYVOX_AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{
"phone_number": "+919876543210",
"channel": "call"
}'TryVox will place a call to that number reading out a 6-digit OTP. Capture the OTP and submit it:
curl -X POST https://api.tryvox.io/v1/voice/accounts/$TRYVOX_AUTH_ID/verified-caller-ids/+919876543210/verify \
-u $TRYVOX_AUTH_ID:$TRYVOX_AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{"otp": "123456"}'Once verified, the number is usable as from on outbound calls. See the Verified Caller IDs section for the full lifecycle.
Step 4: Make an Outbound Call
curl -X POST https://api.tryvox.io/v1/voice/accounts/$TRYVOX_AUTH_ID/calls \
-u $TRYVOX_AUTH_ID:$TRYVOX_AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{
"from": "+919876543210",
"to": "+14155551234",
"answer_url": "https://your-app.com/answer"
}'Parameters:
from— your verified caller ID (from Step 3)to— the destination phone number, E.164 formatanswer_url— your webhook URL that returns VoxML when the call is answered
Response:
{
"request_uuid": "550e8400-e29b-41d4-a716-446655440000",
"call_uuid": "c7a34e6f-9d1b-4c8e-a5f2-3b9d7e8c1a4f",
"from": "+919876543210",
"to": "+14155551234",
"direction": "outbound",
"status": "ringing"
}Step 5: Control the Call with VoxML
When the call is answered, TryVox POSTs to your answer_url. Your server should respond with VoxML instructions to control the call:
{
"voxml_version": "1.0",
"instructions": [
{
"verb": "Say",
"text": "Hello! I am your AI assistant.",
"engine": "google",
"language": "en-IN"
},
{
"verb": "Stream",
"url": "wss://your-app.com/ai-agent",
"track": "inbound_track"
}
]
}What this does:
- Say — speaks a TTS greeting using Google's TTS engine
- Stream — opens a WebSocket to your AI agent for real-time bidirectional audio
TryVox executes the instructions in order, streaming the caller's audio to your WebSocket so your LLM agent can respond in real time.
Next Steps
You've made your first call. Here's what to explore next:
- Voice API Reference — full voice API capabilities
- VoxML Guide — every VoxML verb with examples
- Verified Caller IDs — manage caller IDs at scale
- Webhooks — handle call lifecycle events
- Verify API — send OTPs over SMS, voice, WhatsApp, or email
Need Help?
- Check out our example applications
- Join our Discord community
- Email us at support@tryvox.io