Acerca de esta herramienta
Las respuestas de API y los payloads de logs suelen llegar minificados en una sola línea. Formatearlos facilita muchísimo revisar nombres de campos, anidamiento y valores cuando escribes assertions o reportes de bugs. Este formateador analiza tu entrada con el parser JSON nativo del navegador, así que acepta exactamente lo mismo que aceptará JSON.parse en tu código de test. No se sube nada; la última entrada se guarda en el almacenamiento local de tu navegador para mayor comodidad.
Cómo usarla
- Pega JSON en el panel de entrada o pulsa “Load sample”.
- Elige un estilo de sangría y, opcionalmente, ordena las claves alfabéticamente para comparar dos payloads con más facilidad.
- Copia o descarga el resultado formateado. Si la entrada no es válida, el error muestra la línea y la columna que hay que corregir.
Cómo corregir los errores de sintaxis JSON más comunes
La mayoría de los avisos de «JSON no válido» vienen de payloads escritos a mano o copiados de JavaScript. Estas son las causas habituales y cómo solucionarlas:
- Coma final tras el último elemento, como en
{"a": 1,}o[1, 2,]: borra la última coma. - Cadenas o claves entre comillas simples, como en
{'a': 1}: JSON solo admite comillas dobles. - Claves sin comillas, como en
{a: 1}: cada clave debe ser una cadena entre comillas dobles. - Comentarios (
//o/* */): JSON no tiene sintaxis de comentarios. Elimínalos, o guarda la configuración comentada en archivos JSONC o JSON5 que tu herramienta lea explícitamente. NaN,Infinityoundefinedcomo valores: no son JSON. Usanull, un número o una cadena.- Un salto de línea o tabulador literal dentro de una cadena: escápalo como
\no\t. - Dos documentos pegados juntos, por ejemplo dos líneas de log en NDJSON: formatea una línea cada vez.
Formatear JSON en el código de test
Los payloads legibles en los informes de test hacen que los fallos se diagnostiquen mucho más rápido. En JavaScript y TypeScript, JSON.stringify(value, null, 2) aplica una sangría de dos espacios. En Playwright puedes adjuntar un body formateado al informe con testInfo.attach('response', { body: JSON.stringify(json, null, 2), contentType: 'application/json' }).
En Java con Jackson, usa mapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj). En Python, json.dumps(obj, indent=2, sort_keys=True). En la línea de comandos, jq . response.json formatea y colorea un archivo.
Los números grandes pierden precisión
JSON en sí no limita el tamaño de los números, pero JavaScript interpreta cada número como un float de 64 bits. Los enteros mayores que 9.007.199.254.740.991 (2^53 − 1), como algunos IDs de base de datos, se redondean en silencio. Como este formateador usa JSON.parse, esos IDs aparecen redondeados en la salida, y lo mismo ocurre en el código de test que se ejecuta en el navegador. Las APIs que devuelven IDs grandes deberían enviarlos como cadenas, y los tests deberían compararlos como cadenas.
Preguntas frecuentes: Formateador JSON
¿Qué es un formateador JSON?
Un formateador JSON, o beautifier, toma JSON compacto o desordenado y lo vuelve a imprimir con sangría y saltos de línea coherentes para que la estructura sea fácil de leer. Solo cambia los espacios en blanco, nunca los datos. Los testers lo usan para leer respuestas de API minificadas, comparar payloads y pegar ejemplos limpios en reportes de bugs. Este formateador también puede minificar JSON y ordenar claves, y usa el parser nativo del navegador, así que acepta exactamente lo que acepta JSON.parse.
¿Cómo formateo JSON online?
Pega tu JSON en el panel de entrada de arriba o pulsa “Load sample”. El JSON válido se formatea al instante con la sangría que elijas (2 espacios, 4 espacios o tabuladores) y puedes copiar el resultado. Si la entrada no es válida, la herramienta muestra el error del parser y la línea y columna donde se detuvo el análisis. El formateo se hace íntegramente en tu navegador, así que puedes pegar con seguridad respuestas de API que contengan datos de prueba.
¿Cómo puedo validar JSON?
Validar JSON significa comprobar que sigue las reglas de sintaxis: claves y cadenas entre comillas dobles, sin comas finales, sin comentarios y con los corchetes y llaves bien emparejados. Al pegarlo aquí se valida automáticamente, porque el formateador solo produce salida para JSON válido. Para comprobar que un JSON válido tiene además los campos y tipos correctos, usa la validación con schema, por ejemplo el validador de JSON Schema. En código, JSON.parse en JavaScript y json.loads en Python lanzan una excepción ante una entrada no válida.
¿Cómo encuentro errores en un archivo JSON?
Pega aquí el contenido y lee la línea y columna indicadas. Los parsers se detienen donde ya no pueden continuar, así que el error real suele estar justo antes de esa posición: una coma que falta entre propiedades, una comilla o un corchete sin cerrar, una coma final o comillas simples en lugar de dobles. Corrige el primer error y vuelve a comprobar, porque un error puede ocultar otros. El validador JSON se centra en el informe de errores para archivos más grandes.
¿Qué diferencia hay entre formatear y validar JSON?
Formatear cambia el aspecto del JSON, como la sangría, los saltos de línea y, opcionalmente, el orden de las claves, sin cambiar sus datos. Validar comprueba si el texto es JSON correcto, y la validación con schema va más allá al comprobar que un JSON correcto tiene los campos, tipos y valores esperados. Un formateador tiene que analizar primero el JSON, así que valida la sintaxis de paso, pero no puede decirte que price debería ser un número y no una cadena.
¿Existe un formateador JSON online gratuito?
Sí, este. El formateador JSON de SDETRole es gratuito, no requiere registro y se ejecuta íntegramente en tu navegador, así que nada de lo que pegues se sube; puedes comprobarlo en la pestaña Red de tu navegador. Formatea, minifica y valida JSON e indica la línea y columna de los errores de sintaxis. Otras herramientas gratuitas relacionadas son el comparador JSON para comparar payloads, el probador de JSONPath para extraer valores y el conversor de JSON a CSV.
¿Por qué mi JSON falla con comas finales o comillas simples?
El JSON estricto (RFC 8259) no permite comas finales, cadenas entre comillas simples, comentarios ni claves sin comillas. Son características de los literales de objeto de JavaScript. Elimínalas o pide al responsable de la API que devuelva JSON válido.
¿Ordenar las claves cambia el significado del JSON?
No. El orden de las claves de un objeto no tiene significado en JSON, así que ordenarlas es seguro para comparar. El orden de los arrays sí es significativo y nunca se modifica.