Voice v1 API
Voice v1 APIs work without any user (call centre agent) context — they don't need a user to be added to the Exotel dashboard. Use these APIs for simple call automation, number-to-number connection, and IVR flows.
Base URL
https://<api_key>:<api_token>@<subdomain>/v1/Accounts/<account_sid>/
| Data Center | Subdomain |
|---|---|
| Singapore | api.exotel.com |
| Mumbai | api.in.exotel.com |
Authentication
HTTP Basic Authentication using your API key and token from the Exotel Dashboard → Settings → API Settings.
curl 'https://<api_key>:<api_token>@api.exotel.com/v1/Accounts/<your_sid>/Calls.json'
Rate Limits
Voice APIs are limited to 200 calls per minute. Exceeding this returns HTTP 429.
API Reference
| API | Method | Endpoint | Description |
|---|---|---|---|
| Connect Two Numbers | POST | /v1/Accounts/{sid}/Calls/connect | Connect two phone numbers |
| Connect to Flow | POST | /v1/Accounts/{sid}/Calls/connect | Connect a number to an IVR flow |
| Outgoing Call to Flow | POST | /v1/Accounts/{sid}/Calls/connect | Outgoing call connected to a call flow |
| Call Details | GET | /v1/Accounts/{sid}/Calls/{CallSid} | Get call details (single & bulk) |
| Number Metadata | GET | /v1/Accounts/{sid}/Numbers/{number} | Get telecom info for Indian numbers |
| Incoming Call | — | — | Configure incoming call flows with applets |
| StatusCallback | — | — | Webhook reference for call events |
Applets (Call Flow Building Blocks)
Applets are modular components used to build call flows for incoming calls:
| Applet | Purpose |
|---|---|
| Greeting | Play a recorded voice message or text-to-speech |
| Connect | Route calls to phone numbers |
| Passthru | Dynamic routing via your application URL |
| Transfer | Transfer between call flows |
| IVR Menu | Interactive voice menu with DTMF input |
| Voicemail | Allow callers to leave messages |
| Hangup | Terminate the call |
| SMS | Send SMS during a call flow |
| Send email notifications |
Call Status Values
| Status | Description |
|---|---|
queued | Waiting to be sent to operator |
in-progress | Call is active |
completed | Ended normally |
failed | Could not be completed |
busy | Busy signal received |
no-answer | Not answered within timeout |
HTTP Status Codes
| Code | Meaning |
|---|---|
200 | Success |
400 | Bad Request — Invalid parameters |
401 | Unauthorized |
429 | Rate limit exceeded |
Related APIs
- Voice v2 (CCM) — Agent-context calls via Contact Center Management
- Voice v3 (Beta) — Enhanced call details
- ExoPhones — Manage virtual phone numbers