Formatador e validador JSON
Formate, minifique e valide JSON com mensagens de erro claras que mostram exatamente onde está o erro de sintaxe. Funciona totalmente no seu navegador.
Esta página foi traduzida do inglês com a ajuda de IA e conferida com o original. Ler a versão em inglês
- Grátis — Sem necessidade de cadastro
- Instantâneo — Os resultados são atualizados enquanto você digita
- Privado — Processado no seu navegador
O JSON que chega de uma API, de uma linha de log ou de um arquivo de configuração geralmente vem minificado em uma única linha ilegível ou editado à mão a ponto de não passar mais no parser. Esta ferramenta resolve os dois casos com o parser embutido no seu navegador, o que significa que o resultado é exatamente o que qualquer runtime JavaScript aceitaria.
Como funciona
Cole o JSON no campo de entrada. No modo Formatar, o texto é interpretado com JSON.parse e serializado de novo com JSON.stringify usando a indentação escolhida (2 ou 4 espaços). Minificar faz o mesmo parse, mas serializa sem nenhum espaço em branco, que é o que você quer para o corpo de uma requisição HTTP ou uma variável de ambiente. Em ambos os casos, a saída é uma nova serialização do valor interpretado, e não um ajuste nos espaços do seu texto, por isso a validade dela é garantida.
Se o parse falhar, você vê a mensagem do próprio parser. Quando o navegador informa uma posição em caracteres, a ferramenta a converte em linha e coluna para você ir direto ao erro. O Chromium e o Firefox informam essa posição; outros motores apenas descrevem o problema, e nesse caso você vê a mensagem sem a posição.
Copiar coloca o resultado na área de transferência; Baixar salva o conteúdo como data.json. Nada é enviado para servidor algum, e a ferramenta continua funcionando offline depois que a página carrega.
O que muda ao serializar de novo
Como a saída é reconstruída a partir do valor interpretado, algumas coisas são normalizadas, e vale saber quais:
- Números são escritos na forma canônica do JavaScript:
1.0vira1,1e2vira100, e inteiros acima de 2⁵³ perdem precisão. Não passe IDs de banco de dados de 64 bits nem valores financeiros armazenados como inteiros grandes por nenhum formatador JavaScript; mantenha-os como strings. - Chaves duplicadas são unificadas: o último valor vence, sem nenhum aviso.
- Sequências de escape nas strings são resolvidas.
"\u00e9"volta como"é", e"\/"vira"/". O significado é o mesmo; os bytes, não. - A ordem das chaves é mantida como foi escrita, exceto que chaves com cara de inteiro, como
"1", vão para o início, porque objetos JavaScript ordenam essas chaves numericamente.
Nada disso muda o que o consumidor dos dados vai ler, mas se você estiver comparando arquivos ou verificando uma assinatura sobre o texto original, formate uma cópia em vez do original.
Como ler o erro
Por trás da maioria das mensagens "unexpected token" estão três falhas: uma vírgula sobrando depois do último item, aspas simples no lugar de aspas duplas e uma chave sem aspas. JSON também não aceita comentários; se você estiver colando de um arquivo .jsonc ou JavaScript, remova-os antes. Uma mensagem sobre fim inesperado da entrada quase sempre significa que um colchete ou uma chave nunca foi fechado; a posição informada é o fim do texto, então conte os fechamentos.
O mesmo passo de interpretar e depois imprimir está disponível na linha de comando com o jq, o que é bem útil para arquivos grandes demais para colar:
jq . response.json # pretty-print with 2-space indent
jq -c . response.json # minify to a single line
Saiba mais
JSON bem estruturado é só metade de uma boa API. Criando APIs REST com Spring Boot mostra como o servidor serializa objetos, lida com nulos e datas e retorna corpos de erro que também são JSON válido, enquanto Design de APIs REST aborda nomenclatura, paginação e versionamento para que os payloads que você formata aqui sejam consistentes desde o início. Para decodificar o JSON dentro de um token, use o decodificador de JWT, que aplica a mesma formatação ao header e ao payload.
Perguntas frequentes
- Meus dados JSON são enviados a um servidor?
- Não. A formatação, a minificação e a validação acontecem totalmente no seu navegador usando o analisador JSON integrado — seus dados nunca saem do seu dispositivo.
- Qual é a diferença entre formatar e minificar?
- Formatar adiciona indentação e quebras de linha para que o JSON fique fácil de ler. Minificar remove todos os espaços desnecessários para produzir o menor resultado possível.
- Por que ele diz que meu JSON é inválido?
- O validador informa a linha e a coluna exatas onde a análise falhou — as causas mais comuns são vírgulas sobrando, chaves sem aspas, ou aspas simples em vez de aspas duplas.