Gestionar agentes
Lista tus agentes de voz, cambia su configuración (voz, idioma, comportamiento, extractores…) y publica los cambios, sin entrar al panel.
💡 La gestión por API está disponible para los agentes del motor de voz VPower. Si un agente todavía no pasó a VPower (qué cambia), estas operaciones responden
409con"code": "agent_not_migrated".
Cómo funcionan los cambios: igual que en la ficha del panel. Cada cambio se guarda en un borrador; las llamadas siguen usando la versión publicada hasta que llamas a Publicar agente. Así puedes hacer varios cambios y probarlos antes de ponerlos en uso.
Listar agentes
GET /list-agents
Devuelve los agentes de tu cuenta (y los de tus clientes, si eres partner). Los agentes del motor de voz VPower vienen con su configuración completa (la misma forma que Obtener agente); los que todavía no se migraron vienen con agent_id, agent_name y "manageable": false.
curl --request GET \
--url https://calls.anunzi.net/list-agents \
--header 'Authorization: Bearer anz_live_TU_API_KEY'
Actualizar agente
PATCH /update-agent/{agent_id}
Cambia campos de la configuración del agente. Envía solo los que quieras cambiar.
Campos que puedes cambiar
| Campo | Tipo | Descripción |
|---|---|---|
agent_name |
string | Nombre del agente. |
voice_id |
string | Voz. Usa un voice_id de Listar voces. |
language |
string | Idioma, por ejemplo es-419, es-ES, en-US. |
voice_speed |
number | Velocidad de la voz (0,5 a 2). |
voice_temperature |
number | Variación de la voz (0 a 2). |
volume |
number | Volumen (0 a 2). |
voice_emotion |
string | Emoción de la voz, si la voz la admite. |
responsiveness |
number | Qué tan rápido responde (0 a 1). |
interruption_sensitivity |
number | Qué tan fácil lo interrumpen (0 a 1). |
enable_backchannel |
boolean | Que diga «ajá», «claro» mientras la persona habla. |
backchannel_frequency |
number | Frecuencia del backchannel (0 a 1). |
ambient_sound |
string | Sonido de ambiente (coffee-shop, call-center, etc.) o null. |
ambient_sound_volume |
number | Volumen del ambiente. |
begin_message_delay_ms |
integer | Espera antes del saludo. |
ring_duration_ms |
integer | Cuánto suena antes de cortar en salientes. |
end_call_after_silence_ms |
integer | Corta tras este silencio. |
max_call_duration_ms |
integer | Duración máxima de la llamada. |
reminder_trigger_ms |
integer | Silencio antes de preguntar «¿sigues ahí?». |
reminder_max_count |
integer | Cuántas veces pregunta antes de cortar. |
allow_user_dtmf |
boolean | Que el agente reciba las teclas que marca la persona. |
voicemail_option |
object | Qué hacer si atiende un buzón de voz. |
ivr_option |
object | Qué hacer si atiende un menú automático. |
boosted_keywords |
array | Palabras que la transcripción debe reconocer mejor (nombres, marcas). Hasta 100. |
stt_mode |
string | Modo de transcripción. |
post_call_analysis_data |
array | Extractores: datos a sacar de cada llamada al terminar. |
post_call_analysis_model |
string | Modelo del análisis post-llamada. |
guardrail_config, pii_config, handbook_config |
object | Seguridad, datos personales y presets de comportamiento. |
data_storage_setting, data_storage_retention_days |
string / integer | Qué se guarda y por cuántos días. |
El prompt, el mensaje inicial, el modelo y las funciones se cambian con Prompt, modelo y funciones.
Ejemplo
curl --request PATCH \
--url https://calls.anunzi.net/update-agent/agent_3f9c1a7b2e4d5c6f \
--header 'Authorization: Bearer anz_live_TU_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"voice_speed": 1.1,
"enable_backchannel": true,
"post_call_analysis_data": [
{ "type": "string", "name": "motivo", "description": "Motivo principal del llamado" }
]
}'
Responde 200 con el agente actualizado (el borrador): version es el número del borrador e is_published vale false hasta que lo publiques.
Publicar agente
POST /publish-agent/{agent_id}
Pone en uso el borrador: desde ese momento, las llamadas nuevas usan esta versión.
curl --request POST \
--url https://calls.anunzi.net/publish-agent/agent_3f9c1a7b2e4d5c6f \
--header 'Authorization: Bearer anz_live_TU_API_KEY'
{ "agent_id": "agent_3f9c1a7b2e4d5c6f", "version": 7, "is_published": true }
Si no hay cambios sin publicar responde 409.
Versiones del agente
GET /get-agent-versions/{agent_id}
Historial de versiones: número, si es la que está en uso (is_published), título y fecha de la última modificación (en milisegundos).
[
{ "version": 7, "is_published": true, "version_title": "Publicado por API", "last_modification_timestamp": 1791230400000 },
{ "version": 6, "is_published": false, "version_title": "", "last_modification_timestamp": 1791144000000 }
]
Códigos de estado
| Código | Descripción |
|---|---|
200 |
Correcto. |
400 |
Campo no permitido o valor inválido (la respuesta indica cuál). |
401 |
API Key ausente o inválida. |
403 |
El agente no pertenece a tu cuenta. |
409 |
El agente todavía no fue migrado al motor de voz VPower, o no hay borrador para publicar. |