Trigger an outbound call via API (for IT teams)
POST a call from your stack — webhook + SDK + curl examples.
01
Generate an API key
- At /api-docs → Generate API key.
- Copy the token (looks like
vrx_live_…). Treat as a secret.
02
POST /api/v1/calls
- Endpoint: https://app.voxreach.com.au/api/v1/calls
- Auth:
Authorization: Bearer - Required body: phone, assistant_id, phone_number_id, lead {full_name, email}.
- Returns: 200 + {call_id, status}.
03
curl example
- curl -X POST https://app.voxreach.com.au/api/v1/calls \
- -H 'Authorization: Bearer vrx_live_…' \
- -H 'Content-Type: application/json' \
- -d '{"phone":"+61434847666","assistant_id":"
","phone_number_id":" ","lead":{"full_name":"Sarah","email":"sarah@example.com"}}'
04
Node.js example
- const r = await fetch('https://app.voxreach.com.au/api/v1/calls', {
- method: 'POST',
- headers: { 'Authorization': 'Bearer ' + process.env.VOXREACH_KEY, 'Content-Type': 'application/json' },
- body: JSON.stringify({ phone, assistant_id, phone_number_id, lead })
- });
- const { call_id } = await r.json();
05
Listen for the result via webhook
- Subscribe to call.ended event at /integrations/webhooks.
- Webhook delivers transcript, recording URL, outcome, duration, cost — full call record.
- See: /help/webhook-subscriptions for signing details.
Related articles
Tenant API access
Per-tenant API key. Push leads, fetch transcripts, query usage. Rate-limited 120 req/min.
Webhook subscriptions
Subscribe to events: call.ended, call.interested, call.opt_out, sms.received, lead.imported.
Verify webhook signatures (HMAC-SHA256)
Cryptographically verify that an incoming webhook came from VoxReach.
API rate limits + retry behaviour
What our limits are, how you'll know when you hit them, how to back off properly.
Still stuck?
Email hello@voxreach.com.au — we reply within 2 business hours during AEST hours.
Open a ticket