ForHosting KIT · Ferramentas para dev

Extrair nomes e tipos de variáveis GraphQL

Cole um documento GraphQL e receba as variáveis declaradas em cada operação: FindUser declara id como ID!, filters como [UserFilter!] e limit como Int, e Rename declara id e name, cinco variáveis no total. A sintaxe é verificada antes. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve

Este extrator lê um documento GraphQL executável, verifica a sintaxe e lista as variáveis declaradas em cada consulta, mutação ou assinatura. O resultado preserva o tipo e o nome opcional da operação, além do nome e da notação exata de cada variável, inclusive listas e marcadores não nulos. É útil para gerar formulários, revisar operações do cliente, documentar integrações ou verificar consultas antes da execução.

Separe declarações de referências

Variáveis GraphQL aparecem como declarações, como <code>$id: ID! </code>, ao lado da operação, e como referências, como <code>user(id: $id)</code>, na seleção. Esta capacidade retorna somente as declarações e as agrupa na consulta, mutação ou assinatura proprietária.

Assim, operações diferentes podem usar o mesmo nome sem serem combinadas. A notação relevante é preservada, incluindo <code>String</code>, <code>ID! </code> e <code>[ID!]!

</code>. Valores padrão e diretivas são analisados para comprovar a sintaxe, mas não entram no resultado. Fragmentos também são verificados, embora não gerem registros porque não declaram variáveis de operação. Uma consulta anônima abreviada é apresentada sem nome e com uma lista vazia.

Use uma verificação sintática determinística

Este parser tokeniza o documento inteiro e segue a gramática executável do GraphQL. Ele rejeita strings abertas, números inválidos, caracteres inesperados, seleções vazias e definições incompletas. Por isso, o resultado pode proteger uma etapa de build.

Nenhuma rede ou esquema é consultado. Portanto, a ferramenta não decide se um campo existe no seu servidor, se o tipo combina com um argumento ou se regras dependentes do esquema são atendidas. Use-a para sintaxe e descoberta de declarações; valide contra o esquema separadamente quando ele estiver disponível.

Integre a resposta estruturada

Cada operação informa sua categoria, inclui o nome quando escrito e contém <code>variables</code> com registros <code>name</code> e <code>type</code>. O formato serve para criar editores, comparar operações versionadas, montar documentação ou detectar uma nova entrada obrigatória. A separação evita conflitos falsos entre nomes repetidos.

A entrada é limitada a 200,000 caracteres para manter o processamento controlado. Nenhuma consulta é executada; esquema, cabeçalhos, credenciais e valores não são necessários. Um erro informa a posição aproximada do problema.

Criar um formulário de variáveis

Leia as declarações e gere os campos corretos antes de coletar valores de execução.

Revisar consultas persistidas

Compare nomes e tipos GraphQL exatos quando uma operação versionada mudar.

Documentar operações do cliente

Transforme um documento com várias operações em um inventário agrupado.

As referências às variáveis são incluídas?

Não. Somente declarações são retornadas; referências em campos, argumentos ou diretivas não são novas declarações.

A notação de lista e não nulo é preservada?

Sim. Tipos como ID!, [String!] e [ID!]! mantêm a notação GraphQL completa.

Os campos são validados contra meu esquema?

Não. A sintaxe é validada sem esquema; existência e compatibilidade exigem outra etapa.

São aceitas várias operações e fragmentos?

Sim. As operações saem em ordem; fragmentos válidos são verificados, mas não adicionam declarações.

Ele confere a consulta com os tipos do meu servidor?

Não. Ele só verifica se o documento é GraphQL válido e lê as declarações. Saber se o servidor oferece um dado ou se o tipo de uma variável combina com um argumento exige a definição de tipos do servidor, em uma etapa separada.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/dev/graphql-query-variables-extract

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/dev/graphql-query-variables-extract \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"query FindUser($id: ID!, $withPosts: Boolean = false) { user(id: $id) { name posts @include(if: $withPosts) { title } } }"}'
{
  "query": "query FindUser($id: ID!, $withPosts: Boolean = false) { user(id: $id) { name posts @include(if: $withPosts) { title } } }"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.graphql_query_variables_extract",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_chars200000
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Use uma verificação sintática determinística

Expressões regulares falham diante de comentários, strings, blocos de texto, listas aninhadas, objetos padrão, diretivas, fragmentos, aliases e várias operações.

Integre a resposta estruturada

A resposta traz o array <code>operations</code> na ordem original e o total <code>variable_count</code>. Você pode colar o documento no navegador ou usar a API por US$ 0,002 por item.

A ferramenta executa a consulta GraphQL?

Não. Ela analisa o documento localmente e nunca acessa um endpoint GraphQL.

Quanto custa uma chamada à API?

Cada item custa US$ 0,002. A versão no navegador roda localmente o mesmo parser.

Ver a documentação completa do KIT →