Payload de webhook de SMS

Los webhooks de SMS se envían para cada mensaje de texto entrante y saliente. Incluye el historial completo de la conversación.

Payload de ejemplo

1{
2 "event": {
3 "id": "evt_sms_abc123",
4 "channel": "sms",
5 "timestamp": 1706640000.0,
6 "data": {
7 "timestamp": 1706640000.0,
8 "direction": "outbound",
9 "platform": "sms",
10 "message_id": "msg_xyz789",
11 "sms_status": "sent",
12 "body": "Thanks for reaching out! When works best for a quick call?",
13 "delivery_status": "delivered",
14 "provider": "twilio",
15 "fallback_to_sms": false,
16 "usage_data": {
17 "prompt_tokens": 150,
18 "completion_tokens": 45,
19 "total_tokens": 195,
20 "model": "gpt-4"
21 },
22 "tools_called": ["check_calendar"],
23 "tool_calls": [
24 {
25 "name": "check_calendar",
26 "arguments": { "date": "2024-02-01" },
27 "result": { "available_slots": ["10:00", "14:00", "16:00"] }
28 }
29 ],
30 "attachments": [],
31 "analysis_result": {
32 "sentiment": "positive",
33 "intent": "schedule_meeting"
34 },
35 "appointments": []
36 }
37 },
38 "lead_id": "lead_123",
39 "lead_contact": {
40 "number": "+15551234567",
41 "email": "john@example.com",
42 "name": "John Doe"
43 },
44 "business_id": "biz_456",
45 "lead_created": false,
46 "full_conversation": [
47 {
48 "message_id": "msg_001",
49 "timestamp": 1706639500.0,
50 "direction": "inbound",
51 "body": "Hi, I saw your ad and I'm interested in learning more",
52 "sms_status": "received",
53 "delivery_status": "delivered"
54 },
55 {
56 "message_id": "msg_xyz789",
57 "timestamp": 1706640000.0,
58 "direction": "outbound",
59 "body": "Thanks for reaching out! When works best for a quick call?",
60 "sms_status": "sent",
61 "delivery_status": "delivered",
62 "usage_data": {
63 "prompt_tokens": 150,
64 "completion_tokens": 45,
65 "total_tokens": 195,
66 "model": "gpt-4"
67 },
68 "tools_called": ["check_calendar"]
69 }
70 ]
71}

Referencia de campos

Campos principales

CampoTipoRequeridoDescripción
timestampfloatMarca de tiempo Unix epoch
directionstringinbound o outbound
platformstringSiempre sms
message_idstringIdentificador único del mensaje
sms_statusstringEstado del mensaje
bodystringContenido del mensaje

Valores de sms_status

ValorDescripción
sentMensaje enviado exitosamente
receivedMensaje entrante recibido
failedMensaje falló al enviar

Valores de delivery_status

ValorDescripción
queuedEn cola para entrega
sentEnviado al operador
deliveredEntrega confirmada
undeliveredNo se pudo entregar
failedEntrega falló

Valores de provider

ValorDescripción
twilioEnviado vía Twilio
contiguityEnviado vía Contiguity

Campos opcionales

CampoTipoDescripción
delivery_statusstringEstado de entrega del operador
providerstringProveedor de SMS usado
fallback_to_smsbooleanTrue si iMessage recurrió a SMS
usage_dataobjectUso de tokens LLM para respuestas de IA
tools_calledarrayLista de nombres de herramientas ejecutadas
tool_callsarrayDatos sin procesar de llamadas a herramientas
attachmentsarrayURLs de adjuntos MMS
attachment_metadataobjectDetalles de adjuntos
analysis_resultobjectResultado del análisis de IA
appointmentsarrayDatos de citas extraídos
execution_contextobjectContexto del activador de origen

Objeto usage_data

CampoTipoDescripción
prompt_tokensintegerTokens de entrada usados
completion_tokensintegerTokens de salida generados
total_tokensintegerTokens totales
modelstringModelo LLM usado

Array full_conversation

Los webhooks de SMS incluyen full_conversation con el historial completo del hilo. Cada mensaje contiene:

CampoTipoDescripción
message_idstringIdentificador del mensaje
timestampfloatMarca de tiempo Unix epoch
directionstringinbound o outbound
bodystringContenido del mensaje
sms_statusstringEstado
delivery_statusstringEstado de entrega
usage_dataobjectUso de LLM (solo salientes)
tools_calledarrayHerramientas ejecutadas (solo salientes)

El array full_conversation es único de los webhooks de SMS y proporciona contexto completo de la conversación para cada evento.