Imprimir página

Webhooks: Conectar SuperSaaS con otros sitios web

Los webhooks son devoluciones de llamada definidas por el usuario que informan a otras aplicaciones o sitios web sobre eventos que ocurren en tu cuenta SuperSaaS casi en tiempo real.

Algunos ejemplos sobre cómo puedes utilizar un webhook:

logotipos de webhooks
  • Cuando un nuevo usuario se registra en tu cuenta SuperSaaS, se le suscribe a una lista de correo MailChimp
  • Cuando se registra un nuevo usuario, se le envía un PDF con tus términos y condiciones a su dirección de correo
  • Cuando se concierta una nueva cita, se genera una factura en QuickBooks o Freshbooks
  • Cuando se concierta una nueva cita para una clase específica, se marca en el calendario de Google del profesor de esa clase
  • Cuando una cita está a punto de empezar, se envía una notificación a Slack o se manda una notificación a tu teléfono
  • Cuando un usuario consigue pasar de una lista de espera a tener una fecha confirmada, se le envía un mensaje de SMS
  • Cuando se envía un correo electrónico, se desavía a otro servidor de correo electrónico

Configurar automáticamente webhooks utilizando Zapier o Integromat

Puedes utilizar Zapier o Integromat para crear enlaces de forma interactiva entre cientos de sitios web populares y SuperSaaS, sin necesidad de programar. Tanto Zapier como Integromat ofrecen una versión de prueba y espacio libre para pequeños usuarios.

Debería ser relativamente sencillo crear webhooks desde ejemplos prediseñados, pero puedes encontrar información detallada abajo si quieres un control más exhaustivo al filtrar solo ciertos eventos.

Nuevo cliente a MailChimpNuevo usuario a MailChimp
Nueva cita a Google CalendarNueva cita a Google Calendar
Nueva cita a QuickBooksNueva reserva a Factura en QuickBooks
Nueva cita a corroe electrónicoNueva cita a correo electrónico

Disparadores soportados

Hay varios sucesos diferentes que puedes monitorizar. Algunos de ellos se pueden monitorizar para un nuevo evento, o un evento “modificado”. El evento modificado incluye todos los cambios, por lo que también incluye eventos “nuevos” o “eliminados”. Si configuras tanto “Nuevo usuario” como “Usuario modificado”, ambos se dispararán cuando se registre un nuevo usuario. Ten en cuenta que si has configurado tu horario para no requerir el registro, entonces nunca verás un disparador “Nuevo usuario”, solo un disparador “Nueva cita”.

DisparadorSe dispara cuando…
Nuevo usuarioun usuario se registra en tu cuenta
Usuario modificadoel usuario actualiza la información de registro, o el administrador lo hace por el
Nueva citaun usuario, o el administrador, concierta una cita en un horario específico
Cita cambiadase haga cualquier cambio para una cita, incluyendo “Nuevo”, “Borrar”, “Colocación en lista de espera”, “Pago recibido”, etc (ver la lista completa debajo)
Nuevo formulario independientese rellena un formulario independiente; ten en cuenta que esto no funciona cuando un formulario está adjunto a una cita, en lugar de eso se dispararía el webhook de la cita
Formulario independiente actualizadose haga cualquier cambio en un formulario independiente (los formularios integrados dispararían una “Cita modificada” o “Usuario modificado”)
Enviar correose envía un correo electrónico desde tu cuenta, incluyendo los correos de “Contraseña perdida”, etc. Útil para enviar correos a través de tu propio servidor. El correo no será enviado por nosotros si el disparador está activo.
Recordatorio
Seguimiento
se manda un Recordatorio o Mensaje de Seguimiento. El recordatorio o seguimiento no será enviado por nosotros si el disparador está activo.

Filtrar eventos

Cuando conectas dos servicios utilizando Zapier o Integromat, eso te permite filtrar los eventos. Algunos ejemplos de cómo puedes utilizar los filtros:

  • Solo envía una notificación SMS cuando alguien está colocado en una lista de espera, no para todos los cambios de cita.
  • Solo notifica a un profesor de una nueva reserva si la clase es impartida por ese profesor, ignora las otras reservas en el mismo horario.
  • Solo envía una notificación para la gestión si la reserva tiene un valor de más de $100.

