Embora as APIs REST sejam há muito tempo um padrão para ativar integrações, o GraphQL vem ganhando espaço rapidamente devido à sua flexibilidade e eficiência. Você pode usar os recursos do criador de integrações para integrar com APIs do GraphQL. Você pode aproveitar os principais recursos do GraphQL, como solicitar apenas os dados necessários e lidar com consultas complexas com facilidade.
Neste artigo, mostraremos o processo de configuração de uma solicitação GraphQL usando o criador de integrações, desde a compreensão do esquema GraphQL até a construção de consultas e a integração das respostas às suas conversas.
Como configurar uma solicitação GraphQL
- Encontre a URL do ponto de extremidade GraphQL, geralmente fornecida pela documentação da API (por exemplo, https://api.example.com/graphql ou, para Shopify: https://{{storeName}}.myshopify.com/admin/api/2023-04/graphql.json).
- Adicione-a à interface do criador de integrações.
- Navegue para Ambientes e selecione o tipo de método POST (se você está solicitando dados).
- Adicione o ponto de extremidade GraphQL à entrada da URL.
- Selecione seu método de autenticação (se necessário).
- Se necessário, adicione suas credenciais aos cabeçalhos. Por exemplo, se for uma integração da Shopify, terá esta aparência:
- Entenda o Esquema GraphQL para selecionar os dados que você deseja que o servidor retorne.
- Obtenha o esquema do servidor GraphQL.
Ele define as consultas, as mutações e os tipos disponíveis. Use ferramentas, como Postman, GraphiQL ou Apollo Explorer, para inspecionar o esquema e testar e refinar a consulta.
Recomendamos obter a consulta do Postman navegando para a aba Code snippet e verificando os dados em que você deve ver um objeto com a chave “query”. Copie o objeto a ser usado nesta etapa.
- Na aba Corpo, adicione a consulta GraphQL especificando os dados necessários ou a ação que você deseja executar (se estiver fazendo uma solicitação de mutação para modificar dados; criar, atualizar, apagar).
Isso deve estar em formato JSON.
Exemplo de consulta:
```{"query":"{\n __type(name: \"Order\") {\n name,\n fields {\n name\n type {\n name\n kind\n }\n }\n }\n}","variables":{}}```
- Navegue para o cenário Sucesso para adicionar os parâmetros de sessão.
- Usando JSONata, escreva suas consultas para acessar e transformar (se necessário) os dados na resposta. Veja um exemplo seguir: