Cómo validar y formatear JSON sin errores
Tu API devuelve un error críptico, tu archivo de configuración no carga, o el frontend muestra una pantalla en blanco. En un porcentaje sorprendente de casos, la causa es la misma: el JSON está mal formado. Una coma de más, una comilla simple donde tocaba doble, una llave sin cerrar.
JSON —el formato de intercambio de datos más usado en la web— es estricto por diseño: o es válido al 100 % o no funciona en absoluto. En este tutorial aprenderás a validar JSON como un profesional, a interpretar los mensajes de error, a formatearlo para que sea legible y a evitar los cinco errores que causan el 90 % de los problemas.
Las seis reglas: por qué JSON no perdona
JSON tiene seis reglas sintácticas y no perdona ninguna. Primera: las claves y los textos van siempre entre comillas dobles —"nombre", nunca 'nombre'—. Segunda: no se admiten comas finales tras el último elemento de un objeto o array. Tercera: no se admiten comentarios de ningún tipo.
Cuarta: los valores solo pueden ser texto, número, booleano (true/false), nulo (null), objeto o array. Quinta: los números no llevan comillas —"edad": 30, no "edad": "30"— y usan punto decimal, nunca coma. Sexta: cada llave y corchete que se abre debe cerrarse.
Un JSON válido mínimo: {"nombre": "Ana", "edad": 30, "activo": true, "tags": ["dev", "es"]}. Parece obvio, pero la mayoría de los errores reales son violaciones de estas seis reglas en documentos de cientos de líneas donde el ojo humano no llega.
Paso 1: Valida y aprende a leer los errores
El flujo profesional empieza pegando tu JSON en la herramienta gratuita de validar JSON de Tótem (usatotem.com/herramientas-desarrollador/validar-json/). Si el documento es válido, lo sabrás al instante; si no, el validador te dirá exactamente dónde está el problema: línea, columna y descripción del error.
Aprende a leer los mensajes de error, que siguen patrones predecibles. «Unexpected token }» suele significar una coma de más antes de esa llave. «Unexpected end of input» indica llaves o corchetes sin cerrar: cuenta aperturas y cierres. «Unexpected token '» delata comillas simples donde tocan dobles.
La técnica de diagnóstico es sistemática: ve al punto exacto que indica el error y mira justo antes —el problema casi siempre está en el carácter anterior al señalado—. Corrige, vuelve a validar y repite. Con documentos grandes, este ciclo de validar-corregir es infinitamente más rápido que revisar a ojo.
Paso 2: Formatea para ver la estructura
Un JSON válido pero minificado —todo en una línea— es ilegible para humanos. Formatear significa aplicar sangría y saltos de línea para revelar la estructura: cada nivel de anidamiento con su indentación, cada elemento en su línea. El validador de Tótem formatea automáticamente al validar.
El formateo no es estética: es herramienta de depuración. Un objeto mal anidado se ve a simple vista cuando la indentación lo delata; en una línea minificada es invisible. Antes de buscar un error lógico en tu código, formatea el JSON y míralo con calma: la mitad de las veces el problema salta a la vista.
Adopta una convención de sangría —2 espacios es lo más común— y mantenla en tus archivos de configuración. Y recuerda: el formateo no cambia el contenido, solo su presentación. Un JSON formateado y uno minificado son idénticos para cualquier programa; la diferencia es solo para tus ojos.
Los 5 errores que causan el 90 % de los problemas
Memoriza estos cinco y diagnosticarás el 90 % de los JSON rotos. Primero, la coma final: {"a": 1,} —inválida en JSON aunque JavaScript la permita—. Es el error número uno, traicionero porque «casi» se ve bien.
Segundo, comillas simples: {'a': 1} —JSON exige dobles—. Típico al copiar código JavaScript. Tercero, comentarios: {"a": 1 // comentario} —JSON no los admite; si necesitas documentar, usa una clave "_comentario".
Cuarto, llaves sin cerrar en documentos largos: un objeto anidado al que le falta su } final. El error «unexpected end of input» es su firma. Quinto, texto sin comillas en valores: {"estado": activo} —«activo» debe ir entre comillas—. Cada uno tiene un mensaje de error característico: aprende a reconocerlos y los corregirás en segundos.
Más allá de la sintaxis: validar los datos
Cuando el JSON es válido pero los datos no cuadran —un campo que debería ser número llega como texto, una fecha en formato inesperado—, el problema ya no es de sintaxis sino de contrato. Aquí ayudan dos prácticas: inspeccionar la estructura formateada nivel por nivel, y comparar la respuesta real con la documentada.
Para APIs, valida también los tipos: {"precio": "19.99"} es sintácticamente válido pero probablemente incorrecto si el consumidor espera un número. Estos errores no los detecta el validador de sintaxis; los detectas tú revisando el documento formateado con ojo crítico.
Y un consejo final de higiene: nunca construyas JSON concatenando textos a mano en tu código —es la fábrica de los errores de este tutorial—. Usa las funciones de serialización de tu lenguaje (JSON.stringify, json.dumps, json_encode): generan JSON válido siempre, con el escapado correcto de comillas y caracteres especiales. Validar es para depurar; generar bien es para no tener que depurar.
Herramientas gratuitas mencionadas
Validador JSON
Comprueba si tu texto es un JSON válido y descubre su tipo y estructura.
Usar gratisFormateador JSON
Pega tu JSON y fórmatalo con la sangría que elijas (2, 4 espacios o tabulador).
Usar gratisMinificar JSON
Elimina espacios y saltos de línea de tu JSON para reducir su tamaño.
Usar gratisPreguntas frecuentes
¿Qué es JSON y para qué sirve?
JSON significa JavaScript Object Notation, pero es un formato de intercambio de datos independiente del lenguaje. Lo usan APIs, archivos de configuración y bases de datos en prácticamente todos los lenguajes de programación modernos.
¿Cuáles son los errores más frecuentes en JSON?
Las más comunes: comas finales tras el último elemento, comillas simples en lugar de dobles, comentarios de código, comas o llaves sin cerrar y valores sin comillas. El validador te señala cada una con su línea exacta.
¿Es seguro pegar mi JSON en un validador online?
Sí: el validador procesa tu texto localmente en el navegador, así que el contenido no sale de tu dispositivo. Aun así, evita pegar en herramientas online datos personales sensibles o credenciales, como norma general de higiene.
¿JSON o XML: cuál es mejor?
JSON es más ligero y legible, ideal para APIs y configuración. XML es más verboso pero admite atributos, namespaces y validación con esquemas XSD, y sigue siendo estándar en facturación electrónica y banca. La elección depende del ecosistema con el que trabajes.
En resumen
Validar y formatear JSON se reduce a un hábito: pega tu JSON en el validador antes de usarlo, lee el mensaje de error con calma —casi siempre es una coma, una comilla o una llave—, corrige y formatea para trabajar con claridad. Con los cinco errores típicos memorizados, diagnosticarás un JSON roto en segundos.
Haz del validador gratuito tu primera parada cada vez que un JSON falle: te dirá exactamente dónde está el problema y te devolverá el documento formateado y listo para usar.