1.5 Datos y JSON: aprende el idioma de las APIs para conectar cualquier servicio sin depender de integraciones prediseñadas
Datos y JSON: aprende el idioma de las APIs
JSON es el formato estándar con el que las aplicaciones modernas intercambian información. Cuando una API de WhatsApp, Stripe, HubSpot, Gmail o cualquier servicio recibe o envía datos, casi siempre lo hace en JSON.
Quien entiende JSON puede conectar servicios, automatizar procesos y transformar datos. Quien no lo entiende, depende de integraciones prediseñadas que no siempre existen.
JSON es el ADN de tus automatizaciones.
Todo workflow vive de datos.
Un workflow no solo mueve acciones: mueve información. Nombres, correos, mensajes, montos, fechas, estados y respuestas viajan como datos estructurados. JSON permite que n8n entienda esos datos, los transforme y los envíe al siguiente sistema sin perder el orden.
Analogía: Si las APIs fueran personas de distintos países, JSON sería el idioma común que todas entienden para intercambiar información sin confusión.
JSON significa JavaScript Object Notation. Aunque nació del ecosistema JavaScript, hoy es usado por casi cualquier lenguaje y plataforma porque es ligero, legible y fácil de procesar.
Cuando conectas servicios en n8n, los datos que entran y salen suelen tener forma de JSON. Por eso, entenderlo te permite construir integraciones más flexibles, resolver errores y adaptar automatizaciones a escenarios reales.
Todo JSON válido se construye con tipos de datos simples y estructuras compuestas. No necesitas memorizar teoría: necesitas reconocer cómo se ve cada pieza y cómo se usa dentro de un workflow.
String
Texto entre comillasRepresenta palabras, nombres, correos, mensajes o cualquier dato textual.
"María López"
Number
Enteros o decimalesRepresenta cantidades, precios, edades, porcentajes o identificadores numéricos.
1499 / 25.5
Boolean
true / falseRepresenta condiciones binarias: activo/inactivo, pagado/no pagado, aprobado/rechazado.
true / false
Null
Ausencia de valorIndica que un dato existe como campo, pero no tiene valor asignado.
null
Object
Pares clave-valorAgrupa propiedades relacionadas dentro de llaves. Es la estructura más común en APIs.
{"nombre":"Ana"}
Array
Lista de elementosGuarda varios elementos en una lista: pedidos, contactos, mensajes o productos.
["lead1","lead2"]
Este podría ser el dato que llega desde un formulario, un CRM o una API externa:
{
"cliente": {
"nombre": "María López",
"email": "maria@email.com",
"telefono": "4431234567"
},
"pedido": {
"id": 1045,
"total": 1499.00,
"pagado": true,
"cupon": null
},
"productos": [
"Curso IA Nivel 2",
"Plantilla de automatización"
]
}
En n8n, los datos siempre viajan como un array de items. Cada item tiene un campo json que contiene la información principal y, opcionalmente, un campo binary para archivos.
[
{
"json": {
"nombre": "María",
"email": "maria@email.com",
"interes": "Automatización con IA"
}
}
]
El nodo Set permite crear, editar o eliminar propiedades dentro de json. El nodo Code permite manipular esos datos con JavaScript cuando la transformación requiere más lógica.
Analogía: Un JSON anidado es como una casa con habitaciones, cajones y carpetas. La dot notation es la ruta exacta para llegar al dato que necesitas.
Los JSON del mundo real no son planos. Un mensaje de WhatsApp puede venir dentro de varios niveles de objetos y arrays. Para llegar al texto real, necesitas navegar la estructura.
$json.entry[0].changes[0].value.messages[0].text.body
| Parte | Qué significa |
|---|---|
$json |
Representa el objeto JSON actual dentro del item. |
entry[0] |
Entra al primer elemento del array llamado entry. |
changes[0] |
Entra al primer cambio registrado por la API. |
value |
Accede al objeto donde está la información principal del evento. |
messages[0] |
Accede al primer mensaje recibido. |
text.body |
Obtiene el texto escrito por la persona usuaria. |
El nodo Set es uno de los más usados en n8n porque permite limpiar, renombrar y preparar los datos antes de enviarlos a otro servicio.
Crear propiedades
Agregar campos nuevosEjemplo: crear una propiedad estatus con el valor "nuevo lead".
Copiar datos
Renombrar camposEjemplo: copiar phone y guardarlo como telefono.
Transformar valores
Usar expresionesEjemplo: convertir un nombre a mayúsculas con {{ $json.nombre.toUpperCase() }}.
Eliminar ruido
Keep Only SetConservar solo las propiedades necesarias antes de enviar datos a un CRM, Sheet o API.
Cuando una transformación es demasiado compleja para el nodo Set, puedes usar el nodo Code. Este recibe un array de items y debe devolver un array de items.
return items.map(item => {
const nombre = item.json.nombre || "";
const email = item.json.email || "";
item.json.nombre_limpio = nombre.trim().toUpperCase();
item.json.email_valido = email.includes("@");
return item;
});
Con Code puedes hacer loops, filtros, cálculos, validaciones, limpieza de strings y cualquier lógica que JavaScript soporte.
Muchas APIs devuelven arrays: listas de pedidos, contactos, mensajes, productos o registros. n8n tiene nodos específicos para procesarlos.
| Nodo | Qué hace | Cuándo usarlo |
|---|---|---|
| Split In Batches | Divide muchos items en grupos más pequeños. | Cuando una API tiene límites de procesamiento o necesitas evitar saturación. |
| Item Lists | Convierte arrays internos en items separados. | Cuando un solo item contiene muchos productos, contactos o mensajes. |
| Aggregate | Agrupa múltiples items en un solo array. | Cuando necesitas enviar una lista consolidada a otra API o generar un resumen. |
La combinación Filter + Set es la forma estándar de limpiar datos antes de enviarlos a otro servicio.
Filter
Deja pasar solo lo necesarioSirve para eliminar items que no cumplen una condición. Por ejemplo: solo pedidos pagados, solo leads del mes actual o solo mensajes con intención de compra.
Set
Reestructura la informaciónSirve para conservar, renombrar o transformar las propiedades que realmente necesita el siguiente nodo.
Si un servicio no tiene nodo propio en n8n, puedes conectarlo con el nodo HTTP Request. Para eso necesitas entender los elementos básicos de una petición API.
| Elemento | Qué significa | Ejemplo |
|---|---|---|
| URL / Endpoint | Dirección a la que se enviará la petición. | https://api.servicio.com/leads |
| Método HTTP | Acción que quieres realizar. | GET, POST, PUT, DELETE |
| Headers | Metadatos de la petición, normalmente autenticación y tipo de contenido. | Authorization: Bearer TOKEN |
| Body JSON | Información que envías al servicio externo. | {"nombre":"María","email":"maria@email.com"} |
| Response | Respuesta que devuelve la API después de procesar la petición. | {"status":"created","id":123} |
🎯 Lo que debes recordar del subtema 1.5
JSON es el idioma de las APIs
La mayoría de servicios modernos intercambian información usando JSON.
Todo JSON combina 6 piezas
Strings, numbers, booleans, null, objects y arrays.
n8n usa items
Los datos viajan como arrays de items, cada uno con un campo json.
Dot notation navega datos
Sirve para acceder a información anidada dentro de objetos y arrays.
Set limpia y transforma
Es el nodo clave para preparar datos antes de enviarlos a otro servicio.
HTTP Request abre cualquier API
Si no hay integración nativa, puedes conectar servicios usando endpoint, método, headers y body JSON.
Comentarios