Gerador de Schema GraphQL a partir de JSON Online

Transforme uma amostra JSON em definições de tipo GraphQL SDL, direto no seu navegador. Nada do que você cola é enviado.

O Gerador de Schema GraphQL a partir de JSON roda totalmente no seu navegador. A amostra JSON que você cola e o SDL que ele produz nunca são enviados ao ArrayKit.

Criado e mantido por Udit Agarwal

Abra o Conversor de JSON para TypeScript

Sobre JSON para GraphQL

JSON to GraphQL Schema converte uma amostra JSON em um documento GraphQL SDL pronto para uso. Cole um objeto e a ferramenta infere um bloco `type Root`, mapeando números para Int ou Float, strings para String, booleanos para Boolean e qualquer chave chamada id para o escalar ID. Arrays viram tipos de lista não nulos como [String!]!, e objetos aninhados são separados em seus próprios tipos nomeados (PascalCase a partir da chave do campo) para que o schema permaneça legível em vez de profundamente aninhado. É útil quando você está prototipando uma API GraphQL a partir de uma resposta de exemplo, migrando um endpoint REST ou esboçando resolvers antes de o backend existir. Defina um nome de tipo raiz personalizado, copie o SDL gerado ou baixe-o como um arquivo .graphql. Tudo roda localmente no seu navegador — sua amostra JSON nunca é enviada para lugar nenhum.

Recursos

  • Infere um bloco `type` completo do GraphQL a partir de qualquer objeto JSON
  • Mapeia números para Int ou Float dependendo se são números inteiros
  • Reconhece um campo "id" e o tipa como o escalar ID do GraphQL
  • Transforma objetos aninhados em seus próprios tipos nomeados automaticamente
  • Arrays viram tipos de lista não nulos, por exemplo tags: [String!]!
  • Remove duplicatas de nomes de tipos aninhados repetidos no schema
  • Campo de nome de tipo raiz personalizado, padrão "Root"
  • Copie o SDL ou baixe-o como arquivo .graphql, tudo no lado do cliente

Como usar JSON para GraphQL

  1. Cole um objeto JSON no painel de entrada, ou carregue o exemplo
  2. Opcionalmente defina um nome de tipo raiz
  3. Revise o SDL do GraphQL gerado à direita
  4. Copie o schema ou baixe-o como arquivo .graphql

Exemplo

Entrada

{"id":1,"name":"Ada"}

Saída

type Root {
  id: ID!
  name: String!
}

O campo id é tipado como ID, e name vira um String não nulo.

Erros comuns e solução de problemas

  • Todos os campos são obrigatórios (String!), mas algumas respostas omitem essa chave. — Inclua uma amostra representativa com `null` para campos que podem faltar; o Gerador de Schema GraphQL a partir de JSON torna valores nulos ou ausentes anuláveis em vez de adicionar !.
  • Um campo de array produziu [String]! em vez de uma lista tipada. — Inclua ao menos um elemento não nulo no array de amostra para que a ferramenta possa inferir o tipo do elemento; arrays vazios usam [String] por padrão.
  • Dois objetos aninhados diferentes geraram o mesmo nome de tipo. — Renomeie uma das chaves JSON antes de colar, ou renomeie o tipo no SDL gerado depois; o gerador remove duplicatas por nome, então chaves idênticas compartilham um tipo.
  • O banner mostra "Invalid JSON" e nenhum schema aparece. — Verifique se há vírgula sobrando, chave sem aspas ou aspas simples; a ferramenta exige JSON estrito, e a mensagem de erro inclui a linha e a coluna para corrigir.

Perguntas frequentes

O que o Gerador de Schema GraphQL a partir de JSON produz?
Ele lê uma amostra JSON e gera GraphQL SDL — um ou mais blocos `type` com nomes de campo e tipos escalares, de lista ou objeto inferidos — que você pode usar direto em um arquivo de schema GraphQL.
Como ele decide entre Int, Float, ID e String?
Números inteiros viram Int e decimais viram Float; qualquer campo chamado literalmente "id" é tipado como o escalar ID do GraphQL; texto vira String e true/false vira Boolean.
A ferramenta de JSON para GraphQL lida com objetos e arrays aninhados?
Sim. Objetos aninhados viram seu próprio tipo GraphQL nomeado (PascalCase a partir da chave do campo), e arrays viram tipos de lista não nulos como [String!]!, inferindo o tipo do elemento a partir do primeiro item.
Posso renomear o tipo raiz gerado?
Sim. Use o campo de nome de tipo raiz — o padrão é "Root", mas você pode definir o que quiser, como "User" ou "Product", antes de copiar o schema.
Minha amostra JSON é enviada para algum lugar?
Não. O Gerador de Schema GraphQL a partir de JSON roda totalmente no seu navegador. O JSON que você cola e o SDL gerado nunca saem do seu dispositivo.
O que acontece com JSON inválido ou malformado?
A ferramenta mostra um banner de erro nomeando o problema e, quando possível, a linha e a coluna, em vez de gerar um schema quebrado.

Ferramentas relacionadas

  • JSON para TypeScript — Gere interfaces de TypeScript a partir de uma amostra JSON.
  • JSON para Zod — Gere um schema Zod a partir de um JSON de exemplo, inferindo tipos, arrays e objetos aninhados.
  • JSON para Pydantic — Gere classes de modelo Pydantic v2 a partir de um JSON de exemplo, com Optional, aliases e BaseModels aninhados.
  • JSON para código — Gere tipos de Go, Rust, Python, Java, Kotlin, C# e TypeScript a partir de JSON.
  • Formatador de GraphQL — Formate ou minifique consultas e esquemas GraphQL, valide a sintaxe e extraia operações.
  • Gerador de JSON Schema — Gere um JSON Schema de uma amostra ou valide um documento e veja cada erro.

Mais ferramentas de JSON

  • JSON para SQL — Converte um array JSON em CREATE TABLE e INSERTs.
  • Formatador de JSON — Embeleze, minifique e valide JSON com a localização dos erros.
  • Visualizador de árvore JSON — Explore JSON como uma árvore recolhível e tipada.
  • Visualizador de JSON — Visualizador de texto e árvore recolhível com expandir/recolher e caminhos de nós.
  • JSON para TypeScript — Gere interfaces de TypeScript a partir de uma amostra JSON.
  • JSON para CSV — Converta um array de objetos JSON planos para CSV.
  • Escapar / Desescapar JSON — Escape texto para uma string JSON ou desescape uma string JSON para texto sem formatação.
  • JSON para código — Gere tipos de Go, Rust, Python, Java, Kotlin, C# e TypeScript a partir de JSON.
  • JSON Diff — Compare dois documentos JSON e veja um diff estrutural do que mudou.
  • Gerador de JSON Schema — Gere um JSON Schema de uma amostra ou valide um documento e veja cada erro.
  • JSON Flatten — Achate JSON aninhado em chaves com notação de ponto ou desfaça de volta, no seu navegador.
  • JSON para Zod — Gere um schema Zod a partir de um JSON de exemplo, inferindo tipos, arrays e objetos aninhados.

Ver todas as ferramentas de JSON (29) · Todas as ferramentas