API Reference
La API de NetVoice es RESTful, acepta payloads JSON codificados, devuelve respuestas JSON y usa códigos de respuesta HTTP estándar.
Iniciar una Llamada Saliente
POST
/v1/calls/outbound
Dispara una llamada saliente utilizando un Agente IA previamente configurado. Puedes inyectar variables de contexto para que el agente personalice la conversación en tiempo real.
Body Parameters
| tostringrequired | El número de teléfono destino en formato E.164 (ej. +573001234567). |
| agent_idstringrequired | El ID del agente que atenderá la llamada. Comienza con ag_. |
| fromstring | Tu número verificado de origen. Si se omite, se usa el número por defecto del pool. |
| variablesobject | Variables inyectables en el prompt del agente (ej. nombre, saldo, fecha_cita). |
| webhook_urlstring | Sobrescribe la URL de webhooks configurada a nivel global para esta llamada específica. |
Response (200 OK)
JSON
{
"id": "call_9xyz876",
"status": "queued",
"to": "+573001234567",
"agent_id": "ag_9a8b7c6d5e",
"created_at": "2026-05-20T14:30:00Z"
}
Gestión de Agentes
GET
/v1/agents/{agent_id}
Recupera la configuración y el prompt de un agente específico.
Response (200 OK)
JSON
{
"id": "ag_9a8b7c6d5e",
"name": "Cobrador Automático",
"language": "es-CO",
"voice": "alloy",
"system_prompt": "Eres un cobrador amable. Si el cliente no puede pagar hoy, ofrece un acuerdo a 15 días."
}
Obtener Transcripción
GET
/v1/calls/{call_id}/transcript
Recupera la transcripción en texto y el análisis de sentimiento de una llamada finalizada.
Response (200 OK)
JSON
{
"call_id": "call_9xyz876",
"sentiment_score": 0.85,
"summary": "El cliente aceptó renovar la póliza de salud por 12 meses.",
"dialog": [
{ "timestamp": "0.5", "role": "agent", "text": "Hola, ¿hablo con Juan?" },
{ "timestamp": "2.1", "role": "user", "text": "Sí, él habla." }
]
}