Hello All,
I am encountering issues while passing a JSON body to the HTTP action in the workflow. Inline variables are not resolving within the JSON body. However, they resolve correctly when assigned through the “Define Variable” operator.
Additionally, one of the JSON elements expects an integer value, but it is being passed as a string.
Error in JSON Body:
Any suggestions on resolving this issue?
Thanks,
Ashish Kumar
Kyle_R
(Kyle Rust)
February 10, 2025, 8:54pm
2
Hello Ashish, If I’m following correctly, there was a
limitation in workflows that could not support this. See this link here:
This is a known limitation with inline variables. Objects and arrays do not serialize to proper JSON. Instead, they are serialized as Golang maps/arrays. This is why you see arrays being presented without commas and objects that have the map[] keyword in them when referencing them with inline variables. As of now, only single values, like string, integer, and boolean can be referenced with inline variables. There is a feature request open (PLTWRKFLW-1352) to support objects and arrays.
However, recently found that there was an enhancement made. See here:
The Workflows team has just released two updates to the workflow engine.
Correct string length
Previously, there was an issue in the JSONpath library used by Workflows that always added 2 to the length of a string when using a JSONpath like $.string.length(). This did not affect arrays. A string like “hello” would result in a value of 7 when using the .length() function. This has been fixed in the latest release, and the length function will now return the correct length, which is 5 in the “hel…
Hope this helps!
Thank you for sharing the links, @Kyle_R . It is beneficial.
I have to build something custom to achieve this.
system
(system)
Closed
April 12, 2025, 7:47am
4
This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.