In this blog, we will learn how we can “Invoke SOAP Web Service using Power Automate Desktop”.
Why do we need to Invoke SOAP Web Service using “Power Automate Desktop”?
A big part of RPA is automating legacy applications and at times you might need to call legacy interfaces like SOAP web services. Power Automate Desktop has an inbuilt action that allows you to call SOAP service directly without having a need to build a custom SOAP connector.
Note: Want to create a SOAP custom connector for Power Platform(Cloud), please refer to my blog series “Using SOAP Custom Connector in Microsoft Power Automate(Flow)“.
Use Case
In this post, I explain how to call into a SOAP-based PDF Conversion Service and “Convert a document to PDF”. Please note that the principle is the same for other SOAP-based web services.
Before we begin, please make sure the following prerequisites are in place:
- Install and configure a Windows Server with a public-facing IP address. This may be a server in your own data center or a VM in AWS or Azure.
- Download the fully functional free trial of The Muhimbi PDF Converter Services here.
- Please make sure the software is installed exactly as described in chapter 2 of the Administration Guide. Please follow that guide to the letter and make sure you pay particularly good attention to the section about ‘dependencies’. The Administration Guide is included in the download and available online here.
- Power Automate Desktop should be installed on the VM which can connect to the WebService.
Now that we have the prerequisites in place, let’s start building our Power Automate Desktop Solution
Step 1:
Add the “Invoke SOAP web service” action to the Power Automate Desktop Designer Canvas.

With reference to the “Invoke SOAP web service” action screenshot, we need to provide the “Endpoint”, “Custom header”, “Request body, etc. You might have observed the “Build request” button.
The “Build Request” button in the “Invoke SOAP Web Service request” action, can help us invoke our Service. However, we need to provide the “Build Request” a WSDL file or a WSDL URL..
Step 2:
Click on the “Build Request” button and enter the WSDL Endpoint “http://localhost:41734/Muhimbi.DocumentConverter.WebService/?wsdl” and click on “Import” it should automatically Populate the other parameter except for the “Request Body”.

Step 3:
Copy and Paste the “SOAP Envelope” in the “Request Envelope” parameter and click OK.
Note: In this particular case we are sending a very short TXT file – in the sourceFile element – to the conversion service (base64 encoded).
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://services.muhimbi.com/2009/10/06"
xmlns:ns1="http://types.muhimbi.com/2009/10/06"
xmlns:ns2="http://types.muhimbi.com/2014/02/06"
xmlns:ns3="http://types.muhimbi.com/2015/04/13"
xmlns:ns4="http://types.muhimbi.com/2010/05/17"
xmlns:ns5="http://types.muhimbi.com/2013/08/01"
xmlns:ns6="http://types.muhimbi.com/2013/01/14">
<soapenv:Header/>
<soapenv:Body>
<ns:Convert>
<ns:sourceFile>TXVoaW1iaSByb2Nrcw==</ns:sourceFile>
<ns:openOptions>
<ns1:FileExtension>txt</ns1:FileExtension>
<ns1:OriginalFileName>clavin.txt</ns1:OriginalFileName>
</ns:openOptions>
<ns:conversionSettings>
<ns1:Format>PDF</ns1:Format>
<ns1:Fidelity>Full</ns1:Fidelity>
<ns1:ConverterSpecificSettings/>
<ns1:OutputFormatSpecificSettings/>
</ns:conversionSettings>
</ns:Convert>
</soapenv:Body>
</soapenv:Envelope>

Step 4:
“Save” and “Run” your Power Automate Desktop Solution. A successful response should give you the Status “200 OK” and the response body shown below. The response includes a base64 encoded version of the converted PDF.

In the next, post we will create an “End to End” solution and “Convert all files in the folder to PDF” using the Muhimbi SOAP Web Service.
Subscribe to this blog for the latest updates about SharePoint Online, Nintex, Microsoft Flow, Power Apps, and document conversion and manipulation.