Como usar: JSON Schema para TypeScript
- Cole seu JSON Schema — ou um objeto
components.schemasdo OpenAPI — no painel da esquerda. - Defina o nome do tipo raiz e se quer usar
interfaceoutype. - Os tipos TypeScript são atualizados enquanto você digita; definições em
$defsoudefinitionsviram tipos nomeados próprios. - Copie o código para um arquivo
.tsou.d.ts.
Como o JSON Schema se traduz para TypeScript
| JSON Schema | TypeScript |
|---|---|
"type": "string" / number, integer / boolean / null | string / number / boolean / null |
properties + required | interface com prop e prop? opcional |
enum, const | union de literais: "draft" | "published" |
items, prefixItems | T[], tuplas [A, B] |
additionalProperties (schema) | [key: string]: T |
oneOf / anyOf / allOf | A | B / A | B / A & B |
$ref: "#/$defs/User" | o tipo nomeado User |
"type": ["string", "null"] | string | null |
Palavras-chave só de validação, como minLength, pattern ou format, não têm equivalente em TypeScript; elas são incluídas no comentário JSDoc quando o JSDoc está ativado. URLs de $ref externas são tipadas como unknown.
Quer partir de dados de exemplo em vez de um schema? Use o JSON para TypeScript. Para validar dados contra um schema, use o Validador de JSON Schema.
Também pesquisado como: json schema to typescript, gerar typescript a partir de json schema, json schema interface, conversor json schema typescript, openapi schema para typescript, tipos json schema, json schema para ts.
Ferramentas que combinam com: JSON Schema para TypeScript
- JSON para JSON Schema — Cole um ou mais exemplos de JSON e receba um JSON Schema que os descreve: objetos aninhados, arrays de objetos unificados em um único schema de item, campos required (chaves presentes em todos os exemplos), formatos detectados como email, date-time, URI e UUID, enums opcionais e saída no draft 2020-12 ou draft-07.
- JSON para Tipos — Cole uma resposta da API e receba modelos prontos para uso em 8 linguagens: TypeScript, Python (dataclass, TypedDict ou Pydantic), Go, Java, C#, Kotlin, Swift e Rust.
- Formatação JSON — Cole o JSON aqui para formatá-lo, compactá-lo ou validá-lo.
- Validador OpenAPI / Swagger — Cole uma especificação de API para checar contra o schema oficial do OpenAPI, encontrar referências quebradas e parâmetros de path inconsistentes, e ver todos os endpoints de uma vez.