Quick Start
1. Send a voice OTP
curl -X POST https://voice-api.edesy.in/v1/voice-otp/send \
-H "Authorization: Bearer sk_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"phone_number": "9876543210",
"otp_code": "482913",
"callback_url": "https://your-app.com/webhooks/voice-otp"
}'
Leave out otp_code and we generate a 6-digit code for you. The response returns it:
{
"data": {
"id": "5b1c2d3e-0000-4000-8000-000000000000",
"call_sid": "a1b2c3",
"phone_number": "9876543210",
"otp_code": "482913",
"status": "initiated",
"created_at": "2026-09-26T10:15:12Z"
},
"meta": { "timestamp": "2026-09-26T10:15:12Z" }
}
2. Check the code in your app
The user hears "Your verification code is 4 8 2 9 1 3. I repeat, 4 8 2 9 1 3." and types it into your app. Your backend compares it with the code you sent. There is no verify endpoint yet (available on request), so store the code (or a hash of it) with an expiry, typically 5-10 minutes.
3. Get the result
When the call ends we POST the outcome to your callback_url - see Webhooks. You can also poll Get a Call.
Code in other languages
Node.js, Python, PHP, Java, React, Flutter, Android and iOS examples are on the integration pages.