What is Voice on Notifique?
It’s the channel to originate and control phone calls using numbers contracted in the workspace. Great for order confirmation, simple IVR (press 1, 2…), dialers, and inbound handling with events on your URL. You can:- Originate outbound calls with TTS, audio, or DTMF collection
- Control the active session in real time (
speak,gather,transfer,hangup, etc.) - Record call segments and download the file later
- Receive inbound calls with forwarding, TTS, or webhook control
- Track each step via API or webhooks
Unlike WhatsApp, voice does not use a channel instance. You need a contracted, active number in the workspace, balance or credits (per-minute billing), and an API Key with permission to dial.
When to use it?
Without a contracted, active number, the channel cannot dial.
How it works in practice
- Contract a number and keep it active — calls go out from that line (Phone Numbers)
- Choose who calls and who receives (
fromandtoin the API) - When answered, define what happens: spoken text (TTS), recorded audio, or keypad menu
- The platform dials, connects, and updates status; webhooks notify each step
- Control the call in progress via API (speak more, transfer, hang up)
- When someone calls you, configure forwarding, automatic message, or webhook control on the number
Each API Key belongs to one workspace. On v1 do not send
x-workspace-id. Use clientState to correlate with your CRM or queue.Call lifecycle
After originate, the call moves throughQUEUED, INITIATED, RINGING, ANSWERED, COMPLETED, or FAILED. Webhooks like voice.call.answered and voice.call.completed keep your backend in sync without polling.
What you can do
- Originate to 1 to 500 destinations per call (
toas array) - List and query history (
voice:read) - Run actions on active calls (
voice:control) - Download recordings when
voice.call.recording.readyarrives - Schedule future dials (dashboard and same plan rules as SMS/Push)
- Translate the spoken script (
speakTextandgatherprompt) per contact language - Dedicated webhook per call (
options.webhook) in addition to workspace-wide webhooks - Detect voicemail with
amdMode(disabled,detect,premium) - Look up pricing per destination country via Pricing lookup or dashboard
- React to number lifecycle (
phone_number.activated,phone_number.suspended, etc.)
Extra options (like other channels)
Aligned with SMS, Push, and Email:- Translate spoken text — the system speaks in Portuguese, English, or another language based on the contact in CRM (Localization and i18n)
- Schedule a dial — call later, at a future date and time (paid plan, same as SMS)
- Webhook for this call only — events for a specific call go to an extra URL
- Metadata — your campaign or CRM tags stored with the call
Automatic translation applies to spoken text and keypad menus. Audio played from URL and published IVR use the content you sent — no automatic translation on that path.
After your first call
- Track via webhooks (
voice.call.*andphone_number.*) - Build IVR with
gather+voice.call.dtmf/voice.call.gather.ended - Test inbound with
WEBHOOK_CONTROLon the number
Next steps
- Quick Start: originate, query, and control
- Pricing, options, and modes: per-country rates,
record,amdMode, WebRTC - IVR and flows: IVR published via API
- API Key scopes: permissions
- Webhook events:
voice.call.*andphone_number.*payloads - Phone Numbers: contract and configure line

