Saltar al contenido

Integraciones

Conectar webhooks a tus propios sistemas

Robin van Maasakker · 23 jun. 2026

Con un webhook, Beamcore envía automáticamente un mensaje a la dirección que elijas en cuanto ocurre algo, por ejemplo cuando se crea un proyecto. Así mantienes tu propio sistema al día sin tener que volver a introducir los datos. La interfaz de Beamcore está en neerlandés, por lo que los nombres de botones y menús se muestran en neerlandés con su traducción.

Atención: el menú Integraties (Integraciones) no está activado por defecto. Es un ajuste por empresa que Beamcore activa para ti si lo solicitas. Si no ves el menú, ponte en contacto con Beamcore. Además, el menú solo es visible para el propietario de la empresa.

Crear un webhook

  1. Ve a Integraties → Webhooks (Integraciones → Webhooks) y crea un nuevo webhook.
  2. Rellena un Naam (Nombre) con el que reconozcas la conexión.
  3. En URL, introduce la dirección en la que tu sistema recibe los mensajes.
  4. En Events (Eventos), marca sobre qué quieres recibir un mensaje. Debes elegir al menos uno.
  5. Deja Actief (Activo) activado y guarda.

Un webhook que no está activo no recibe mensajes. Con Bewerken (Editar) puedes cambiar más adelante el nombre, la URL y los eventos.

Los eventos disponibles

Beamcore envía mensajes para estos eventos:

  • Project aangemaakt (Proyecto creado, project.created): se ha creado un nuevo proyecto. El mensaje contiene el id y el nombre del proyecto.
  • Project gearchiveerd (Proyecto archivado, project.archived): un proyecto pasa al estado archivado. El mensaje contiene el id, el nombre y el estado anterior.
  • Tekening geüpload (Plano subido, drawing.uploaded): se ha añadido un nuevo plano a un proyecto. El mensaje contiene el id y el nombre del plano y el id del proyecto.
  • Test-bericht (Mensaje de prueba, webhook.test): el mensaje que envía el botón Stuur test (Enviar prueba).

Cómo es un mensaje

Beamcore envía cada mensaje a tu URL como una petición POST con un cuerpo JSON. El cuerpo siempre tiene tres campos:

  • event: el nombre del evento, por ejemplo project.created.
  • occurred_at: la hora en notación ISO 8601.
  • data: los datos que corresponden al evento.

Con cada petición, Beamcore envía estas cabeceras:

  • Content-Type: application/json.
  • X-Beamcore-Event: el nombre del evento.
  • X-Beamcore-Signature: la firma del mensaje.

Tu sistema debe responder con un código de estado del rango 200. Cualquier otra respuesta se considera fallida. Beamcore espera un máximo de 30 segundos a recibir respuesta.

Verificar la firma

Cada webhook recibe automáticamente su propia clave secreta al crearse. La cabecera X-Beamcore-Signature contiene el texto sha256=, seguido del HMAC-SHA256 del cuerpo sin procesar del mensaje, calculado con esa clave. Calcula el mismo valor por tu parte sobre el cuerpo recibido y compáralo con la cabecera. Si coinciden, sabes que el mensaje procede de Beamcore y que no se ha modificado por el camino.

Por ahora, la clave secreta no es visible en el portal. Si quieres verificar la firma, ponte en contacto con Beamcore.

Enviar un mensaje de prueba

  1. En la lista, haz clic en Stuur test junto al webhook y confirma.
  2. Beamcore pone en cola un mensaje de prueba para la URL de ese webhook.
  3. Abre Integraties → Webhook log (Integraciones → Registro de webhooks) para comprobar si el mensaje ha llegado.

No necesitas marcar el evento Test-bericht para ello. Si recibes el aviso de que no se ha puesto nada en cola, comprueba si el webhook está activo.

Mensajes fallidos

Si la entrega falla, Beamcore vuelve a intentarlo, con un máximo de cinco intentos por mensaje. Entre los intentos hay un tiempo de espera creciente: 10 segundos, 30 segundos, 2 minutos y 10 minutos. En la lista de webhooks ves Laatste succes (Último éxito) y Laatste fout (Último error) de cada webhook.

El registro de webhooks

En Integraties → Webhook log encontrarás cada intento de entrega, con el más reciente arriba. Para cada intento ves:

  • Webhook y Event (Evento): qué conexión y qué evento.
  • Status (Estado): el código de estado que devolvió tu sistema.
  • Ok? (¿Correcto?): si la entrega se realizó correctamente.
  • Poging (Intento): qué intento fue.
  • Duur (ms) (Duración en ms): cuánto tardó tu sistema en responder.
  • Fout (Error): el motivo si falló, por ejemplo un código de estado o un tiempo de espera agotado.
  • Tijdstip (Hora): cuándo se produjo el intento.

Los recuadros encima de la tabla muestran el número total de intentos y cuántos tuvieron éxito y cuántos fallaron en las últimas 24 horas.

¿Te ha sido útil este artículo?

¿Necesitas ayuda para ponerlo en práctica?