> ## Documentation Index
> Fetch the complete documentation index at: https://plivo.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Conferences

> Create and manage audio conferences with multiple participants

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](https://plivo.com/docs/voice/api/multiparty-calls.md).

## The Conference Object

**conference\_name** `string`

Name used to identify the conference.

**conference\_run\_time** `string`

Time in seconds since the conference was initiated.

**conference\_member\_count** `string`

Number of members currently active in the conference.

**members** `array`

Array of member objects in the conference.

### Member Attributes

Each member in the `members` array has the following attributes:

**member\_id** `string`

Unique ID of the member within the conference.

**muted** `boolean`

`true` if the member is currently muted.

**deaf** `boolean`

`true` if the member cannot hear conference audio.

**from** `string`

Source of the call — PSTN number or SIP endpoint.

**to** `string`

Conference bridge number — Plivo number or application URL.

**caller\_name** `string`

Name of the caller (SIP calls only).

**direction** `string`

Direction of the call — `inbound` or `outbound`.

**call\_uuid** `string`

Unique identifier of the call.

**join\_time** `string`

Time in seconds since the member joined.

### Example Conference Object

```json theme={null}
{
  "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.

```bash cURL theme={null}
curl -i --user AUTH_ID:AUTH_TOKEN \
    https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/
```

```python Python theme={null}
import plivo

client = plivo.RestClient('<auth_id>','<auth_token>')
response = client.conferences.get(conference_name='My Conf Room')
print(response)
```

```ruby Ruby theme={null}
require 'plivo'

api = Plivo::RestClient.new("<auth_id>","<auth_token>")
response = api.conferences.get('My Conf Room')
puts response
```

```javascript Node theme={null}
const plivo = require('plivo');

const client = new plivo.Client("<auth_id>","<auth_token>");
client.conferences.get("My Conf Room").then(console.log);
```

```php PHP theme={null}
<?php
require 'vendor/autoload.php';
use Plivo\RestClient;

$client = new RestClient("<auth_id>","<auth_token>");
$response = $client->conferences->get('My Conf Room');
print_r($response);
```

```java Java theme={null}
import com.plivo.api.Plivo;
import com.plivo.api.models.conference.Conference;

Plivo.init("<auth_id>","<auth_token>");
Conference response = Conference.getter("My Conf Room").get();
System.out.println(response);
```

```csharp .NET theme={null}
using Plivo;

var api = new PlivoApi("<auth_id>","<auth_token>");
var response = api.Conference.Get(conferenceName: "My Conf Room");
Console.WriteLine(response);
```

```go Go theme={null}
package main

import "github.com/plivo/plivo-go/v7"

func main() {
    client, _ := plivo.NewClient("<auth_id>", "<auth_token>", &plivo.ClientOptions{})
    response, _ := client.Conferences.Get("My Conf Room")
}
```

### Response

**conference\_name** `string`

Name used to identify the conference.

**conference\_run\_time** `string`

Time in seconds since the conference was initiated.

**conference\_member\_count** `string`

Number of members currently active in the conference.

**members** `array`

Array of member objects in the conference — see [Member Attributes](#member-attributes).

**api\_id** `string`

Unique identifier for the API request.

```json theme={null}
{
  "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.

```bash cURL theme={null}
curl -i --user AUTH_ID:AUTH_TOKEN \
    https://api.plivo.com/v1/Account/{auth_id}/Conference/
```

```python Python theme={null}
import plivo

client = plivo.RestClient('<auth_id>','<auth_token>')
response = client.conferences.list()
print(response)
```

```ruby Ruby theme={null}
require 'plivo'

api = Plivo::RestClient.new("<auth_id>","<auth_token>")
response = api.conferences.list
puts response
```

```javascript Node theme={null}
const plivo = require('plivo');

const client = new plivo.Client("<auth_id>","<auth_token>");
client.conferences.list().then(console.log);
```

```php PHP theme={null}
<?php
require 'vendor/autoload.php';
use Plivo\RestClient;

$client = new RestClient("<auth_id>","<auth_token>");
$response = $client->conferences->list();
print_r($response);
```

```java Java theme={null}
import com.plivo.api.Plivo;
import com.plivo.api.models.conference.Conference;

Plivo.init("<auth_id>","<auth_token>");
ListResponse<Conference> response = Conference.lister().list();
System.out.println(response);
```

```csharp .NET theme={null}
using Plivo;

var api = new PlivoApi("<auth_id>","<auth_token>");
var response = api.Conference.List();
Console.WriteLine(response);
```

```go Go theme={null}
package main

import "github.com/plivo/plivo-go/v7"

func main() {
    client, _ := plivo.NewClient("<auth_id>", "<auth_token>", &plivo.ClientOptions{})
    response, _ := client.Conferences.List(plivo.ConferenceListParams{})
}
```

### Response

**api\_id** `string`

Unique identifier for the API request.

**conferences** `array`

Array of names of all ongoing conferences in your account.

```json theme={null}
{
  "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}/
```

```bash cURL theme={null}
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
    https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/
```

```python Python theme={null}
import plivo

client = plivo.RestClient('<auth_id>','<auth_token>')
response = client.conferences.delete(conference_name='My Conf Room')
print(response)
```

```ruby Ruby theme={null}
require 'plivo'

api = Plivo::RestClient.new("<auth_id>","<auth_token>")
response = api.conferences.delete('My Conf Room')
puts response
```

```javascript Node theme={null}
const plivo = require('plivo');

const client = new plivo.Client("<auth_id>","<auth_token>");
client.conferences.hangup("My Conf Room").then(console.log);
```

```php PHP theme={null}
<?php
require 'vendor/autoload.php';
use Plivo\RestClient;

$client = new RestClient("<auth_id>","<auth_token>");
$response = $client->conferences->delete('My Conf Room');
print_r($response);
```

```java Java theme={null}
import com.plivo.api.Plivo;
import com.plivo.api.models.conference.Conference;

Plivo.init("<auth_id>","<auth_token>");
Conference.deleter("My Conf Room").delete();
```

```csharp .NET theme={null}
using Plivo;

var api = new PlivoApi("<auth_id>","<auth_token>");
var response = api.Conference.Delete(conferenceName: "My Conf Room");
Console.WriteLine(response);
```

```go Go theme={null}
package main

import "github.com/plivo/plivo-go/v7"

func main() {
    client, _ := plivo.NewClient("<auth_id>", "<auth_token>", &plivo.ClientOptions{})
    client.Conferences.Delete("My Conf Room")
}
```

### Response

**message** `string`

Status of the request. Returns `conference hung up` on a successful request.

**api\_id** `string`

Unique identifier for the API request.

```json theme={null}
{
  "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/
```

```bash cURL theme={null}
curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
    https://api.plivo.com/v1/Account/{auth_id}/Conference/
```

```python Python theme={null}
import plivo

client = plivo.RestClient('<auth_id>','<auth_token>')
response = client.conferences.delete_all()
print(response)
```

```ruby Ruby theme={null}
require 'plivo'

api = Plivo::RestClient.new("<auth_id>","<auth_token>")
response = api.conferences.delete_all
puts response
```

```javascript Node theme={null}
const plivo = require('plivo');

const client = new plivo.Client("<auth_id>","<auth_token>");
client.conferences.hangupAll().then(console.log);
```

### Response

**message** `string`

Status of the request. Returns `all conferences hung up` on a successful request.

**api\_id** `string`

Unique identifier for the API request.

```json theme={null}
{
  "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/
```

```bash cURL theme={null}
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/
```

```python Python theme={null}
import plivo

client = plivo.RestClient('<auth_id>','<auth_token>')
response = client.conferences.member_kick(conference_name='My Conf Room', member_id='10')
print(response)
```

```ruby Ruby theme={null}
require 'plivo'

api = Plivo::RestClient.new("<auth_id>","<auth_token>")
response = api.conferences.kick_member('My Conf Room', [10])
puts response
```

```javascript Node theme={null}
const plivo = require('plivo');

const client = new plivo.Client("<auth_id>","<auth_token>");
client.conferences.kickMember("My Conf Room", 10).then(console.log);
```

### Response

**message** `string`

Status of the request. Returns `kicked` on a successful request.

**member\_id** `string`

Unique ID of the member within the conference.

**api\_id** `string`

Unique identifier for the API request.

```json theme={null}
{
  "message": "kicked",
  "member_id": "10",
  "api_id": "2867b6e2-58c3-11e1-86da-adf28403fe48"
}
```

### Mute / Unmute a Member

> [tab] Mute
>
> 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/
> ```
>
> ```bash cURL theme={null}
> 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/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_mute(conference_name='My Conf Room', member_id='10')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.mute_member('My Conf Room', [10])
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.muteMember("My Conf Room", 10).then(console.log);
> ```
>
> #### Response
>
> **message** `string`
>
> Status of the request. Returns `muted` on a successful request.
>
> **member\_id** `string`
>
> Unique ID of the member within the conference.
>
> **api\_id** `string`
>
> Unique identifier for the API request.
>
> ```json theme={null}
> {
>   "message": "muted",
>   "member_id": "10",
>   "api_id": "2867b6e2-58c3-11e1-86da-adf28403fe48"
> }
> ```

> [tab] Unmute
>
> Unmute a previously muted member.
>
> ```
> DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Mute/
> ```
>
> ```bash cURL theme={null}
> curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
>     https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Mute/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_unmute(conference_name='My Conf Room', member_id='10')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.unmute_member('My Conf Room', [10])
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.unmuteMember("My Conf Room", 10).then(console.log);
> ```
>
> #### Response
>
> **message** `string`
>
> Status of the request. Returns `unmuted` on a successful request.
>
> **member\_id** `string`
>
> Unique ID of the member within the conference.
>
> **api\_id** `string`
>
> Unique identifier for the API request.
>
> ```json theme={null}
> {
>   "message": "unmuted",
>   "member_id": "10",
>   "api_id": "2867b6e2-58c3-11e1-86da-adf28403fe48"
> }
> ```

### Deaf / Undeaf a Member

> [tab] Deaf
>
> 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/
> ```
>
> ```bash cURL theme={null}
> 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/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_deaf(conference_name='My Conf Room', member_id='10')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.deaf_member('My Conf Room', [10])
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.deafMember("My Conf Room", 10).then(console.log);
> ```
>
> #### Response
>
> **message** `string`
>
> Status of the request. Returns `deaf` on a successful request.
>
> **member\_id** `string`
>
> Unique ID of the member within the conference.
>
> **api\_id** `string`
>
> Unique identifier for the API request.
>
> ```json theme={null}
> {
>   "message": "deaf",
>   "member_id": "10",
>   "api_id": "2867b6e2-58c3-11e1-86da-adf28403fe48"
> }
> ```

> [tab] Undeaf
>
> Restore hearing to a deaf member.
>
> ```
> DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Deaf/
> ```
>
> ```bash cURL theme={null}
> curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
>     https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Deaf/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_undeaf(conference_name='My Conf Room', member_id='10')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.enable_hearing_member('My Conf Room', [10])
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.undeafMember("My Conf Room", 10).then(console.log);
> ```
>
> #### Response
>
> **message** `string`
>
> Status of the request. Returns `undeaf` on a successful request.
>
> **member\_id** `string`
>
> Unique ID of the member within the conference.
>
> **api\_id** `string`
>
> Unique identifier for the API request.
>
> ```json theme={null}
> {
>   "message": "undeaf",
>   "member_id": "10",
>   "api_id": "2867b6e2-58c3-11e1-86da-adf28403fe48"
> }
> ```

### Play Audio to a Member

> [tab] Start 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 |
> | - | - | - |
> | `url` | Yes | URL of the `.mp3` or `.wav` file to play. |
>
> ```bash cURL theme={null}
> 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/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_play(
>     conference_name='My Conf Room',
>     member_id='10',
>     url='https://s3.amazonaws.com/plivocloud/music.mp3')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.play_member(
>     'My Conf Room',
>     [10],
>     'https://s3.amazonaws.com/plivocloud/music.mp3')
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.playAudioToMember(
>     "My Conf Room",
>     10,
>     "https://s3.amazonaws.com/plivocloud/music.mp3"
> ).then(console.log);
> ```
>
> #### Response
>
> **message** `string`
>
> Status of the request. Returns `play queued into conference` on a successful request.
>
> **api\_id** `string`
>
> Unique identifier for the API request.
>
> **member\_id** `string`
>
> Unique ID of the member within the conference.
>
> ```json theme={null}
> {
>   "message": "play queued into conference",
>   "api_id": "4e44bd4e-f830-11e6-b886-067c5485c240",
>   "member_id": "10"
> }
> ```

> [tab] Stop Playing
>
> Stop playing audio to members.
>
> ```
> DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Play/
> ```
>
> ```bash cURL theme={null}
> curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
>     https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Play/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_play_stop(conference_name='My Conf Room', member_id='10')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.stop_play_member('My Conf Room', [10])
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.stopPlayingAudioToMember("My Conf Room", 10).then(console.log);
> ```

### Speak Text to a Member

> [tab] Start 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 |
> | - | - | - |
> | `text` | Yes | Text to speak. |
> | `voice` | No | Voice type. Values: `MAN`, `WOMAN`. Default: `WOMAN`. |
> | `language` | No | Language code. Default: `en-US`. |
>
> ```bash cURL theme={null}
> 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/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_speak(
>     conference_name='My Conf Room',
>     member_id='10',
>     text='Hello, welcome to the conference')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.speak_member(
>     'My Conf Room',
>     [10],
>     'Hello, welcome to the conference')
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.speakTextToMember(
>     "My Conf Room",
>     10,
>     "Hello, welcome to the conference"
> ).then(console.log);
> ```
>
> #### Response
>
> **message** `string`
>
> Status of the request. Returns `speak queued into conference` on a successful request.
>
> **api\_id** `string`
>
> Unique identifier for the API request.
>
> **member\_id** `string`
>
> Unique ID of the member within the conference.
>
> ```json theme={null}
> {
>   "message": "speak queued into conference",
>   "api_id": "4e44bd4e-f830-11e6-b886-067c5485c240",
>   "member_id": "10"
> }
> ```

> [tab] Stop Speaking
>
> Stop speaking text to members.
>
> ```
> DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Speak/
> ```
>
> ```bash cURL theme={null}
> curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
>     https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Member/{member_id}/Speak/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.member_speak_stop(conference_name='My Conf Room', member_id='10')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.stop_speak_member('My Conf Room', [10])
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.stopSpeakingTextToMember("My Conf Room", 10).then(console.log);
> ```

***

## Record a Conference

> [tab] Start Recording
>
> Start recording an ongoing conference.
>
> ```
> POST https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Record/
> ```
>
> ### Arguments
>
> | Parameter | Description |
> | - | - |
> | `file_format` | Recording format. Values: `mp3`, `wav`. Default: `mp3`. |
> | `transcription_type` | Set to `auto` for automated transcription. |
> | `transcription_url` | URL to receive transcription results. |
> | `callback_url` | URL invoked when recording ends. |
> | `callback_method` | HTTP verb for `callback_url`. Default: `POST`. |
>
> > [accordion] Callback URL parameters
> >
> > | Parameter | Description |
> > | - | - |
> > | `api_id` | API ID returned by the record API. |
> > | `record_url` | URL where the recorded file can be accessed. |
> > | `recording_id` | Recording ID associated with the file. |
> > | `conference_name` | Name of the recorded conference. |
> > | `recording_duration` | Duration in seconds. |
> > | `recording_duration_ms` | Duration in milliseconds. |
> > | `recording_start_ms` | Start time (epoch ms). |
> > | `recording_end_ms` | End time (epoch ms). |
>
> ```bash cURL theme={null}
> 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/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.record(conference_name='My Conf Room')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.record('My Conf Room')
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.record("My Conf Room").then(console.log);
> ```
>
> ```php PHP theme={null}
> <?php
> require 'vendor/autoload.php';
> use Plivo\RestClient;
>
> $client = new RestClient("<auth_id>","<auth_token>");
> $response = $client->conferences->startRecording('My Conf Room');
> print_r($response);
> ```
>
> ```java Java theme={null}
> import com.plivo.api.Plivo;
> import com.plivo.api.models.conference.Conference;
>
> Plivo.init("<auth_id>","<auth_token>");
> ConferenceRecordCreateResponse response = Conference.recorder("My Conf Room").record();
> System.out.println(response);
> ```
>
> ```csharp .NET theme={null}
> using Plivo;
>
> var api = new PlivoApi("<auth_id>","<auth_token>");
> var response = api.Conference.StartRecording("My Conf Room");
> Console.WriteLine(response);
> ```
>
> ```go Go theme={null}
> package main
>
> import "github.com/plivo/plivo-go/v7"
>
> func main() {
>     client, _ := plivo.NewClient("<auth_id>", "<auth_token>", &plivo.ClientOptions{})
>     response, _ := client.Conferences.Record("My Conf Room", plivo.ConferenceRecordParams{})
> }
> ```
>
> #### Response
>
> **api\_id** `string`
>
> Unique identifier for the API request.
>
> **message** `string`
>
> Status of the request. Returns `conference recording started` on a successful request.
>
> **recording\_id** `string`
>
> Recording ID associated with the file.
>
> **url** `string`
>
> URL where the recorded file can be accessed.
>
> ```json theme={null}
> {
>   "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"
> }
> ```

> [tab] Stop Recording
>
> Stop recording a conference.
>
> ```
> DELETE https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Record/
> ```
>
> ```bash cURL theme={null}
> curl -X DELETE --user AUTH_ID:AUTH_TOKEN \
>     https://api.plivo.com/v1/Account/{auth_id}/Conference/{conference_name}/Record/
> ```
>
> ```python Python theme={null}
> import plivo
>
> client = plivo.RestClient('<auth_id>','<auth_token>')
> response = client.conferences.record_stop(conference_name='My Conf Room')
> print(response)
> ```
>
> ```ruby Ruby theme={null}
> require 'plivo'
>
> api = Plivo::RestClient.new("<auth_id>","<auth_token>")
> response = api.conferences.stop_record('My Conf Room')
> puts response
> ```
>
> ```javascript Node theme={null}
> const plivo = require('plivo');
>
> const client = new plivo.Client("<auth_id>","<auth_token>");
> client.conferences.stopRecording("My Conf Room").then(console.log);
> ```
>
> ```php PHP theme={null}
> <?php
> require 'vendor/autoload.php';
> use Plivo\RestClient;
>
> $client = new RestClient("<auth_id>","<auth_token>");
> $response = $client->conferences->stopRecording('My Conf Room');
> print_r($response);
> ```
>
> ```java Java theme={null}
> import com.plivo.api.Plivo;
> import com.plivo.api.models.conference.Conference;
>
> Plivo.init("<auth_id>","<auth_token>");
> Conference.recordStopper("My Conf Room").stop();
> ```
>
> ```csharp .NET theme={null}
> using Plivo;
>
> var api = new PlivoApi("<auth_id>","<auth_token>");
> var response = api.Conference.StopRecording("My Conf Room");
> Console.WriteLine(response);
> ```
>
> ```go Go theme={null}
> package main
>
> import "github.com/plivo/plivo-go/v7"
>
> func main() {
>     client, _ := plivo.NewClient("<auth_id>", "<auth_token>", &plivo.ClientOptions{})
>     client.Conferences.RecordStop("My Conf Room")
> }
> ```
>
> #### Response
>
> ```
> HTTP Status Code: 204
> ```

***

## Related

* [Conference XML Element](https://plivo.com/docs/voice/xml/conference.md) - Create conferences using XML
* [Multiparty Calls](https://plivo.com/docs/voice/api/multiparty-calls.md) - Advanced call control for contact centers
* [Recordings](https://plivo.com/docs/voice/api/recordings.md) - Manage conference recordings
