Saltearse al contenido

JQ Query (Parse JSON)

JQ Query (Parse JSON) selecciona y reorganiza la información de los datos que recibe. Escribes una consulta corta que indica qué campos quieres y cómo deben quedar, y el componente devuelve solo eso.

Es útil cuando un servicio devuelve respuestas muy grandes y solo te interesan unos pocos campos, o cuando necesitas filtrar elementos que cumplan una condición.

Cuándo usarlo

  • Quedarte con el nombre y el correo de cada contacto de una respuesta con decenas de campos.
  • Filtrar los pedidos que están en estado “pendiente”.
  • Cambiar el nombre de los campos para que encajen con lo que espera el siguiente componente.
  • Sacar una lista que viene dentro de otra respuesta para recorrerla después.

Configuración

CampoQué hace
Input (obligatorio)Los datos o el mensaje que quieres filtrar. Si es un mensaje, su texto debe tener formato de datos estructurados.
JQ Query (obligatorio)La consulta. Lo que recibe el componente es siempre una lista, así que las consultas suelen empezar por .[], que significa “cada elemento”.
Flatten Data recordsDesactivado por defecto. Si lo activas y la entrada es una lista de registros, la consulta se aplica a cada registro por separado y los campos que devuelve se añaden al propio registro, que conserva los que ya tenía.
Remove Empty KeysDesactivado por defecto. Quita del resultado los campos vacíos y las listas sin elementos. Úsalo junto con Flatten Data records.

Algunos ejemplos de consultas que puedes escribir en JQ Query:

Quieres…Consulta
Solo el nombre y el correo de cada contacto.[] | {nombre: .name, correo: .email}
Solo los pedidos pendientes.[] | select(.estado == "pendiente")
Los elementos de una lista que viene dentro de la respuesta.[] | .items[]

Resultado

La salida Filtered Data devuelve un registro por cada resultado de la consulta. Si un resultado es un valor simple (un texto o un número), lo recibes en el campo text. Puedes conectarla a un Loop, a Parse Data o a cualquier componente que reciba registros.

Ejemplo

Un flujo consulta el catálogo de una tienda y recibe cada producto con más de 40 campos. Para enviar a un agente solo lo relevante, JQ Query (Parse JSON) usa la consulta .[] | {producto: .title, precio: .price, stock: .inventory}. El agente recibe registros con tres campos y responde más rápido.

Componentes relacionados