GraphQL
Descripción
Sección titulada «Descripción»Este modulo permite ejecutar consultas GraphQL contra cualquier endpoint compatible. Realiza una solicitud POST con la query y variables proporcionadas, utilizando autenticación Basic Auth construida desde las credenciales configuradas. Incluye soporte para cabeceras personalizadas como x-xtrem-endpoint y cookies de sesión.
El modulo envia la consulta, valida la respuesta HTTP y verifica si existen errores GraphQL en el resultado. Si la respuesta es exitosa, retorna los datos directamente. Si hay errores GraphQL, los reporta con el detalle completo.
Configuración
Sección titulada «Configuración»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| credentials_id | credentials | Si | Credenciales con usuario y contrasena para Basic Auth |
| endpoint | text | Si | URL del endpoint GraphQL |
| query | text | Si | Consulta GraphQL a ejecutar |
| variables | json | No | Variables de la consulta GraphQL |
| xtremEndpoint | text | No | Valor para cabecera x-xtrem-endpoint (default: DEV) |
| clientCookie | text | No | Cookie de sesión del cliente |
Credenciales
Sección titulada «Credenciales»Las credenciales se obtienen del sistema de credenciales y deben contener:
- username: Nombre de usuario para Basic Auth
- password: Contrasena para Basic Auth
- clientCookie: Cookie de sesión del cliente (opcional)
{ "nextModule": "siguiente_modulo", "data": { "users": [ { "id": "1", "name": "Juan", "email": "juan@ejemplo.com" } ] }}Ejemplo de Uso
Sección titulada «Ejemplo de Uso»Caso básico
Sección titulada «Caso básico»{ "credentials_id": 1, "endpoint": "https://api.ejemplo.com/graphql", "query": "query { users { id name email } }", "variables": {}, "xtremEndpoint": "PROD"}API Utilizada
Sección titulada «API Utilizada»- Endpoint GraphQL configurado por el usuario
- Protocolo: HTTP POST con Content-Type application/json
- Utiliza node-fetch para las solicitudes HTTP
- La autenticación es Basic Auth (Base64 de username:password)
- Los errores GraphQL se reportan con el mensaje y los detalles completos
- No soporta paginación automática (para eso usar el modulo graphqlQuery)
- La cabecera x-xtrem-endpoint es especifica para ciertos servicios y puede omitirse
- Si no se proporcionan variables, se envia un objeto vacío
Nodos Relacionados
Sección titulada «Nodos Relacionados»- graphqlQuery (versión con paginación automática)