Saltar al contenido principal

Flujos de trabajo

Los flujos de trabajo son automatizaciones del espacio de trabajo: cuando ocurre algo (un disparador), Campbooks ejecuta una lista ordenada de acciones — opcionalmente solo si se cumple una condición. Constrúyelos en /workflows con un editor al estilo Zapier; cada ejecución queda registrada para que puedas ver exactamente lo que ocurrió.

Disparadores

Un flujo de trabajo comienza a partir de uno de tres disparadores:

DisparadorSe activa cuando
Correo recibidoUn nuevo correo termina de procesarse (tras el análisis y la organización automática por IA)
WebhookUn servicio externo hace un POST a la URL única del flujo de trabajo, <url-de-tu-app>/webhooks/<token>
EventoSe publica un evento interno (p. ej., un documento es aprobado)

La URL del webhook se genera automáticamente y puede rotarse; no requiere autenticación, lo que permite que otros servicios la llamen.

Condiciones

Un disparador puede llevar una condición, y el flujo de trabajo solo se ejecuta si la supera — por ejemplo, "solo cuando el tipo de documento del correo es factura", o una comprobación de campo genérica como payload.status == "paid" sobre el cuerpo de un webhook. Una condición fallida detiene la ejecución de forma limpia.

Acciones

Cada paso realiza una acción. Acciones integradas:

AcciónQué hace
Enviar correoEnvía un mensaje desde una de tus cuentas conectadas
Petición HTTPRealiza una llamada API saliente
Mensaje de SlackPublica en un webhook entrante de Slack
Mensaje de DiscordPublica en un webhook entrante de Discord
Acción personalizadaLlama a una Conexión guardada (URL base + autenticación reutilizables)
Acción de correoActúa sobre el correo que disparó el flujo — etiqueta, archiva o pospone
Crear evento de calendarioConvierte el correo que disparó el flujo en un evento de calendario
Enviar a Google DriveCrea una carpeta o sube los adjuntos del correo
Enviar a NotionCrea una página o un elemento de base de datos
Emitir eventoPublica un evento interno (que puede disparar otros flujos de trabajo)

Plantillas con Liquid

Cada campo de un paso es una plantilla Liquid renderizada con los datos del disparador, para que las acciones puedan usar valores reales de lo que las activó:

  • Los disparadores de correo exponen email y documents — p. ej. {{ email.subject }}, {{ email.from }}.
  • Los disparadores de webhook exponen payload, headers y query — p. ej. {{ payload.invoice_id }}.

Las variables faltantes se renderizan como vacías en lugar de producir un error, por lo que las plantillas son permisivas.

Conexiones

Una Conexión es un destino de integración guardado y reutilizable: una URL base más autenticación cifrada (bearer, cabecera o básica). La Acción personalizada resuelve la conexión en el servidor e inyecta su cabecera de autenticación en tiempo de ejecución, de modo que tus secretos nunca viven dentro de la plantilla de un paso. Gestiónelas en Configuración → Integraciones → Conexiones.

Las llamadas salientes están protegidas. Cada acción respaldada por HTTP pasa por una capa de seguridad que bloquea las solicitudes a direcciones de loopback, privadas, de enlace local y de metadatos de la nube (los hosts locales solo se permiten en desarrollo), con límites de tamaño y tiempo de petición. Esto impide que un flujo de trabajo se convierta en una herramienta para acceder a tu red interna.

Historial de ejecuciones

Abre la pestaña Ejecuciones de un flujo de trabajo para ver cada ejecución: su estado (en curso, completada, fallida), cuándo empezó y terminó, cualquier error y la entrada/salida capturada para cada paso — de modo que depurar una automatización es cuestión de leer el rastro, no de adivinar.

Disparar desde la API

Los flujos de trabajo de webhook también pueden dispararse de forma programática a través de la API pública con un scope workflows:trigger, que es el equivalente autenticado de hacer un POST a la URL del webhook.