Генерирует звуковые эффекты по текстовому описанию - от шагов и дождя до “киношных” переходов и атмосфер. Стоимость - 1.5 ₽ за генерацию плюс 0.5 ₽ за каждую секунду длительности.
Общая документация Public API · API-ключ можно создать в настройках аккаунта
ElevenLabs Sound Effect V2 делает короткие звуковые эффекты по текстовому описанию: шаги, дождь, скрип двери, взрыв, шум толпы, переходы для видео и фоновые атмосферы. Такой звук удобно подставлять в ролики, игры, презентации и приложения, когда нужного эффекта нет в библиотеке.
Что можно задать:
Каждый вызов создаёт асинхронную операцию: сначала вы получаете id, затем проверяете статус, пока не придёт готовый файл.
POST /api/v1/operationsAuthorization: Bearer brth_...id и стартовый статус queued.Сценарии:
loop: true, например для фоновой атмосферы в игре.{
"tool": "elevenlabs-sound-effect-v2",
"input": {
"...": "..."
}
}
tool - slug нейросети, всегда "elevenlabs-sound-effect-v2".input - параметры запуска. Все поля передаются прямо внутри этого объекта, без дополнительной вложенности.| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
text | string | Да | Описание звука, от 3 до 450 символов. Лучше писать по-английски: так модель точнее понимает описание. Опишите источник звука, обстановку и характер, например Heavy rain on a tin roof with distant thunder. |
duration_seconds | number | Да | Длительность эффекта в секундах, от 0,5 до 22. Можно указывать дробные значения с шагом 0,1, например 3.5. Если поле не передать, будет 3 секунды. От длительности зависит цена. |
loop | boolean | Нет | true - модель старается сделать эффект, который плавно зацикливается: конец переходит в начало без щелчка. Подходит для фонов и атмосфер. По умолчанию false. |
prompt_influence | number | Нет | Насколько строго следовать описанию, от 0 до 1. Чем выше значение, тем точнее модель держится текста и тем меньше разница между запусками. Ниже - больше свободы и неожиданных вариантов. Если не передать, будет 0.3. |
output_format | enum | Да | Формат итогового файла. Если поле не передать, будет mp3_44100_128. Варианты перечислены ниже. |
Варианты output_format:
| Значение | Что получится |
|---|---|
mp3_22050_32 | MP3, 22,05 кГц, 32 кбит/с - самый лёгкий файл |
mp3_44100_32 | MP3, 44,1 кГц, 32 кбит/с |
mp3_44100_64 | MP3, 44,1 кГц, 64 кбит/с |
mp3_44100_96 | MP3, 44,1 кГц, 96 кбит/с |
mp3_44100_128 | MP3, 44,1 кГц, 128 кбит/с - обычный выбор |
mp3_44100_192 | MP3, 44,1 кГц, 192 кбит/с - лучшее качество в MP3 |
pcm_8000 | PCM без сжатия, 8 кГц |
pcm_16000 | PCM без сжатия, 16 кГц |
pcm_22050 | PCM без сжатия, 22,05 кГц |
pcm_24000 | PCM без сжатия, 24 кГц |
pcm_44100 | PCM без сжатия, 44,1 кГц |
pcm_48000 | PCM без сжатия, 48 кГц |
ulaw_8000 | μ-law, 8 кГц - для телефонии |
alaw_8000 | A-law, 8 кГц - для телефонии |
opus_48000_32 | Opus, 48 кГц, 32 кбит/с |
opus_48000_64 | Opus, 48 кГц, 64 кбит/с |
opus_48000_96 | Opus, 48 кГц, 96 кбит/с |
opus_48000_128 | Opus, 48 кГц, 128 кбит/с |
opus_48000_192 | Opus, 48 кГц, 192 кбит/с |
Формат на цену не влияет.
Пятисекундный звук дождя в MP3. Стоимость - 4 ₽.
curl -X POST https://bratuha.ru/api/v1/operations \
-H "Authorization: Bearer brth_ваш_ключ" \
-H "Content-Type: application/json" \
-d '{
"tool": "elevenlabs-sound-effect-v2",
"input": {
"text": "Heavy rain on a tin roof with distant thunder",
"duration_seconds": 5,
"output_format": "mp3_44100_128"
}
}'
const response = await fetch('https://bratuha.ru/api/v1/operations', {
method: 'POST',
headers: {
Authorization: 'Bearer brth_ваш_ключ',
'Content-Type': 'application/json',
},
body: JSON.stringify({
tool: 'elevenlabs-sound-effect-v2',
input: {
text: 'Heavy rain on a tin roof with distant thunder',
duration_seconds: 5,
output_format: 'mp3_44100_128',
},
}),
})
const data = await response.json()
import requests
response = requests.post(
'https://bratuha.ru/api/v1/operations',
headers={
'Authorization': 'Bearer brth_ваш_ключ',
'Content-Type': 'application/json',
},
json={
'tool': 'elevenlabs-sound-effect-v2',
'input': {
'text': 'Heavy rain on a tin roof with distant thunder',
'duration_seconds': 5,
'output_format': 'mp3_44100_128',
},
},
timeout=30,
)
print(response.status_code)
print(response.json())
Десять секунд лесной атмосферы, которую можно крутить по кругу. prompt_influence поднят до 0.6, чтобы звук точнее соответствовал описанию. Стоимость - 6,5 ₽.
curl -X POST https://bratuha.ru/api/v1/operations \
-H "Authorization: Bearer brth_ваш_ключ" \
-H "Content-Type: application/json" \
-d '{
"tool": "elevenlabs-sound-effect-v2",
"input": {
"text": "Calm forest ambience, birds chirping, light wind in the leaves",
"duration_seconds": 10,
"loop": true,
"prompt_influence": 0.6,
"output_format": "mp3_44100_192"
}
}'
const response = await fetch('https://bratuha.ru/api/v1/operations', {
method: 'POST',
headers: {
Authorization: 'Bearer brth_ваш_ключ',
'Content-Type': 'application/json',
},
body: JSON.stringify({
tool: 'elevenlabs-sound-effect-v2',
input: {
text: 'Calm forest ambience, birds chirping, light wind in the leaves',
duration_seconds: 10,
loop: true,
prompt_influence: 0.6,
output_format: 'mp3_44100_192',
},
}),
})
const data = await response.json()
import requests
response = requests.post(
'https://bratuha.ru/api/v1/operations',
headers={
'Authorization': 'Bearer brth_ваш_ключ',
'Content-Type': 'application/json',
},
json={
'tool': 'elevenlabs-sound-effect-v2',
'input': {
'text': 'Calm forest ambience, birds chirping, light wind in the leaves',
'duration_seconds': 10,
'loop': True,
'prompt_influence': 0.6,
'output_format': 'mp3_44100_192',
},
},
timeout=30,
)
print(response.status_code)
print(response.json())
{
"id": "op_uuid-123",
"status": "queued",
"tool": "elevenlabs-sound-effect-v2",
"cost": 4,
"balance_after": 496,
"created_at": "2026-09-30T12:46:26Z"
}
cost - сколько списано за операцию, в рублях.balance_after - баланс после списания.{
"id": "op_uuid-123",
"status": "completed",
"tool": "elevenlabs-sound-effect-v2",
"cost": 4,
"created_at": "2026-09-30T12:46:26Z",
"completed_at": "2026-09-30T12:46:38Z",
"result": {
"type": "audio",
"urls": [
"https://storage.bratuha.ru/results/elevenlabs-sound-effect-v2/sound-1.mp3"
],
"files": [
{
"url": "https://storage.bratuha.ru/results/elevenlabs-sound-effect-v2/sound-1.mp3",
"name": "result"
}
]
},
"error_message": null
}
{
"id": "op_uuid-123",
"status": "failed",
"tool": "elevenlabs-sound-effect-v2",
"cost": 4,
"created_at": "2026-09-30T12:46:26Z",
"completed_at": "2026-09-30T12:46:40Z",
"result": null,
"error_message": "Текст ошибки"
}
Сохраните id из ответа на создание и запрашивайте статус операции по нему:
GET /api/v1/operations/{id}
curl -H "Authorization: Bearer brth_ваш_ключ" \
https://bratuha.ru/api/v1/operations/op_uuid-123
async function waitForResult(id) {
while (true) {
const response = await fetch(`https://bratuha.ru/api/v1/operations/${id}`, {
headers: { Authorization: 'Bearer brth_ваш_ключ' },
})
const operation = await response.json()
if (operation.status === 'completed' || operation.status === 'failed') {
return operation
}
await new Promise((resolve) => setTimeout(resolve, 3000))
}
}
Статус операции:
queued - операция создана и ждёт запуска;processing - звук генерируется;completed - готово, ссылка лежит в result;failed - не получилось, причина в error_message.Обычно эффект готов за 10-20 секунд. Опрашивать одну операцию можно не чаще раза в секунду, иначе придёт 429.
После завершения в result приходит один аудиофайл:
{
"type": "audio",
"urls": [
"https://storage.bratuha.ru/results/elevenlabs-sound-effect-v2/sound-1.mp3"
],
"files": [
{
"url": "https://storage.bratuha.ru/results/elevenlabs-sound-effect-v2/sound-1.mp3",
"name": "result"
}
]
}
type - всегда "audio".urls - массив из одной ссылки на готовый файл.files - та же ссылка в виде объекта с url и name. Можно брать ссылку из любого из двух полей.Длительность файла совпадает с duration_seconds: в тестовом запуске на 2 секунды пришёл MP3 длиной ровно 2,0 секунды, 44,1 кГц.
Цена складывается из двух частей:
duration_seconds.Дробные секунды считаются как есть, без округления: 3,4 секунды стоят 1,5 + 1,7 = 3,2 ₽.
| Длительность | Цена |
|---|---|
| 0,5 с | 1,75 ₽ |
| 1 с | 2 ₽ |
| 3 с (по умолчанию) | 3 ₽ |
| 5 с | 4 ₽ |
| 10 с | 6,5 ₽ |
| 22 с (максимум) | 12,5 ₽ |
Формат файла, loop и prompt_influence на цену не влияют. Точная сумма приходит в поле cost ответа на создание операции и сразу списывается с баланса.
POST /api/v1/operations не идемпотентен: каждый запрос создаёт новую операцию и списывает деньги. Не повторяйте запрос автоматически при обрыве связи: повтор создаст вторую оплаченную операцию.queued, результат нужно забирать запросом статуса по id.loop: true и повторяйте его в своём плеере.pcm_* - это «сырой» звук без заголовка файла, обычный плеер его не откроет. Такие форматы нужны, если вы сами обрабатываете звук в коде. Для публикации и прослушивания выбирайте MP3 или Opus.