Ir al contenido principal

Constructor de Chatbots Avanzado: Uso del Nodo Webhook

Actualizado ayer

Resumen

Los webhooks en el Chatbot Builder de Wati te permiten enviar y recibir datos en tiempo real entre tu chatbot y aplicaciones externas usando solicitudes API GET o POST. Esta característica habilita interacciones dinámicas del chatbot, como obtener detalles del usuario, verificar datos o integrarse con servicios de terceros.

Nota: La característica Webhook está disponible solo en los planes Pro & Business. Si tienes el plan Estándar, puedes crear y guardar chatbots con webhooks, pero deberás actualizarte para usarlos en los flujos de trabajo de Keyword Action o Default Action.

Instrucciones

El Chatbot Builder Avanzado está disponible solo en los planes Pro y Business.

Cómo Usar Webhooks en Chatbot Builder

1. Agregar un Webhook a Tu Chatbot

  • Abre el Wati Chatbot Builder.

  • Arrastra y suelta el icono de Webhook en el flujo de trabajo del chatbot.

  • Conéctalo a un paso relevante del chatbot.

2. Configurando el Nodo Webhook

URL y Método

  • Elige un método de solicitud: GET o POST.

  • Ingresa el punto final de la URL de la API externa.

  • Haz que la URL sea dinámica insertando variables usando el botón Variables.


  • Ejemplo:

  • https://webhook-wa-testing.clare.ai/123456789?name=##{{name}}![](https://brainfish-storage-prod.s3-accelerate.amazonaws.com/uploads/8e891fb2-b8da-40b6-8609-c45377c7118c/3e6b6f07-c5ff-4b63-b18f-b881dd533bdd/SCR-20250304-qcus.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAUPPN5IL3QLQZLDSU%2F20251203%2Fus-east-2%2Fs3%2Faws4_request&X-Amz-Date=20251203T050551Z&X-Amz-Expires=3000&X-Amz-Signature=fadf7374dd24de3800f0d21096ec52e22c61a8ced2d283de071d936ae80ed172&X-Amz-SignedHeaders=host&response-content-disposition=attachment"=844x330")

Personaliza los encabezados

  • Los encabezados te permiten incluir detalles adicionales en tu solicitud, como el tipo de contenido o la autorización.

  • Los encabezados son opcionales y están desactivados por defecto.

  • Deben seguir un formato clave-valor.

Ejemplo:

  • Clave = Content-Type

  • Valor = application/json

Personaliza el cuerpo

  • El cuerpo de la solicitud es donde incluyes los datos enviados a la API externa.

  • El cuerpo es opcional y está desactivado por defecto.

  • Cuando está habilitado, el cuerpo siempre debe estar en formato JSON.

Establece tus variables de prueba

  • Define manualmente las variables de prueba para simular las respuestas de la API mientras configuras tu webhook.

3. Prueba la solicitud del webhook

  • Haz clic en Test the request para verificar si la llamada a la API funciona como se espera.

4. Guarda las respuestas de la API como variables

  • Puedes capturar valores de la respuesta de la API y almacenarlos en variables o atributos personalizados.

  • Si la API devuelve JSON con pares clave-valor, puedes extraer y guardar valores específicos.

Ejemplo: almacenando "result": "success" de una respuesta de API:

{   "result": "success" }

Almacenando valores dentro de un objeto

  • Usa el formato: objectKey.keyName.

  • Ejemplo: Para almacenar QuoteId de la respuesta a continuación, usa Result.QuoteId.

{
"Result": {
"QuoteId": "xxxxx",
"QuoteNumber": "xxxxxx",
"PolicyNumber": null
},
"MessageValidation": null,
"QuoteReferrals": null
}

Almacenar valores dentro de un array de objetos

  • Para extraer y almacenar un valor de un array de objetos, usa el formato:

  • $.[0].objectKey.keyName[0].value

  • Ejemplo: Para capturar el valor de current_status, usa:

$.[0].tracking_data.shipment_track[0].current_status

JSON de ejemplo:

[
{
"tracking_data": {
"track_status": 1,
"shipment_track": [
{
"id": 1278937320,
"current_status": "Entregado"
}
]
}
}
]

5. Usando el enrutamiento de la respuesta

  • El enrutamiento de la respuesta te permite dividir las acciones del chatbot en función de los códigos de estado de la respuesta.

  • Puedes definir diferentes flujos de chatbot según la respuesta de la API.

Al integrar Webhooks, puedes mejorar la funcionalidad del chatbot con datos externos, automatizar flujos de trabajo y mejorar las interacciones del usuario de forma dinámica.

Preguntas frecuentes (FAQs)

Preguntas generales

1. ¿Qué son los webhooks en el Chatbot Builder de Wati?

Los webhooks permiten que tu chatbot envíe o reciba datos en tiempo real de aplicaciones externas usando solicitudes API GET o POST. Esto te ayuda a crear respuestas de chatbot dinámicas y personalizadas.

2. ¿Qué planes admiten la función de webhook?

Los webhooks están completamente disponibles en los planes Pro y Business. Los usuarios con el plan Estándar pueden crear y guardar chatbots con webhooks, pero deben actualizarse para usarlos en los flujos de trabajo de Keyword Action o Default Action.

3. ¿Cómo agrego un webhook a mi chatbot?

Abre el Chatbot Builder, arrastra el icono de Webhook a tu flujo de trabajo y conéctalo al paso del chatbot donde deseas que ocurra la llamada a la API.

4. ¿Qué métodos y URL puedo usar para las solicitudes de webhook?

Puedes usar solicitudes GET o POST. Ingresa el punto final de la API requerido e inserta variables en la URL si deseas pasar datos dinámicos del usuario.

5. ¿Son obligatorios los encabezados y el cuerpo de la solicitud?

No, ambos son opcionales. Agrega encabezados solo si la API necesita detalles adicionales como autorización o tipo de contenido. Habilita el cuerpo solo cuando debas enviar datos JSON a la API externa.

Prueba y manejo de la respuesta

6. ¿Cómo pruebo si mi webhook está funcionando?

Usa la opción Test the request para confirmar que la llamada a la API funciona como se espera durante la configuración.

7. ¿Puedo guardar valores de la respuesta de la API?

Sí, puedes guardar los valores devueltos en variables o atributos personalizados. Esto funciona para respuestas simples, objetos JSON anidados y arrays.

8. ¿Cómo extraigo valores de objetos anidados o arrays?

Usa la notación de puntos para objetos (por ejemplo: Result.QuoteId) y el formato de array para listas (por ejemplo: $.[0].tracking_data.shipment_track[0].current_status).

9. ¿Qué es el enrutamiento de la respuesta?

El enrutamiento de la respuesta te permite definir diferentes flujos de chatbot en función de los códigos de estado de la API, para que el chatbot pueda responder de forma diferente a las llamadas a la API exitosas o fallidas.

¿Ha quedado contestada tu pregunta?