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

> ## Agent Instructions
> Use the public API base URL: https://api.teamfollowup.ai/api.
> Authenticate public API requests with Authorization: Bearer YOUR_API_KEY.
> Use product-owned terms: agents, campaigns, projects (GoHighLevel sub-accounts), contacts, calls, outcomes, skills, cadences, phone numbers.
> Scope requests by locationId rather than projectName.
> Read the guide linked from each API reference group before recommending an endpoint.

# Voices API

> The voices your agents speak with: browse the catalogue, your own and shared voices, and add or remove voices in your agency's library.

Agents choose a voice by `voiceId`. Concepts, the voice library and the sound
settings that go with a voice are in [Voices](/voices/overview).

| Endpoint                                                                     | Scope          | Use it to                                                                                                                                                 |
| ---------------------------------------------------------------------------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [List voices](/api-reference/voices/list-voices)                             | `voices:read`  | Every voice an agent can speak with: your own, shared and curated, each with a `source`.                                                                  |
| [Get voice](/api-reference/voices/get-voice)                                 | `voices:read`  | One voice's record, for a voice in your list. Any other id is a `404`. Answers `degraded: true` when the provider cannot describe a voice from your list. |
| [List added voices](/api-reference/voices/list-added-voices)                 | `voices:read`  | Your library, with `used`, `limit` and `remaining` against your plan.                                                                                     |
| [Preview removing a voice](/api-reference/voices/preview-removing-a-voice)   | `voices:read`  | Which agents would move to `fallbackVoiceId`, before you remove anything.                                                                                 |
| [Search for a voice to add](/api-reference/voices/search-for-a-voice-to-add) | `voices:write` | Find a voice by name, description or `providerVoiceId`.                                                                                                   |
| [Add a voice](/api-reference/voices/add-a-voice)                             | `voices:write` | Add a voice to your library. Counts against your plan's allowance.                                                                                        |
| [Remove a voice](/api-reference/voices/remove-a-voice)                       | `voices:write` | Give a voice back. Agents on it move to the default voice first.                                                                                          |

Set the choice with [Update agent](/api-reference/agents/update-agent) as
`config.voice.voiceId`.

Scopes: `voices:read`, `voices:write`. Search needs `voices:write` even though
it changes nothing. See [Authentication](/authentication#scopes).

## Guides

* [Voices](/voices/overview)
* [The voice](/agents/voice) for speed, expressiveness and background sound.
* [Glossary](/glossary#voices)
