Conference
Overview
The conference action places the caller into a named conference room. Use it for support rooms, team huddles, moderated calls, and multi-party workflows. Place it in the actions array returned by your answer_url. MiniVoice executes actions in order, so put conference before the action that depends on its result and after any prompt or setup the caller should experience first.
Business Use Case
Use conference for a shared room such as a team bridge, appointment consultation, or support escalation room. Multiple callers can be directed to the same room name.
JSON Example
{
"actions": [
{
"conference": {
"room": "support-room-1001"
}
}
]
}
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| type | string | Yes | Must be conference when using typed action format. |
| room | string | Yes | Conference room name. Use letters, digits, dot, dash, or underscore. |
| mute | boolean | No | Whether the participant joins muted. |
| end_on_exit | boolean | No | Whether the room should end when this participant exits. |
Execution Flow
- MiniVoice validates the room name and options.
- It moves the caller into the named room.
- Other participants can join the same room using the same room value.
- Actions after conference are not run while the caller is in the room.
Webhook Behaviour
No conference-specific webhook is sent. Use call lifecycle events to observe when participants leave.
Success Example
A successful answer_url response includes the action in a valid actions array:
{
"actions": [
{
"conference": {
"room": "support-room-1001"
}
}
]
}
Your application should store the MiniVoice call ID from webhooks or API responses so you can correlate the action with the call.
Failure Behaviour
Invalid room names are rejected. Choose stable room names generated by your application, such as account ID plus meeting ID.
Expected Result
The caller joins the named room. Other callers sent to the same room can speak with them while normal call lifecycle webhooks continue to track each call.
Testing
Return the same conference action for two test callers. Confirm both callers hear each other in the room. During testing, log every webhook payload and compare the call ID, action timing, and final call status with the behavior you expected.
Integration guidance
Place this action in a short answer_url response first, then combine it with other actions after you have confirmed the single-action behaviour. Always log the answer_url response your application returned for the call. If the caller experience differs from what you expected, compare the logged response with the webhook timeline for that call ID.
When this action is part of a larger IVR, keep each step explicit. For example, play a prompt before collecting input, redirect after collecting input, and transfer only after your application has selected the final destination. This makes the flow easier to test and easier to change later.
For production integrations, build a fallback path. A caller may hang up, enter no digits, reach a busy destination, or disconnect before the flow completes. Your webhook handler should update the call record with the last known step so support teams can understand what happened.
Copy/Paste Examples
Real Request
Return this from your answer_url:
{
"actions": [
{
"conference": {
"room": "support-room-1001"
}
}
]
}
Real Response
A valid answer_url response is the JSON action payload itself. MiniVoice accepts the response when it contains an actions array:
{
"actions": [
{
"conference": {
"room": "support-room-1001"
}
}
]
}
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
Use conference for a shared room such as a team bridge, appointment consultation, or support escalation room. Multiple callers can be directed to the same room name.
Common Failure Case
{
"error": {
"code": "answer_url_error",
"message": "invalid action payload"
}
}
Invalid fields or malformed JSON cause MiniVoice to reject the answer_url payload. Log the exact response your server returned while testing.