Router y Filtros: Controlando el Flujo de Datos

Lectura
15 min~9 min lectura

Router y Filtros: Controlando el Flujo de Datos

CONCEPTO CLAVE: Un Router es el componente que permite dividir un flujo de automatización en múltiples caminos, mientras que los Filtros actúan como guardas que determinan qué datos continúan su camino según condiciones específicas. Dominar estos dos elementos es fundamental para crear automatizaciones inteligentes y eficientes.

¿Por qué necesitas routers y filtros?

En el mundo de la automatización, no todas las situaciones requieren el mismo tratamiento. Imagina que recibes un email con información de nuevos clientes: algunos vienen de tu página web, otros por recomendación y algunos son clientes VIP. ¿Deberían todos seguir el mismo camino? Probablemente no.

Los routers y filtros te permiten:

  • Dirigir datos hacia diferentes destinos según su contenido
  • Evitar errores al filtrar información incompleta o inválida
  • Crear lógicas condicionales complejas sin código
  • Optimizar el rendimiento de tus escenarios
  • Mantenimiento más sencillo al tener flujos separados
📌 Nota importante: En Zapier, el concepto de Router se implementa mediante "Paths" o "Filter by Zapier", mientras que en Make (Integromat) existe un módulo nativo de Router con capacidades más avanzadas. Ambas plataformas son igualmente válidas, pero各有千秋.

El Router en Make (Integromat)

El Router es uno de los módulos más versátiles de Make. Al agregarlo a tu escenario, automáticamente crea dos caminos de salida: Route 1 y Route 2. Puedes agregar tantos routes como necesites haciendo clic en el botón "+".

Anatomía de un Router

ElementoDescripciónEjemplo
Nombre de RouteEtiqueta descriptiva del camino"Clientes VIP", "Leads norm"ales"
Filtro de RouteCondición que debe cumplirse"Tipo = Premium"
Color del RouteIdentificación visual rápidaAzul, verde, rojo, etc.
Orden de evaluaciónEl orden en que se evalúan las condicionesDe arriba a abajo
⚠️ Importante: Las rutas se evalúan en orden de arriba a abajo. Si una condición se cumple en la primera ruta, las siguientes NO se evaluarán. Diseña tus filtros pensando en este orden jerárquico.

Filtros: Los guardianes del flujo

Un filtro sin un router es como un guardia que deja pasar o no a las personas, pero no decide hacia dónde van. Los filtros siempre están asociados a un camino específico del router y evaluarán cada paquete de datos que llegue.

Sintaxis de condiciones en Make

Make utiliza operadores que debes dominar para crear filtros efectivos:

OperadorSímboloUsoEjemplo
Igual a=Coincidencia exactastatus = "completado"
No igual aDiferente deestado ≠ "cancelado"
Mayor que>Valor numérico mayorpresupuesto > 1000
Menor que<Valor numérico menoredad < 18
ContienecontainsTexto incluidoemail contains "@empresa.com"
ExisteexistsEl campo tiene valorteléfono exists
💡 Tip profesional: Cuando necesites múltiples condiciones, usa los operadores AND (todas deben cumplirse) y OR (al menos una debe cumplirse). Puedes crear condiciones muy complejas combinándolos.

Caso práctico: Clasificación automática de tickets

Vamos a crear un escenario completo que demuestra el poder de routers y filtros. Situación: Tu sistema recibe tickets de soporte y necesitas clasificarlos automáticamente.

  1. Trigger: Nuevo ticket creado en tu sistema (JSON, webhook, o desde una app)
  2. Módulo Router: Se divide en 3 rutas según la prioridad
  3. Ruta 1 - Crítico: Prioridad = "crítico" → Notificación inmediata a Slack + Ticket en primera posición
  4. Ruta 2 - Normal: Prioridad = "normal" → Asignación automática por departamento
  5. Ruta 3 - Informativo: Prioridad = "bajo" → Guardar en base de datos para análisis mensual
// Ejemplo de estructura de datos del ticket
{
  "ticket_id": "TKT-2024-0156",
  "cliente": "Empresa ABC",
  "prioridad": "crítico",
  "asunto": "Sistema fuera de línea",
  "descripcion": "都无法访问系统..."
}

