Hi @jaydeep1 and welcome to the Community.
As @ipazin said, you can add the soap envelope manually with the join() function - you don’t really need to add the new line, it’s mostly for visual, or you could use some sort of “template” method and replace placeholders with values, and then submit the JSON via regular POST request.
If you will always have city, statePrv, postCd, cntry, I would simply create a template with placeholders like this:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<getGeoCodesRequest>
<addrs>
<city>##CITY##</city>
<statePrv>##STATEPRV##</statePrv>
<postCd>##POSTCD##</postCd>
<cntry>##CNTRY##</cntry>
</addrs>
</getGeoCodesRequest>
</soapenv:Body>
</soapenv:Envelope>
And replace the placeholders (##CITY##, ##STATEPRV##, etc) with the appropriate values.
I put something together as an Example:
The template table contains the template I shared above. I convert it to a variable, as I intend to use the same template for multiple rows, which looks like this:
And my sample data is this:
I replace the placeholders like this:
And the final data is in the json_string column:
After that, you can send your data via the POST request:
Add your URL. You can also configure the concurrency (useful if you have a lot of rows to process, it will send multiple requests simultaneously), and you can also configure the timeout (the default 2 secs should be enough, but if you are going to do concurrency and a lot of records, you want to give it a better chance to continue by increasing the timeout limit, rather than failing in the middle, which will then be a pain to resume)
Some endpoint might require that you pass some headers with your request, this is where you would add them:
And this is where you pass the body:
Here’s the workflow:
SOAP template.knwf (12.6 KB)