En nuestros posts anteriores aprendimos qué es n8n y cómo crear nuestro primer workflow conectando un formulario con Google Sheets. Ahora vamos a dar un paso más allá: aprender a consumir cualquier API externa usando el poderoso nodo HTTP Request.
Este nodo es la puerta de entrada para integrarte con servicios que aún no tienen un nodo oficial en n8n. Con él puedes hacer peticiones REST a cualquier servidor que tenga una API pública o privada.
¿Qué vamos a construir?
Vamos a crear un flujo que reciba un nombre por medio de un Webhook, lo use para consultar la API Agify.io (que predice la edad de una persona según su nombre), y luego enviará una notificación con los resultados a Discord.
Paso 1: Crear el Workflow
- Abre tu panel de n8n.
- Haz clic en "New Workflow" y nómbralo:
Consultar edad estimada por nombre.
Paso 2: Nodo Webhook
- Añade un nodo
Webhook. - Configura:
- HTTP Method:
GEToPOST. - Path:
consulta-edad
- HTTP Method:
- Ejecuta el nodo y copia la URL temporal de testeo.
Paso 3: Enviar datos de prueba
Envía una solicitud con postman o desde el navegador: https://<URL_N8N>/webhook-test/tu-path/consulta-edad?nombre=lucas
n8n capturará el parámetro nombre.
Paso 4: Nodo HTTP Request
- Añade un nodo
HTTP Request. - Conéctalo al
Webhook. - Configura:
- HTTP Method:
GET - URL:
https://api.agify.io?name={{$json["query"]["nombre"]}} - Response Format:
JSON
- HTTP Method:
Esto hará una consulta a la API de Agify con el nombre recibido.
Paso 5: Nodo Set para dar formato
- Añade un nodo
Set. - Conéctalo al
HTTP Request. - Crea estas variables:
nombre:{{$json["name"]}}edad_estimado:{{$json["age"]}}cantidad_datos:{{$json["count"]}}
Esto prepara la información para usarla en el siguiente paso.
Paso 6: Enviar resultado a Discord
Crea un webhook de Discord, esplico el paso a paso de cómo crear un Webhook en discord
Añade un nodo HTTP Request nuevo.
Configura:
- HTTP Method:
POST - URL: tu webhook de Discord.
- Content Type:
JSON - Body Parameters (RAW):
{"content":"El nombre **{{$json["nombre"]}}** tiene una edad estimada de **{{$json["edad_estimado"]}}** años, basado en {{$json["cantidad_datos"]}} registros."}
Paso 7: Guardar y activar
Haz clic en Save y luego en Activate.
Ahora, cada vez que accedas al webhook con un nombre, n8n consultará la API de Agify y enviará una notificación con los resultados a tu canal de Discord. Ejemplo:
¿Qué aprendiste aquí?
- Cómo usar el nodo
HTTP Requestpara consumir APIs REST. - Cómo capturar parámetros con Webhooks.
- Cómo transformar la respuesta con
Set. - Cómo enviar datos a Discord (u otras APIs similares).