Friendlier SOAP Pass-through with Logic App designer UX


When using SOAP Pass-through custom connector in Logic App, I previously provided steps to switch to code view to add required headers Content-Type and SOAP Action such as:

 "actions": {
     "SoapPassThrough": {
         "inputs": {
             "body": "<Envelope xmlns=\"http://schemas.xmlsoap.org/soap/envelope/\"><Body><GetOrder xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"http://tempuri.org/\"><orderId>2468</orderId></GetOrder></Body></Envelope>",
             "headers": {
                 "Content-Type": "text/xml",
                 "SOAPAction": "http://tempuri.org/IFazioService/GetOrder"
             },

Now if you are used to the Logic App designer UX this can be a bit uncomfortable, so here are steps from our support engineer Xuehong Gan to populate these from UX instead:

  • Use “Import from sample” and do add Operation Id to the end of URI.   Set headers and an empty body.

  • Once imported, click on ContentType and SoapAction buttons to add their values into the default value field.

  • When you use the custom connector, the two headers will show up automatically with the default values.

  • Create a string variable xmldata and set the XML request to it.   Then in the custom connector, you can use xmldata variable as the body.

  • Here is a sample test run of the resulting Logic App.

Comments (2)

  1. emorgoch says:

    Hi David, I’m trying to implement this, but I’m running into an issue. My web server is telling me that the number of header request fields exceeds the server’s limit. Was able to do some tracing, and the request had 41(!!!) different headers. Is there any way I can manage this and reduce it down some?

    1. David Burg says:

      For a granular control of the formulated request sent to the Web Server and tweaking it, API Management is your friend.

      https://azure.microsoft.com/en-us/services/api-management/

      They have SOAP to REST support as well, we are actually sharing a common engine for it.

Skip to main content