Formateador y validador de JSON (embellecer, minificar)
Formatea o minifica JSON y ubica el error por línea y columna. Ordena claves, elige sangría de 2, 4 o tab, copia o descarga. No sale de tu navegador.
Funciona en tu equipoFunciona completa en tu navegador: nada de lo que escribes o subes sale de tu equipo.
Cómo usarla
- Pega tu JSON.
- Presiona Formatear (con sangría de 2, 4 o tab) o Minificar; marca Ordenar claves para ponerlas en orden alfabético.
- Si es inválido, corrige el punto que indican la línea, la columna y la flecha, y luego copia o descarga el resultado.
Cuando el JSON llega en una sola línea ilegible
Las API, los webhooks, los registros de las aplicaciones y los archivos exportados suelen enviar el JSON minificado: todo en una línea, sin espacios. Formatearlo con sangría muestra la estructura, así que puedes encontrar el campo que necesitas, comparar dos respuestas o notar un valor que falta. Minificar hace lo contrario antes de pegar un JSON en una configuración o en una petición.
Cuando una integración falla con "JSON inválido", el validador te da la línea y la columna del primer error y te muestra los 60 caracteres de alrededor con una flecha debajo, para que no tengas que buscarlo a ojo en una línea larguísima.
Ejemplo: un saldo escrito a la colombiana
Alguien arma esto a mano: {"cliente": "Pepito Pérez", "saldo": 1.200.000,50}. La herramienta responde ✗ JSON inválido en la línea 1, columna 43 y pone una flecha debajo del segundo punto. Los números en JSON no pueden llevar separador de miles, y el separador decimal siempre es el punto, sin importar el país. El valor correcto es 1200000.50.
Con eso corregido, Formatear muestra cada campo en su propia línea con sangría de 2, 4 o tab, y Descargar lo guarda como formatted.json. Las letras escapadas se muestran como texto normal: un nombre guardado como Mu\u00f1oz aparece como Muñoz, que es el mismo valor escrito de forma más legible.
Lo que el validador no detecta
Válido no quiere decir correcto. La herramienta revisa la sintaxis, no si los campos son los que espera el otro sistema, ni si una fecha tiene el formato correcto. Si una clave aparece dos veces, JSON lo permite pero solo sobrevive el último valor: {"nombre": "Muñoz", "nombre": "Pérez"} queda solo con Pérez, sin ningún aviso.
Los números que en realidad son identificadores son otra trampa. Un código como 05001, el código DANE de Medellín, es inválido como número, porque los números en JSON no pueden empezar por 0, y los números de cuenta largos pueden redondearse en los programas que los leen. Escríbelos como texto, entre comillas. Ordenar claves usa el orden simple de caracteres, así que las mayúsculas van antes que las minúsculas y las claves con tilde o ñ quedan después de la z.
Preguntas frecuentes
¿Ordenar claves cambia mis datos?
Ningún valor cambia. Solo cambia el orden de las claves dentro de cada objeto, en todos los niveles, y ese orden no significa nada en JSON. Las listas (arrays) conservan su orden, porque ahí la posición sí hace parte del dato.
¿Los números grandes pierden precisión?
No en los navegadores que permiten leer el texto original del JSON (Chrome, Edge y Firefox recientes): los números se mantienen tal cual están escritos. En otros, los enteros de más de 15 dígitos pueden redondearse, y la herramienta te avisa cuando eso puede pasar.
¿Por qué mi JSON es inválido?
Casi siempre es una de cuatro cosas: una coma después del último elemento, comillas simples en vez de dobles, claves sin comillas o comentarios. JSON no permite ninguna, y la posición del error señala la primera.
¿Por qué un archivo con un objeto JSON por línea sale inválido?
Ese formato se llama JSON Lines (o NDJSON), y lo usan mucho los registros y las exportaciones de datos. Cada línea es un JSON válido por sí sola, pero juntas no forman un solo documento JSON, así que la herramienta se detiene al comienzo de la línea 2. Pega una línea a la vez, o pon las líneas dentro de [ ] separadas por comas para volverlas una lista.
¿Cómo escribo decimales y plata en JSON?
Como números simples, con punto y sin separadores: `1200000.50`, no `1.200.000,50` ni `$1.200.000`. Muchas API prefieren los montos como un número entero en centavos o como texto, para evitar redondeos; revisa qué pide la documentación del sistema que los recibe.
Más en este capítulo
- 5.2Convertidor CSV y JSONConvierte CSV a JSON o JSON a CSV con coma, punto y coma o tabulación como separador.
- 5.3Conversor YAML a JSONConvierte YAML a JSON y viceversa en tu navegador.
- 5.4Base64Codifica o decodifica Base64 en tu navegador: texto UTF-8, Base64 apto para URL, archivos a Base64 o data URL, y Base64 de vuelta a un archivo descargable.
- 5.5Contraste de colorMide el contraste entre el color del texto y el del fondo según WCAG 2.2 AA y AAA, para texto normal, texto grande y componentes.
- 5.6Explicador de cronLee una expresión cron de 5 campos como una frase y ve sus próximas 5 ejecuciones en tu zona horaria.
- 5.7Bases numéricasConvierte números enteros entre decimal, hexadecimal, binario y octal, con longitud en bits y dígitos agrupados.
- 5.8Entidades HTMLCodifica texto como entidades HTML (con nombre, decimales o hex) o decodifícalas: <, >, &, comillas, tildes, ñ y símbolos Latin-1.
- 5.9Codificar URLCodifica o decodifica URLs y valores de consulta (percent-encoding) y separa cualquier URL en protocolo, host, ruta, parámetros y fragmento.
- 5.10Hash SHA-256Calcula hashes SHA-1, SHA-256, SHA-384 y SHA-512 de textos o archivos y verifica una descarga con su checksum.
- 5.11Generador de UUIDGenera UUID v4 aleatorios o UUID v7 ordenados por tiempo (RFC 9562) en tu navegador, de 1 a 1000 a la vez, en mayúsculas o sin guiones.
- 5.12Timestamp UnixConvierte timestamps Unix en segundos o milisegundos a ISO 8601, UTC y tu hora local, o una fecha a epoch.
- 5.13Decodificador JWTDecodifica un JSON Web Token en tu navegador: mira el encabezado y el payload como JSON y si ya venció.
- 5.14Probador de regexPrueba expresiones regulares en vivo: coincidencias resaltadas, grupos de captura, banderas y errores claros.
╌╌ FIN ╌╌