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

# Mismo truco, otra caja de herramientas: Make

> El mismo caso de uso que con n8n, pero con la plataforma que mucha gente de marketing prefiere.

<div
  style={{
position: 'relative',
marginTop: '-0.5rem',
marginBottom: '2.5rem',
borderRadius: '1rem',
overflow: 'hidden',
paddingTop: '45%',
boxShadow: '0 4px 20px rgba(0,0,0,0.12)',
}}
>
  <img
    src="https://mintcdn.com/supervisorai/aFOceNtmZJygjrCt/images/blog/crear-agente-desde-cero.jpg?fit=max&auto=format&n=aFOceNtmZJygjrCt&q=85&s=3e736cdd39b0b8985cc32e553f58d85b"
    alt="Ilustración abstracta de un agente digital"
    style={{
  position: 'absolute',
  top: 0,
  left: 0,
  width: '100%',
  height: '100%',
  display: 'block',
  objectFit: 'cover',
  objectPosition: 'center',
}}
    width="1424"
    height="752"
    data-path="images/blog/crear-agente-desde-cero.jpg"
  />

  <div
    style={{
  position: 'absolute',
  inset: 0,
  display: 'flex',
  alignItems: 'flex-end',
  padding: '2rem',
  background:
    'linear-gradient(to top, rgba(0,0,0,0.75), rgba(0,0,0,0.1) 55%, transparent)',
}}
  >
    <div style={{ color: 'white', fontSize: '0.9rem', lineHeight: 1.4 }}>
      <div style={{ fontWeight: 600, marginBottom: '0.25rem' }}>
        Julio Barrera · CTO @ Leracom
      </div>

      <div style={{ opacity: 0.85 }}>10 de abril, 2026 · 9 min de lectura</div>
    </div>
  </div>
</div>

