> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jelou.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Triggers

> Configura webhooks que se disparan automáticamente cuando se crean, actualizan o eliminan registros

Los **Triggers** (disparadores) te permiten ejecutar webhooks automáticamente cuando ocurren cambios en tus colecciones. Son ideales para sincronizar datos con sistemas externos, enviar notificaciones o ejecutar flujos de trabajo.

<Frame caption="Sección de Triggers en la configuración de Databases">
  <img src="https://mintcdn.com/jelouai/daUUvITM1J6ByU2U/assets/images/datum/triggers.png?fit=max&auto=format&n=daUUvITM1J6ByU2U&q=85&s=a3578f00045680b196daf8ae5f18fc6a" alt="Página de Triggers con estado vacío y botón New trigger" width="3024" height="1730" data-path="assets/images/datum/triggers.png" />
</Frame>

## Crear un trigger

<Frame caption="Formulario para crear un nuevo trigger con eventos y configuración de webhook">
  <img src="https://mintcdn.com/jelouai/daUUvITM1J6ByU2U/assets/images/datum/new-trigger.png?fit=max&auto=format&n=daUUvITM1J6ByU2U&q=85&s=9bf746da6d3e92bdb733dc2063e6c5cc" alt="Formulario New trigger con campos Name, Collection, Event (Create, Update, Delete), Webhook Request, Headers y Status" width="3024" height="1730" data-path="assets/images/datum/new-trigger.png" />
</Frame>

<Steps>
  <Step title="Accede a Triggers">
    Ve a **Configuración > Triggers** desde la barra lateral izquierda.
  </Step>

  <Step title="Haz clic en + New trigger">
    El botón se encuentra en la esquina superior derecha.
  </Step>

  <Step title="Configura el trigger">
    Completa los siguientes campos:

    * **Name** — Un nombre descriptivo (ej. "Sync CRM", "Notificar nuevo pedido")
    * **Collection** — La colección que quieres monitorear
    * **Event** — El tipo de evento que dispara el webhook
    * **Update scope** — Solo para el evento Update: dispara ante cualquier columna o solo columnas específicas
    * **Webhook Request** — El método HTTP y la URL destino
    * **Headers** — Headers personalizados para la petición
    * **Status** — Activa o desactiva el trigger
  </Step>

  <Step title="Haz clic en Create trigger">
    El trigger se activa inmediatamente si el estado está en **Active**.
  </Step>
</Steps>

## Eventos disponibles

| Evento     | Se dispara cuando...                                                   |
| ---------- | ---------------------------------------------------------------------- |
| **Create** | Se inserta un nuevo registro en la colección                           |
| **Update** | Cambia un registro existente (puedes limitarlo a columnas específicas) |
| **Delete** | Se elimina un registro                                                 |

<Tip>
  Puedes crear múltiples triggers para la misma colección con diferentes eventos. Por ejemplo, un trigger para sincronizar datos en cada **Create** y otro para enviar una alerta en cada **Delete**.
</Tip>

### Alcance de actualización

Cuando el evento es **Update**, aparece un control adicional de **Update scope** (alcance de actualización) con dos opciones:

| Opción                   | Comportamiento                                                                       |
| :----------------------- | :----------------------------------------------------------------------------------- |
| **Cualquier columna**    | El webhook se dispara ante cualquier cambio en el registro.                          |
| **Columnas específicas** | Eliges una o más columnas; el webhook solo se dispara cuando cambia alguna de ellas. |

Al elegir **Columnas específicas** debes seleccionar al menos una columna. Los eventos **Create** y **Delete** siempre usan "cualquier columna" y no muestran este control.

## Configuración del webhook

### Método HTTP

Selecciona el método HTTP apropiado para tu endpoint:

| Método     | Uso típico                                        |
| ---------- | ------------------------------------------------- |
| **POST**   | Enviar datos del registro al servidor (más común) |
| **GET**    | Notificar sin enviar datos en el body             |
| **PUT**    | Reemplazar un recurso completo                    |
| **PATCH**  | Actualizar parcialmente un recurso                |
| **DELETE** | Solicitar eliminación de un recurso               |

### URL del webhook

Ingresa la URL completa del endpoint que recibirá la notificación (ej. `https://tu-api.com/webhooks/databases`).

<Warning>
  La URL debe ser **pública** y usar **HTTPS**.
</Warning>

### Headers

Agrega headers personalizados para autenticación u otros propósitos. Por defecto se incluye un header de ejemplo para **Authorization** con formato Bearer token.

Haz clic en **+ Add header** para agregar headers adicionales. Cada header tiene un campo de nombre (key) y valor (value).

## Reintentos automáticos

Si la entrega de un webhook falla, Databases la reintenta automáticamente.

## Estado del trigger

El toggle de **Status** te permite activar o desactivar un trigger sin eliminarlo. Un trigger desactivado no envía webhooks aunque ocurran eventos en la colección.
