Skip to main content

JSONPath Query

JSONPath Query | Sybot Documentation

JSONPATH QUERY

Il task JSONPath Query consente di eseguire query su dati JSON utilizzando espressioni JSONPath. Questo è utile per estrarre informazioni specifiche da strutture JSON complesse.

Definizione di Query JSONPath

Una Query JSONPath è un’espressione che consente di individuare e estrarre dati da una struttura JSON navigandone gli elementi in modo gerarchico. Utilizza una sintassi simile ai percorsi dei file per riferirsi a proprietà, oggetti annidati e array, permettendo di selezionare valori specifici, collezioni di elementi o porzioni strutturate del documento JSON.

Configurazione

JSON: JSON in ingresso, fornito direttamente come testo o tramite parametro dinamico (ad esempio l’output DataExportJson del task Database), non come percorso di un file, ma come contenuto JSON diretto

Esempio espressione JSONPath :

$.value[?(@.name=='wmr')].type

Struttura della Query

  • $: Rappresenta la radice del documento JSON.
  • .value: Seleziona l’elemento value direttamente sotto la radice.
  • [?(@.name=='wmr')]: Filtra gli elementi dell’array value per includere solo quelli in cui l’attributo name è uguale a 'wmr'.
  • .type: Seleziona l’attributo type degli elementi filtrati.

Esempio di Documento JSON

Supponendo di avere il seguente documento JSON:

{
"value": [
{
"name": "wmr",
"type": "exampleType1"
},
{
"name": "otherName",
"type": "exampleType2"
}
]
}

Risultato della Query

La query $.value[?(@.name=='wmr')].type selezionerà il valore dell’attributo type per l’elemento in cui name è 'wmr'. Nel nostro esempio, il risultato sarà:

["exampleType1"]

Parametro di Output

Al completamento dell’esecuzione, il task rende disponibili i seguenti Parametri di Output, utilizzabili come input nei task successivi del Workflow.

  • result: Tale parametro può contenere un messaggio di errore oppure il risultato della query.
  • resultJson: rappresenta il risultato dell’esecuzione del task in formato JSON, includendo informazioni generali, configurazioni e dettagli sull’esecuzione.