Voiceovers
Generate voiceovers from text or convert voice styles with speech-to-speech.
GET /voices
List available voices for voiceover generation. Use the returned voice id when calling the text-to-speech or speech-to-speech endpoints.
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
gender | string | No | -- | Filter by gender: "male", "female", "other". |
age_group | string | No | -- | Filter by age group: "kid", "young_adult", "adult", "senior". |
accent | string | No | -- | Filter by accent: "american", "british", "french", "danish", "swedish", "german", "norwegian", "spanish", "neutral". |
style | string | No | -- | Filter by style: "professional", "casual", "energetic", "whisper", "speaker". |
limit | number | No | 20 | Number of items to return (1--100). |
offset | number | No | 0 | Number of items to skip. |
Response
{
"data": [
{
"id": "uuid",
"name": "Sarah",
"gender": "female",
"age_group": "adult",
"accent": "american",
"style": "professional",
"preview_audio_url": "https://..."
}
],
"pagination": { "total": 15, "limit": 20, "offset": 0 }
}Examples
curl "https://www.adsumo.ai/api/v1/voices?gender=female&style=professional" \
-H "Authorization: Bearer adsumo_sk_..."POST /voiceovers/text-to-speech
Generate a voiceover from text using ElevenLabs voices.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
text | string | Yes | The text to speak |
voice_id | string | Yes | ElevenLabs voice ID |
model | string | No | ElevenLabs model |
voice_settings | object | No | Voice settings overrides |
Response
This endpoint returns a synchronous response. Unlike video and image generation endpoints, no webhook or polling is required.
{
"id": "uuid",
"status": "completed",
"duration": 4.5,
"audio_url": "https://..."
}Note:
audio_urlis a temporary presigned URL that expires after 1 hour. Download and store the file if you need to access it later.
Credit Cost
1 credit per voiceover.
Examples
curl -X POST https://www.adsumo.ai/api/v1/voiceovers/text-to-speech \
-H "Authorization: Bearer adsumo_sk_..." \
-H "Content-Type: application/json" \
-d '{
"text": "Welcome to our product launch. We are excited to share what we have been building.",
"voice_id": "EXAVITQu4vr4xnSDxMaL",
"model": "eleven_multilingual_v2",
"voice_settings": {
"stability": 0.5,
"similarity_boost": 0.75
}
}'POST /voiceovers/speech-to-speech
Clone or convert voice style from an audio file.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
audio_url | string | Yes | URL to source audio file |
voice_id | string | Yes | Target voice ID |
duration | number | No | Audio duration in seconds |
voice_settings | object | No | Voice settings overrides |
Response
This endpoint returns a synchronous response, identical in shape to text-to-speech.
{
"id": "uuid",
"status": "completed",
"duration": 4.5,
"audio_url": "https://..."
}Note:
audio_urlis a temporary presigned URL that expires after 1 hour. Download and store the file if you need to access it later.
Credit Costs
Credits are based on the duration of the source audio.
| Duration | Credits |
|---|---|
| 0-29s | 1 |
| 30-59s | 2 |
| 60-89s | 3 |
| 90-120s | 4 |