// Los filtros serían:
// Ruta 1: prioridad = "crítico"
// Ruta 2: prioridad = "normal" 
// Ruta 3: prioridad = "bajo" OR prioridad = "informativo"

Implementación paso a paso en Make

Ahora te guiaré detalladamente para construir este escenario:

Paso 1: Configurar el Trigger

Agrega el módulo que detectará los nuevos tickets. Puede ser un webhook personalizado, una consulta a API, o integración directa con tu CRM o herramienta de soporte.

Paso 2: Insertar el Router

Busca el módulo "Router" en la lista de módulos y arrástralo después del trigger. Make creará automáticamente dos rutas.

💡 Tip: Para agregar una tercera ruta, haz clic en el botón "+" que aparece al lado del router. No hay límite en el número de rutas, pero best practice es mantenerlo entre 3-5 para facilitar el mantenimiento.

Paso 3: Configurar cada Ruta

Haz clic en el engranaje de cada ruta para configurar su filtro. Aparecerá una ventana donde podrás:

  1. Seleccionar el campo a evaluar (del módulo anterior)
  2. Elegir el operador de comparación
  3. Ingresar el valor a comparar
  4. Nombrar la ruta descriptivamente

Paso 4: Agregar acciones después de cada Ruta

Ahora cada ruta puede tener su propio conjunto de acciones. En nuestro ejemplo:

"La belleza del router está en que cada camino es completamente independiente. Puedes tener 3 acciones en una ruta y 15 en otra. Make ejecutará TODAS las acciones de cada ruta que aplique."
Ver más: Configuración avanzada de filtros

Make permite filtros muy sofisticados que incluyen:

  • Filtros con texto: contains, starts with, ends with, matches pattern (regex)
  • Filtros con fechas: before, after, between, is empty
  • Filtros numéricos: between, greater than or equal, less than or equal
  • Filtros de arrays: exists in array, array contains, array is empty
  • Filtros booleanos: is true, is false

También puedes usar funciones como: toLower(), toUpper(), formatDate(), parseDate(), entre muchas otras para transformar datos antes de evaluar.

El Router en Zapier: Paths

Zapier implementa el concepto de Router mediante "Paths". Aunque la implementación es diferente, el resultado es similar. Un Zap puede tener múltiples paths, y cada uno tiene sus propias condiciones.

Diferencias clave entre Make y Zapier

CaracterísticaMake (Integromat)Zapier
Nombre del componenteRouter + FiltersPaths
Número de rutasIlimitadoMáximo 3 por Zap (Plan gratuito: 2)
Condiciones por pathMultiple (AND/OR)Multiple (AND/OR)
EvaluaciónPrimera que coincideTodas las que coinciden
VisibilidadColores diferenciadosSecciones colapsables
⚠️ Limitación de Zapier: En el plan gratuito, solo puedes tener 2 Paths por Zap. Si necesitas más, debes actualizar a un plan pago. En Make, no hay límite de rutas.

Patrones avanzados de automatización

Patrón 1: Router con fallback

Siempre incluye una ruta "catch-all" o de respaldo para datos que no coincidan con ninguna condición anterior:

// Ruta 1: Tipo = "A" → Acción A
// Ruta 2: Tipo = "B" → Acción B  
// Ruta 3: (sin filtro / TRUE) → Acción de respaldo
// La ruta 3 atrapará cualquier dato que no sea A ni B

Patrón 2: Router en cascada

Puedes anidar routers para crear decisiones más complejas:

  1. Primer Router: Clasifica por región (Latam, Europa, Asia)
  2. Cada ruta tiene su propio Router interno: Clasifica por tipo de cliente
  3. Finalmente, cada sub-ruta ejecuta acciones específicas por región y tipo
💡 Tip de optimización: Los routers en cascada pueden afectar el rendimiento. Si tienes más de 3 niveles, considera consolidar las condiciones o usar filtros más complejos en un solo nivel.

Patrón 3: Filtro compuesto con múltiples condiciones

