Pack Camo

Formatador e Validador JSON

Embeleze, minifique e valide JSON com a linha exata de cada erro. Tudo roda localmente — nada é enviado para servidor nenhum.

Entrada
JSON
Saída
Formatted JSON · minified JSON · error location
JSON válido

Entrada

164 B · 1 linha

Resultado

221 B (+35%) · 9 chaves · profundidade 2

{
  "id": 12345678901234567890,
  "name": "Pack Camo",
  "tags": [
    "privacy",
    "offline"
  ],
  "price": 1.50,
  "active": true,
  "owner": {
    "name": "Ada",
    "email": "ada@example.com"
  },
  "notes": null
}

Formate, valide e corrija JSON em um só lugar

Este formatador JSON transforma uma resposta de API em uma linha em JSON legível e indentado assim que você cola, e o valida ao mesmo tempo. Se o JSON estiver quebrado, ele diz o que está errado e em que linha e coluna, destaca a linha e oferece corrigir os suspeitos de sempre: vírgulas finais, aspas simples, chaves sem aspas e comentários. Você também pode minificar, ordenar as chaves alfabeticamente em todos os níveis e copiar ou baixar o resultado. Tudo roda no seu navegador, então tokens, dados de clientes e configurações internas nunca saem da sua máquina.

Como formatar e validar JSON

  1. Cole o JSON no painel da esquerda, abra um arquivo .json ou solte um no painel.
  2. Leia a barra de status: JSON válido, ou o erro com linha e coluna. Clique em Ir para o erro para saltar até ele.
  3. Se o problema for vírgula final, aspas simples, chaves sem aspas ou comentários, clique em Corrigir para transformar o texto em JSON estrito.
  4. Escolha Embelezar com 2 espaços, 4 espaços ou tabulação, ou Minificar, e ative Ordenar chaves se quiser uma ordem estável.
  5. Copie o resultado, baixe-o como arquivo .json ou envie-o para outra ferramenta.

O que torna um JSON válido

O JSON (RFC 8259) é mais rígido que o JavaScript de onde veio. As chaves precisam ser strings entre aspas duplas; as strings também usam aspas duplas; não há comentários, nem vírgula depois do último item, nem undefined, NaN ou Infinity, e números não podem ter zeros à esquerda nem ponto decimal solto. O validador confere cada uma dessas regras e aponta a primeira violada, com uma explicação clara em vez de uma mensagem enigmática do motor.

Os números de linha e coluna começam em 1, como nos editores de código, então você pode ir direto ao ponto também no seu editor.

Caractere inesperado
Algo que não pode iniciar um valor, como uma letra perdida, ou uma aspa faltando antes na linha.
Esperado , ou }
Duas propriedades sem vírgula entre elas, ou uma chave de fechamento faltando.
Vírgula final
Uma vírgula depois do último item de um objeto ou array, que o JavaScript aceita e o JSON não.
String não terminada
Uma string sem aspa de fechamento, muitas vezes uma quebra de linha dentro da string, que precisa ser escrita como \n.

Corrigindo quase-JSON

Muito do que é colado como JSON é, na verdade, um objeto JavaScript, JSON5 ou um arquivo de configuração com comentários. A correção o transforma em JSON estrito: remove comentários // e /* */, tira vírgulas finais, reescreve strings 'single-quoted' com aspas duplas, coloca aspas em chaves soltas e substitui o True, False e None do Python. Ela lê o texto com um tokenizador, então vírgulas e aspas dentro de strings nunca são tocadas, e mantém a disposição das linhas para que erros posteriores ainda apontem para a linha certa.

Ela propositalmente não tenta adivinhar erros estruturais como uma vírgula ou um colchete faltando. Esses têm mais de uma correção possível, e o validador aponta para eles.

Formatar sem alterar seus dados

Muitos formatadores passam o texto por JSON.parse e de volta, o que arredonda silenciosamente números grandes (um ID como 12345678901234567890 perde os últimos dígitos), reescreve 1.50 como 1.5 e move chaves numéricas para o topo de cada objeto. Esta ferramenta analisa o JSON em uma árvore própria que mantém cada número exatamente como foi escrito e cada chave na ordem original, então a única coisa que muda são os espaços, a menos que você peça para ordenar as chaves.

A ordenação compara as chaves por code point, como o jq -S, em todos os níveis de aninhamento. JSON ordenado e com indentação consistente é o mais fácil de comparar; para ver o que realmente difere entre dois documentos, use a ferramenta JSON diff, e para transformar JSON em YAML, CSV ou TOML, use o conversor de dados.

Embelezar ou minificar?

  • Embelezar para ler, revisar e versionar: um valor por linha deixa os diffs no controle de versão pequenos e claros. Dois espaços é a indentação mais comum em projetos JavaScript, quatro é comum em Python e Java, e a tabulação deixa cada leitor escolher a largura.
  • Minificar para enviar e armazenar: remover os espaços costuma reduzir um JSON formatado em 10–30%, e o painel de saída mostra o tamanho antes e depois.
  • O painel de saída também conta as chaves e a profundidade de aninhamento, uma checagem rápida em um payload desconhecido.

Perguntas frequentes

Como formatar JSON online?
Cole o JSON no painel da esquerda. Ele é validado e formatado no painel da direita na hora; escolha 2 espaços, 4 espaços ou tabulação e copie ou baixe o resultado.
Como verificar se um JSON é válido?
Cole-o e leia a barra de status. Ela mostra JSON válido, ou o primeiro erro com linha e coluna, e Ir para o erro leva o cursor até ele.
Por que meu JSON é inválido?
As causas mais comuns são vírgula depois do último item, aspas simples no lugar de aspas duplas, chaves sem aspas, comentários e uma vírgula faltando entre duas propriedades. As quatro primeiras podem ser corrigidas com o botão Corrigir.
JSON pode ter comentários?
Não. O JSON padrão não tem sintaxe de comentário. JSONC e JSON5, usados por alguns arquivos de configuração, permitem; o botão Corrigir os remove para gerar JSON padrão.
Formatar altera meus números ou a ordem das chaves?
Não. Os números são escritos exatamente como aparecem na entrada, incluindo inteiros muito grandes e zeros finais, e as chaves ficam na ordem original, a menos que você ative Ordenar chaves.
Como minificar JSON?
Escolha Minificar. Todos os espaços fora das strings são removidos, e o painel de saída mostra quanto menor ficou o resultado.
Meu JSON é enviado a um servidor?
Não. A análise, a validação e a formatação rodam no seu navegador. Nada é enviado, então é seguro para chaves de API, tokens e dados pessoais.