Para que serve um formatador de JSON
JSON (JavaScript Object Notation) é o formato de troca de dados mais usado em APIs, arquivos de configuração e bancos de dados de documentos. Para economizar espaço, os sistemas costumam enviar o JSON “minificado”, tudo em uma linha só — ótimo para a máquina, péssimo para quem precisa ler. O formatador reorganiza o conteúdo com quebras de linha e indentação, deixando a estrutura visível: quais objetos estão dentro de quais, quantos itens tem cada lista, onde está o campo que você procura.
Situações comuns em que ele ajuda:
- Ler a resposta de uma API copiada do navegador, do Postman ou de um log.
- Descobrir por que um arquivo de configuração não é aceito pelo sistema.
- Comparar dois JSONs: com as chaves ordenadas, as diferenças ficam fáceis de ver.
- Levar dados de uma API para uma planilha, convertendo em CSV.
- Compactar um JSON antes de colar em uma variável de ambiente ou requisição.
Como usar
- Cole o JSON no campo JSON de entrada.
- Clique em Formatar para indentar (2 espaços, 4 espaços ou tabulação) ou em Minificar para compactar em uma linha.
- Marque Ordenar chaves se quiser as propriedades em ordem alfabética, em todos os níveis.
- Use JSON → CSV para gerar uma tabela. Escolha ponto e vírgula para abrir no Excel em português.
- Copie o resultado ou baixe como arquivo
.jsonou.csv.
Enquanto você edita a entrada, o resultado é refeito automaticamente com a última ação escolhida.
As regras do JSON (e os erros mais comuns)
O formato é definido pela RFC 8259 e pela norma ECMA-404. Ele é mais rígido do que parece, e a maior parte dos erros vem de hábitos do JavaScript ou do Python:
| Erro | Errado | Certo |
|---|---|---|
| Aspas simples | {'a': 'x'} | {"a": "x"} |
| Chave sem aspas | {a: 1} | {"a": 1} |
| Vírgula sobrando | [1, 2,] | [1, 2] |
| Vírgula faltando | {"a": 1 "b": 2} | {"a": 1, "b": 2} |
| Valores do Python | True, None | true, null |
| Número com zero à esquerda | {"cep": 01310100} | {"cep": "01310100"} |
| Decimal com vírgula | {"preco": 9,90} | {"preco": 9.90} |
| Quebra de linha no texto | texto em duas linhas | "linha 1\nlinha 2" |
Quando o JSON é inválido, a ferramenta mostra a linha e a coluna onde a leitura falhou, o motivo em português e um trecho do texto com uma seta apontando o local. Atenção: o ponto indicado é onde o problema foi percebido. Uma vírgula esquecida no fim de uma linha costuma ser apontada no começo da linha seguinte.
Como funciona a conversão para CSV
A conversão espera uma lista de objetos — o formato típico de respostas de API, como [{"id":1,"nome":"Ana"},{"id":2,"nome":"Bruno"}]. Cada objeto vira uma linha e cada chave vira uma coluna. Se os objetos não tiverem todos as mesmas chaves, a ferramenta junta todas as colunas encontradas e deixa as células vazias onde faltar valor.
- Objetos aninhados são “achatados”:
{"cliente":{"nome":"Ana"}}vira a colunacliente.nome. - Arrays dentro de um item ficam como texto JSON na célula.
- Textos com o separador, aspas ou quebras de linha são colocados entre aspas, com as aspas internas duplicadas, como manda a RFC 4180.
- O arquivo baixado tem a marcação UTF-8 (BOM), para o Excel mostrar acentos corretamente.
Dicas
- Use 2 espaços para JSON que vai para repositórios (padrão da maioria dos projetos JavaScript) e minificado para enviar em requisições.
- Ordenar as chaves não muda o significado do JSON: a ordem das propriedades de um objeto não é relevante pela especificação (já a ordem dos itens de um array é).
- Números muito grandes (acima de 253, como alguns IDs) perdem precisão em JavaScript. Se a sua API usa IDs enormes, prefira recebê-los como texto.
Ferramentas relacionadas
Para decodificar campos que vêm em Base64 dentro do JSON (arquivos, tokens), use o codificador e decodificador Base64. Para montar a URL de uma requisição com parâmetros, use o codificador de URL, que também separa e mostra os parâmetros de qualquer link.