A veces un solo filtro no es suficiente:

// Condición compleja:
// (Tipo = "Premium" AND Monto > 5000) OR (Tipo = "VIP" AND exists(Código_referido))
// 
// Esta condición es VERDADERA si:
// - Es cliente Premium con compra mayor a $5000, O
// - Es cliente VIP y tiene código de referido

Manejo de errores y casos edge

Un escenario robusto debe contemplar qué sucede cuando los datos no son los esperados:

  1. Datos faltantes: Usa el operador "exists" para verificar que los campos obligatorios existan
  2. Valores inesperados: El router fallback atrapa todo lo que no coincida
  3. Errores en módulos: Configura "Error Handlers" por ruta
  4. Datos duplicados: Considera agregar un filtro de deduplicación usando IDs únicos
📌 Best Practice: Antes de terminar tu escenario, pruébalo con diferentes tipos de datos: los esperados, los edge cases (extremos), y los inesperados. Solo así tendrás confianza en tu automatización.

Depuración y testing

Make ofrece herramientas excelentes para depurar routers y filtros:

  • Run Once: Ejecuta el escenario con un solo conjunto de datos y ve qué rutas se activan
  • Inspect Bundles: Revisa los datos que llegan a cada módulo
  • Filter Results: En la cola de ejecución, filtra por rutas específicas
  • Logs detallados: Activa logs completos para troubleshooting
Ver más: Ejercicios prácticos de depuración

Para practicar la depuración, crea un escenario de prueba con:

  1. Módulo HTTP que devuelve datos de prueba en JSON
  2. Router con 4 rutas diferentes
  3. Cada ruta envía un email a una dirección diferente
  4. Ejecuta múltiples veces cambiando los datos de entrada
  5. Verifica qué emails llegan según las condiciones

Este ejercicio te ayudará a entender visualmente cómo funcionan los filtros.

Quiz de comprensión

🧠 Quiz: Routers y Filtros

¿Qué sucede si un dato cumple la condición del filtro de la Ruta 1 y también la de la Ruta 2 en un Router de Make?

  • A) Se ejecuta ambas rutas simultáneamente
  • B) Solo se ejecuta la Ruta 1, ya que las rutas se evalúan en orden
  • C) Se produce un error de duplicación
  • D) El escenario se detiene y espera intervención manual
✅ Respuesta correcta: B) Solo se ejecuta la Ruta 1. En Make, las rutas se evalúan de arriba a abajo y la primera que coincide es la única que se ejecuta. Este es un comportamiento importante a considerar al diseñar tus escenarios.
🧠 Quiz: Filtros

¿Cuál es la mejor práctica cuando tienes múltiples tipos de datos que necesitan tratamiento diferente?

  • A) Crear un escenario separado para cada tipo
  • B) Usar un Router con filtros específicos por ruta
  • C) Enviar todo al mismo módulo y usar condicionales internos
  • D) Filtrar manualmente antes de activar la automatización
✅ Respuesta correcta: B) Usar un Router con filtros específicos. Esto centraliza tu automatización, facilita el mantenimiento, permite monitoreo unificado y es más escalable que tener múltiples escenarios separados.

Conclusión

Dominar routers y filtros es essencial para cualquier automatizador serio. Estas herramientas te permiten:

  • Crear flujos de trabajo inteligentes que se adaptan a diferentes situaciones
  • Reducir errores al validar datos antes de procesarlos
  • Optimizar recursos procesando solo la información relevante
  • Facilitar el mantenimiento al tener lógica clara y visual
📌 Próximo paso: En la siguiente lección, profundizaremos en "Iteradores y Agregadores" donde aprenderás a procesar arrays de datos y combinar información de múltiples fuentes. Los routers que hoy aprendiste serán fundamentales para comprender esos conceptos más avanzados.
CONCEPTO CLAVE FINAL: Los routers y filtros son como el sistema nervioso de tus automatizaciones. Sin ellos, cada dato sigue el mismo camino rígido. Con ellos, tus escenarios se vuelven inteligentes, adaptativos y capaces de manejar la complejidad del mundo real.