Gerador de Classe Python para JSON Schema

Entrada Código Python

Carregando editor…

Saída JSON Schema

Configurações

Escolha qual classe, dataclass ou BaseModel deve ser usada como raiz do JSON Schema.

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

Cole classes Python para produzir JSON Schema instantaneamente.

Suporta dataclasses, BaseModel, enums, TypedDicts e sintaxe moderna de type hints.

Como converter dataclasses, modelos Pydantic e TypedDicts em Python para JSON Schema – guia passo a passo

Este conversor online de classe Python 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 Python

    • 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 Modelo 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

Quais estruturas Python são suportadas?

O conversor entende classes comuns, dataclasses, classes Pydantic BaseModel e definições TypedDict. Ele lê anotações de campos, valores padrão, hints Optional/Union, Literals e enums para criar JSON Schemas precisos sem enviar seu código.

Como funciona a detecção de tipos no Python?

Type hints como list[str], dict[str, Any], Optional[int], tuple[float, float] e classes/enums custom são mapeados automaticamente para primitivas/arrays/objetos/referências no JSON Schema. Quando faltam anotações, a ferramenta infere a partir dos valores padrão e emite avisos para ajustes.

Posso usar com diferentes versões e frameworks Python?

Sim. Sintaxes modernas como PEP 585, unions PEP 604 (str | None) e decorators como @dataclass(frozen=True) ou @validator são suportados. Também funciona com hints clássicos typing.Optional/typing.List, então código Python 3.7+ funciona bem.

Como criar JSON mock a partir do schema?

Depois de gerar o schema, use o atalho "Gerar dados mock" para abrir o Mock Generator com o schema pré-carregado. Configure locale, quantidade em arrays e crie payloads de exemplo instantaneamente para docs ou testes.

Gerador de Classe Python para JSON Schema | JSONSwiss