Las API de REST han sido la norma para activar integraciones, pero GraphQL está ganando terreno rápidamente gracias a su flexibilidad y eficacia. Con las funciones del generador de integraciones, se pueden integrar las API de GraphQL. Esto permite aprovechar las funciones más importantes de GraphQL, como solicitar únicamente los datos que se necesitan y gestionar consultas complejas con facilidad.
En este artículo se detallan los pasos para configurar una solicitud de GraphQL usando el generador de integraciones. Primero se explica el esquema de GraphQL y luego se indica cómo construir consultas e integrar respuestas en las conversaciones.
Para configurar una solicitud de GraphQL
- Busque el URL del extremo de GraphQL. Normalmente, lo proporciona la documentación de la API (por ejemplo, https://api.example.com/graphql o para Shopify: https://{{storeName}}.myshopify.com/admin/api/2023-04/graphql.json).
- Agréguelo a la interfaz del generador de integraciones.
- Vaya a Entornos y seleccione el tipo de método POST (si está solicitando datos).
- Agregue el extremo de GraphQL en la entrada del URL.
- Seleccione el método de autenticación (si se requiere).
- De ser necesario, agregue las credenciales a los encabezados. Por ejemplo, si es una integración de Shopify, se vería de esta manera:
- Dedique un tiempo a comprender el GraphQL Schema para seleccionar los datos que desea que le devuelva el servidor.
- Obtenga el esquema del servidor de GraphQL.
Define las consultas, las mutaciones y los tipos disponibles. Use herramientas como Postman, GraphiQL o Apollo Explorer para inspeccionar el esquema y probar y refinar la consulta.
Para obtener la consulta de Postman recomendamos navegar a la pestaña “Code snippet” y buscar “data”, donde debería ver un objeto con la clave “query”. Copie el objeto para usarlo en el siguiente paso.
- En la pestaña “Body”, agregue la consulta de GraphQL especificando los datos que necesita o la acción que desea realizar (si está haciendo una solicitud de mutación para modificar los datos; crear, actualizar, borrar).
Esto debe presentarse en formato JSON.
Ejemplo de consulta:
```{"query":"{\n __type(name: \"Order\") {\n name,\n fields {\n name\n type {\n name\n kind\n }\n }\n }\n}","variables":{}}```
- Vaya al escenario de éxito para agregar los parámetros de sesión.
- Con JSONata, escriba las consultas para acceder a los datos de la respuesta y transformarlos (si es necesario). Vea el ejemplo: