Validador de JSON Schema
Valide dados JSON contra definições de JSON Schema. Obtenha relatórios de erro detalhados com caminhos. Todo o processamento é feito no seu navegador.
Os dados JSON são válidos em relação ao esquema fornecido!
| Caminho | Erro |
|---|
Como Usar o Validador de JSON Schema
Insira o Esquema
Defina seu JSON Schema que descreve a estrutura esperada.
Insira os Dados
Cole os dados JSON que você deseja validar contra o esquema.
Valide
Clique em Validar e revise os resultados para quaisquer erros.
O que é JSON Schema?
JSON Schema é um vocabulário que permite anotar e validar documentos JSON. Ele fornece um contrato para quais dados JSON são necessários para uma determinada aplicação e como interagir com eles. JSON Schema é usado para validação, documentação e geração de dados de exemplo.
Principais Recursos
Validação de Tipos
Valide tipos: string, number, integer, boolean, array, object, null
Restrições
Comprimento mínimo/máximo, faixa, padrão, campos obrigatórios e mais
Definição de Estrutura
Defina objetos aninhados, arrays e estruturas de dados complexas
Perguntas Frequentes
Esta ferramenta suporta JSON Schema Draft-07, Draft 2019-09 e Draft 2020-12 através da biblioteca Ajv. A maioria dos recursos comuns de esquema é suportada.
Sim! JSON Schema suporta objetos e arrays profundamente aninhados. Você pode definir propriedades e itens em qualquer nível de aninhamento, com regras de validação individuais para cada campo.
A ferramenta primeiro valida se seu esquema é um JSON Schema válido. Se o esquema tiver erros, eles serão relatados antes de tentar validar os dados.
type (string, number, object, array, boolean, null), properties com esquemas aninhados, required listando as chaves obrigatórias, enum para conjuntos fixos de valores, pattern para strings restritas por regex e as verificações de intervalo minimum/maximum e minLength/maxLength. additionalProperties: false restringe objetos contra chaves extras. Juntas, elas cobrem a maior parte das regras de validação de APIs.
No JSON Schema moderno, format é uma anotação por padrão, não uma asserção automática - os validadores a aplicam apenas quando configurados para isso, o que a especificação de 2020-12 deixou explícito com um vocabulário format-assertion separado. Use pattern ou uma palavra-chave personalizada quando a aplicação precisar ser garantida, e trate format como metadados de interoperabilidade nos demais casos.
$ref apontando para #/$defs/address referencia um fragmento de esquema sob $defs e valida contra ele onde quer que seja usado - é o mecanismo de deduplicação. O draft 2020-12 renomeou o antigo definitions para $defs e formalizou o $dynamicRef para estruturas recursivas como árvores de comentários. As referências também podem apontar para documentos externos, embora agrupá-las localmente seja mais comum.
allOf exige que todos os subesquemas validem - uma interseção, usada para compor um esquema base com restrições extras. anyOf exige pelo menos um - uma união, usada para payloads polimórficos. oneOf exige exatamente um; validar dois ou nenhum subesquema resulta em falha, o que é mais restritivo do que as pessoas esperam e é a causa usual de erros surpreendentes com esquemas sobrepostos.
2020-12 dividiu a especificação em vocabulários negociáveis separadamente (validation, annotation, format-assertion), renomeou definitions para $defs, simplificou exclusiveMinimum para um número simples e substituiu a antiga palavra-chave items por prefixItems mais items. A maioria das ferramentas suporta ambos; o draft-07 continua sendo o mais amplamente implantado, mas 2020-12 é o padrão publicado atual.
Ferramentas Relacionadas
Referências Autoritativas
As fontes primárias por trás desta ferramenta - padrões e especificações oficiais, não resumos de terceiros.
JSON Schema - 2020-12 Validation Specification
A especificação de validação do JSON Schema 2020-12 — o padrão publicado atual.
JSON Schema - Learn
O site oficial de aprendizado do JSON Schema, do básico ao $ref e $defs.
JSON Schema - Wikipedia
O que o JSON Schema valida e seu papel em contratos de API e validação de configuração.