Texto 🔒 Roda no seu navegador — nenhum dado é enviado

Validador de JSON

Cole um JSON para conferir se ele segue o padrão, com a mensagem de erro exata e a posição quando algo estiver errado.

JSON de entrada

Validar JSON online

Uma única vírgula perdida basta para uma API recusar uma requisição ou para um arquivo de configuração não carregar, e o erro resultante nem sempre ajuda. Colar o documento em um validador mostra em um segundo se ele é JSON válido e, se não for, exatamente onde quebra.

Esta página abre o Formatador de JSON, que valida a cada alteração com o analisador do navegador, fiel ao padrão, e formata o documento quando ele é válido.

Os erros que um validador mais encontra

ErroInválidoVálido
Vírgula sobrando{"a": 1,}{"a": 1}
Aspas simples{'a': 'x'}{"a": "x"}
Chave sem aspas{a: 1}{"a": 1}
Vírgula faltando{"a": 1 "b": 2}{"a": 1, "b": 2}
Comentário{"a": 1 // note}Remova o comentário
Quebra de linha sem escape dentro de uma stringuma quebra de linha dentro de "…""line 1\nline 2"
Valores especiaisNaN, undefinednull ou um número

Lendo a mensagem de erro

Os navegadores informam erros de JSON com uma posição, por exemplo “Expected double-quoted property name in JSON at position 12”. A posição conta os caracteres a partir de zero, então aponta para o caractere em que o analisador desistiu. O erro real costuma estar logo antes: a vírgula antes de uma chave de fechamento, ou a aspa que deveria ser dupla.

Válido não é o mesmo que correto

Um validador verifica a sintaxe, não o significado. Um JSON com uma chave escrita errado, um número enviado como string ou um campo obrigatório ausente continua sendo JSON válido. Para verificar a estrutura, use um validador de JSON Schema no seu código ou no CI. E cuidado com chaves duplicadas: tecnicamente são permitidas, mas a maioria dos analisadores mantém só a última, sem avisar.

Validando em código

  • JavaScript: JSON.parse(text) dentro de try/catch
  • Python: json.loads(text), ou python -m json.tool file.json na linha de comando
  • jq: jq empty file.json não imprime nada quando o arquivo é válido
  • PHP: json_validate($text) desde o PHP 8.3

Depois que o JSON estiver válido, use Minificar JSON para remover os espaços antes de enviá-lo.

Guias relacionados