> ## 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.

# Voice

> Conferences, multiparty calls, recordings and SIP endpoints from the terminal.

Calls and live-call streams are documented under [Make and control calls](/docs/cli/voice-agent/calls); this page covers the rest of the Voice API.

## Conferences

List active conferences, inspect them, hang them up, and manage members.

Inspect and control live audio conferences

| Command                                     | What it does                                       |
| ------------------------------------------- | -------------------------------------------------- |
| `plivo voice conferences get`               | Get conference details (members, run time)         |
| `plivo voice conferences hangup`            | End the entire conference (requires --yes)         |
| `plivo voice conferences list`              | List active conference names                       |
| `plivo voice conferences member`            | Per-member actions inside a conference             |
| `plivo voice conferences record`            | Start recording a conference                       |
| `plivo voice conferences stop-record`       | Stop the active recording on a conference          |
| `plivo voice conferences member deaf`       | Deafen a member (they can't hear)                  |
| `plivo voice conferences member kick`       | Kick a member from the conference (requires --yes) |
| `plivo voice conferences member mute`       | Mute a member                                      |
| `plivo voice conferences member play`       | Play audio file(s) into a member's channel         |
| `plivo voice conferences member speak`      | Speak TTS text to a member                         |
| `plivo voice conferences member stop-play`  | Stop audio playback to a member                    |
| `plivo voice conferences member stop-speak` | Stop TTS playback to a member                      |
| `plivo voice conferences member undeaf`     | Undeafen a member                                  |
| `plivo voice conferences member unmute`     | Unmute a member                                    |

<AccordionGroup>
  <Accordion title="plivo voice conferences get">
    **Command:**

    ```bash theme={null}
    plivo voice conferences get <conference_name>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences hangup">
    **Command:**

    ```bash theme={null}
    plivo voice conferences hangup <conference_name>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences list">
    **Command:**

    ```bash theme={null}
    plivo voice conferences list
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member
    ```
  </Accordion>

  <Accordion title="plivo voice conferences record">
    **Command:**

    ```bash theme={null}
    plivo voice conferences record <conference_name> [flags]
    ```

    **Flags**

    * `--callback-url <string>`: URL hit when recording finishes
    * `--file-format <string>`: mp3|wav (default "mp3")
    * `--time-limit <int>`: max recording length in seconds (default 60)
    * `--transcribe`: request transcription
  </Accordion>

  <Accordion title="plivo voice conferences stop-record">
    **Command:**

    ```bash theme={null}
    plivo voice conferences stop-record <conference_name>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member deaf">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member deaf <conference_name> <member_id>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member kick">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member kick <conference_name> <member_id>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member mute">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member mute <conference_name> <member_id>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member play">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member play <conference_name> <member_id> [flags]
    ```

    **Flags**

    * `--length <int>`: stop after N seconds
    * `--loop`: loop playback
    * `--mix`: mix with conference audio (default true)
    * `--urls <string>`: comma-separated audio file URLs (required)
  </Accordion>

  <Accordion title="plivo voice conferences member speak">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member speak <conference_name> <member_id> [flags]
    ```

    **Flags**

    * `--language <string>`: BCP-47 language code (default "en-US")
    * `--text <string>`: TTS text (required)
    * `--voice <string>`: MAN|WOMAN (default "WOMAN")
  </Accordion>

  <Accordion title="plivo voice conferences member stop-play">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member stop-play <conference_name> <member_id>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member stop-speak">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member stop-speak <conference_name> <member_id>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member undeaf">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member undeaf <conference_name> <member_id>
    ```
  </Accordion>

  <Accordion title="plivo voice conferences member unmute">
    **Command:**

    ```bash theme={null}
    plivo voice conferences member unmute <conference_name> <member_id>
    ```
  </Accordion>
</AccordionGroup>

## Multiparty calls

Create MultiPartyCall rooms, add or remove participants, and end rooms. Creating a room and dialling a participant spend money and require `--yes`.

Multi-Party Calls (MPC): group voice rooms with dynamic participants

| Command                                     | What it does                                                    |
| ------------------------------------------- | --------------------------------------------------------------- |
| `plivo voice multiparty create`             | Create a multi-party call (spends money: requires --yes)        |
| `plivo voice multiparty end`                | End the MPC and hang up all participants (requires --yes)       |
| `plivo voice multiparty get`                | Get an MPC by uuid or friendly\_name                            |
| `plivo voice multiparty list`               | List multi-party calls                                          |
| `plivo voice multiparty participant`        | Per-participant actions inside an MPC                           |
| `plivo voice multiparty participant add`    | Add a participant by dialing out (spends money: requires --yes) |
| `plivo voice multiparty participant hold`   | Put a participant on hold                                       |
| `plivo voice multiparty participant kick`   | Remove a participant (requires --yes)                           |
| `plivo voice multiparty participant list`   | List participants in an MPC                                     |
| `plivo voice multiparty participant mute`   | Mute a participant                                              |
| `plivo voice multiparty participant unhold` | Take a participant off hold                                     |
| `plivo voice multiparty participant unmute` | Unmute a participant                                            |

<AccordionGroup>
  <Accordion title="plivo voice multiparty create">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty create [flags]
    ```

    **Flags**

    * `--max-participants <int>`: cap on simultaneous participants
    * `--name <string>`: friendly\_name for the MPC (required)
    * `--record`: auto-record the MPC
  </Accordion>

  <Accordion title="plivo voice multiparty end">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty end <mpc_uuid_or_name>
    ```
  </Accordion>

  <Accordion title="plivo voice multiparty get">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty get <mpc_uuid_or_name>
    ```
  </Accordion>

  <Accordion title="plivo voice multiparty list">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty list [flags]
    ```

    **Flags**

    * `--limit <int>`: results per page (default 20)
    * `--offset <int>`: pagination offset
    * `--status <string>`: filter by status: active|initialized|ended
  </Accordion>

  <Accordion title="plivo voice multiparty participant">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant
    ```
  </Accordion>

  <Accordion title="plivo voice multiparty participant add">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant add <mpc_uuid_or_name> [flags]
    ```

    **Flags**

    * `--from <string>`: source number for the dial-out (required)
    * `--role <string>`: participant role: agent|supervisor|customer (default "agent")
    * `--to <string>`: destination number to add (required)
  </Accordion>

  <Accordion title="plivo voice multiparty participant hold">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant hold <mpc_uuid_or_name> <participant_id>
    ```
  </Accordion>

  <Accordion title="plivo voice multiparty participant kick">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant kick <mpc_uuid_or_name> <participant_id>
    ```
  </Accordion>

  <Accordion title="plivo voice multiparty participant list">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant list <mpc_uuid_or_name> [flags]
    ```

    **Flags**

    * `--limit <int>`: results per page (default 20)
    * `--offset <int>`: pagination offset
  </Accordion>

  <Accordion title="plivo voice multiparty participant mute">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant mute <mpc_uuid_or_name> <participant_id>
    ```
  </Accordion>

  <Accordion title="plivo voice multiparty participant unhold">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant unhold <mpc_uuid_or_name> <participant_id>
    ```
  </Accordion>

  <Accordion title="plivo voice multiparty participant unmute">
    **Command:**

    ```bash theme={null}
    plivo voice multiparty participant unmute <mpc_uuid_or_name> <participant_id>
    ```
  </Accordion>
</AccordionGroup>

## Recordings

List recordings (filter by call UUID, conference, or time range), fetch one, or delete one.

List, fetch, and delete call/conference recordings

| Command                         | What it does                        |
| ------------------------------- | ----------------------------------- |
| `plivo voice recordings delete` | Delete a recording (requires --yes) |
| `plivo voice recordings get`    | Get a recording by ID               |
| `plivo voice recordings list`   | List recordings                     |

<AccordionGroup>
  <Accordion title="plivo voice recordings delete">
    **Command:**

    ```bash theme={null}
    plivo voice recordings delete <recording_id>
    ```
  </Accordion>

  <Accordion title="plivo voice recordings get">
    **Command:**

    ```bash theme={null}
    plivo voice recordings get <recording_id>
    ```
  </Accordion>

  <Accordion title="plivo voice recordings list">
    **Command:**

    ```bash theme={null}
    plivo voice recordings list [flags]
    ```

    **Flags**

    * `--call-uuid <string>`: filter by call uuid
    * `--conference-name <string>`: filter by conference name
    * `--from-time <string>`: filter recordings after this ISO time
    * `--limit <int>`: results per page (default 20)
    * `--offset <int>`: pagination offset
    * `--to-time <string>`: filter recordings before this ISO time
  </Accordion>
</AccordionGroup>

## SIP endpoints

Create, list, update, and delete SIP endpoints (credentials a softphone or PBX registers with).

Manage SIP endpoints (registered SIP devices/usernames)

| Command                        | What it does                           |
| ------------------------------ | -------------------------------------- |
| `plivo voice endpoints create` | Create a SIP endpoint                  |
| `plivo voice endpoints delete` | Delete a SIP endpoint (requires --yes) |
| `plivo voice endpoints get`    | Get an endpoint by ID                  |
| `plivo voice endpoints list`   | List SIP endpoints                     |
| `plivo voice endpoints update` | Update a SIP endpoint                  |

<AccordionGroup>
  <Accordion title="plivo voice endpoints create">
    **Command:**

    ```bash theme={null}
    plivo voice endpoints create [flags]
    ```

    **Flags**

    * `--alias <string>`: human-friendly label
    * `--app-id <string>`: application to attach
    * `--password <string>`: SIP password (required)
    * `--username <string>`: SIP username (required)
  </Accordion>

  <Accordion title="plivo voice endpoints delete">
    **Command:**

    ```bash theme={null}
    plivo voice endpoints delete <endpoint_id>
    ```
  </Accordion>

  <Accordion title="plivo voice endpoints get">
    **Command:**

    ```bash theme={null}
    plivo voice endpoints get <endpoint_id>
    ```
  </Accordion>

  <Accordion title="plivo voice endpoints list">
    **Command:**

    ```bash theme={null}
    plivo voice endpoints list [flags]
    ```

    **Flags**

    * `--limit <int>`: results per page (default 20)
    * `--offset <int>`: pagination offset
  </Accordion>

  <Accordion title="plivo voice endpoints update">
    **Command:**

    ```bash theme={null}
    plivo voice endpoints update <endpoint_id> [flags]
    ```

    **Flags**

    * `--alias <string>`: new alias
    * `--app-id <string>`: new application id
    * `--password <string>`: new password
  </Accordion>
</AccordionGroup>
