Payload de webhook de voz
Los webhooks de voz se envían cuando las llamadas se inician, completan o fallan.
Payload de ejemplo
1 { 2 "event": { 3 "id": "evt_voice_abc123", 4 "channel": "voice", 5 "timestamp": 1706640000.0, 6 "data": { 7 "timestamp": 1706640000.0, 8 "direction": "inbound", 9 "platform": "voice", 10 "call_id": "call_xyz789", 11 "vapi_status": "completed", 12 "duration": 245, 13 "cost": 0.15, 14 "recording_url": "https://storage.example.com/recordings/call_xyz789.mp3", 15 "transcription": "Agent: Hello, thanks for calling...\nLead: Hi, I'm interested in...", 16 "summary": "Lead inquired about pricing for premium plan. Scheduled demo for Friday.", 17 "tools_called": ["book_appointment", "check_availability"], 18 "analysis_result": { 19 "sentiment": "positive", 20 "intent": "purchase" 21 }, 22 "appointments": [ 23 { 24 "datetime": "2024-02-01T10:00:00Z", 25 "type": "demo", 26 "confirmed": true 27 } 28 ] 29 } 30 }, 31 "lead_id": "lead_123", 32 "lead_contact": { 33 "number": "+15551234567", 34 "email": "john@example.com", 35 "name": "John Doe" 36 }, 37 "business_id": "biz_456", 38 "lead_created": false 39 }
Referencia de campos
Campos principales
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
timestamp | float | Sí | Marca de tiempo Unix epoch |
direction | string | Sí | inbound o outbound |
platform | string | Sí | Siempre voice |
call_id | string | Sí | Identificador único de llamada |
vapi_status | string | Sí | Estado de la llamada (ver valores abajo) |
Valores de vapi_status
| Valor | Descripción |
|---|---|
initiated | Llamada iniciada, timbrando |
completed | Llamada terminada exitosamente |
failed | Llamada falló al conectar |
busy | Línea del destinatario ocupada |
no-answer | Sin respuesta después de timbrar |
Campos opcionales
| Campo | Tipo | Descripción |
|---|---|---|
duration | integer | Duración de la llamada en segundos |
cost | float | Costo de la llamada en USD |
recording_url | string | URL de la grabación de audio |
transcription | string | Transcripción completa de la llamada |
summary | string | Resumen de la llamada generado por IA |
tools_called | array | Lista de nombres de herramientas ejecutadas durante la llamada |
tool_calls | array | Datos sin procesar de llamadas a herramientas con argumentos y resultados |
analysis_result | object | Resultado del análisis de IA (sentimiento, intención, etc.) |
appointments | array | Datos de citas extraídos |
Array de appointments
| Campo | Tipo | Descripción |
|---|---|---|
datetime | string | Fecha y hora ISO 8601 |
type | string | Tipo de cita |
confirmed | boolean | Si está confirmada |
Array de tool_calls
| Campo | Tipo | Descripción |
|---|---|---|
name | string | Nombre de la herramienta |
arguments | object | Argumentos de entrada |
result | object | Resultado de la ejecución de la herramienta |
Valores de dirección
| Valor | Descripción |
|---|---|
inbound | Prospecto llamó |
outbound | Agente llamó al prospecto |