Gerador de Classe TypeScript para JSON Schema

Entrada Código TypeScript

Carregando editor…

Saída JSON Schema

Configurações

Selecione qual interface/type deve ser tratada como raiz do JSON Schema.

A análise ocorre inteiramente no seu navegador. Seu código não sai da página.

Cole seus tipos TypeScript para produzir JSON Schema instantaneamente.

Suporta interfaces, type aliases, campos públicos de classes, modificadores optional/readonly e union types.

Como converter interfaces, types e classes em TypeScript para JSON Schema – guia passo a passo

Este conversor online de interface TypeScript para JSON Schema ajuda você a gerar JSON Schema a partir de modelos reais (DTOs, structs e classes) para validar payloads, compartilhar contratos e gerar JSON mock.

  1. Etapa 1 – Cole sua fonte em TypeScript

    • Cole os modelos que você quer documentar no editor à esquerda.
    • Inclua tipos referenciados no mesmo trecho para que o schema possa gerar definitions.
    • Use o botão Exemplo para carregar um exemplo e ver o formato de entrada esperado.
  2. Etapa 2 – Selecione o Tipo raiz (se necessário)

    • Se múltiplas definições forem detectadas, escolha a raiz que corresponde ao payload da sua API.
    • O schema de saída é construído em torno da raiz selecionada e pode incluir definições adicionais para tipos referenciados.
  3. Etapa 3 – Revise a saída do JSON Schema

    • Verifique tipos, campos obrigatórios vs opcionais e estruturas aninhadas de objeto/array.
    • Procure por definitions e $ref quando seus modelos referenciam outros modelos.
    • Copie ou baixe o schema para validação, documentação ou desenvolvimento schema-first.
  4. Etapa 4 – Valide ou gere JSON mock

    • Clique em Gerar dados mock para abrir o gerador de mock com seu schema pré-carregado.
    • Valide payloads reais contra o schema para detectar breaking changes cedo.
    • Se você depender de composição avançada de schema (por exemplo anyOf/oneOf/allOf), verifique o resultado com um validador completo como o Ajv.

Observação sobre suporte a keywords de schema

Schemas gerados podem incluir $ref e podem ser editados para incluir anyOf, oneOf, ou allOf. Para schemas complexos, use um validador completo de JSON Schema e faça dereference antes de gerar mock data, se necessário.

Ferramentas relacionadas de JSON Schema e geração de código

Use estas ferramentas para validar schemas, gerar payloads mock, formatar exemplos JSON e manter código e contratos alinhados.

Perguntas Frequentes

Qual sintaxe TypeScript é suportada?

Interfaces, type aliases e classes com campos públicos são analisados. Propriedades opcionais, modificadores readonly, chaves string-literal, union types, arrays, Record e referências aninhadas são suportados. Comentários e decorators são ignorados para que você possa colar DTOs diretamente do projeto.

Como funciona o mapeamento de tipos?

Tipos primitivos (string, number, boolean, bigint, Date) são mapeados para primitivas JSON Schema com formatos apropriados. Arrays (Foo[] ou Array<Foo>), Record<string, T> e formas tipo dicionário viram arrays/objetos no schema. Union types que incluem null/undefined marcam automaticamente o campo como opcional.

Posso usar para classes além de interfaces?

Sim. Desde que a classe defina campos públicos (ou propriedades readonly) com anotações de tipo, ela será convertida para JSON Schema. A ferramenta roda inteiramente no navegador, então nenhum código sai da sua máquina.

Como obter JSON mock a partir do schema?

Depois de gerar o schema, clique em "Gerar dados mock" para abrir o Mock Generator com o schema pré-carregado. Configure locale, tamanhos de array e campos opcionais para produzir payloads instantaneamente.

Gerador de Classe TypeScript para JSON Schema | JSONSwiss