<div style={{marginTop: "2rem", marginBottom: "3rem", padding: "1.25rem 1.5rem", background: "rgba(14, 165, 233, 0.06)", borderRadius: "0.75rem", borderLeft: "3px solid #0ea5e9"}}>
  **En este post**

  * [El mapa del flujo](#el-mapa-del-flujo)
  * [Paso 1 — Crear el scenario en Make](#paso-1--crear-el-scenario-en-make)
  * [Paso 2 — Registrar esa URL en Agents Studio](#paso-2--registrar-esa-url-en-agents-studio)
  * [Paso 3 — Entrenar a Make para que entienda la estructura del webhook](#paso-3--entrenar-a-make-para-que-entienda-la-estructura-del-webhook)
  * [Paso 4 — Agregar un Router](#paso-4--agregar-un-router)
  * [Paso 5 — El módulo de Email](#paso-5--el-módulo-de-email)
  * [Paso 6 — Activar el scenario](#paso-6--activar-el-scenario)
  * [Debugueando: el Execution History](#debugueando-el-execution-history)
  * [Validar la firma HMAC en Make](#validar-la-firma-hmac-en-make)
  * [Comparativa rápida: n8n vs Make](#comparativa-rápida-n8n-vs-make)
  * [Ideas para escalar desde aquí](#ideas-para-escalar-desde-aquí)
  * [Cierre de la serie](#cierre-de-la-serie)
</div>

***

Si tu equipo ya usa Make, perfecto — todo lo que vimos con n8n se hace igual aquí, sólo cambian los nombres y las pantallas. Al final de este post vas a tener exactamente lo mismo: una llamada que termina en Agents Studio dispara automáticamente un correo electrónico.

Si nunca usaste Make, piensa en él como **una hoja de cálculo viva donde cada celda es una acción y las filas son automatizaciones**. Muy visual, muy amigable para quien no viene de desarrollo.

## El mapa del flujo

Vamos a armar esta cadena de "módulos":

```
Webhooks (recibe)
    ↓
  Router (bifurca según resultado)
    ↓
  Email (manda el correo)
```

Tres módulos. Una tarde de trabajo, si te tomas un café.

## Paso 1 — Crear el scenario en Make

En Make, cada automatización se llama **scenario**. Crea uno nuevo. El lienzo aparece vacío con un círculo grande en el centro que dice "add the first module".

Haz clic ahí y busca **Webhooks**. Selecciona **Custom webhook**.

### Configurar el Custom webhook

Te va a pedir:

* **Add hook** → Dale a **Add** y ponle un nombre descriptivo: *"Agents Studio – callAnalyzed"*.
* **Get request helper**: opcional. Si conoces el formato del JSON que viene, puedes saltarlo.

Al guardar, Make te genera una **URL única**. Es algo como:

```
https://hook.make.com/abc123xyz...
```

**Copia esa URL**.

## Paso 2 — Registrar esa URL en Agents Studio

Vuelve al Studio → Webhooks → **+ Nuevo webhook**.

* **URL del endpoint**: pega la URL de Make.
* **Método HTTP**: `POST`.
* **Descripción**: *"Make – envío correo promesa de pago"*.
* **Secret Key**: genera una aleatoria de 32 caracteres y guárdala.
* **Activar inmediatamente**: sí.

Crea. Abre los detalles → **+ AGREGAR EVENTO** → selecciona **Llamada Analizada (call.callAnalyzed)** → Suscribir.

Listo del lado de Agents Studio.

## Paso 3 — Entrenar a Make para que entienda la estructura del webhook

Esta es la parte que confunde a principiantes: Make no sabe qué forma tienen los datos que le van a llegar. Se lo tenemos que enseñar mandándole un ejemplo real.

1. En Make, **haz clic derecho sobre el módulo Webhooks y elige "Run once"**.
2. Make queda en modo "escuchando" (verás un banner).
3. En Agents Studio, **haz una llamada de prueba real** a tu propio celular.
4. Contesta, interactúa, cuelga.
5. Espera 10-15 segundos a que Speech Analytics procese.
6. Make va a recibir el webhook y a "descubrir" la estructura.

A partir de ahora, cuando agregues más módulos, vas a poder usar cualquier dato del JSON como variable (`outputVariables.resultado_llamada`, `outputVariables.monto_acordado`, etc.).

Si no quieres gastar una llamada real, también puedes mandar un POST manual con Postman o cURL a la URL del webhook, con un JSON de ejemplo.

## Paso 4 — Agregar un Router

Después del módulo Webhooks, agrega un **Router**. Es el módulo que bifurca el flujo según condiciones.

Por defecto crea dos rutas. Vamos a usar una: *"sólo mandar correo si el resultado fue 'prometió pagar'"*.

En la flecha que conecta el router a la rama, haz clic → **Set up filter**:

* **Label**: `Solo promesas de pago`.
* **Condition**: `outputVariables.resultado_llamada` → **Equal to** → `prometió pagar`.

## Paso 5 — El módulo de Email

En la rama filtrada, agrega un módulo de correo. Make tiene muchas opciones:

* **Email** (SMTP genérico).
* **Gmail**, **Outlook 365**, **Microsoft 365**.
* **SendGrid**, **Mailgun**, **Amazon SES**.

Usa el que ya maneje tu equipo. Configura la **conexión** (OAuth o credenciales) siguiendo el asistente de Make.

Para el envío:

* **To**: si el correo del cliente viene como variable (`outputVariables.email_cliente`), mapéalo. Si no, usa una dirección fija.
* **Subject**: *"Confirmación de su acuerdo de pago"*.
* **Content**: puedes elegir HTML o Plain text. Ejemplo en plain text:

```
Hola {{outputVariables.customer_name}},

Gracias por atender nuestra llamada. Confirmamos su acuerdo:

• Monto: $ {{outputVariables.monto_acordado}}
• Fecha de pago comprometida: {{outputVariables.fecha_promesa_pago}}

Le enviaremos un recordatorio un día antes.

Saludos,
Equipo de Bonsaif
```

Las dobles llaves aquí son de Make, no de Agents Studio. Son las variables del paso anterior que "jalas" desde el panel derecho.

## Paso 6 — Activar el scenario

Arriba a la izquierda, hay un toggle **ON/OFF**. Prende el scenario.

Abajo hay una configuración de "Scheduling": déjala en **Immediately as data arrives** para que reaccione en tiempo real.

A partir de ahora, cada llamada de prueba que hagas (o cada llamada real de una campaña activa) que termine con `resultado_llamada = "prometió pagar"` va a disparar un correo.

## Debugueando: el Execution History

Make tiene una pestaña **History** por scenario. Muestra cada ejecución con:

* Entrada exacta del webhook.
* Módulos ejecutados.
* Si alguno falló, el error.

Es tu mejor herramienta cuando algo no funciona. Antes de cambiar configuración, **siempre abre el History primero**.

## Validar la firma HMAC en Make

Para mayor seguridad, puedes validar la firma HMAC que manda Agents Studio. Make no tiene un módulo "validar HMAC" nativo, pero tiene un módulo llamado **Tools → Compose a string** combinado con **Encoding → Create a hash**.

El flujo queda así (después del Webhook):

1. **Tools → Set variable**: guarda el body del webhook como string.
2. **Tools → Create HMAC hash**: con tu Secret Key y algoritmo SHA-256, codifica el body.
3. **Router con filtro**: compara el hash generado con la cabecera `x-signature` recibida.
4. Si coinciden → sigue. Si no → detén.

Si el tema te supera, un atajo razonable es:

* Usa una Secret Key larga y aleatoria.
* Revisa periódicamente el History por si hay ejecuciones raras.

Para flujos no críticos (un correo de confirmación, un mensaje de Slack), el riesgo de omitir la validación es bajo. Para flujos críticos (actualizar saldos, disparar pagos), **siempre validar**.

## Comparativa rápida: n8n vs Make

Ambos hacen lo mismo. Las diferencias son:

|                         | n8n                                         | Make                                             |
| ----------------------- | ------------------------------------------- | ------------------------------------------------ |
| Costo inicial           | Gratis si self-hosted; versión cloud pagada | Gratis hasta cierto volumen                      |
| Curva de aprendizaje    | Un poco más técnica                         | Más visual, más fácil para perfiles no técnicos  |
| Flexibilidad            | Altísima (soporta funciones JavaScript)     | Alta, con limitaciones en transformaciones raras |
| Integraciones oficiales | Muchas                                      | Muchísimas (catálogo más grande en general)      |
| Self-hosted             | Sí, muy bien soportado                      | No                                               |

Si tu equipo ya usa uno, quédate con ese. Si empiezas de cero, prueba ambos con un scenario simple y quédate con el que te sienta más natural.

## Ideas para escalar desde aquí

Una vez que tienes el flujo básico funcionando, puedes sumar en Make:

* Actualizar una hoja de **Google Sheets** con cada llamada analizada.
* Publicar en **Slack** cuando el agente transfiere a humano.
* Crear una tarea en **Asana / Trello / Notion** para seguimiento.
* Disparar un **SMS** via Twilio/MessageBird con recordatorios.
* Actualizar campos en **HubSpot / Salesforce / Pipedrive**.

Todo colgando del mismo webhook. Un solo aviso, múltiples reacciones coordinadas.

***

## Cierre de la serie

Con esto cerramos la serie completa:

1. [Armaste tu agente desde cero](/blog/crear-agente-desde-cero).
2. [Entendiste variables de entrada y salida](/blog/variables-entrada-y-salida).
3. [Aceleraste el trabajo con Copilot](/blog/crear-agente-con-copilot).
4. [Publicaste y versionaste el agente](/blog/publicar-tu-primer-agente).
5. [Hiciste tu primera llamada de prueba](/blog/lanzar-tu-primera-llamada).
6. [Lanzaste tu primera campaña](/blog/lanzar-tu-primera-campana).
7. [Entendiste qué es un webhook y cómo se configura](/blog/webhooks-conectar-y-suscribir).
8. [Conectaste a n8n para automatizar correos](/blog/webhook-n8n-envio-correo).
9. Hiciste lo mismo con Make.

De aquí en adelante, todo lo que agregues es variación. Nuevos agentes, nuevos flujos, nuevas integraciones. Pero el núcleo ya está dominado.

**Mi consejo final**: no quieras hacerlo todo perfecto desde el principio. Lanza algo simple, mide, ajusta, publica la v2. En tres meses no vas a reconocer la distancia entre donde empezaste y donde estás. Eso es lo bonito de trabajar con esto.

Suerte con tu primer agente. Y si te atoras, acuérdate de la regla de oro: **variables entre dobles llaves, siempre**.

<Tip>
  **Tu turno**

  1. Crea un escenario vacío en Make y agrega un módulo **Webhook**. Copia la URL que te genera.
  2. En Agents Studio, crea un webhook hacia esa URL y suscríbete a `call.callAnalyzed`. Dispara una llamada real para capturar el payload de muestra en Make.
  3. Agrega un **Router** (o un filtro) con una condición sobre el payload, y conecta a un módulo de correo (Gmail, SMTP, etc.) mapeando las variables dinámicas. Activa el escenario.
</Tip>

<div style={{marginTop: "2rem", padding: "1.5rem", background: "rgba(14, 165, 233, 0.06)", borderRadius: "0.75rem", borderLeft: "3px solid #0ea5e9"}}>
  **¿Te quedaste con dudas?** Escríbenos a [contacto@leracom.ai](mailto:contacto@leracom.ai).
</div>

***

*Si te sirvió la serie, compártela con alguien que esté empezando. Y si tienes casos de uso que te gustaría ver cubiertos, nos encantaría escucharlos en [sistemas@getsupervisor.ai](mailto:sistemas@getsupervisor.ai).*

<div style={{marginTop: "5rem", paddingTop: "3rem", borderTop: "1px solid rgba(128, 128, 128, 0.15)"}}>
  ## Leer más del blog

  <Columns cols={3}>
    <Card title="Webhook → correo con n8n" icon="bolt" href="/blog/webhook-n8n-envio-correo" img="/images/blog/n8n/01-workflow-mapa.png">
      **10 min · Madai Garcia**

      02 abr 2026
    </Card>

    <Card title="Webhooks sin miedo" icon="plug" href="/blog/webhooks-conectar-y-suscribir" img="/images/blog/webhooks/03-eventos.png">
      **9 min · Erika Barrera**

      24 mar 2026
    </Card>

    <Card title="Tu primera campaña" icon="rocket" href="/blog/lanzar-tu-primera-campana" img="/images/blog/campana/04-monitoreo.png">
      **7 min · Lizbeth Suarez**

      17 mar 2026
    </Card>
  </Columns>
</div>
