Skip to main content

Outbound Routing

Outbound calls use your active outbound trunk. If no active trunk is available, call creation returns no_active_trunk. Keep at least one active trunk configured before sending production traffic.

Integration checklist

Use trunks when you want MiniVoice to send or receive traffic through your own carrier path. Store the trunk ID with any application or routing rule that depends on it, and test both an accepted call and a failed destination before moving real traffic.

For outbound traffic, verify caller ID, destination formatting, and account limits. For inbound traffic, confirm that calls entering through the trunk reach the same webhook and action handling logic as calls from a MiniVoice DID. Keep failures visible in your monitoring so carrier or credential changes are noticed quickly.

Copy/Paste Examples​

Real Request​

curl -sS https://api.minivoice.eu/v1/trunks \
-H 'Authorization: Bearer $MINIVOICE_API_KEY'

Real Response​

{
"data": [
{
"id": "trunk_123",
"customer_id": "cust_123",
"name": "primary",
"direction": "outbound",
"gateway_name": "primary",
"proxy": "sip.example.net",
"is_active": true,
"registration_status": "REGED"
}
],
"count": 1
}

Real Webhook Example​

{
"event": "call.completed",
"created_at": "2026-05-29T12:10:00Z",
"call": {
"id": "call_123",
"customer_id": "cust_123",
"application_id": "app_123",
"status": "completed",
"direction": "inbound",
"from": "+15551230001",
"to": "+15551230002"
},
"variables": {},
"data": {}
}

Common Use Case​

Validate BYOC trunk readiness before routing sales calls, support calls, or outbound appointment reminders through your carrier.

Common Failure Case​

{
"error": {
"code": "no_active_trunk",
"message": "no active outbound trunk available"
}
}

Use the error code for branching and log the full response body while testing.