JMESPath functionality

JMESPath is part of n8n since version 0.167.0

Can anybody please explain how we can use this additional functionality in functions and/or expressions or otherwise?

Thanks in advance!

Hey @dickhoning, I think @deborah is already looking into this, so you should see this covered by our documentation soon!

Thanks for letting me know. @Deborah can you please let me know when you’ve got this covered? I can’t wait to start using JMESPath functionality :sunglasses:

Hiya @dickhoning ! Docs are here: Query JSON with JMESPath | Docs Have fun! :grinning:

2 Likes

@Deborah :pray::+1:

@Deborah Thanks again. I’ve read your docs and have been playing around with the $jmespath() method. Although I’m only scratching the surface of JMESPath’s functionality, I already found some things that might be worth mentioning.

The expression $jmespath(object, searchString) works straight forward if you use it in {{}} expressions, like for example in the Set Node. However, when you use the $jmespath() method in a Function Node, you need to be aware of the fact whether the json you’re about to process is an array or objects, or in other words items or item.

Item: return $jmespath(item.etc.

Items: return $jmespath(items[0].json.etc.

Here are some tests I worked out:

Screenshot 2022-03-21 at 21.14.16

Please note that I created and tested these with Version: 0.169.0 of n8n.

3 Likes

Thanks for this! I’ve created a ticket and added the info you provided!