Módulo 2: Gmail y Email
Buscar y Filtrar Correos
Descripción de la cápsula
Hay dos formas de que tu workflow trabaje con correos. La cápsula 04 cubrió la pasiva: esperar a que un correo llegue y disparar. Esta cápsula cubre la activa: ir a buscar correos a propósito.
"Tráeme todos los correos sin responder de esta semana." "Busca el correo de confirmación de este proveedor." "Cuántos correos de soporte llegaron hoy." Eso es búsqueda activa, y la herramienta es el nodo Gmail con la operación Get Many — más el ingrediente clave: el lenguaje de búsqueda de Gmail.
Ese lenguaje (from:, subject:, is:unread, after:...) es el mismo que usas en la barra de búsqueda de Gmail todos los días, y el mismo que usaste en los filtros del Gmail Trigger. Dominarlo te da control fino sobre exactamente qué correos entran a tu workflow — y eso es la diferencia entre un workflow que procesa lo que debe y uno que procesa basura.
Lo que vas a aprender
Al terminar esta cápsula serás capaz de:
- ✅ Buscar correos activamente con la operación Get Many
- ✅ Usar los operadores de búsqueda de Gmail (
from:,subject:,is:unread, fechas...) - ✅ Combinar operadores para búsquedas precisas
- ✅ Limitar resultados para no traer miles de correos
- ✅ Aplicar la búsqueda tanto en el nodo Gmail como en los filtros del Trigger
- ✅ Decidir cuándo usar búsqueda activa vs el Gmail Trigger
La operación Get Many
Configuración del nodo Gmail:
- Resource:
Message - Operation:
Get Many - Limit: cuántos correos máximo traer
- Filters → Search: la consulta en lenguaje de Gmail
El resultado: un item por cada correo que coincide, con los mismos campos que viste en la cápsula 04 (from, subject, textPlain, id, etc.).
Get Many sin Search trae los correos más recientes de tu bandeja, hasta el límite. Casi siempre quieres acotar con Search — igual que en el Módulo 1, "traer todo" rara vez es lo que necesitas.
El lenguaje de búsqueda de Gmail
Aquí está el corazón de la cápsula. La búsqueda de Gmail usa operadores: palabras clave seguidas de dos puntos. Son los mismos que escribes en la barra de Gmail.
Operadores por remitente y destinatario
| Operador | Encuentra |
|---|---|
from:ana@example.com | Correos de Ana |
to:support@yourdomain.com | Correos enviados a soporte |
cc:boss@company.com | Correos con esa dirección en copia |
Operadores por contenido
| Operador | Encuentra |
|---|---|
subject:invoice | "invoice" en el asunto |
invoice | "invoice" en cualquier parte (asunto o cuerpo) |
"payment confirmed" | la frase exacta "payment confirmed" |
Operadores por estado
| Operador | Encuentra |
|---|---|
is:unread | Correos no leídos |
is:read | Correos leídos |
is:starred | Correos destacados |
has:attachment | Correos con archivos adjuntos |
label:support | Correos con la etiqueta "support" |
in:inbox | Correos en la bandeja de entrada |
Operadores por fecha
| Operador | Encuentra |
|---|---|
after:2026/05/01 | Correos después de esa fecha |
before:2026/05/14 | Correos antes de esa fecha |
newer_than:7d | Correos de los últimos 7 días |
older_than:1m | Correos de hace más de 1 mes |
newer_than:yolder_than:usand(días),m(meses),y(años).newer_than:2d= últimos 2 días.
Combinar operadores
El poder real está en combinarlos. Por defecto, Gmail los une con AND (todos deben cumplirse):
from:supplier@company.com subject:invoice has:attachment newer_than:30d
→ correos de ese proveedor, con "invoice" en el asunto, que tienen adjunto, de los últimos 30 días.
OR y exclusión
subject:invoice OR subject:receipt → asunto con "invoice" O con "receipt"
subject:support -subject:resolved → "support" en el asunto PERO no "resolved"
El guion - excluye. Es muy útil: -label:processed = "los que aún NO he procesado".
Búsquedas dinámicas
El Search puede usar expressions, igual que cualquier campo:
from:{{ $json.customer_email }} newer_than:7d
Busca los correos de un cliente específico que llega por el workflow.
Limitar resultados
El campo Limit del nodo controla cuántos correos traer como máximo.
Siempre pon un límite razonable. Una búsqueda amplia (
newer_than:1y) sin límite puede intentar traer miles de correos a tu workflow — lento y propenso a errores. Combina una búsqueda específica con un límite sensato (10, 50, 100 según el caso).
La mejor estrategia, igual que con Google Sheets: acota con la búsqueda, no traigas todo y recortes después.
Búsqueda activa vs Gmail Trigger: ¿cuál uso?
Las dos formas usan el mismo lenguaje de búsqueda. La diferencia es cuándo actúan:
| Gmail Trigger | Get Many (búsqueda activa) | |
|---|---|---|
| Cuándo actúa | Cuando llega un correo nuevo | Cuando el workflow lo ejecuta |
| Qué procesa | Solo correos nuevos desde la última revisión | Cualquier correo que coincida, nuevos o viejos |
| Caso típico | "Reacciona a cada correo de soporte que llegue" | "Cada mañana, dame el resumen de los correos sin responder" |
| Inicia el workflow | Sí, es el trigger | No, va dentro de un workflow ya disparado |
La regla
- ¿Quieres reaccionar a cada correo conforme llega? → Gmail Trigger
- ¿Quieres procesar un lote de correos en un momento dado? → Schedule Trigger + Gmail Get Many
Ejemplo del segundo: un workflow que corre cada mañana a las 8am (Schedule Trigger), busca todos los correos is:unread label:support newer_than:1d (Gmail Get Many), y manda un resumen al equipo. El Schedule lo dispara; la búsqueda activa trae el lote.
Trampas comunes
Trampa 1: Búsqueda demasiado amplia
Qué pasa: Buscas solo invoice y trae 800 correos de los últimos 3 años, incluyendo conversaciones donde la palabra aparece de pasada.
Cómo evitar: Acota siempre con fecha (newer_than:) y, si puedes, remitente o etiqueta. Específico es mejor que amplio.
Trampa 2: Confundir subject: con búsqueda general
Qué pasa: Buscas payment esperando solo asuntos con "payment", pero trae todo correo que mencione "payment" en el cuerpo.
Cómo evitar: Si quieres solo el asunto, usa subject:payment. Sin el operador, busca en todo el correo.
Trampa 3: Olvidar el límite
Qué pasa: Get Many sin límite (o con límite altísimo) intenta traer miles de items y el workflow se vuelve lentísimo o falla.
Cómo evitar: Pon un límite acorde a lo que realmente necesitas. Si esperas ~10 resultados, limita a 20-30, no a 1000.
Trampa 4: Formato de fecha equivocado
Qué pasa: Usas after:14/05/2026 y no funciona. Gmail espera after:2026/05/14 (año/mes/día) o un número de días con newer_than:.
Cómo evitar: Para fechas absolutas: after:AAAA/MM/DD. Para fechas relativas (más fácil y robusto): newer_than:7d.
Trampa 5: Esperar que Get Many "espere" correos nuevos
Qué pasa: Pones un Get Many esperando que dispare cuando llegue un correo. No dispara nada — Get Many solo busca cuando el workflow se ejecuta.
Cómo evitar: Para reaccionar a correos entrantes, el Gmail Trigger. Get Many es para buscar bajo demanda dentro de un workflow ya disparado.
Ejercicio: cuatro búsquedas
Objetivo: practicar el lenguaje de búsqueda de Gmail.
Tu tarea
Construye un workflow Manual Trigger → Gmail (Get Many) y prueba estas cuatro búsquedas, una por una, viendo cuántos resultados trae cada una:
- Correos no leídos de los últimos 7 días
- Correos con adjunto que mencionen "invoice" en el asunto
- Correos de una dirección específica, de este mes, que NO tengan la etiqueta "processed"
- Correos cuyo asunto contenga "support" o "help"
Ver soluciones
is:unread newer_than:7dhas:attachment subject:invoicefrom:THEADDRESS@example.com newer_than:1m -label:processedsubject:support OR subject:help
Pon un Limit razonable (ej. 30) en todas. Observa: cada operador adicional reduce los resultados.
Resumen y siguiente paso
- Get Many busca correos activamente — un item por correo que coincide
- El lenguaje de búsqueda de Gmail usa operadores:
from:,subject:,is:unread,has:attachment,label:,after:,newer_than:... - Los operadores se combinan con AND por defecto;
ORune,-excluye - El Search acepta expressions para búsquedas dinámicas
- Siempre acota (fecha + remitente/etiqueta) y pon un límite sensato
- Gmail Trigger = reaccionar a cada correo que llega; Get Many = procesar un lote bajo demanda (típicamente con Schedule Trigger)
- 5 trampas: búsqueda muy amplia, confundir
subject:con búsqueda general, olvidar el límite, formato de fecha, esperar que Get Many "espere"
Antes de avanzar deberías poder:
- Escribir una búsqueda de Gmail combinando 3+ operadores
- Usar
-para excluir ynewer_than:para acotar por fecha - Decidir entre Gmail Trigger y Get Many para un caso dado
Lo que sigue (cápsula 06):
Ya sabes encontrar los correos que importan. La cápsula 06 cubre qué hacer con ellos para mantener el orden: aplicar y quitar etiquetas, marcar como leído, archivar. Es lo que convierte tu bandeja de un caos a un sistema — y la pieza que faltaba para evitar el doble procesamiento de la cápsula 04.
Recursos adicionales
- Gmail search operators (oficial) - La referencia completa de todos los operadores.
- n8n Gmail node Docs - Operación Get Many.
- n8n Schedule Trigger Docs - Para disparar búsquedas activas por horario.
Creado: Mayo 14, 2026 Versión: 1.0