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.

  1. Cole o documento completo no validador JSON e selecione Validar JSON.
  2. Se o diagnóstico mostrar linha e coluna, confira essa região e o final da linha anterior.
  3. Corrija um problema por vez: vírgula ausente ou extra, aspas ou um delimitador de fechamento.
  4. 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.

Compartilhar este guia

Link do artigo