Cuando creas un nuevo disparador, Zapier/Integromat te pedirá un objeto de ejemplo de SuperSaaS. El objeto de ejemplo clasifica los campos disponibles y algunos contenidos de ejemplo. Los campos que el disparador envía dependen de los campos que están disponibles en tu cuenta y si hay un formulario personalizado adjunto. Hay campos “evento” y “rol” incluidos en la mayoría de los disparadores que pueden utilizarse para filtrar los eventos. Por ejemplo, podrás filtrar solo los disparadores que contienen el valor “borrar” en el campo “evento”.

DisparadorValores posibles para el campo "evento"
Nuevo usuarionew
Usuario cambiadonew, change, delete
Nueva citacreate
Cita cambiadacreate, edit, place, pending, destroy, restore, approve, revert
Nuevo formularionew
Formulario cambiadonew, change, delete, restore
Recordatorio / Seguimientoreminder, follow_up

Campo "Rol"Quién disparó el evento…
0AnónimoSin sesión
1Sesión iniciada con contraseña compartida
2Validado mediante una verificación de rango de IP
3Usuario normal
4Superusuario
5Administrador o Revendedor
7Sistema o Pasarela de pago

Al crear o cambiar una cita que incluye el pago, el campo “estado” y “mensaje de estado” permite reducir aún más los eventos específicos utilizando la lista de todos los posibles códigos de estado. Por ejemplo, podrás seleccionar un filtro para que actúe solo en mensajes para citas que se han reembolsado.

Configurar disparadores manualmente (avanzado)

Por favor, ten en cuenta que esta característica solo está disponible para suscriptores. Puedes probar por una semana al hacer clic en el botón “Empezar prueba gratuita” en la pantalla webhooks.

Crear un disparador web sin utilizar Zapier o Integromat requiere algunas habilidades de desarrollo web. El resto de esta página contiene información para programadores que quieren añadir un disparador para enviar información a su propia aplicación, o que quieren programar su propia interfaz entre SuperSaaS y otro sitio web.

Puedes crear y actualizar webhooks manualmente en la pantalla Webhooks dentro de tu cuenta. Un disparador envía datos, por lo que requiere que un servicio web esté disponible en otro lado para recibir esos datos. Normalmente el otro lado es un script o una aplicación que creas, pero puede también ser una tercera parte a la que se conecta el webhook.

Personalizar el mensaje que envía un webhook

Por defecto, un webhook envía todos los campos relevantes codificados por JSON. Ten en cuenta que si un objeto tiene un formulario personalizado adjunto ese formulario estará también incluido. Puedes cambiar esto para no enviar ningún dato, o enviar datos definidos por ti mismo. Por ejemplo, puede interesarte incluir algún tipo de llave de API o autenticación en el mensaje.

Después de crear un nuevo webhook llegarás automáticamente a una pantalla donde puedes editar los contenidos de la carga útil, el mensaje que envía el webhook. Si haces clic en “Personalizar” verás un editor JSON que te permite añadir y eliminar campos específicos. En la parte inferior de esa pantalla verás todas las palabras clave que son reemplazadas cuando se genera el mensaje. Las palabras mágicas cambian dependiendo de los campos que están habilitados para ese objeto.

Comprobar un webhook

Un buen sitio web para ayudarte a depurar un webhook es Hookbin. El servicio te suministra un enlace que puedes utilizar como el URL objetivo, de modo que puedas monitorizar exactamente a través de dónde se envían los datos.

Puedes también encontrar un enlace “Test” en la pantalla "Editar" del webhook que te permite disparar un webhook manualmente y modificar el mensaje de salida. Esto te permite modificar una llamada saliente para imitar, por ejemplo, un pago fallido sin realmente tener que generar un evento en tu horario.

El mensaje de prueba debería salir en promedio 5 segundos después de que se haya creado. Si la parte receptora responde con un código de estado que no es “OK” (código de estado fuera de rango 200 a 300) el mensaje se intentará enviar de nuevo a intervalos crecientes. Después de 10 fallos, el mensaje se borrará y si un webhook tiene más de 5 mensajes fallidos se desactivará hasta que sea reactivado manualmente en la pantalla del webhook. Si el receptor responde con un mensaje de código de estado “410 Gone”, el webhook se eliminará inmediatamente.