Formatador de Schema GraphQL
Valide e reformate SDL (Schema Definition Language) do GraphQL — definições de type, interface, enum, input, scalar, union e directive. Informa o erro de sintaxe exato, com linha e coluna, em schemas inválidos, e reimprime os válidos com indentação consistente de 2 ou 4 espaços, com a opção de ordenar types e campos em ordem alfabética.
Entrada
Opções de Formatação
Saída
Mais formas de usar esta ferramenta
API REST
curl -X POST https://api.iotools.cloud/v1/tool/graphql-schema-formatter \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"graphqlInput": "\"\"\"\nA simple blog API schema.\n\"\"\"\nschema {\n que…",
"indentWidth": "2",
"sortAlphabetically": ""
}'Troque pela sua própria chave, da sua conta. Os campos da ferramenta viram o corpo da requisição — sem envelope.
Peça a um agente de IA
Use the IOTools `graphql-schema-formatter` tool (GraphQL Schema Formatter) on this input:
YOUR_INPUT_HERECole isto em qualquer agente conectado ao servidor MCP do IOTools e depois adicione sua entrada.
Widget para incorporar
<iframe
src="https://iotools.cloud/embed/graphql-schema-formatter/"
width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
title="Formatador de Schema GraphQL — iotools.cloud"
sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
allow="clipboard-write"
style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>Coloque isso na sua própria página — grátis, sem chave, só um link de volta.
| Custo por chamada de API/MCP | A partir de 5 créditos |
|---|---|
| Precisa de mais créditos? | Ver preços |
Também disponível via
Guias
Cole um schema GraphQL — definições de type, interface, enum, input, scalar, union ou directive escritas em SDL (Schema Definition Language) — e receba de volta uma versão validada e formatada de forma consistente. O Formatador de Schema GraphQL analisa seu schema com o mesmo parser de referência que o próprio GraphQL usa, então um erro de sintaxe real é informado com a linha e a coluna exatas em vez de um palpite, e um schema válido é reimpresso com espaçamento limpo e uniforme.
Ele foi feito para os momentos em que um schema chega bagunçado: copiado de um pull request, extraído de documentação, gerado por um framework code-first ou entregue por um assistente de IA com indentação inconsistente. Cole, e receba de volta uma versão canônica.
Como usar
- Cole seu SDL do GraphQL na caixa de entrada, ou envie um arquivo
.graphql,.gqlou.sdl. - Opcionalmente, defina a Largura da Indentação (2 ou 4 espaços) e ative Ordenar Types e Campos em Ordem Alfabética.
- Copie o resultado formatado ou baixe-o como
schema.graphql.
A formatação é executada automaticamente enquanto você digita ou altera uma opção.
O que ele faz
- Validação real. Seu schema é analisado com o
graphql-js, a implementação de referência da especificação do GraphQL — o mesmo parser por trás de ferramentas como o Apollo Server e o GraphQL Code Generator. Um schema malformado (dois-pontos ausente, chave não fechada, token desconhecido) retorna a mensagem de erro exata do parser, com a linha e a coluna onde o problema aconteceu, em vez de produzir uma saída confusa silenciosamente. - Indentação consistente. Escolha 2 ou 4 espaços; todo bloco —
type,interface,input,enum,schemae descrições de múltiplas linhas — é reindentado de forma uniforme. - Descrições preservadas. Descrições de uma linha (
"...") e em bloco ("""...""") permanecem associadas ao type ou campo que documentam. - Ordenação alfabética opcional. Quando ativada, as definições de nível superior são agrupadas por tipo (scalars, enums, interfaces, unions, object types, inputs, directives — o bloco
schema { ... }sempre fica primeiro) e ordenadas por nome dentro de cada grupo; campos dentro dos corpos detype/interface/inpute valores dentro dos corpos deenumtambém são ordenados em ordem alfabética. A ordem dos membros de uma union não é alterada, pois ela pode ter significado (um type preferencial listado primeiro).
Privacidade
Tudo acontece do lado do cliente, no seu navegador. Seu schema nunca é enviado a um servidor.
Ele preserva comentários #?
Não. O lexer do próprio GraphQL trata comentários no estilo # como irrelevantes e os descarta antes da análise — eles não fazem parte da AST do schema, então nenhum formatador construído sobre o parser de referência consegue devolvê-los intactos. Descrições em string ("..." e """..."""), que de fato fazem parte do schema, são preservadas exatamente.
Ele valida referências entre types?
Ele verifica a sintaxe — se o SDL é um GraphQL válido — e não a semântica completa do schema (uma referência de type não resolvida, ou uma directive usada em um lugar onde não foi declarada). Para validar nesse nível, construa o schema com uma biblioteca de servidor GraphQL.
Posso formatar um schema federado ou com vários arquivos inteiro?
Cole todos eles como um único documento combinado — definições extend type, extend interface e extend schema são suportadas e formatadas como qualquer outra definição.
O que exatamente o "Ordenar Alfabeticamente" reordena?
Duas coisas independentes: a ordem das definições de nível superior (agrupadas por tipo e depois por nome) e a ordem dos campos/valores de enum dentro de cada definição. Ele nunca renomeia nada nem altera um type ou argumento.