Skip to main content
Advanced Mapping Guide

Learn how to use JMESPath to fetch custom data from your system

Updated over 2 weeks ago

Overview

If you are reading this guide, you likely want to fetch a custom field from your system and map it. You may need advanced logic to get to this field. Don't worry; this guide will walk you through how to do this easily.

When is advanced mapping available?

Advanced Mapping is available for fields of type "list [ ]" or "dictionary { } ". Expanding Advanced Mapping will allow you to view the full custom field. The easiest way to create an advanced mapping is simply by clicking the value that you care about and we will auto generate the query!

For more complicated logic you may use the input field to write JMESPath queries. For this, we recommend reaching out to your support representative if you need help. If you'd like to attempt it yourself, continue on to our JMESPath guide below.

JMESPath Basics

You can specify queries using JMESPath. In the example below, we want to get the custom field - "personal email".

[{ "emailUri": "[email protected]", 
"nameCode": { "codeValue": "Personal E-mail", "shortName": "Personal E-mail" }, "notificationIndicator": false }]

You can generate the query using ChatGPT! Try asking
"Get the email URI only if shortName is Personal E-mail using jmespath and share only the snippet and the outputted value"

  • To get the emailUri by index: "[0].emailUri"

  • To get the emailUri only if shortName is Personal E-mail: [?nameCode.shortName == 'Personal E-mail'].emailUri | [0]

Did this answer your question?