Introduction
This plugin is based on the default bundled JSON Tool.
This plugin was created to solve use cases where we need to perform post processing of the JSON response of a JSON API call in before storing the data into a form or workflow variable.
The configurations are exactly similar to the default bundled JSON Tool in Joget, just with an additional optional property to write bean shell script to format/modify the JSON response. The post processed / formatted response is also returned at the end of the execute() method for further integration use case.
This plugin works just like the default bundled JSON Tool in Joget, but with the following added abilities:-
- with GET, PATCH, PUT and POST methods.
- Send files in POST method.
- Receive file and store into a Joget form file upload.
The plugin source codes can be found at JogetOSS Github. Feel free to clone and customize to suit your needs.
Enhanced JSON Tool Properties
Format Response
Name | Description |
---|---|
Enable Response Formatting | When checked, you can start writing bean shell script to format / post process the JSON response. |
Script | The "Enable Response Formatting" property must be enabled in order to write bean shell script here. Injected Variables:
Expected Return Object: It is expected to return a Map object that would later on be processed as configured to store to form and/or workflow variables. Example: Return the response only for the first item in a JSON array with the object name of "apps". return data.get("apps")[0]; |
Figure 1: Enable Response Formatting
Download Sample App
Notes:
- This sample app already includes the Enhanced JSON Tool plugin. So just import into your Joget server and start using.
- The API Domain Whitelist / API IP Whitelist setting in General Settings needs to be configured to allow JSON API requests, in order for this sample app to work.