В платформу Voximplant был добавлен раздел Secrets — специализированное хранилище для API-ключей, токенов и других конфиденциальных данных, которые Вы можете использовать в своих сценариях VoxEngine. Вы можете управлять секретами через панель управления и получать их в коде с помощью простого метода. Это решение заменяет распространенную практику вписывания ключей прямо в сценарии или использование Application Storage не по назначению.
Современные сценарии Voximplant проходят аутентификацию во множестве сторонних сервисов: у провайдеров Voice AI, поставщиков STT и TTS, в CRM-системах, платежных шлюзах и многих других. Secrets предоставляет каждой такой учетной записи подходящее место: выделенное хранилище с управлением через панель управления, программным контролем и четким отделением конфиденциальных данных от кода Вашего сценария.
Основные возможности
- Выделенное хранилище для учетных данных, отдельное от Application Storage (которое лучше оставить для данных сессий и состояний).
- До 8 192 байт на один секрет — этого достаточно для объемных данных, таких как
credentials.jsonот GCP. - Извлечение данных одним вызовом из любого сценария: `
VoxEngine.getSecretValue("NAME"). - Интерактивное управление через панель управления Voximplant или программное управление из Вашего CI/CD пайплайна через Management API.
- Контроль доступа к секретам через роли субаккаунтов и сервисные аккаунты, что исключает доступ посторонних лиц.
Заметки для разработчика
Вы можете просматривать и задавать значения секретов в панели управления manage.voximplant.com или через Management API.

Максимальный размер значения секрета составляет 8 192 символа; значение возвращается в виде строки в момент вызова. Извлечение происходит внутри сценария VoxEngine с помощью простого метода VoxEngine.getSecretValue(SECRET_NAME), поэтому в коде не нужно настраивать дополнительные этапы получения учетных данных. Чтобы обновить секрет, измените его значение в панели управления или через Management API — новые вызовы сразу получат актуальное значение без необходимости ротации сценариев.
Управление секретами ограничено ролями: только пользователи с ролями Administrator, Owner или Developer могут создавать, читать или менять секреты через панель управления и Management API. Пользователи с другими ролями не могут просматривать значения секретов, что делает Secrets подходящим решением для хранения учетных данных в аккаунтах с несколькими пользователями.
Быстрый старт: вызов Voice AI провайдера с сохраненным ключом
В примере ниже запускается сессия Ultravox Voice AI с аутентификацией при помощи API-ключа, сохраненного как секрет Voximplant (например, OPENAI_API_KEY). В самом файле сценария конфиденциальные данные отсутствуют.
require(Modules.OpenAI);
VoxEngine.addEventListener(AppEvents.CallAlerting, async (e) => {
const voiceAIClient = await OpenAI.createRealtimeAPIClient({
authorizations: {
"Authorization": `Bearer ${VoxEngine.getSecretValue("OPENAI_API_KEY")}`,
},
body: AGENT_CONFIG,
onWebSocketClose: handleClose,
});
// ...connect the inbound call to the agent
});
Данный пример намеренно упрощен, чтобы продемонстрировать получение секрета, и не предназначен для прямого использования в продакшене.
Стоимость и доступность
Функционал Secrets уже доступен во всех регионах Voximplant без дополнительной оплаты. Управляйте секретами через портал Voximplant или программно через Management API и используйте их в любом сценарии VoxEngine.
Ссылки
- Secrets guide
- VoxEngine.getSecretValue reference
- Secrets Management API reference
- Subusers и Service Accounts




