Calls, built into your product.
Place and receive calls, read messages aloud in more than 100 languages, build phone menus, record, mask numbers and stream audio to your own services, all through one API.
- countries covered
- 195
- text-to-speech languages
- 100+
- calls from the browser or app
- WebRTC
- call events on your webhook
- Live
Every building block of a phone call.
Start with a voice message and grow into full call flows, without switching providers.
- 01
Outbound and inbound calls
Call any phone, receive calls on local numbers and decide in code what happens next.
- 02
Text-to-speech and voice messages
Turn text into natural speech in more than 100 languages, or play your own recordings, to one person or thousands.
- 03
IVR and call routing
Build menus that collect keypad input and send callers to the right team, queue or agent.
- 04
Number masking
Connect two people through a virtual number so neither sees the other's, as couriers and marketplaces need.
- 05
Recording, conferencing, AMD
Record calls, bring several people into one conversation and detect answering machines before they cost you.
- 06
Media streaming
Stream call audio over WebSocket to your own speech recognition, analytics or AI agent.
Voice, where text is not enough.
For the moments that need a ring, a voice or a live person.
- 2FA
Voice codes
Read one-time codes aloud for landlines and for users who cannot receive texts.
- Alerts
Urgent alerts
Call people when a message could be missed: outages, fraud, emergencies.
- IVR
Appointment reminders
Remind people by phone and let them confirm or cancel with a keypress.
- Masking
Private connections
Let couriers, drivers and customers call each other without sharing their numbers.
- Inbound
Support lines
Route inbound calls, record them and plug in your own voice agents.
A call is just another resource.
Create a call with a POST, then follow it through ringing, answered and finished on your webhook, and act on each state.
- Calls as resources
- Create, update and hang up calls with predictable REST endpoints.
- Event-driven control
- Each state change reaches your app, so it can play audio, collect input or transfer.
- From simple to custom
- Send a one-shot voice message, or build complete call scenarios on the Calls API.
curl -X POST "$PULSR_API_URL/calls/1/calls" \ -H "Authorization: App $PULSR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "endpoint": { "type": "PHONE", "phoneNumber": "33639985678" }, "from": "33199004242", "callsConfigurationId": "support-line", "recording": { "recordingType": "AUDIO" } }'Call events
Illustrative example
- CALL_RINGING
- CALL_ESTABLISHED
- CALL_FINISHED
Global reach, European roots.
Your messages, calls and their data are processed and stored on infrastructure hosted and operated in the European Union, in line with GDPR.
- 100% EU-hosted
- GDPR compliant
Questions, answered.
Can I get local phone numbers?
Yes. Numbers are available in many countries, for inbound calls and as caller IDs for outbound calls. Availability and paperwork vary by country.
Which languages does text-to-speech support?
More than 100 languages and accents, with a choice of voices for each.
Can I connect my existing phone system?
Yes, through SIP trunking, so your PBX or contact centre can place and receive calls over Pulsr.
How are calls priced?
Per minute, based on the destination and the type of number. Talk to us for a quote.
Are calls recorded by default?
No. Recording is off unless you turn it on for a call, and recordings are handled in line with GDPR.
Works with the rest of Pulsr.
One account, one key and one webhook format, whichever channel you add next.
Put a voice in your product.
Tell us about your call flows and we will help you place your first call.