RapidIdentity Cloud Product Guide

Studio JMESPath Usage

JMESPath (pronounced like "James Path") is an expression language for extracting and transforming JSON data. Studio Provider connections use JMESPath to extract data from responses to web service requests.

https://jmespath.org/ is the website where the JMESPath standard lives, and it also contains other resources such as a tutorial, examples, and a simple app to experiment with JMESPath expressions.

There are currently 3 different types of JMESPath expressions that may need to be provided to Studio:

  1. Studio > Applications > (Your WS_CLIENT Application) > Record Definitions > (Your Record Definition) > Details > JMESPath Records Selector (required)

  2. Studio > Applications > (Your WS_CLIENT Application) > Record Definitions > (Your Record Definition) > Details > Field Definitions > (Your Field Definition) > Field Value Selector (required)

  3. Studio > Applications > (Your WS_Client Application) > Record Definitions > (Your Record Definition) > JMESPath Next Page URL Selector (optional)

It is useful to examine these in the context of the two most common forms of responses to requests for listing records:

  1. Top-level array of objects

    [  
        {"name": "Seattle", "state": "WA"},  
        {"name": "New York", "state": "NY"},
        {"name": "Belleveue", "state": "WA"},
        {"name": "Olympia", "state": "WA"}
    ]
  2. Top-level object with property containing the array of objects

    {
        locations: [
         {"name": "Seattle", "state": "WA"},
         {"name": "New York", "state": "NY"},
         {"name": "Bellevue", "state": "WA"},
         {"name": "Olympia", "state": "WA"}
        ]
    }