Voice APIs for developers

Voice tech,
made easy to build.

IVR Solutions gives developers simple REST APIs for calls, dialers, agents and logs — clean JSON over HTTPS, with live testing right on this page. Add voice to your product in an afternoon.

Explore the API Run in Postman
66
REST endpoints
10
Capability groups
JSON
over HTTPS
Bearer
Token auth
Click‑to‑Call · POST /api/c2c_post LIVE
# Bridge an agent and a customer in one request
curl -X POST https://api.ivrsolutions.in/api/c2c_post \
  -H "Authorization: Bearer ••••••••" \
  -F "did=+911143104567" \
  -F "ext_no=2101" \
  -F "phone=09876543210"

→ 200 OK
{
  "status": 200,
  "message": "Call connecting. Please wait...",
  "logid": 123456
}
Connected · agent ↔ customer · ~1.2s to ring

Start in minutes.

Authenticate with your token, then pick a starting point. Each call is live and ready to test in the reference below.

POST /api/c2c_post

Make your first call

Bridge an agent and a customer instantly with click-to-call.

Open
POST /api/create_text_dialer

Launch a campaign

Spin up an outbound auto-dialer from a text-to-speech template.

Open
GET /api/call_logs

Fetch call logs

Pull complete call history and reconcile results in JSON.

Open
POST /ivrappv2/buy_did

Buy a DID number

Search availability by region and purchase a virtual number.

Open

Everything voice, by API.

Ten capability groups across 66 endpoints — composable into anything from a “call me” button to an AI-driven outbound campaign.

Click‑to‑Call

Instantly bridge an agent and a customer over GET or POST. Perfect for callbacks and “call me” buttons.

Auto Dialer

Fire outbound calls from text-to-speech templates or pre-built IVR flows, one at a time or in bulk.

Campaigns

Start, stop and add numbers to dialer campaigns on the fly, and track every result.

AI Voice Bots

Stream live call audio to your WebSocket bot via the WSS Telephony Bridge — real-time speech-to-text, system prompts, DTMF and in-call transfers.

Text Templates

Create, list and check the status of text-to-speech templates for your dialers.

Agents

Add, edit and deactivate agents and extensions, set expiry and assign DID numbers.

Call Logs

Pull complete history across click-to-call, dialer and inbound. Filter, check status, add notes.

DID Numbers

List, search and provision virtual numbers, and manage contacts and call variables.

Webhooks

Register webhook URLs to receive real-time call events — rings, answers, hangups and DTMF.

Built for real workflows.

A few endpoints compose into complete voice journeys. Here’s how teams wire them together.

E-commerce

COD order confirmation

  1. Send a voice call with /api/dial_by_text — “Press 1 to confirm, 2 to cancel.”
  2. Capture the customer’s keypress (DTMF) inside your call flow.
  3. Update the order or route to an agent based on the input.
  4. Reconcile every result later via /api/dialer_logs.
Conversion

Instant “call me” callback

  1. Visitor taps a button; your backend calls /api/c2c_post.
  2. The platform rings your agent, then dials the customer.
  3. Both legs bridge — a live conversation in seconds.
  4. Track outcome with /api/get_call_status using the logid.
Growth

Outbound campaign blast

  1. Create the message with /api/create_text_dialer.
  2. Load your contacts via /api/add_to_ivrdialerbulk.
  3. Start (or pause) it with /api/change_dialer_status.
  4. Monitor delivery and responses in /api/dialer_logs.
AI / Realtime

AI voice bot on a live call

  1. Start the call with /api/dial_by_aivoicebot, pointing wss_url at your bot.
  2. Your bot receives start and media audio events over the WebSocket.
  3. Reply with response.audio.delta to speak; handle dtmf keypresses.
  4. Transfer to a human with session.transfer or end with session.hangup.
API Reference

Every endpoint, live.

Pick a call below, tap Try it to run it for real, and copy ready-made code in cURL, JavaScript, Python or PHP. Generated from the OpenAPI spec, so it always matches the live API.

Need a token? Sign in to IVR Solutions, then open Settings → API token — or Integrations → API documentation — and copy your bearer key into Authorize below.
Loading API reference…