Back to Blog
EngineeringFebruary 19, 2026Updated October 2, 20268 min read

Voice AI Infrastructure: Phone Numbers for AI Voice Agents

Voice AI needs phone numbers as its transport layer. See how AgentCall handles provisioning, recording, status webhooks, and carrier abstraction.

The Voice AI Stack Has a Gap

Voice AI is exploding. Platforms like Retell AI, Bland AI, Synthflow, and NLPearl let you build conversational AI agents that sound human. Custom solutions using OpenAI's Realtime API, ElevenLabs, or Deepgram give you full control over the voice pipeline. But they all share the same gap: they need phone numbers.

A voice AI agent without a phone number is like a website without a domain. The AI model handles the conversation. The phone number handles the connection. Someone needs to provision the number, manage the carrier, route the call, record it, and deliver status events. That's infrastructure, and it's what AgentCall provides. AgentCall can also run the conversation itself with a managed AI voice, so you choose how much of the stack to own.

What Voice AI Platforms Need

Whether you're using Retell AI, Bland AI, or building your own voice agent, the requirements are the same:

  • Phone number provisioning: Each voice agent needs a callable number. Local numbers for a regional presence with a customer-recognizable area code.
  • Outbound calling: Initiate calls programmatically with a single API request. Schedule callbacks, trigger follow-ups, or connect agents to customers.
  • Inbound routing: Route incoming calls to the right agent based on the number dialed. No shared IVR: each agent gets its own number.
  • Call recording: Opt-in recording for insurance, healthcare, legal, and quality assurance. Recording laws vary by state and country, so get consent where it is required. Recording events are delivered by webhook.
  • Status webhooks: Real-time events for call initiated, ringing, answered, completed, and failed. Your orchestrator needs to know what's happening.
  • Carrier abstraction: AgentCall handles the underlying carrier complexity. Consistent status codes, webhook formats, and pricing regardless of number type.

AgentCall as the Voice Transport Layer

AgentCall sits between your software and the phone network. It handles the carrier complexity so your agent focuses on the conversation. For outbound calls you can use AgentCall's own AI voice, or place a plain call and track its status from your orchestrator.

Initiate an Outbound Call

import AgentCall from 'agentcall';

const client = new AgentCall('ac_live_...');

// Provision a number (or use an existing one)
const number = await client.numbers.provision({ country: 'US', type: 'local' });

// Initiate a call with recording enabled
const call = await client.calls.initiate({
  from: number.number,    // Your provisioned number
  to: '+14155551234',     // Customer's number
  record: true,           // Enable call recording (Pro only)
  webhookUrl: 'https://my-voice-agent.com/call-events',
});

console.log(call.id);     // call_xyz789
console.log(call.status); // "initiated"

Handle Call Events

// Subscribe a webhook to: call.inbound, call.status, call.recording
// Your endpoint receives { event, timestamp, data } with an
// X-AgentCall-Signature header.

// Inbound call arriving on one of your numbers
// { "event": "call.inbound", "data": { "callId": "call_xyz789", "from": "+14155551234", "status": "ringing" } }

// Status changes (ringing, in-progress, completed, failed)
// {
//   "event": "call.status",
//   "data": { "callId": "call_xyz789", "status": "completed", "duration": 147 }
// }

// Recording ready (only when record: true). Fetch it with
// GET /v1/calls/call_xyz789/recording

Call Recording for Compliance

Call recording is a Pro-only feature at $0.01 per minute. When enabled, AgentCall records the call and makes the recording available through the API and a call.recording webhook event once the call completes.

This matters for industries with regulatory requirements:

  • Insurance: Record customer calls for claims documentation and compliance audits.
  • Healthcare: Record appointment scheduling and follow-up calls (with patient consent).
  • Legal: Document client intake calls and consultation summaries.
  • Sales: Record sales calls for training, quality assurance, and dispute resolution.

How AgentCall Compares to DIY Carrier Integration

You could integrate directly with a carrier API. Many voice AI platforms do. But there are tradeoffs:

  • Vendor lock-in: Direct carrier integration means managing their pricing, webhook formats, and status codes yourself. AgentCall abstracts all of that behind a single, consistent API.
  • Agent isolation: Traditional phone APIs don't have a concept of “agents.” You manage number-to-agent mapping yourself. AgentCall enforces isolation at every layer.
  • Built-in billing: AgentCall meters usage per-agent. If you're building a platform where customers have their own voice agents, per-tenant billing is handled for you.

Architecture Example: Voice AI + AgentCall

// Simplified architecture:
//
// Customer calls +15551234567 (AgentCall number)
//        │
//        ▼
// AgentCall receives the call
// → Sends "call.inbound" webhook to your server
//        │
//        ▼
// Number has inbound AI configured?
//   yes → AgentCall's managed AI voice answers with your system prompt
//   no  → your server tracks the call and uses the API to act on it
//        │
//        ▼
// Call ends → AgentCall sends "call.status" (and "call.recording")
// → Transcript and summary available for AI calls
// → Duration and billing automatically tracked
//
// Note: AgentCall does not hand live call audio to an external
// voice platform. To use Vapi, Retell, or similar for the conversation,
// attach a number inside that platform and use AgentCall for SMS,
// OTP, and webhooks alongside it.

Pricing for Voice

Outbound voice minutes on AgentCall cost $0.035/minute for standard calls. AI voice is $0.40/minute managed, $0.10/minute with your own OpenAI key (BYOK, plus your provider's charges), or $0.59/minute with Premium Voice. Call recording adds $0.01/minute. A 5-minute recorded standard call costs $0.225 total. Numbers are $2/month each on Pro, plus the $19.99/month base.

New accounts receive a one-time 72-hour live trial with one US/Canada local number, 300 managed inbound AI seconds (five minutes) total, and five SMS send attempts to verified destinations. Card verification is required before number allocation; the clock starts when allocation succeeds. There is no monthly reset or automatic paid subscription. Live OTP extraction and outbound calls require Pro. That is enough to test inbound AI voice on a real number before you upgrade.

Related Reading


FAQ

Does AgentCall handle the AI conversation itself?

It can, but it does not have to. AgentCall is the phone infrastructure layer: it provisions numbers, routes calls, handles recording, and delivers events. It also offers a managed AI voice for inbound and outbound calls, so you can skip a separate voice platform. If you want your own model to drive the conversation, use webhooks and the API, or relay mode for texts, and keep the brain on your side.

Can I use AgentCall with Retell AI or Bland AI?

You can use them side by side. Retell, Bland, and similar platforms attach their own voice numbers, and AgentCall does not hand live call audio to them. Use AgentCall for the numbers that need SMS, OTP extraction, caller memory, or per-agent isolation, and for its own AI voice. See phone numbers for Vapi, Retell, and ElevenLabs agents for working patterns.

Does AgentCall support multiple carriers?

Yes. AgentCall works with multiple licensed carriers behind the scenes. The API normalizes all carrier-specific differences so your code stays the same regardless of which number you use.

Ready to get started?

Give your AI agents their own phone numbers in minutes.

Start Building