Skip to content

Voice & Calls

Receive and place phone (PSTN) calls on your numbers, route inbound calls to a phone, a SIP endpoint or an AI voice agent, and read every call from one history.

Receive and place phone (PSTN) calls on the numbers you buy. Calling is on as soon as a number is provisioned. Inbound calls route to forwardTo on the number (a phone, a SIP endpoint or an AI voice agent); outbound calls dial from the number with POST /v1/voice/calls or from a browser softphone. Every call, inbound and outbound, is listed by GET /v1/calls with optional recording and transcription.

This is standalone phone calling, available in every country Zernio sells numbers in. WhatsApp Business Calling is a different feature: voice calls placed inside a WhatsApp chat, which Meta blocks for outbound in the US, Canada, Egypt, Vietnam and Nigeria. Both channels appear in the same call history.

Quick reference

PropertyValue
DirectionsInbound and outbound
Inbound destinationsPhone (tel:), SIP endpoint or hosted agent (sip:), or your own media server (wss:)
OutboundPOST /v1/voice/calls, or the in-browser softphone (WebRTC)
AI agentsSIP (Vapi, Retell, ElevenLabs) or a WebSocket media server of your own
ExtrasVoicemail, business hours, IVR menu, caller blocklist
RecordingOff by default, +$0.004 per minute
TranscriptionOff by default, +$0.03 per minute
HistoryOne feed across every number and both channels

Before you start

Voice requires usage-based billing with a payment method on file. Calls are metered per minute at the rate for the route.

What this covers

  • Setup. Set where inbound calls go (forwardTo), plus voicemail, business hours, an IVR menu of up to 12 keys, recording, transcription, and a caller blocklist, via POST and PATCH on /v1/phone-numbers/{id}/voice.
  • AI voice agents. Bridge inbound or outbound calls to a Vapi, Retell or ElevenLabs agent over sip:, or to a media server you run yourself over wss:.
  • Outbound calls. Place, transfer and end calls with POST /v1/voice/calls and its /end and /transfer actions; preview cost before dialing.
  • Browser calling. Dial from a web page with a WebRTC softphone session minted by the API, no separate telephony SDK needed.
  • Call history and recordings. GET /v1/calls unifies phone and WhatsApp calls with per-call cost, transcript and recording URL when recording was on.
  • Phone Numbers: buy or port in the number this runs on.
  • WhatsApp: WhatsApp Business Calling, a separate calling channel on the same numbers.
  • SMS: the other per-number feature phone numbers carry.
  • Reference: Webhooks: call.received, call.ended and call.failed.