Nesta página
Para corrigir um erro de sintaxe JSON, valide o texto, confira a posição indicada e o caractere anterior, faça uma correção pequena e valide novamente. O local destacado pode ser onde o analisador deixou de entender o documento; a causa pode estar na linha anterior.
- Cole o documento completo no validador JSON e selecione Validar JSON.
- Se o diagnóstico mostrar linha e coluna, confira essa região e o final da linha anterior.
- Corrija um problema por vez: vírgula ausente ou extra, aspas ou um delimitador de fechamento.
- Valide o documento completo novamente após cada alteração.
Guarde uma cópia do original para revisar o que mudou. O validador aponta problemas; você escolhe a correção.
Como interpretar a posição do erro
A falta de uma vírgula pode ser detectada somente quando o analisador encontra a próxima chave. Um delimitador ausente pode ser percebido ao chegar ao fim do texto. Leia a região ao redor da posição indicada antes de apagar o caractere destacado.
A mensagem e a posição dependem do programa que analisa o JSON. A MDN reúne exemplos de diagnósticos de análise; outros analisadores podem usar mensagens diferentes.
Se nenhuma posição aparecer, percorra o documento desde o início, observando onde cada valor termina e o próximo começa. Em um arquivo grande, confira primeiro a região que você acabou de editar. Adicionar recuos manualmente pode facilitar a leitura da estrutura, mas o recuo sozinho não corrige o erro.
Exemplo: o erro aponta para uma chave, mas falta uma vírgula antes
Este documento é inválido:
{
"pedido": {
"id": "A-17"
"total": 42
}
}
O analisador pode apontar para "total" ou uma posição próxima. A chave está escrita corretamente: falta a vírgula que a separa do campo anterior. Acrescente-a depois de "A-17":
{
"pedido": {
"id": "A-17",
"total": 42
}
}
Cole a segunda versão e selecione Validar JSON novamente. O resultado esperado é JSON válido. O identificador e o total continuam iguais; apenas o separador ausente foi acrescentado.
Quatro erros que você pode corrigir com uma pequena alteração
As entradas da segunda coluna são propositalmente inválidas. A última coluna mostra documentos JSON válidos:
| Problema | Entrada inválida | Correção mínima | Resultado válido |
|---|---|---|---|
| Falta uma vírgula entre campos | {"id":"A-17" "total":42} |
Acrescentar uma vírgula após o identificador. | {"id":"A-17","total":42} |
| Sobra uma vírgula no fim do array | {"etiquetas":["um","dois",]} |
Remover a vírgula após "dois". |
{"etiquetas":["um","dois"]} |
| A chave usa aspas simples | {'ativo':true} |
Trocar as aspas da chave por aspas duplas. | {"ativo":true} |
| Falta fechar o objeto | {"ativo":true |
Acrescentar } ao final. |
{"ativo":true} |
Vírgulas separam campos de objetos ou elementos de arrays; chaves e valores de texto usam aspas duplas. Essas regras fazem parte da sintaxe JSON definida pela ECMA-404.
Quando o documento contém comentários
JSON estrito não permite comentários. Se o original for uma configuração JSONC, consulte a diferença entre JSON e JSONC e como fazer a conversão. Essa conversão remove comentários e vírgulas finais; guarde o original se suas anotações forem necessárias para manter a configuração.
Quando o problema está dentro de uma string
Em {"nota":"Ela disse "olá""}, as aspas de "olá" encerram a string antes da hora. Use a barra invertida para manter essas aspas no texto:
{"nota":"Ela disse \"olá\""}
Evite substituir todas as aspas automaticamente: alguns caracteres podem fazer parte do próprio valor.
Quando o documento termina antes do esperado
No último exemplo da tabela, falta apenas uma chave de fechamento. Se a entrada termina no meio de um texto ou registro, confira primeiro se você copiou ou recebeu o documento inteiro. Acrescentar fechamentos pode produzir sintaxe válida sem recuperar os dados que faltam.
Se a resposta vier de uma IA, siga a revisão de JSON gerado por IA para comparar as alterações propostas e decidir quando solicitar novamente os dados completos.
Confira a correção e preserve os dados pretendidos
Valide o documento inteiro novamente, mesmo que tenha alterado uma única linha. Se surgir outro erro, repita o procedimento. Depois que a validação passar, escolha entre formatar e minificar e revise os valores antes de salvar.
Confira também o que a aplicação espera. {"total":"42"} e {"total":42} são JSON válidos, mas o primeiro contém texto e o segundo um número. A validação de sintaxe não aplica JSON Schema nem verifica regras de negócio.
Se a ferramenta informar um limite de tamanho, cancelamento ou falha de leitura, resolva esse aviso antes de mudar a pontuação: ele não comprova um erro de sintaxe. Para rever objetos, arrays e tipos, consulte o guia sobre o que é JSON.