Botón de llamada (llamada de voz)
Resumen para integración
- Endpoint:
POST https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging- Token: de mensajería, en el encabezado
Authorization: Bearer {{wa-msg-api-token}}(cómo generarlo)- Campos comunes:
from,to(teléfono o BSUID) ytype(detalle)- Valores de
typeen esta página:"interactive"- Respuesta: la misma para todos los mensajes (ver respuesta)
Mensaje de formato libre con un botón que permite al usuario iniciar una llamada de WhatsApp al número del negocio. Cuando el usuario presiona el botón, se inicia una llamada de WhatsApp al negocio. Los mensajes se envían con POST /v1/messaging; los encabezados, los campos comunes y la respuesta están en Conexión HTTP.
Nota: esta es una funcionalidad de mensajería y es independiente del botón de plantilla
VOICE_CALL. Requiere que WhatsApp Calling esté habilitado en el número de teléfono. Consulta la sección Calling API.
Botón de llamada
El campo type debe ser "interactive" y el contenido del mensaje se envía en el objeto voice_call. Consulta la estructura general de los mensajes interactivos.
Cuerpo
Campos de Botón de llamada:
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| voice_call | Objeto para enviar un mensaje con un botón de llamada de WhatsApp. | Objeto | Obligatorio si se envía un mensaje con botón de llamada. |
Objeto voice call
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| body | Texto del cuerpo del mensaje. Máximo 1024 caracteres. | String | Obligatorio. |
| action.name | Debe ser "voice_call". | String | Opcional. |
| action.parameters.display_text | Etiqueta del botón. Máximo 20 caracteres. Valor por defecto Call Now. | String | Opcional. |
| action.parameters.ttl_minutes | Tiempo de vida del botón, en minutos. Entre 1 y 43200 (30 días). | Integer | Opcional. |
| action.parameters.payload | Cadena arbitraria de seguimiento. Máximo 512 caracteres. | String | Opcional. |
Ejemplo
Ejemplo completo de Botón de llamada (petición HTTP y cuerpo JSON):
Petición HTTP
curl -X POST 'https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging' \-H 'Authorization: Bearer {{wa-msg-api-token}}' \-H 'Content-Type: application/json' \-d '{"from": "5215500000001","to": "5215500000002","type": "interactive","voice_call": {"body": "¡Ahora puedes llamarnos por WhatsApp para una atención más rápida!","action": {"name": "voice_call","parameters": {"display_text": "Llamar por WhatsApp","ttl_minutes": 100,"payload": "payload data"}}}}'
Body
{"from": "5215500000001","to": "5215500000002","type": "interactive","voice_call": {"body": "¡Ahora puedes llamarnos por WhatsApp para una atención más rápida!","action": {"name": "voice_call","parameters": {"display_text": "Llamar por WhatsApp","ttl_minutes": 100,"payload": "payload data"}}}}
Una petición mínima sin parámetros usa la etiqueta de botón por defecto:
{"from": "5215500000001","to": "5215500000002","type": "interactive","voice_call": {"body": "Toca abajo para llamarnos sobre tu pedido.","action": {"name": "voice_call"}}}
