Gerador de JSON Schema
Gere automaticamente um JSON Schema (Draft-07) a partir de qualquer JSON de exemplo. Cole seu JSON e obtenha um schema válido instantaneamente — sem cadastro.
Indentação:
JSON de entrada
Schema gerado
Seu JSON Schema aparecerá aqui
Ferramentas relacionadas
Sobre o Gerador de JSON Schema
Como funciona
- Cole ou digite qualquer JSON válido no painel esquerdo
- A ferramenta analisa recursivamente cada chave e valor
- Os tipos são inferidos: string, number, integer, boolean, object, array, null
- Todas as chaves presentes são listadas no array "required"
- O schema Draft-07 resultante é exibido à direita
Casos de uso comuns
- Inicializar documentação de API e schemas OpenAPI
- Validar payloads JSON em serviços backend
- Gerar tipos TypeScript com ferramentas como json-schema-to-typescript
- Criar contratos de dados estritos entre microsserviços
- Documentar formatos de arquivos de configuração
Perguntas frequentes
O que é um JSON Schema?
Um JSON Schema é um vocabulário que permite anotar e validar documentos JSON. Ele descreve a estrutura, os tipos e as restrições dos dados JSON, facilitando a validação de entradas, a geração de documentação e o compartilhamento de contratos de dados entre serviços.
Qual rascunho de JSON Schema esta ferramenta gera?
Esta ferramenta gera JSON Schema Draft-07, que é a versão mais amplamente suportada. O Draft-07 é compatível com a maioria dos validadores, editores e ferramentas de API em uso hoje, incluindo VS Code, Postman e OpenAPI 3.x.
Como funciona a inferência do schema?
A ferramenta inspeciona recursivamente cada valor no JSON. Para cada chave, determina o tipo JSON (string, number, integer, boolean, array, object ou null), coleta todas as chaves únicas em objetos e as marca como obrigatórias. Nenhum dado é enviado ao servidor.
Todas as chaves são marcadas como obrigatórias?
Por padrão, cada chave presente no JSON de exemplo é adicionada ao array "required". Se seus dados reais podem ter campos opcionais, basta remover essas chaves do array required no schema gerado antes de usá-lo.
O que acontece com valores nulos?
Quando um valor é null no JSON de exemplo, a ferramenta gera um tipo "null". Se o campo pode conter outros tipos também, altere manualmente o tipo para um array como ["string", "null"] após gerar o schema.
Posso gerar um schema de um array JSON no nível raiz?
Sim. Se seu JSON for um array de nível superior, o schema gerado terá tipo "array" com um sub-schema "items" inferido do primeiro elemento.
Meus dados JSON são enviados para um servidor?
Não. Todo o processamento ocorre inteiramente no seu navegador usando JavaScript no lado do cliente. Seu JSON nunca é transmitido para nossos servidores, então dados sensíveis permanecem privados.
Posso usar o schema gerado em especificações OpenAPI / Swagger?
Sim. O OpenAPI 3.x usa um superconjunto do JSON Schema Draft-07, então a saída desta ferramenta pode ser colada diretamente na seção "schema" de um componente OpenAPI com apenas pequenos ajustes.
E se meu JSON tiver objetos profundamente aninhados?
A ferramenta suporta completamente estruturas JSON aninhadas arbitrariamente. Cada objeto aninhado recebe seu próprio bloco "properties" com anotações de tipo corretas.
Qual é a diferença entre "number" e "integer" no JSON Schema?
O JSON Schema distingue entre "integer" (números inteiros como 1, 42, -7) e "number" (qualquer valor numérico incluindo decimais como 3.14). Esta ferramenta usa automaticamente "integer" quando o valor não tem parte fracionária.
Posso personalizar o schema após gerá-lo?
Absolutamente. A saída é texto editável. Personalizações comuns incluem adicionar campos "description", restringir strings com "minLength"/"maxLength" ou "pattern", adicionar arrays "enum" e ajustar a lista "required".
O que faz a opção "additionalProperties: false"?
Quando ativada, "additionalProperties: false" é adicionado a cada objeto no schema. Isso instrui os validadores a rejeitar qualquer chave não listada explicitamente em "properties". Útil para contratos de API estritos.