Skip to main content
Version: 1.0.0

Paths

Paths let you reach values inside nested JSON.

Prefer explicit paths for repeated field names

If a record contains both user.name and profile.name, write the full path. A short {name} projection is only unambiguous when there is one matching nested field.

Object paths

Use a dot between object fields:

{"customer": {"name": "Amina"}}
select {customer.name} from 'orders.json'

The same path is kept in the result:

{"customer": {"name": "Amina"}}

Use a custom projection key when you want a flat result:

select {customerName: customer.name} from 'orders.json'

Array indexes

Indexes start at zero:

select {primaryEmail: emails[0]} from 'customers.json'

Paths can use several indexes and object segments:

select {value: groups[0].contacts[1].value} from 'customers.json'

Source paths

A path in brackets after a filename chooses a nested source:

select {id, name} from 'response.json'[data.users]

When data.users is an array, every item becomes a row. If the file root is already an array, the source path is applied to every root item and nested arrays are flattened.

Short field names

A one-part name such as name first checks the current object. If there is no direct field, JQL searches nested objects and uses the value when exactly one matching field exists.