Conferences let you connect multiple participants in a single call. Using the Conference API, you can manage ongoing conferences, control individual members, and record conversations.
Conferences are suited for traditional “meeting” use cases. For advanced contact center or sales dialer scenarios requiring more control, consider Multiparty Calls .
The Conference Object
Name used to identify the conference.
Time in seconds since the conference was initiated.
Number of members currently active in the conference.
Array of member objects in the conference.
Member Attributes
Each member in the members array has the following attributes:
Unique ID of the member within the conference.
true if the member is currently muted.
true if the member cannot hear conference audio.
Source of the call — PSTN number or SIP endpoint.
Conference bridge number — Plivo number or application URL.
Name of the caller (SIP calls only).
Direction of the call — inbound or outbound.
Unique identifier of the call.
Time in seconds since the member joined.
Example Conference Object
{
"conference_name" : "My Conf Room" ,
"conference_run_time" : "590" ,
"conference_member_count" : "1" ,
"members" : [
{
"muted" : false ,
"member_id" : "17" ,
"deaf" : false ,
"from" : "1456789903" ,
"to" : "1677889900" ,
"caller_name" : "John" ,
"direction" : "inbound" ,
"call_uuid" : "acfbf0b5-12e0-4d74-85f7-fce15f8f07ec" ,
"join_time" : "590"
}
]
}
Retrieve a Conference
Get details of a specific conference by name.
GET https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/
Arguments
No arguments required.
cURL
Python
Ruby
Node
PHP
Java
.NET
Go
curl -i --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/
Response
{
"conference_name" : "My Conf Room" ,
"conference_run_time" : "590" ,
"conference_member_count" : "1" ,
"members" : [
{
"muted" : false ,
"member_id" : "17" ,
"deaf" : false ,
"from" : "1456789903" ,
"to" : "1677889900" ,
"caller_name" : "John" ,
"direction" : "inbound" ,
"call_uuid" : "acfbf0b5-12e0-4d74-85f7-fce15f8f07ec" ,
"join_time" : "590"
}
],
"api_id" : "816e903e-58c4-11e1-86da-adf28403fe48"
}
List All Conferences
Retrieve names of all ongoing conferences in your account.
GET https://api.plivo.com/v1/Account/{auth_id}/Conference/
Arguments
No arguments required.
cURL
Python
Ruby
Node
PHP
Java
.NET
Go
curl -i --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/
Response
{
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48" ,
"conferences" : [
"My Conf Room" ,
"Sales Meeting" ,
"Support Call"
]
}
Hang Up a Conference
Terminate a conference and disconnect all members.
DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/
cURL
Python
Ruby
Node
PHP
Java
.NET
Go
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/
Response
{
"message" : "conference hung up" ,
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
Hang Up All Conferences
Terminate all ongoing conferences in your account.
DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/
Response
{
"message" : "all conferences hung up" ,
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
Member Operations
Control individual members within a conference. The member_id parameter can be:
A specific member ID (e.g., 10)
A comma-separated list (e.g., 10,11,12)
The string all to affect all members
Kick a Member
Disconnect a member from the conference.
POST https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Kick/
curl -i --user AUTH_ID:AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{}' \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Kick/
Response
{
"message" : "kicked" ,
"member_id" : "10" ,
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
Mute / Unmute a Member
Mute a member so other participants cannot hear them. POST https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Mute/
curl -i --user AUTH_ID:AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{}' \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Mute/
Response {
"message" : "muted" ,
"member_id" : "10" ,
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
Unmute a previously muted member. DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Mute/
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Mute/
Response {
"message" : "unmuted" ,
"member_id" : "10" ,
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
Deaf / Undeaf a Member
Make a member deaf so they cannot hear conference audio. POST https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Deaf/
curl -i --user AUTH_ID:AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{}' \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Deaf/
Response {
"message" : "deaf" ,
"member_id" : "10" ,
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
Restore hearing to a deaf member. DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Deaf/
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Deaf/
Response {
"message" : "undeaf" ,
"member_id" : "10" ,
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
Play Audio to a Member
Start Playing
Stop Playing
Play an audio file to specific members. POST https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Play/
Parameter Required Description urlYes URL of the .mp3 or .wav file to play.
curl -i --user AUTH_ID:AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{"url":"https://s3.amazonaws.com/plivocloud/music.mp3"}' \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Play/
Response {
"message" : "play queued into conference" ,
"api_id" : "4e44bd4e-f830-11e6-b886-067c5485c240" ,
"member_id" : "10"
}
Stop playing audio to members. DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Play/
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Play/
Speak Text to a Member
Start Speaking
Stop Speaking
Speak text to specific members using text-to-speech. POST https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Speak/
Parameter Required Description textYes Text to speak. voiceNo Voice type. Values: MAN, WOMAN. Default: WOMAN. languageNo Language code. Default: en-US.
curl -i --user AUTH_ID:AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{"text":"Hello, welcome to the conference"}' \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Speak/
Response {
"message" : "speak queued into conference" ,
"api_id" : "4e44bd4e-f830-11e6-b886-067c5485c240" ,
"member_id" : "10"
}
Stop speaking text to members. DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Speak/
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Speak/
Record a Conference
Start Recording
Stop Recording
Start recording an ongoing conference. POST https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Record/
Arguments Parameter Description file_formatRecording format. Values: mp3, wav. Default: mp3. transcription_typeSet to auto for automated transcription. transcription_urlURL to receive transcription results. callback_urlURL invoked when recording ends. callback_methodHTTP verb for callback_url. Default: POST.
Parameter Description api_idAPI ID returned by the record API. record_urlURL where the recorded file can be accessed. recording_idRecording ID associated with the file. conference_nameName of the recorded conference. recording_durationDuration in seconds. recording_duration_msDuration in milliseconds. recording_start_msStart time (epoch ms). recording_end_msEnd time (epoch ms).
cURL
Python
Ruby
Node
PHP
Java
.NET
Go
curl -i --user AUTH_ID:AUTH_TOKEN \
-H "Content-Type: application/json" \
-d '{"file_format":"mp3"}' \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Record/
Response {
"api_id" : "2867b6e2-58c3-11e1-86da-adf28403fe48" ,
"message" : "conference recording started" ,
"recording_id" : "93bc7c6a-3b2b-11e3" ,
"url" : "https://media.plivo.com/v1/Account/<Auth_ID>/Recording/93bc7c6a-3b2b-11e3.mp3"
}
Stop recording a conference. DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Record/
cURL
Python
Ruby
Node
PHP
Java
.NET
Go
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Record/
Response